2 lines
13 KiB
JavaScript
2 lines
13 KiB
JavaScript
"use strict";const e=require("../../common/vendor.js"),a=require("../../request/api.js"),t=require("../../request/request.js"),r=require("../../utils/draftCache.js"),u=require("../../utils/useDraftCache.js"),l=require("../../utils/upload.js");if(!Array){(e.resolveComponent("up-textarea")+e.resolveComponent("up-upload")+e.resolveComponent("u-popup")+e.resolveComponent("wd-signature"))()}Math||((()=>"../../uni_modules/uview-plus/components/u-textarea/u-textarea.js")+(()=>"../../uni_modules/uview-plus/components/u-upload/u-upload.js")+(()=>"../../uni_modules/uview-plus/components/u-popup/u-popup.js")+(()=>"../../node-modules/wot-design-uni/components/wd-signature/wd-signature.js"))();const i={__name:"acceptance",setup(i){const n=e.ref(""),s=e.ref(""),o=e.ref(""),v=e.ref(""),c=e.ref(""),d=e.ref(!1),f=e.computed((()=>d.value?"加载中...":c.value||"暂无下一步流程")),m=e=>e?e.taskId?String(e.taskId):e.flowTaskId?String(e.flowTaskId):e.currentTaskId?String(e.currentTaskId):"":"",p=e=>{if(!(null==e?void 0:e.length))return null;if(n.value){const a=e.find((e=>e.rectify&&String(e.rectify.rectifyId)===String(n.value)));if(a)return a}if(o.value){const a=e.find((e=>String(e.assignId)===String(o.value)&&e.rectify));if(a)return a}return e.find((e=>e.rectify))||null},g=e=>{if(!e)return"";if(e.taskId)return String(e.taskId);if(e.flowTaskId)return String(e.flowTaskId);if(e.currentTaskId)return String(e.currentTaskId);const a=e.assigns||[],t=p(a),r=m(t);if(r)return r;for(const u of a){const e=m(u);if(e)return e}return""},y=()=>{const a=(()=>{try{const a=e.index.getStorageSync("userInfo");return a?"string"==typeof a?JSON.parse(a):a:{}}catch(a){return{}}})(),t=a.userIdentity;return null!=(null==t?void 0:t.deptId)&&""!==t.deptId?String(t.deptId):null!=a.deptId&&""!==a.deptId?String(a.deptId):""},h=e.computed((()=>{var e;return(null==(e=F.rectifierName)?void 0:e.trim())||"暂无"})),I=e.computed((()=>2===B.result||1===B.result&&"no"===B.quickApproveRadio)),k=e.ref(""),w=e.ref(""),R=e.ref(""),S=e.ref(""),A=e.ref(!1),x=e.ref([]),T=e.ref(!1),N=e=>{if(!e)return"";const a=e.identityId??e.userIdentityId??e.userId??"";return""===a||null==a?"":String(a)},C=e=>{const a=N(e);return a?`identity-${a}`:`user-${e.userId||e.nickName||""}`},q=e=>{if(!e)return"";const a=e.nickName||e.userName||e.name||"",t=e.identityName||"";return a&&t?`${a}(${t})`:a||t||"未知人员"},P=async()=>{R.value=k.value,S.value=w.value,A.value=!0,await(async()=>{const e=y();if(e){T.value=!0;try{const t=await a.getDeptUsers(e,{type:"yes"===B.quickApproveRadio?2:3});0===t.code?x.value=t.data||[]:x.value=[]}catch(t){console.error("获取部门人员失败:",t),x.value=[]}finally{T.value=!1}}else x.value=[]})()},b=()=>{R.value?(k.value=R.value,w.value=S.value,A.value=!1):e.index.showToast({title:"请选择下一步处理人",icon:"none"})},L=()=>{A.value=!1},D=e=>{B.result=e,2===e?(k.value="",w.value=""):B.quickApproveRadio||(B.quickApproveRadio="yes"),_()},j=e=>{B.quickApproveRadio=e,k.value="",w.value="",_()},_=async()=>{d.value=!0;try{const e=v.value;if(!e)return void(c.value="");const t=await a.getFlowNextNodes({taskId:e,previewVariables:2===B.result?{pass:!1}:{pass:!0,quickApprove:"yes"===B.quickApproveRadio},includeSubProcess:!0});if(0===t.code){const e=t.data&&"object"==typeof t.data?t.data:t;c.value=(e=>{var a;if(!e)return"";const t=e.branches||[],r=t.find((e=>e.matched))||t[0];return(null==(a=null==r?void 0:r.nextNode)?void 0:a.taskName)||""})(e)}else c.value=""}catch(e){console.error("获取下一步流程失败:",e),c.value=""}finally{d.value=!1}},F=e.reactive({rectifyPlan:"",rectificationMeasures:"",controlMeasures:"",rectifyResult:"",planCost:null,actualCost:null,managerNames:[],memberNames:[],rectifierName:"",rectifyStatusName:""}),M=e=>{if(!e)return"暂无";if(Array.isArray(e)){return e.filter(Boolean).join("、")||"暂无"}return"string"==typeof e&&e.trim()||"暂无"},U=e=>{if(null==e||""===e)return"暂无";const a=Number(e);return Number.isNaN(a)?"暂无":`${a.toFixed(2)} 元`},z=e.ref([]),B=e.reactive({result:1,verifyRemark:"",quickApproveRadio:"yes"}),H=e.ref([]),K=e.ref(300),W=e.ref(300),$=e.ref(!0),E=e.ref(""),V=e.ref(""),J=e.ref(340),O=e.ref(null),G=e.ref(!0),Q=e.ref(!1),X=e.ref([]),Y=e.ref(""),Z=e.ref(!1);let ee=null;const ae=e=>{const a=e?l.toSubmitFileUrl(e):"";if(!a)return $.value=!0,V.value="",E.value="",Y.value="",void(G.value=!0);V.value=a,E.value=a,Y.value="",$.value=!1,G.value=!1},te=e=>{e&&(Y.value=e,E.value=e,V.value="",$.value=!1,G.value=!1)},{showRestoreBanner:re,clear:ue,restore:le,save:ie,bindAutoSave:ne}=u.useDraftCache({getKey:()=>r.buildDraftKey(r.DRAFT_NS.ACCEPT,n.value),getFallbackKeys:()=>{const e=r.buildDraftKey(r.DRAFT_NS.ACCEPT,n.value),a=r.buildDraftKeyCompact(r.DRAFT_NS.ACCEPT,n.value);return a!==e?[a]:[]},getPayload:()=>({formData:{result:B.result,verifyRemark:B.verifyRemark,quickApproveRadio:B.quickApproveRadio},selectedAssigneeIdentityId:k.value,selectedAssigneeName:w.value,fileList1:H.value,signatureServerPath:V.value,signatureUrl:E.value,signatureLocalPath:Y.value,showCanvas:$.value,signaturePaths:X.value}),hasContent:e=>!!((e.formData||{}).verifyRemark||e.fileList1&&e.fileList1.length>0||e.signatureServerPath||e.signatureLocalPath||e.signaturePaths&&e.signaturePaths.length>0),applyPayload:e=>{const a=e.formData||{};B.result=void 0!==a.result?a.result:1,B.verifyRemark=a.verifyRemark||"",B.quickApproveRadio="no"===a.quickApproveRadio?"no":"yes",k.value=e.selectedAssigneeIdentityId||"",w.value=e.selectedAssigneeName||"",H.value=e.fileList1||[],X.value=e.signaturePaths||[],e.signatureServerPath||e.signatureUrl?ae(e.signatureServerPath||e.signatureUrl):e.signatureLocalPath?te(e.signatureLocalPath):($.value=void 0===e.showCanvas||e.showCanvas,V.value="",E.value="",Y.value="",G.value=!0)},clearForm:()=>{B.result=1,B.verifyRemark="",B.quickApproveRadio="yes",k.value="",w.value="",H.value=[],V.value="",E.value="",Y.value="",$.value=!0,X.value=[],O.value&&O.value.clear()},canSave:()=>!!n.value,requireInitialized:!0,onAfterRestore:e=>{var a;_(),e.signatureServerPath||e.signatureUrl||e.signatureLocalPath||(null==(a=e.signaturePaths)?void 0:a.length)>0&&setTimeout((()=>{O.value&&(G.value=!1)}),450)}});ne((()=>[B.result,B.verifyRemark,B.quickApproveRadio,k.value,w.value,H.value,V.value,E.value,Y.value,$.value,X.value]));const se=e=>e?(e.startsWith("http://")||e.startsWith("https://"),t.toImageUrl(e)):"",oe=e=>{if(!Array.isArray(e)||0===e.length)return[];const a=e.map((e=>e.nickName||e.userName||e.name||"")).filter(Boolean);return[...new Set(a)]},ve=e=>{e&&(F.rectifyPlan=e.rectifyPlan||"",F.rectificationMeasures=e.rectificationMeasures||"",F.controlMeasures=e.controlMeasures||"",F.rectifyResult=e.rectifyResult||"",F.planCost=e.planCost??null,F.actualCost=e.actualCost??null,F.managerNames=(e=>Array.isArray(e.managers)&&e.managers.length>0?oe(e.managers):e.managerNames||[])(e),F.memberNames=(e=>Array.isArray(e.members)&&e.members.length>0?oe(e.members):e.memberNames||[])(e),F.rectifierName=e.rectifierName||"",F.rectifyStatusName=e.rectifyStatusName||e.statusName||"",z.value=e.attachments||[])},ce=async()=>{n.value?await(async()=>{if(n.value)try{const t=await a.getRectifyDetail({rectifyId:n.value});if(0===t.code&&t.data){ve(t.data),!s.value&&t.data.hazardId&&(s.value=String(t.data.hazardId)),!o.value&&t.data.assignId&&(o.value=String(t.data.assignId));const e=g(t.data);e&&(v.value=e)}else e.index.showToast({title:t.msg||"获取整改详情失败",icon:"none"})}catch(t){console.error("获取整改详情失败:",t),e.index.showToast({title:"获取整改详情失败",icon:"none"})}})():s.value&&await(async()=>{if(s.value)try{const t=await a.getHiddenDangerDetail({hazardId:s.value,assignId:o.value});if(0===t.code&&t.data){const a=p(t.data.assigns);(null==a?void 0:a.rectify)?(ve(a.rectify),!n.value&&a.rectify.rectifyId&&(n.value=String(a.rectify.rectifyId))):e.index.showToast({title:"该隐患暂无整改记录",icon:"none"});const r=m(a)||g(t.data);r&&(v.value=r)}else e.index.showToast({title:t.msg||"获取详情失败",icon:"none"})}catch(t){console.error("获取隐患详情失败:",t),e.index.showToast({title:"请求失败",icon:"none"})}})(),await _()},de=()=>{e.index.navigateBack()},fe=async()=>{if(n.value){if(1!==B.result||B.quickApproveRadio?1!==B.result||"no"!==B.quickApproveRadio||k.value||(e.index.showToast({title:"请选择下一步处理人",icon:"none"}),0):(e.index.showToast({title:"请选择是否快速审批",icon:"none"}),0))if($.value){if(!O.value||G.value)return void e.index.showToast({title:"请进行电子签名",icon:"none"});Q.value=!0,e.index.showLoading({title:"正在提交...",mask:!0}),O.value.confirm()}else{if(!V.value&&!Y.value)return void e.index.showToast({title:"请进行电子签名",icon:"none"});Q.value=!0,e.index.showLoading({title:"正在提交...",mask:!0});try{if(!V.value&&Y.value){const{url:e}=await l.uploadToCloud(Y.value);ae(e)}await me()}catch(a){Q.value=!1,e.index.hideLoading(),console.error("签名上传失败:",a),e.index.showToast({title:"签名上传失败,请重试",icon:"none"})}}}else e.index.showToast({title:"缺少整改ID",icon:"none"})},me=async()=>{const t=H.value.filter((e=>"success"===e.status)).map((e=>l.buildAttachmentItem(e))),r={rectifyId:Number(n.value),result:B.result,verifyRemark:B.verifyRemark||"",attachments:t,signPath:V.value||""};1===B.result&&(r.quickApprove="yes"===B.quickApproveRadio,"no"===B.quickApproveRadio&&(r.assigneeIdentityId=k.value)),console.log("提交验收参数:",r);try{const t=await a.acceptanceRectification(r);e.index.hideLoading(),0===t.code?(ue(!1),e.index.showToast({title:"验收成功",icon:"success"}),setTimeout((()=>{e.index.navigateBack()}),1500)):e.index.showToast({title:t.msg||"验收失败",icon:"none"})}catch(u){e.index.hideLoading(),console.error("验收失败:",u),e.index.showToast({title:"请求失败",icon:"none"})}finally{Q.value=!1}},pe=e.getCurrentInstance(),{afterRead:ge,deletePic:ye}=l.createUploadListHandlers(H,{watermark:{canvasId:"watermarkCanvas",canvasWidthRef:K,canvasHeightRef:W,instance:pe}}),he=()=>{G.value=!1},Ie=()=>{G.value=!1},ke=()=>{G.value=!0,Y.value=""},we=()=>{G.value=!1,clearTimeout(ee),ee=setTimeout((()=>{!$.value||G.value||!O.value||Q.value||Z.value||(Z.value=!0,O.value.confirm())}),600)},Re=()=>{clearTimeout(ee),G.value=!0,Y.value="",O.value&&O.value.clear()},Se=()=>{clearTimeout(ee),G.value=!0,$.value=!0,E.value="",V.value="",Y.value="",e.nextTick$1((()=>{O.value&&O.value.clear()}))};return e.onHide((()=>{$.value&&!G.value&&O.value&&!Z.value&&(Z.value=!0,O.value.confirm()),ie()})),e.onLoad((a=>{try{const a=e.index.getSystemInfoSync();J.value=a.windowWidth-40}catch(t){console.error("获取系统信息失败:",t)}a.rectifyId&&(n.value=a.rectifyId),a.hazardId&&(s.value=a.hazardId),a.assignId&&(o.value=a.assignId),a.taskId&&(v.value=a.taskId),console.log("验收页面参数:",{rectifyId:n.value,hazardId:s.value,assignId:o.value,taskId:v.value}),ce(),le()})),(a,t)=>e.e({a:e.t(F.rectifyPlan||"暂无"),b:e.t(F.rectificationMeasures||"暂无"),c:e.t(F.controlMeasures||"暂无"),d:e.t(F.rectifyResult||"暂无"),e:e.t(U(F.planCost)),f:e.t(U(F.actualCost)),g:e.t(M(F.managerNames)),h:e.t(M(F.memberNames)),i:e.t(F.rectifyStatusName||"暂无"),j:z.value.length>0},z.value.length>0?{k:e.f(z.value,((a,t,r)=>({a:t,b:se(a.filePath),c:e.o((a=>(a=>{const t=z.value.map((e=>se(e.filePath)));e.index.previewImage({current:a,urls:t})})(t)),t)})))}:{},{l:e.n(1===B.result?"active":""),m:e.o((e=>D(1))),n:e.n(2===B.result?"active":""),o:e.o((e=>D(2))),p:e.o((e=>B.verifyRemark=e)),q:e.p({placeholder:"请输入验收备注",modelValue:B.verifyRemark}),r:e.o(e.unref(ge)),s:e.o(e.unref(ye)),t:e.p({fileList:H.value,name:"1",multiple:!0,imageMode:"aspectFill",maxCount:10}),v:1===B.result},(B.result,{}),{w:1===B.result},1===B.result?{x:e.n("yes"===B.quickApproveRadio?"active":""),y:e.o((e=>j("yes"))),z:e.n("no"===B.quickApproveRadio?"active":""),A:e.o((e=>j("no")))}:{},{B:K.value,C:W.value,D:K.value+"px",E:W.value+"px",F:e.t(f.value),G:I.value},I.value?e.e({H:2===B.result},2===B.result?{I:e.t(h.value)}:{J:e.t(w.value||"请选择下一步处理人"),K:w.value?"":1,L:e.o(P)}):{},{M:e.o(L),N:T.value},T.value||0===x.value.length?{}:{P:e.f(x.value,((a,t,r)=>e.e({a:e.t(q(a)),b:String(R.value)===String(N(a))},(String(R.value),String(N(a)),{}),{c:C(a),d:String(R.value)===String(N(a))?1:"",e:e.o((e=>(e=>{const a=N(e);a&&(R.value=String(a),S.value=q(e))})(a)),C(a))})))},{O:0===x.value.length,Q:e.o(L),R:e.o(b),S:e.o(L),T:e.p({show:A.value,mode:"bottom",round:"20"}),U:$.value},$.value?{V:e.o(Re)}:{W:e.o(Se)},{X:!$.value},$.value?{}:e.e({Y:E.value},E.value?{Z:E.value}:{}),{aa:$.value&&!A.value},$.value&&!A.value?{ab:e.sr(O,"c5cc7a96-3",{k:"signatureRef"}),ac:e.o((a=>(async a=>{if(Z.value)return Z.value=!1,te(a),void ie();try{const{url:e}=await l.uploadToCloud(a);ae(e),ie(),Q.value&&await me()}catch(t){Q.value=!1,e.index.hideLoading(),console.error("签名上传失败:",t),e.index.showToast({title:"签名上传失败,请重试",icon:"none"})}})(a.tempFilePath))),ad:e.o(he),ae:e.o(Ie),af:e.o(we),ag:e.o(ke),ah:e.p({width:J.value,height:160,backgroundColor:"#f8f8f8",penColor:"#000000",lineWidth:3,enableHistory:!1})}:{},{ai:e.o(de),aj:e.o(fe),ak:e.gei(a,"")})}},n=e._export_sfc(i,[["__scopeId","data-v-c5cc7a96"]]);wx.createPage(n);
|