| 1 |
- import{r as v,v as se,x as Y,h as ne,Y as W,c as g,o as i,a as w,e as $,B as L,Z as re,F as P,_ as X,D as O,$ as ue,t as U,a0 as ce,b as J,a1 as ie,I as de,f as R,a2 as me,a3 as pe,n as ee,a4 as fe,d as ve,q as he,a5 as ge,y as _e,a6 as be}from"./vendor-CGwcs8dl.js";import{_ as ye,u as Ne,a as ae}from"./ucard-DzXjXT_T.js";import{_ as le,c as oe,u as Ve,l as we}from"./main-Bd0ECGX-.js";import"./Icon-DpgXtqio.js";import"./i18n-BsPwB3zQ.js";/* empty css */const De={class:"dynamic-form"},Ce={class:"form-label"},Fe={class:"cwg-upload"},ke={class:"name"},Te={class:"back"},xe=["href"],Ue={key:5},Oe={__name:"ComplianceForm",props:{fields:Array,globalForm:Object},emits:["update:globalForm","submit","formChange"],setup(Z,{expose:q,emit:j}){const{Host00:D}=oe,_=Z,E=j,C=v(),{t:d}=se(),t=v({..._.globalForm}),p=v(!1);Y(()=>_.globalForm,a=>{p.value||Object.keys(a).forEach(e=>{(!(e in t.value)||t.value[e]===null||t.value[e]===void 0)&&(t.value[e]=a[e],typeof a[e]=="string"&&a[e].startsWith("/wasabi")&&(t.value[e+"Value"]=[{url:D+a[e]}]))})},{deep:!0,immediate:!0}),Y(t,a=>{p.value||(E("update:globalForm",{...a}),E("formChange",{...a}))},{deep:!0});const b=a=>d(`global.fieldName.${a.fieldName}.fieldTitle`)||a.fieldTitle,F=a=>d(`global.fieldName.${a.fieldName}.fieldDescription`)||a.fieldDescription,k=a=>d(`global.fieldName.${a.fieldName}.fieldDescription`)||a.fieldDescription,A={common:1,sender:2,receiver:3},G=ne(()=>{const a=_.fields.slice().sort((u,V)=>{const B=A[u.customerType]||99,M=A[V.customerType]||99;return B!==M?B-M:(u.sorting||0)-(V.sorting||0)}),e={};a.forEach(u=>{const V=u.fieldUserType||u.customerType||"other";e[V]||(e[V]=[]),e[V].push(u)});const c=["sender","receiver"],h={};return c.forEach(u=>{e[u]&&(h[u]=e[u])}),h}),T=a=>{const e=[];if(a.required&&e.push({required:!0,message:b(a)+d("global.GlobalOrder.RulesRequire")}),a.regex)try{e.push({pattern:new RegExp(a.regex),message:b(a)+d("global.GlobalOrder.RulesReg")})}catch(c){}return e},K=a=>{W(()=>{var e;return(e=C.value)==null?void 0:e.validate(a.fieldName)})},y=v({show:!1,field:null,options:[]}),S=a=>{y.value={show:!0,field:a,options:a.availableDtos.map(e=>({text:e.value,value:e.valueId}))}},I=a=>{const e=y.value.field.fieldName;t.value[e]=a.value,t.value[e+"Value"]=a.text,y.value.show=!1},N=v({show:!1,field:null}),H=a=>{N.value={show:!0,field:a}},l=a=>{const e=N.value.field.fieldName;t.value[e]=fe(a).format("YYYY-MM-DD"),N.value.show=!1},n=a=>a==null?void 0:a.toLowerCase().endsWith(".pdf"),r=a=>a.split("/").pop(),s=async(a,e)=>{const c=e.fieldName,h=c+"Value",u=await Ne.uploadFile(a.file);if(u.code!==200){ee(u.msg);return}t.value[c]=u.data,t.value[h]=[{url:D+u.data}],ee(d("card.New1.d5"))},f=()=>E("submit",t);return Y(()=>_.fields,a=>{!a||!Array.isArray(a)||(a.forEach(e=>{var c;if(!(e.fieldName in t.value))if(e.fieldType=="file")t.value[e.fieldName]=e.rfiValueUrl,e.rfiValueUrl&&(t.value[e.fieldName+"Value"]=[{url:D+e.rfiValueUrl}]);else if(e.fieldType=="select"){t.value[e.fieldName]=e.rfiValue;const h=(c=e.availableDtos)==null?void 0:c.find(u=>u.valueId==e.rfiValue);t.value[e.fieldName+"Value"]=h?h.value:null}else e.fixedValue!==void 0&&e.fixedValue!==null?t.value[e.fieldName]=e.fixedValue:e.rfiValue!==void 0&&e.rfiValue!==null?t.value[e.fieldName]=e.rfiValue:t.value[e.fieldName]=null}),W(()=>{C.value&&C.value.clearValidate&&C.value.clearValidate()}))},{immediate:!0,deep:!0}),q({updateWsData(a){p.value=!0,Object.keys(a).forEach(e=>{t.value[e]=a[e],typeof a[e]=="string"&&a[e].startsWith("/wasabi")&&(t.value[e+"Value"]=[{url:D+a[e]}])}),W(()=>{p.value=!1})}}),(a,e)=>{const c=ce,h=de,u=ie,V=me,B=ye,M=pe;return i(),g(P,null,[w("div",De,[$(V,{ref_key:"formRef",ref:C,model:t.value,onSubmit:f},{default:L(()=>[(i(!0),g(P,null,X(G.value,(x,te)=>(i(),g("div",{key:te},[(i(!0),g(P,null,X(x,o=>{var z,Q;return i(),g("div",{key:o.fieldName,class:"form-group"},[w("label",Ce,[w("span",null,U(o.required?"*":""),1),ue(" "+U(b(o)),1)]),o.fieldType==="input"?(i(),O(c,{key:0,class:"form-input",modelValue:t.value[o.fieldName],"onUpdate:modelValue":m=>t.value[o.fieldName]=m,name:o.fieldName,placeholder:k(o),rules:T(o),disabled:!!o.fixedValue,onChange:m=>K(o)},null,8,["modelValue","onUpdate:modelValue","name","placeholder","rules","disabled","onChange"])):o.fieldType==="number"?(i(),O(c,{key:1,class:"form-input",modelValue:t.value[o.fieldName],"onUpdate:modelValue":m=>t.value[o.fieldName]=m,type:"number",name:o.fieldName,placeholder:k(o),rules:T(o),disabled:!!o.fixedValue},null,8,["modelValue","onUpdate:modelValue","name","placeholder","rules","disabled"])):o.fieldType==="date"?(i(),O(c,{key:2,class:"form-input",ba:t.value[o.fieldName],modelValue:t.value[o.fieldName],"onUpdate:modelValue":m=>t.value[o.fieldName]=m,readonly:"",clickable:"",clearable:"",placeholder:k(o),rules:T(o),onClick:m=>H(o)},null,8,["ba","modelValue","onUpdate:modelValue","placeholder","rules","onClick"])):o.fieldType==="select"?(i(),O(c,{key:3,class:"form-input",readonly:"",clickable:"",clearable:"","model-value":t.value[o.fieldName+"Value"],placeholder:k(o),rules:T(o),onClick:m=>S(o)},null,8,["model-value","placeholder","rules","onClick"])):o.fieldType==="file"?(i(),g(P,{key:4},[$(c,{class:"form-input uploader"},{input:L(()=>[!o.fixedValue&&!o.disabled?(i(),O(u,{key:0,accept:".jpg,.jpeg,.png,.pdf",deletable:!1,reupload:"","max-count":1,modelValue:t.value[o.fieldName+"Value"],"onUpdate:modelValue":m=>t.value[o.fieldName+"Value"]=m,"after-read":m=>s(m,o)},{default:L(()=>[w("div",Fe,[$(h,{name:"back-top"}),w("p",ke,U(F(o)),1),w("p",Te,U(R(d)("card.New1.d4")),1)])]),_:2},1032,["modelValue","onUpdate:modelValue","after-read"])):J("",!0)]),_:2},1024),w("div",null,[t.value[o.fieldName]&&n(t.value[o.fieldName])?(i(),g("a",{key:0,class:"pdf-link",target:"_blank",href:(Q=(z=t.value[o.fieldName+"Value"])==null?void 0:z[0])==null?void 0:Q.url},U(r(t.value[o.fieldName])),9,xe)):J("",!0)])],64)):(i(),g("div",Ue," 未支持类型:"+U(o.fieldType),1))])}),128))]))),128)),re(a.$slots,"submit",{},void 0,!0)]),_:3},8,["model"])]),$(B,{showSearch:!1,options:y.value.options,modelValue:y.value.show,"onUpdate:modelValue":e[0]||(e[0]=x=>y.value.show=x),onSelect:I},null,8,["options","modelValue"]),$(M,{show:N.value.show,"onUpdate:show":e[1]||(e[1]=x=>N.value.show=x),"show-mark":!1,title:R(d)("cards.selectDateRange"),subtitle:R(d)("cards.selectDate"),color:"var(--main-yellow)","show-confirm":!1,onCancel:e[2]||(e[2]=x=>N.value.show=!1),onConfirm:l},null,8,["show","title","subtitle"])],64)}}},Re=le(Oe,[["__scopeId","data-v-e5faa40f"]]),Ee={class:"page page-shadow"},Se=ve({__name:"compliance",setup(Z){const q=Ve(),{Host85:j}=oe,D=he(),{id:_,langs:E,str:C}=D.query,d=v(!1),t=v(""),p=v({}),b=v([]),F=v(),k=async l=>{var n,r;try{d.value=!1;const s=await ae.globalOrdersDetail({id:l});if(s.code===200){await W(),t.value=s.data.orderNo;const f=[];(n=s.data)!=null&&n.dataDtos&&((r=s.data)==null||r.dataDtos.forEach(a=>{a.fieldName=a.customerType+"_"+a.fieldName,a.status!=="pending_check"?(p.value[a.fieldName]=a.fieldType==="file"?j+a.rfiValueUrl:a.rfiValue,f.push({...a,disabled:!0})):f.push({...a})})),b.value=f,d.value=!0,await W()}else console.log(s.msg)}catch(s){console.log(s,13)}},A=l=>{let n=[];n=b.value.filter(s=>l.includes(s.fieldName));const r=n.map(s=>{const{fieldType:f,rfiId:a}=s;let e,c;return f==="file"?c=p.value[s.fieldName]:e=p.value[s.fieldName],{rfiId:a,rfiValueUrl:c,rfiValue:e}});return{orderNo:t.value,rfiInfos:r}},G=async(l,n)=>{l={...l,id:_,type:"global",port:2};const r=JSON.stringify(l);await ae.scanFile({data:r,...A(n),type:"global"})},T=ge.debounce((l,n)=>{G(l,n)},800);function K(l){return l==null||typeof l=="object"&&Object.keys(l).length===0}function y(l){const n={};return Object.keys(l).forEach(r=>{const s=l[r];Array.isArray(s)||(n[r]=s)}),n}const S=v({});function I(l,n){if(l===n)return!0;if(typeof l!="object"||typeof n!="object"||l===null||n===null)return l===n;const r=Object.keys(l),s=Object.keys(n);if(r.length!==s.length)return!1;for(let f of r)if(!s.includes(f)||!I(l[f],n[f]))return!1;return!0}const N=(l,n)=>{const r=[];return Object.keys(l).forEach(s=>{I(l[s],n[s])||r.push(s)}),r},H=l=>{if(!K(l)&&!I(l,S.value)){const n=N(l,S.value),r={};n.forEach(s=>{r[s]=l[s]}),T(y(r),n.join(",")),Object.assign(S.value,l)}};return Y(()=>q.wsCard,l=>{(l==null?void 0:l.type)==="global"&&l.port!==1&&F.value&&F.value.updateWsData&&F.value.updateWsData(l)},{deep:!0}),_e(()=>{q.updateWsCard({}),we.value=E,_&&k(_)}),(l,n)=>{const r=Re;return i(),g("div",Ee,[R(b).length?(i(),O(r,{key:0,ref_key:"formRef",ref:F,"global-form":R(p),"onUpdate:globalForm":n[0]||(n[0]=s=>be(p)?p.value=s:null),fields:R(b),onFormChange:H},null,8,["global-form","fields"])):J("",!0)])}}}),Me=le(Se,[["__scopeId","data-v-fb4ef193"]]);export{Me as default};
|