chunk-3cb89ba9.c8849964.js 35 KB

1
  1. (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-3cb89ba9"],{"1a8f":function(e,t,r){"use strict";r.r(t);var a=function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("div",{staticClass:"project-input-container"},[r("div",{staticClass:"project-selector"},[r("el-form",{attrs:{inline:!0}},[r("el-form-item",{attrs:{label:"当前项目"}},[r("el-select",{staticStyle:{width:"300px"},attrs:{disabled:"",placeholder:"请选择项目"},on:{change:e.handleProjectConfirm},model:{value:e.selectedProjectId,callback:function(t){e.selectedProjectId=t},expression:"selectedProjectId"}},e._l(e.projectOptions,(function(e){return r("el-option",{key:e.id,attrs:{label:e.name,value:e.id}})})),1)],1),r("el-form-item",[e.hasExistingData?r("el-button",{attrs:{type:"primary"},on:{click:e.handleUpdateGspr}},[e._v("更新输入项目")]):r("el-button",{attrs:{type:"primary"},on:{click:e.handleAddGspr}},[e._v("创建输入项目")]),r("el-button",{attrs:{type:"danger"},on:{click:e.handleDeleteItems}},[e._v("删除")])],1)],1)],1),e.selectedProjectId?[r("div",{staticClass:"operation-bar"},[r("el-form",{staticClass:"search-form",attrs:{inline:!0,model:e.gsprSearchForm}},[r("el-form-item",{attrs:{label:"内容"}},[r("el-input",{staticStyle:{width:"300px"},attrs:{placeholder:"请输入项目名称/技术报告位置",clearable:""},model:{value:e.gsprSearchForm.keyword,callback:function(t){e.$set(e.gsprSearchForm,"keyword",t)},expression:"gsprSearchForm.keyword"}})],1),r("el-form-item",{attrs:{label:"部门"}},[r("el-select",{attrs:{placeholder:"请选择部门",clearable:""},model:{value:e.gsprSearchForm.department,callback:function(t){e.$set(e.gsprSearchForm,"department",t)},expression:"gsprSearchForm.department"}},e._l(e.departList,(function(e,t){return r("el-option",{key:t,attrs:{label:e.label,value:e.label}})})),1)],1),r("el-form-item",{attrs:{label:"创建时间"}},[r("el-date-picker",{attrs:{type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期","value-format":"yyyy-MM-dd","picker-options":e.pickerOptions},model:{value:e.gsprSearchForm.dateRange,callback:function(t){e.$set(e.gsprSearchForm,"dateRange",t)},expression:"gsprSearchForm.dateRange"}})],1),r("el-form-item",{attrs:{label:"内容状态"}},[r("el-select",{attrs:{placeholder:"请选择",clearable:""},model:{value:e.gsprSearchForm.content_empty,callback:function(t){e.$set(e.gsprSearchForm,"content_empty",t)},expression:"gsprSearchForm.content_empty"}},[r("el-option",{attrs:{label:"有内容",value:!1}}),r("el-option",{attrs:{label:"无内容",value:!0}})],1)],1),r("el-form-item",[r("el-button",{attrs:{type:"primary"},on:{click:e.handleGsprSearch}},[e._v("搜索")]),r("el-button",{on:{click:e.handleGsprReset}},[e._v("重置")])],1)],1)],1),r("div",[r("el-button",{attrs:{type:"primary"},on:{click:e.handleExport}},[e._v("导出输入项目")])],1),r("el-table",{staticStyle:{width:"100%"},attrs:{data:e.gsprTableData,"default-sort":{prop:e.sort_field,order:e.sort_order}},on:{"sort-change":e.handleSortChange}},[r("el-table-column",{attrs:{prop:"sequence",label:"排序",sortable:"",width:"80"},scopedSlots:e._u([{key:"default",fn:function(t){return[r("div",{staticStyle:{display:"flex","align-items":"center"}},[r("span",{staticStyle:{"margin-right":"10px"}},[e._v(e._s(t.row.sequence))]),r("i",{staticClass:"el-icon-edit",staticStyle:{cursor:"pointer","margin-left":"5px"},on:{click:function(r){return e.handleEditSequence(t.row)}}})])]}}],null,!1,2610571018)}),r("el-table-column",{attrs:{prop:"name",label:"项目名称",sortable:""}}),r("el-table-column",{attrs:{prop:"tech_report_location",label:"技术报告位置"}}),r("el-table-column",{attrs:{prop:"department",label:"部门",sortable:""}}),r("el-table-column",{attrs:{prop:"content",label:"内容",width:"450"},scopedSlots:e._u([{key:"default",fn:function(t){return[r("div",{staticClass:"content-cell"},[r("span",{staticClass:"content-text"},[e._v(e._s(e.getPlainText(t.row.content)))]),r("i",{staticClass:"el-icon-edit",staticStyle:{cursor:"pointer","margin-left":"5px"},on:{click:function(r){return e.handleEditContent(t.row)}}})])]}}],null,!1,2129923277)}),r("el-table-column",{attrs:{prop:"",label:"难度",sortable:""},scopedSlots:e._u([{key:"default",fn:function(t){return[r("el-rate",{attrs:{"show-score":"","text-color":"#ff9900","score-template":"{value}"},on:{change:function(r){return e.rateScope(r,t.row)}},model:{value:t.row.score,callback:function(r){e.$set(t.row,"score",r)},expression:"scope.row.score"}})]}}],null,!1,803927147)}),r("el-table-column",{attrs:{label:"备注",width:"200"},scopedSlots:e._u([{key:"default",fn:function(t){return[r("div",{staticStyle:{display:"flex","align-items":"center"}},[r("span",{staticStyle:{"margin-right":"10px"}},[e._v(e._s(t.row.remarks))]),r("i",{staticClass:"el-icon-edit",staticStyle:{cursor:"pointer","margin-left":"5px"},on:{click:function(r){return e.handleEditRemark(t.row)}}})])]}}],null,!1,3234622137)}),r("el-table-column",{attrs:{label:"操作"},scopedSlots:e._u([{key:"default",fn:function(t){return[r("el-button",{attrs:{type:"primary"},on:{click:function(r){return e.handleViewGspr(t.row)}}},[e._v("查看")])]}}],null,!1,1338613375)})],1),r("div",{staticClass:"pagination-container"},[r("el-pagination",{attrs:{"current-page":e.currentPage,"page-sizes":[30,50],"page-size":e.pageSize,layout:"total, sizes, prev, pager, next, jumper",total:e.gsprTotal},on:{"size-change":e.handleGsprSizeChange,"current-change":e.handleGsprCurrentChange}})],1),r("el-dialog",{attrs:{title:e.gsprDialogTitle,visible:e.gsprDialogVisible,"close-on-click-modal":!1,width:"700px"},on:{"update:visible":function(t){e.gsprDialogVisible=t}}},[r("el-form",{ref:"gsprForm",attrs:{model:e.gsprForm,rules:e.gsprRules,"label-width":"120px"}},[r("el-form-item",{attrs:{label:"名称",prop:"name"}},[r("el-input",{model:{value:e.gsprForm.name,callback:function(t){e.$set(e.gsprForm,"name",t)},expression:"gsprForm.name"}})],1),r("el-form-item",{attrs:{label:"技术报告位置",prop:"tech_report_location"}},[r("el-input",{model:{value:e.gsprForm.tech_report_location,callback:function(t){e.$set(e.gsprForm,"tech_report_location",t)},expression:"gsprForm.tech_report_location"}})],1),r("el-form-item",{attrs:{label:"部门",prop:"department"}},[r("el-select",{attrs:{placeholder:"请选择状态"},model:{value:e.gsprForm.department,callback:function(t){e.$set(e.gsprForm,"department",t)},expression:"gsprForm.department"}},e._l(e.departList,(function(e,t){return r("el-option",{key:t,attrs:{label:e.label,value:e.label}})})),1)],1)],1),r("div",{attrs:{slot:"footer"},slot:"footer"},[r("el-button",{on:{click:function(t){e.gsprDialogVisible=!1}}},[e._v("取消")]),r("el-button",{attrs:{type:"primary"},on:{click:e.handleGsprSubmit}},[e._v("确定")])],1)],1),r("el-dialog",{attrs:{title:"编辑内容",visible:e.contentDialogVisible,"close-on-click-modal":!1,width:"70%",top:"10px"},on:{"update:visible":function(t){e.contentDialogVisible=t}}},[r("CanvasEditor",{key:e.keys,ref:"wordEditor",attrs:{"edit-mode":e.Modetype,"html-data":e.htmlData,"doc-json":e.docJson,"editor-options":e.editorOptions},on:{save:e.save,"is-save":e.getSave}}),r("div",{attrs:{slot:"footer"},slot:"footer"},[r("el-button",{on:{click:function(t){e.contentDialogVisible=!1}}},[e._v("取消")]),r("el-button",{attrs:{type:"primary"},on:{click:e.handleContentSubmit}},[e._v("确定")])],1)],1),r("el-dialog",{attrs:{title:"查看详情",visible:e.viewDialogVisible,"close-on-click-modal":!1,width:"80%"},on:{"update:visible":function(t){e.viewDialogVisible=t}}},[r("div",{staticClass:"view-details"},[r("el-descriptions",{attrs:{column:2,border:""}},[r("el-descriptions-item",{attrs:{label:"项目名称"}},[e._v(e._s(e.viewForm.name))]),r("el-descriptions-item",{attrs:{label:"技术报告位置"}},[e._v(e._s(e.viewForm.tech_report_location))]),r("el-descriptions-item",{attrs:{label:"部门"}},[e._v(e._s(e.viewForm.department))]),r("el-descriptions-item",{attrs:{label:"难度"}},[r("el-rate",{attrs:{disabled:"","show-score":"","text-color":"#ff9900","score-template":"{value}"},model:{value:e.viewForm.score,callback:function(t){e.$set(e.viewForm,"score",t)},expression:"viewForm.score"}})],1),r("el-descriptions-item",{attrs:{label:"备注",span:2}},[e._v(e._s(e.viewForm.remarks||"-"))]),r("el-descriptions-item",{attrs:{label:"内容",span:2}},[r("div",{staticClass:"content-view",domProps:{innerHTML:e._s(e.viewForm.content||"-")}})])],1)],1)]),r("el-dialog",{staticClass:"doc-preview-dialog",attrs:{title:"文档预览",visible:e.docPreviewDialogVisible,"close-on-click-modal":!1,width:"65%"},on:{"update:visible":function(t){e.docPreviewDialogVisible=t}}},[r("div",{staticClass:"doc-preview-header"},[r("span",[e._v("当前文档:")]),r("el-select",{staticStyle:{width:"300px"},attrs:{placeholder:"请选择文档"},on:{change:e.handleDocPreviewChange},model:{value:e.docPreviewSel,callback:function(t){e.docPreviewSel=t},expression:"docPreviewSel"}},e._l(e.boundTemplateList,(function(e){return r("el-option",{key:e.id,attrs:{label:e.title,value:e}})})),1)],1),r("div",{directives:[{name:"loading",rawName:"v-loading",value:e.previewLoading,expression:"previewLoading"}],staticClass:"doc-preview-content"},[e.previewContent?r("div",{domProps:{innerHTML:e._s(e.previewContent)}}):r("el-empty",{attrs:{description:"请选择要预览的文档"}})],1)])]:r("el-empty",{attrs:{description:"请先选择一个项目","image-size":200}}),r("el-dialog",{attrs:{title:"删除确认",visible:e.deleteDialogVisible,width:"400px"},on:{"update:visible":function(t){e.deleteDialogVisible=t}}},[r("div",{staticClass:"delete-warning",staticStyle:{"margin-bottom":"20px"}},[r("i",{staticClass:"el-icon-warning",staticStyle:{color:"#e6a23c","margin-right":"8px"}}),r("span",[e._v("此操作将永久删除该项目下的所有输入项目,请输入'DELETE'确认删除")])]),r("el-form",{ref:"deleteForm",attrs:{model:e.deleteForm,rules:e.deleteRules,"label-width":"100px"}},[r("el-form-item",{attrs:{label:"确认文本",prop:"confirmText"}},[r("el-input",{attrs:{placeholder:"请输入'DELETE'"},model:{value:e.deleteForm.confirmText,callback:function(t){e.$set(e.deleteForm,"confirmText",t)},expression:"deleteForm.confirmText"}})],1)],1),r("span",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[r("el-button",{on:{click:function(t){e.deleteDialogVisible=!1}}},[e._v("取消")]),r("el-button",{attrs:{type:"danger"},on:{click:e.confirmDelete}},[e._v("确认删除")])],1)],1),r("el-dialog",{directives:[{name:"el-drag-dialog",rawName:"v-el-drag-dialog"}],attrs:{visible:e.dialogVisible,title:"修改序号",width:"30%","close-on-click-modal":!1,"append-to-body":""},on:{"update:visible":function(t){e.dialogVisible=t}},scopedSlots:e._u([{key:"footer",fn:function(){return[r("span",{staticClass:"dialog-footer"},[r("el-button",{on:{click:function(t){e.dialogVisible=!1}}},[e._v("取消")]),r("el-button",{attrs:{type:"primary"},on:{click:e.submitSequence}},[e._v("确定")])],1)]},proxy:!0}])},[r("el-form",{attrs:{model:e.sequenceForm,"label-width":"80px"}},[r("el-form-item",{attrs:{label:"序号"}},[r("el-input-number",{attrs:{min:0,"controls-position":"right"},model:{value:e.sequenceForm.sequence,callback:function(t){e.$set(e.sequenceForm,"sequence",t)},expression:"sequenceForm.sequence"}})],1)],1)],1),r("el-dialog",{attrs:{title:"编辑备注",visible:e.remarkDialogVisible,"close-on-click-modal":!1,width:"500px"},on:{"update:visible":function(t){e.remarkDialogVisible=t}}},[r("el-form",{attrs:{model:e.remarkForm}},[r("el-form-item",{attrs:{label:"备注"}},[r("el-input",{attrs:{type:"textarea",rows:4,placeholder:"请输入备注"},model:{value:e.remarkForm.remarks,callback:function(t){e.$set(e.remarkForm,"remarks",t)},expression:"remarkForm.remarks"}})],1)],1),r("div",{attrs:{slot:"footer"},slot:"footer"},[r("el-button",{on:{click:function(t){e.remarkDialogVisible=!1}}},[e._v("取消")]),r("el-button",{attrs:{type:"primary"},on:{click:e.handleRemarkSubmit}},[e._v("确定")])],1)],1)],2)},n=[],o=r("3835"),c=r("5530"),s=r("c7eb"),i=r("1da1"),l=(r("99af"),r("7db0"),r("c740"),r("a630"),r("a15b"),r("d81d"),r("13d5"),r("ace4"),r("b0c0"),r("e9c4"),r("b64b"),r("d3b7"),r("ac1f"),r("3ca3"),r("466d"),r("5319"),r("498a"),r("5cc6"),r("9a8c"),r("a975"),r("735e"),r("c1ac"),r("d139"),r("3a7b"),r("d5d6"),r("82f8"),r("e91f"),r("60bd"),r("5f96"),r("3280"),r("3fcc"),r("ca91"),r("25a1"),r("cd26"),r("3c5d"),r("2954"),r("649e"),r("219c"),r("170b"),r("b39a"),r("72f7"),r("159b"),r("ddb0"),r("2b3d"),r("bf19"),r("9861"),r("db6a")),d=r("24d2"),u=r("bc3a"),p=r.n(u),m=r("a888"),g=r("22d6"),b={name:"ProjectInput",components:{CanvasEditor:g["default"]},directives:{elDragDialog:m["a"]},data:function(){var e=function(e,t,r){"DELETE"!==t?r(new Error("请输入正确的确认文本")):r()};return{pickerOptions:{shortcuts:[{text:"最近一周",onClick:function(e){var t=new Date,r=new Date;r.setTime(r.getTime()-6048e5),e.$emit("pick",[r,t])}},{text:"最近一个月",onClick:function(e){var t=new Date,r=new Date;r.setMonth(r.getMonth()-1),e.$emit("pick",[r,t])}}]},selectedProjectId:null,projectOptions:[],gsprTableData:[],gsprSearchForm:{keyword:"",department:"",content_empty:null},gsprTotal:0,departList:[],sort_field:"sequence",sort_order:"asc",hasExistingData:!1,gsprDialogVisible:!1,gsprDialogTitle:"",gsprForm:{id:"",name:"",tech_report_locations:"",department:"",content:"",remarks:"",sequence:0},gsprRules:{name:[{required:!0,message:"请输入名称",trigger:"blur"}],tech_report_location:[{required:!0,message:"请输入技术报告位置",trigger:"blur"}],department:[{required:!0,message:"请输入部门",trigger:"blur"}],status:[{required:!0,message:"请选择状态",trigger:"change"}]},editorOptions:{},contentDialogVisible:!1,contentForm:{id:"",content:"",name:"",department:""},deleteDialogVisible:!1,deleteForm:{confirmText:""},deleteRules:{confirmText:[{required:!0,message:"请输入确认文本",trigger:"blur"},{validator:e,trigger:"blur"}]},editorUrl:"/ckeditor/ckeditor.js",editorConfig:{language:"zh-cn",height:"300px"},dialogVisible:!1,sequenceForm:{sequence:1,id:null},remarkDialogVisible:!1,remarkForm:{id:"",remarks:""},documentIds:[],templateLocations:[],matchedContents:{},Modetype:"edit",htmlData:"",docJson:null,keys:(new Date).getTime(),viewDialogVisible:!1,viewForm:{name:"",tech_report_location:"",department:"",score:0,remarks:"",content:""},docPreviewDialogVisible:!1,previewData:{name:"",tech_report_location:"",interpretation:"",content:""},boundTemplateList:[],docPreviewSel:"",previewLoading:!1,previewContent:"",currentPage:1,pageSize:30}},mounted:function(){var e=this;this.fetchProjects().then((function(){var t=e.$route.query.id;t&&(e.selectedProjectId=parseInt(t),e.handleProjectConfirm())}));var t=this.$route.query.projectData;if(t)try{var r=JSON.parse(decodeURIComponent(t));this.templateLocations=r.locations,this.matchedContents=this.templateLocations.reduce((function(e,t){if("template_location"===t.type){var r=t.tech_report_location;e[r]=t}return e}),{})}catch(a){console.error("解析项目数据失败:",a)}this.init()},methods:{handleDocPreviewChange:function(e){var t=this;return Object(i["a"])(Object(s["a"])().mark((function r(){var a;return Object(s["a"])().wrap((function(r){while(1)switch(r.prev=r.next){case 0:if(e){r.next=3;break}return t.previewContent="",r.abrupt("return");case 3:t.previewLoading=!0;try{a=JSON.parse(e.data),t.previewContent=a[0].content}catch(n){t.$message.error("获取文档预览失败:"+(n.message||"未知错误")),t.previewContent=""}finally{t.previewLoading=!1}case 5:case"end":return r.stop()}}),r)})))()},getPlainText:function(e){if(!e)return"";var t=document.createElement("div");t.innerHTML=e;var r=t.textContent||t.innerText;return r.length>50?r.substring(0,50)+"...":r},save:function(e){console.log("保存数据:",e)},getSave:function(e){console.log("是否已保存:",e)},handleEditContent:function(e){var t=this,r=this.projectOptions.find((function(e){return e.id===t.selectedProjectId})),a=this.cleanEmptyStyles(this.convertTextToHtml(e.content));this.contentForm={sequence:e.sequence,project:r.id,project_name:r.name,id:e.id,tech_report_location:e.tech_report_location,content:e.content,name:e.name,department:e.department},e.font_style?this.editorOptions=e.font_style:this.editorOptions={font:"Arial",size:14,bold:!1,align:"left"},this.htmlData=a,this.Modetype="edit",this.keys=(new Date).getTime(),this.contentDialogVisible=!0},handleContentSubmit:function(){var e=this;return Object(i["a"])(Object(s["a"])().mark((function t(){var r,a,n,o,i;return Object(s["a"])().wrap((function(t){while(1)switch(t.prev=t.next){case 0:return t.prev=0,r=e.$refs.wordEditor.editorRef.command.getHTML(),a=e.editorOptions||{font:"Arial",size:14,align:"left"},n="font-family: ".concat(a.font,"; font-size: ").concat(a.size,"px; text-align: ").concat(a.align,";}"),o=r.main.replace(/<table[^>]*>([\s\S]*?)<\/table>/g,(function(e){var t=e.replace(/>\s+</g,"><").replace(/\n/g,"").replace(/<div style="text-align: justify;">([\s\S]*?)<\/div>/g,"$1").replace(/<a[^>]*>([\s\S]*?)<\/a>/g,(function(e,t){return'<span style="'.concat(n,'">').concat(t,"</span>")}));return t.replace(/(<td[^>]*>)([\s\S]*?)(<\/td>)/g,(function(e,t,r,a){var o=r.replace(/<div style="text-align: justify;">([\s\S]*?)<\/div>/g,"$1").replace(/<a[^>]*>([\s\S]*?)<\/a>/g,(function(e,t){return'<span style="'.concat(n,'">').concat(t,"</span>")})).replace(/\n/g,"").replace(/\s+/g," ").replace(/^\s+|\s+$/g,"").replace(/—\s+/g,"— ").replace(/\s+—/g," —").replace(/\s*([,.])\s*/g,"$1 ");return t+o+a}))})),e.contentForm.content=o,i=Object(c["a"])(Object(c["a"])({},e.contentForm),{},{id:e.contentForm.id,content:e.contentForm.content,font_style:e.editorOptions}),t.next=9,Object(l["V"])(i);case 9:e.$message.success("内容更新成功"),e.contentDialogVisible=!1,e.fetchGsprData(),t.next=17;break;case 14:t.prev=14,t.t0=t["catch"](0),e.$message.error("内容更新失败");case 17:case"end":return t.stop()}}),t,null,[[0,14]])})))()},handleEditRemark:function(e){this.remarkForm={id:e.id,remarks:e.remarks||"",sequence:e.sequence,project:e.project,content:e.content},this.remarkDialogVisible=!0},handleRemarkSubmit:function(){var e=this;return Object(i["a"])(Object(s["a"])().mark((function t(){var r;return Object(s["a"])().wrap((function(t){while(1)switch(t.prev=t.next){case 0:return t.prev=0,r=Object(c["a"])(Object(c["a"])({},e.remarkForm),{},{remarks:e.remarkForm.remarks,id:e.remarkForm.id}),t.next=4,Object(l["V"])(r);case 4:e.$message.success("备注更新成功"),e.remarkDialogVisible=!1,e.fetchGsprData(),t.next=12;break;case 9:t.prev=9,t.t0=t["catch"](0),e.$message.error("备注更新失败");case 12:case"end":return t.stop()}}),t,null,[[0,9]])})))()},rateScope:function(e,t){var r=this;return Object(i["a"])(Object(s["a"])().mark((function a(){var n,o;return Object(s["a"])().wrap((function(a){while(1)switch(a.prev=a.next){case 0:return a.prev=0,a.next=3,Object(l["W"])({id:t.id,score:e});case 3:if(n=a.sent,200!==n.status){a.next=10;break}r.$message.success("评分更新成功"),o=r.gsprTableData.findIndex((function(e){return e.id===t.id})),-1!==o&&(r.gsprTableData[o].score=e),a.next=11;break;case 10:throw new Error(n.message||"评分更新失败");case 11:a.next=17;break;case 13:a.prev=13,a.t0=a["catch"](0),r.$message.error(a.t0.message||"评分更新失败"),t.score=t.score||0;case 17:case"end":return a.stop()}}),a,null,[[0,13]])})))()},handleEditSequence:function(e){this.sequenceForm.sequence=e.sequence,this.sequenceForm.id=e.id,this.dialogVisible=!0},submitSequence:function(){var e=this;return Object(i["a"])(Object(s["a"])().mark((function t(){return Object(s["a"])().wrap((function(t){while(1)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,Object(l["hb"])({id:e.sequenceForm.id,new_sequence:e.sequenceForm.sequence});case 3:e.$message.success("修改序号成功"),e.dialogVisible=!1,e.fetchGsprData(),t.next=11;break;case 8:t.prev=8,t.t0=t["catch"](0),e.$message.error("修改序号失败:"+t.t0.message);case 11:case"end":return t.stop()}}),t,null,[[0,8]])})))()},handleExport:function(){var e=this;return Object(i["a"])(Object(s["a"])().mark((function t(){var r,a,n,o,c,i,l,d,u,m,g,b;return Object(s["a"])().wrap((function(t){while(1)switch(t.prev=t.next){case 0:return r=e.$loading({lock:!0,text:"导出中..."}),t.prev=1,t.next=4,p()({url:"".concat("http://58.34.94.147:8084","/project-input/export"),method:"post",data:{project_id:e.selectedProjectId},headers:{"Content-Type":"application/json",Authorization:"Bearer "+localStorage.getItem("token")}});case 4:if(a=t.sent,a.data&&a.data.data&&a.data.data.data.file_content){t.next=7;break}throw new Error("导出失败:返回数据格式错误");case 7:for(n=a.data.data.data,o=n.file_content,c=n.file_name,i=atob(o),l=new Array(i.length),d=0;d<i.length;d++)l[d]=i.charCodeAt(d);u=new Uint8Array(l),m=new Blob([u],{type:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"}),g=document.createElement("a"),g.href=window.URL.createObjectURL(m),g.download=c,document.body.appendChild(g),g.click(),document.body.removeChild(g),window.URL.revokeObjectURL(g.href),e.$message.success(a.data.message||"导出成功"),t.next=41;break;case 23:if(t.prev=23,t.t0=t["catch"](1),console.error("导出错误:",t.t0),b="导出失败,请稍后重试",!t.t0.response){t.next=40;break}t.t1=t.t0.response.status,t.next=401===t.t1?31:403===t.t1?33:404===t.t1?35:500===t.t1?37:39;break;case 31:return b="导出失败:未授权,请重新登录",t.abrupt("break",40);case 33:return b="导出失败:没有导出权限",t.abrupt("break",40);case 35:return b="导出失败:导出接口不存在",t.abrupt("break",40);case 37:return b="导出失败:服务器内部错误",t.abrupt("break",40);case 39:b="导出失败:".concat(t.t0.response.status);case 40:e.$message.error(b);case 41:return t.prev=41,r.close(),t.finish(41);case 44:case"end":return t.stop()}}),t,null,[[1,23,41,44]])})))()},handleDeleteGspr:function(e){var t=this;return Object(i["a"])(Object(s["a"])().mark((function r(){return Object(s["a"])().wrap((function(r){while(1)switch(r.prev=r.next){case 0:return r.prev=0,r.next=3,t.$confirm("确认删除该记录?","提示",{type:"warning"});case 3:return r.next=5,Object(l["R"])({id:e.id});case 5:t.$message.success("删除成功"),t.fetchGsprData(),r.next=12;break;case 9:r.prev=9,r.t0=r["catch"](0),"cancel"!==r.t0&&t.$message.error("删除失败");case 12:case"end":return r.stop()}}),r,null,[[0,9]])})))()},handleDocViewGspr:function(e){var t=this;return Object(i["a"])(Object(s["a"])().mark((function e(){var r;return Object(s["a"])().wrap((function(e){while(1)switch(e.prev=e.next){case 0:try{r=t.$loading({lock:!0,text:"加载文档预览...",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"}),Object(d["m"])({ids:t.documentIds.join(",")||0}).then((function(e){200===e.status&&(t.boundTemplateList=e.data,r.close(),t.docPreviewDialogVisible=!0)}))}catch(a){loading.close(),t.$message.error("获取文档预览失败:"+(a.message||"未知错误"))}case 1:case"end":return e.stop()}}),e)})))()},handleViewGspr:function(e){this.viewForm={name:e.name,tech_report_location:e.tech_report_location,department:e.department,score:e.score||0,remarks:e.remarks,content:e.content},this.viewDialogVisible=!0},handleEditGspr:function(e){this.gsprDialogTitle="编辑文献项目",this.gsprForm=Object(c["a"])({},e),this.gsprDialogVisible=!0},convertTextToHtml:function(e){if(!e)return"";var t=e;return t=t.replace(/\[表格\|style=(.*?)\|class=(.*?)\]([\s\S]*?)(?=\[|$)/g,(function(e,t,r,a){var n=a.trim().split("\n"),c='<table style="'.concat(t,'" class="').concat(r,'">');return n.forEach((function(e){c+="<tr>";var t=e.split("|").map((function(e){var t=e.match(/(.*?)(?:\[style=(.*?)\|class=(.*?)\])?$/);if(t){var r=Object(o["a"])(t,4),a=(r[0],r[1]),n=r[2],c=void 0===n?"":n,s=r[3],i=void 0===s?"":s;return'<td style="'.concat(c,'" class="').concat(i,'">').concat(a.trim(),"</td>")}return"<td>".concat(e.trim(),"</td>")}));c+=t.join("")+"</tr>"})),c+="</table>",c})),t=t.replace(/\[图片:(.*?)\|style=(.*?)\|class=(.*?)\]/g,(function(e,t,r,a){return'<img src="'.concat(t,'" alt="图片" style="').concat(r,'" class="').concat(a,'">')})),t=t.replace(/\[文本:(.*?)\|style=(.*?)\|class=(.*?)\]/g,(function(e,t,r,a){return'<span style="'.concat(r,'" class="').concat(a,'">').concat(t,"</span>")})),t=t.replace(/\n/g,"<br>"),t},cleanEmptyStyles:function(e){return e.replace(/style=""/g,"").replace(/class=""/g,"").replace(/\s+>/g,">")},handleGsprSubmit:function(){var e=this;return Object(i["a"])(Object(s["a"])().mark((function t(){var r,a;return Object(s["a"])().wrap((function(t){while(1)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,e.$refs.gsprForm.validate();case 3:if(r=function(e){var t=document.createElement("div");t.innerHTML=e;var r=t.getElementsByTagName("img");Array.from(r).forEach((function(e){var t="[图片:".concat(e.src,"]");e.replaceWith(document.createTextNode(t))}));var a=t.getElementsByTagName("table");return Array.from(a).forEach((function(e){var t=Array.from(e.rows).map((function(e){return Array.from(e.cells).map((function(e){return e.textContent.trim()})).join(" | ")})),r="[表格]\n"+t.join("\n");e.replaceWith(document.createTextNode(r))})),t.textContent||t.innerText},a=Object(c["a"])(Object(c["a"])({},e.gsprForm),{},{content:r(e.gsprForm.content)}),!e.gsprForm.id){t.next=10;break}return t.next=8,Object(l["V"])(a);case 8:t.next=12;break;case 10:return t.next=12,Object(l["Q"])(a);case 12:e.$message.success(e.gsprForm.id?"更新成功":"创建成功"),e.gsprDialogVisible=!1,e.fetchGsprData(),t.next=20;break;case 17:t.prev=17,t.t0=t["catch"](0),!1!==t.t0&&e.$message.error("保存失败");case 20:case"end":return t.stop()}}),t,null,[[0,17]])})))()},fetchProjects:function(){var e=this;return Object(i["a"])(Object(s["a"])().mark((function t(){var r;return Object(s["a"])().wrap((function(t){while(1)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,Object(d["l"])({page:1,pageSize:999});case 3:r=t.sent,200===r.status&&(e.projectOptions=r.data.dataList,!e.selectedProjectId&&e.$route.query.id&&(e.selectedProjectId=parseInt(e.$route.query.id),e.handleProjectConfirm())),t.next=10;break;case 7:t.prev=7,t.t0=t["catch"](0),e.$message.error("获取项目列表失败");case 10:case"end":return t.stop()}}),t,null,[[0,7]])})))()},handleProjectConfirm:function(){var e=this;return Object(i["a"])(Object(s["a"])().mark((function t(){var r;return Object(s["a"])().wrap((function(t){while(1)switch(t.prev=t.next){case 0:if(e.selectedProjectId){t.next=3;break}return e.$message.warning("请先选择一个项目"),t.abrupt("return");case 3:if(r=e.projectOptions.find((function(t){return t.id===e.selectedProjectId})),r){t.next=7;break}return e.$message.error("未找到选中的项目"),t.abrupt("return");case 7:e.$store.dispatch("project/setCurrentProject",{id:r.id,name:r.name}),localStorage.setItem("currentProject",JSON.stringify({id:r.id,name:r.name})),e.gsprSearchForm.project_id=e.selectedProjectId,e.fetchGsprData();case 11:case"end":return t.stop()}}),t)})))()},handleAddGspr:function(){var e=this;return Object(i["a"])(Object(s["a"])().mark((function t(){var r,a;return Object(s["a"])().wrap((function(t){while(1)switch(t.prev=t.next){case 0:if(e.selectedProjectId){t.next=3;break}return e.$message.warning("请先选择一个项目"),t.abrupt("return");case 3:return r=e.$loading({lock:!0,text:"正在创建项目...",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"}),t.prev=4,t.next=7,Object(l["T"])({project_id:e.selectedProjectId});case 7:if(a=t.sent,200!==a.status){t.next=12;break}return e.$message.success("输入项目创建成功"),t.next=12,e.fetchGsprData();case 12:t.next=17;break;case 14:t.prev=14,t.t0=t["catch"](4),e.$message.error("创建失败: "+(t.t0.message||"未知错误"));case 17:return t.prev=17,r.close(),t.finish(17);case 20:case"end":return t.stop()}}),t,null,[[4,14,17,20]])})))()},handleUpdateGspr:function(){var e=this;return Object(i["a"])(Object(s["a"])().mark((function t(){var r,a,n;return Object(s["a"])().wrap((function(t){while(1)switch(t.prev=t.next){case 0:if(e.selectedProjectId){t.next=3;break}return e.$message.warning("请先选择一个项目"),t.abrupt("return");case 3:return r=e.projectOptions.find((function(t){return t.id===e.selectedProjectId})),t.prev=4,t.next=7,e.$confirm("此操作将更新当前项目的所有输入项目,是否继续?","提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"});case 7:return a=e.$loading({lock:!0,text:"正在更新项目...",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"}),t.prev=8,t.next=11,Object(l["T"])({project_id:r.id});case 11:if(n=t.sent,console.log(n),200===n.status){t.next=15;break}throw new Error("更新失败");case 15:return e.$message.success("输入项目更新成功"),t.next=18,e.fetchGsprData();case 18:return t.prev=18,a.close(),t.finish(18);case 21:t.next=26;break;case 23:t.prev=23,t.t0=t["catch"](4),"cancel"!==t.t0&&e.$message.error("更新失败: "+(t.t0.message||"未知错误"));case 26:case"end":return t.stop()}}),t,null,[[4,23],[8,,18,21]])})))()},handleDeleteItems:function(){var e=this;return Object(i["a"])(Object(s["a"])().mark((function t(){var r;return Object(s["a"])().wrap((function(t){while(1)switch(t.prev=t.next){case 0:if(e.selectedProjectId){t.next=3;break}return e.$message.warning("请先选择一个项目"),t.abrupt("return");case 3:r=e.projectOptions.find((function(t){return t.id===e.selectedProjectId})),e.$confirm('您确定要删除项目 "'.concat(r.name,'" 的所有输入项目吗?此操作不可恢复。'),"警告",{confirmButtonText:"继续删除",cancelButtonText:"取消",type:"warning"}).then((function(){e.deleteForm.confirmText="",e.deleteDialogVisible=!0})).catch((function(){e.$message({type:"info",message:"已取消删除"})}));case 5:case"end":return t.stop()}}),t)})))()},confirmDelete:function(){var e=this;this.$refs.deleteForm.validate(function(){var t=Object(i["a"])(Object(s["a"])().mark((function t(r){var a,n;return Object(s["a"])().wrap((function(t){while(1)switch(t.prev=t.next){case 0:if(r){t.next=2;break}return t.abrupt("return",!1);case 2:return t.prev=2,a=e.$loading({lock:!0,text:"正在删除...",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"}),t.next=6,Object(l["u"])({project_id:e.selectedProjectId});case 6:n=t.sent,a.close(),200===n.status?(e.$message.success("删除成功"),e.deleteDialogVisible=!1,e.fetchGsprData()):e.$message.error(n.message||"删除失败"),t.next=14;break;case 11:t.prev=11,t.t0=t["catch"](2),e.$message.error("删除失败:"+(t.t0.message||"未知错误"));case 14:case"end":return t.stop()}}),t,null,[[2,11]])})));return function(e){return t.apply(this,arguments)}}())},fetchGsprData:function(){var e=this;return Object(i["a"])(Object(s["a"])().mark((function t(){var r,a,n,o;return Object(s["a"])().wrap((function(t){while(1)switch(t.prev=t.next){case 0:if(e.gsprTableData=[],e.selectedProjectId){t.next=4;break}return e.$message.warning("请先选择项目"),t.abrupt("return");case 4:return r=e.$loading({lock:!0,text:"加载中...",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"}),t.prev=5,a={project_id:e.selectedProjectId,page:e.currentPage,page_size:e.pageSize,sort_field:e.sort_field,sort_order:e.sort_order},t.next=9,Object(l["S"])(a);case 9:if(n=t.sent,n&&n.data){t.next=12;break}throw new Error("API响应数据格式错误");case 12:n.data.list.map((function(e){null==e.score&&(e.score=0)})),o=n.data,e.gsprTableData=o.list,e.gsprTotal=o.total,e.hasExistingData=e.gsprTableData.length>0,t.next=26;break;case 19:t.prev=19,t.t0=t["catch"](5),console.error("数据加载失败:",t.t0),e.$message.error(t.t0.message||"获取数据失败"),e.gsprTableData=[],e.gsprTotal=0,e.hasExistingData=!1;case 26:return t.prev=26,r.close(),t.finish(26);case 29:case"end":return t.stop()}}),t,null,[[5,19,26,29]])})))()},isLocationMatched:function(e){if(!e)return!1;var t=e.replace(/[\[\]【】]/g,"");return!!this.matchedContents[t]},handleGsprSearch:function(){this.currentPage=1,this.searchList()},searchList:function(){var e=this;return Object(i["a"])(Object(s["a"])().mark((function t(){var r,a,n,o,i;return Object(s["a"])().wrap((function(t){while(1)switch(t.prev=t.next){case 0:return e.gsprTableData=[],r=e.$loading({lock:!0,text:"加载中...",spinner:"el-icon-loading",background:"rgba(0, 0, 0, 0.7)"}),t.prev=2,o=Object(c["a"])(Object(c["a"])(Object(c["a"])({project_id:e.selectedProjectId,page:e.currentPage,page_size:e.pageSize,sort_field:e.sort_field,sort_order:e.sort_order},e.gsprPageForm),e.gsprSearchForm),{},{start_date:(null===(a=e.gsprSearchForm.dateRange)||void 0===a?void 0:a[0])||null,end_date:(null===(n=e.gsprSearchForm.dateRange)||void 0===n?void 0:n[1])||null}),t.next=6,Object(l["S"])(o);case 6:i=t.sent,i.data.list.map((function(e){null==e.score&&(e.score=0)})),e.gsprTableData=i.data.list,e.gsprTotal=i.data.total,e.hasExistingData=e.gsprTableData.length>0,console.log(i);case 12:return t.prev=12,r.close(),t.finish(12);case 15:case"end":return t.stop()}}),t,null,[[2,,12,15]])})))()},handleGsprReset:function(){this.gsprSearchForm={keyword:"",department:"",project_id:this.selectedProjectId,dateRange:[],content_empty:null},this.handleGsprSearch()},handleSortChange:function(e){var t=e.prop,r=e.order;this.sort_field=t,this.sort_order="ascending"===r?"asc":"desc",r||(this.sort_field="name",this.sort_order="desc"),this.fetchGsprData()},init:function(){var e=this;Object(l["v"])().then((function(t){200===t.status&&(e.departList=t.data.departments)})),Object(d["g"])({id:this.$route.query.id}).then((function(t){e.documentIds=t.data.documentIds}))},handleGsprSizeChange:function(e){this.pageSize=e,this.currentPage=1,this.fetchGsprData()},handleGsprCurrentChange:function(e){this.currentPage=e,this.fetchGsprData()}}},f=b,h=(r("326d"),r("2877")),v=Object(h["a"])(f,a,n,!1,null,null,null);t["default"]=v.exports},"24d2":function(e,t,r){"use strict";r.d(t,"k",(function(){return n})),r.d(t,"b",(function(){return o})),r.d(t,"o",(function(){return c})),r.d(t,"f",(function(){return s})),r.d(t,"d",(function(){return i})),r.d(t,"l",(function(){return l})),r.d(t,"c",(function(){return d})),r.d(t,"p",(function(){return u})),r.d(t,"g",(function(){return p})),r.d(t,"e",(function(){return m})),r.d(t,"j",(function(){return g})),r.d(t,"m",(function(){return b})),r.d(t,"n",(function(){return f})),r.d(t,"h",(function(){return h})),r.d(t,"i",(function(){return v})),r.d(t,"a",(function(){return j}));var a=r("b775");function n(e){return Object(a["a"])({url:"/project/category/search",method:"post",data:e})}function o(e){return Object(a["a"])({url:"/project/category/create",method:"post",data:e})}function c(e){return Object(a["a"])({url:"/project/category/update",method:"post",data:e})}function s(e){return Object(a["a"])({url:"/project/category/info",method:"post",data:e})}function i(e){return Object(a["a"])({url:"/project/category/delete",method:"post",data:e})}function l(e){return Object(a["a"])({url:"/project/search",method:"post",data:e})}function d(e){return Object(a["a"])({url:"/project/create",method:"post",data:e})}function u(e){return Object(a["a"])({url:"/project/update",method:"post",data:e})}function p(e){return Object(a["a"])({url:"/project/info",method:"post",data:e})}function m(e){return Object(a["a"])({url:"/project/delete",method:"post",data:e})}function g(e){return Object(a["a"])({url:"/project/relate",method:"post",data:e})}function b(e){return Object(a["a"])({url:"/template/searchTemplateList",method:"post",data:e})}function f(e){return Object(a["a"])({url:"/template/seachTemplateListNoData",method:"post",data:e})}function h(e){return Object(a["a"])({url:"/project/getphases",method:"post",data:e})}function v(e){return Object(a["a"])({url:"/project/getstatus",method:"post",data:e})}function j(e){return Object(a["a"])({url:"/project/calculate",method:"post",data:e})}},"326d":function(e,t,r){"use strict";r("bca2")},bca2:function(e,t,r){}}]);