Files
cdtestplant_v1/apps/createSeiTaiDocument/__pycache__/docXmlUtils.cpython-38.pyc

54 lines
4.7 KiB
Plaintext
Raw Normal View History

2025-04-29 18:09:00 +08:00
U
B<>fJ(<00>@s<>dZddlmZddlmZddlmZddlmZddl m
Z
ddl m Z ddl mZdd lmZdd
lmZdd lmZdd lmZdd lmZddlmZddlmZdd<11>Zdeed<13>dd<15>Z dS)uE该文件是替换文档片段然后生成辅助生成最终文档<E69687>)<01>BytesIO)<01>Path)<01>Document)<01> Paragraph)<01>Table)<01>CT_Tbl)<01>CT_P)<01>CT_R)<01>
CT_Picture)<01> ImagePart)<01>Run)<01>Cm)<01>WD_PARAGRAPH_ALIGNMENT)<01> project_pathcCst|t<01>r|St|<00><03><00>S)u5传入oxml节点对象获取其祖先节点的CT_R)<04>
isinstancer <00>getParentRunNode<64> getparent)<01>node<64>r<00>IE:\PycharmProject\cdtestplant_v1\apps\createSeiTaiDocument\docXmlUtils.pyrs
rN)<02>doc_type<70>
project_idc-
Cs<>t|<01>}t<01><02>d|}|ddd}|dd}|dd}|dkrt|ddd}|dd}|dd}<07>n|d kr<>|ddd
}|dd
}|dd
}n<>|d kr<>|ddd }|dd }|dd }n<>|d k<02>r|ddd}|dd|<02>d<10>}|dd|<02>d<10>}nv|dk<02>r`|ddd}|dd|<02>d<13>}|dd|<02>d<13>}n2|dk<02>r<>|ddd}|dd}|dd}|d}g} g}
|<08><03>D]d} | <0B><04><00>r<>| jdk<02>r | <09>| <0B>n<| <0B><07><00>r<>| j|k<02>r<>| <0B><03>D]} | jdk<02>r<>|
<EFBFBD>| <0C><00>q<><71>q<>t |<05>
<EFBFBD><00>} | j j }|<0E> d<18>}g}g}|D<00>]j}d}|<12><0E>D<00>]T}|j<0F>d<1A><01>r<>|<14><11>D]}|j<0F>d<1B><01>rhd}<13>qh|j<0F>d<1A><01>r<>|<14><11>D]J}|j<0F>d<1D><01>r<>t|j<13><14><00>dk<04>r<>|dk<02>r<>|j<13><14>d}|<10>|<16><00>q<>|j<0F>d<1F><01>rLt|<10>dk<04>rL|<10>d<1E>}d }|d!k<02>r6| D]} | j|k<02>r| }<18>qn<>|d"k<08>r<>|
D]} | j|k<02>rD| }<18>qD|<18>s<>| D]} | j|k<02>rf| }<18>qfnJ|
D]"} | jd|<02>d#|<17><00>k<02>r<>| }<18>q<>|<18>s<>| D]} | j|k<02>r<>| }<18>q<>|<18>rLt |<18>}g}|j j j}|D]>}t|t<18><02>r
|<1A>t||<19><02>t|t<1A><02>r<>|<1A>t||<19><02><00>q<>|<14><1C>|D]}|<14>|j<1D><00>q6t |<18>}|j j }|<1E> d$<24>}|<1F>sln4|D].} | }!|!<21> d%<25>d}"|jj|"}#|<11>|#<23><00>qp<71>qL<71>q:|<0E> d$<24>}$d}%t|$<24>t|<11>k<02>r@|$D]p}&t |&<26>}'|'<27><1C>t!||%j"j#<23>}(t$|'| <0A>})|)<29>%|(<28>}*|*j&}+t'd&<26>|*_&t(|*j)|*j&|+<00>|*_)t*j+|)_,|%d'7}%<25>q<>n
d(d)d*<2A>Sz| <0A>-|<06>||fWSt.k
<EFBFBD>r<>},zd(d+d*<2A>WY<00>Sd"},~,XYnXd"S),uS 该函数参数:
:param round_num: 只有回归说明和回归记录有
:param project_id: 项目id
:param doc_type:大纲 sm:说明 jl:记录 bg:报告 hsm:回归测试说明 hjl:回归测试记录,默认路径为dg -> 所以如果传错就生成生成大纲了
:return (to_tpl_file路径, seitai_final_file路径)
<20>media<69> form_templateZproductsu测评大纲.docx<63>tempZ final_seitai<61>smu测试说明.docx<63>jlu测试记录.docx<63>bgu测评报告.docx<63>hsmu回归测试说明.docxu第u轮回归测试说明.docx<63>hjlu回归测试记录.docxu轮回归测试记录.docx<63>wtdu测试问题单.docx<63>
output_dirz.docxz./w:sdtFZsdtPr<50>lockT<6B>aliasrZ
sdtContent<EFBFBD><00>dgNu轮z
.//pic:picz.//a:blip/@r:embed<65> <00><00>erroru6模版文件有自定义图片,请删除后重试...)<02>code<64>msgu4生成的temp文件已打开请关闭后重试...)/rr<00>cwd<77>iterdir<69>is_file<6C>suffix<69>append<6E>is_dir<69>stemr<00>as_posix<69>element<6E>body<64>xpath<74> iterchildren<65>tag<61>endswith<74> getchildren<65>len<65>attrib<69>values<65>pop<6F>inner_content_elementsrrrrr<00>clear<61>_element<6E>part<72> related_partsrr<00>image<67>blobr <00> add_picture<72>widthr <00>int<6E>heightr<00>CENTER<45> alignment<6E>save<76>PermissionError)-rr<00> round_num<75>project_path_str<74>prefix<69> template_fileZ to_tpl_fileZseitai_final_fileZoutput_files_pathZdg_copied_filesZexclusive_copied_files<65>file<6C>f<>docr4Zsdt_element_listZarea_name_listZimage_part_listZsdt_eleZisLock<63>elem<65>elZ area_nameZ area_pop_nameZcopied_file_pathZ
doc_copiedZcopied_element_listZ element_listZeletZ para_copiedZ copied_bodyZ img_node_listZimg_node<64>img<6D>embedZ related_partZgraph_node_listZ img_countZ
graph_nodeZimage_run_nodeZcopied_bytes_ioZ r_elementZ inline_shapeZ source_width<74>errr<00>generate_temp_docs<>     


   
  
    

  

 

  
 
  
 






rY)N)!<21>__doc__<5F>ior<00>pathlibr<00>docxr<00>docx.text.paragraphr<00>
docx.tabler<00>docx.oxml.tabler<00>docx.oxml.text.paragraphr<00>docx.oxml.text.runr <00>docx.oxml.shaper
<00>docx.parts.imager <00> docx.text.runr <00> docx.sharedr <00>docx.enum.textr<00>utils.path_utilsrr<00>strrGrYrrrr<00><module>s