Files
qhmes/web-dist/js/JImportModal-2M3TeQac.js
2026-06-16 18:19:57 +08:00

5 lines
3.4 KiB
Java

import{B as N}from"./index-BDvqZ5j4.js";import{a1 as J,E as K,d as q,s as z,aO as A,au as j,bV as F}from"./index-X7Y8jykP.js";import{a as G}from"./useModal-DaJ3Bflg.js";import{e as H,u as t,w as P,r as c,c as Q,C as _,z as w,f as u,A as p,B as W,K as B,H as X,Q as M,E as C,G as x}from"./vue-vendor-DNhG1Cve.js";import Y from"./index-DsixALRt.js";const Z=H({name:"JImportModal",components:{BasicModal:N},props:{url:{type:String,default:"",required:!1},biz:{type:String,default:"",required:!1},online:{type:Boolean,default:!1,required:!1}},emits:["ok","register"],setup(e,{emit:s,refs:$}){const{createMessage:g,createWarningModal:y}=z(),[k,{closeModal:h}]=G(a=>{b(a)}),r=J(),v=A(),i=c(!1),o=c([]),L=c(""),d=c(""),m=c(0),V=Object.assign({},t(e),t(v));P(()=>{e.url&&(L.value=`${r.uploadUrl}${e.url}`)});const E=Q(()=>!(t(o).length>0));function S(){h(),b()}function I(a){m.value=a?1:0}function R(a){const f=t(o).indexOf(a),n=t(o).slice();n.splice(f,1),o.value=n}function D(a){return o.value=[...t(o),a],!1}function O(){let{biz:a,online:f}=e;const n=new FormData;a&&n.append("isSingleTableImport",a),t(d)&&t(d).length>0&&n.append("foreignKeys",t(d)),K(d.value)&&n.append("foreignKeys",JSON.stringify(d.value)),f&&n.append("validateStatus",t(m)),t(o).forEach(l=>{n.append("files[]",l)}),i.value=!0;let U={"Content-Type":"multipart/form-data;boundary = "+new Date().getTime()};q.post({url:e.url,params:n,headers:U},{isTransformResponse:!1}).then(l=>{i.value=!1,l.success?(l.code==201?T(l.message,l.result):g.success(l.message),S(),b(),s("ok")):g.warning(l.message)}).catch(()=>{i.value=!1})}function T(a,f){let n=r.uploadUrl+f;y({title:"导入成功,但是有错误数据!",centered:!1,content:`<div>
<span>${a}</span><br/>
<span>具体详情请<a href = ${n} target="_blank"> 点击下载 </a> </span>
</div>`})}function b(a){o.value=[],i.value=!1,d.value=a,m.value=0}return{register:k,getBindValue:V,uploadDisabled:E,fileList:o,uploading:i,validateStatus:m,handleClose:S,handleChangeValidateStatus:I,handleRemove:R,beforeUpload:D,handleImport:O}}}),ee={key:0,style:{margin:"0 5px 5px"}},ae={style:{"margin-left":"6px"}};function ne(e,s,$,g,y,k){const h=Y,r=B("a-button"),v=F,i=B("BasicModal");return w(),_("div",null,[u(i,W(e.$attrs,{onRegister:e.register,title:"导入EXCEL",width:600,onCancel:e.handleClose,confirmLoading:e.uploading,destroyOnClose:""}),{footer:p(()=>[u(r,{onClick:e.handleClose},{default:p(()=>[...s[2]||(s[2]=[C("关闭",-1)])]),_:1},8,["onClick"]),u(r,{type:"primary",onClick:e.handleImport,disabled:e.uploadDisabled,loading:e.uploading},{default:p(()=>[C(x(e.uploading?"上传中...":"开始上传"),1)]),_:1},8,["onClick","disabled","loading"])]),default:p(()=>[e.online?(w(),_("div",ee,[s[0]||(s[0]=M("span",{style:{display:"inline-block",height:"32px","line-height":"32px","vertical-align":"middle"}},"是否开启校验:",-1)),M("span",ae,[u(h,{checked:e.validateStatus==1,onChange:e.handleChangeValidateStatus,"checked-children":"","un-checked-children":""},null,8,["checked","onChange"])])])):X("",!0),u(v,{name:"file",accept:".xls,.xlsx",multiple:!0,fileList:e.fileList,onRemove:e.handleRemove,beforeUpload:e.beforeUpload},{default:p(()=>[u(r,{preIcon:"ant-design:upload-outlined"},{default:p(()=>[...s[1]||(s[1]=[C("选择导入文件",-1)])]),_:1})]),_:1},8,["fileList","onRemove","beforeUpload"])]),_:1},16,["onRegister","onCancel","confirmLoading"])])}const re=j(Z,[["render",ne]]);export{re as J};