middle-C1A9F1-X.js 27 KB

1
  1. import{u as Ye,a as Ue}from"./_vue-router-CmtwjDwB.js";import{h as de,i as J,a as oe,k as Pe,j as ne,l as ge,n as ye,m as Ie,b as Se,o as je}from"./_js-fast-way-BT1PNT_n.js";import{c as $e,g as Te,b as Re}from"../js2/index-73sWHICW.js";import{s as qe}from"./403-Cp1p5oX4.js";import{s as Ne}from"./404-1dLp7BMp.js";import{m as le,_ as De,a as ue,b as Be}from"./gist-list-kIY9nMZv.js";import{g as re}from"./tools-L-OLY-Ga.js";import{b as s,a as ie,i as se,aa as i,c as f,x as h,y as l,f as C,A as e,P as x,e as K,O as Q,F as H,ar as te,ab as be,L as _e,C as Ee,q as ve,u as fe}from"./__vendor-DjgEsITR.js";import{Z as we}from"./_hc-vue3-ui-F5tNuYMd.js";import"./_pinia-xeGkZ8uf.js";import"./_nprogress-Bk7hRWIw.js";const Le={class:"quarter-box w-full flex"},ze={class:"flex"},Ae={class:"ml-[40px] flex"},Oe={class:"ml-[40px] flex"},Me={class:"ml-[40px] flex"},Ge={__name:"create",props:{form:{type:Object,default:()=>({})}},emits:["back"],setup(ae,{emit:W}){const L=ae,T=W,F=s(L.form);ie(()=>L.form,d=>{F.value=d},{deep:!0}),se(async()=>{await $(),await V(),w()});const w=async()=>{const d=de(F.value);J(d.id)||z(d.id)},z=async d=>{const{error:a,code:u,data:c}=await le.detail(d);if(!a&&u===200){r.value=de(c);let v=oe(r.value?.list);v.length>0&&(y.value=v[0].planYear),r.value.startYear=c.startYear.toString(),r.value.endYear=c.endYear.toString(),t.value=[],v.forEach(P=>{t.value.push({value:P.planYear,label:P.planYear,yearForm:P})})}else r.value={}},r=s({buildScaleUnit:1}),Y={name:{required:!0,trigger:"blur",message:"请输入项目名称"},projectStage:{required:!0,trigger:"blur",message:"请选择项目阶段"},projectType:{required:!0,trigger:"blur",message:"请选择项目类型"}};s("");const M=s([]),$=async()=>{M.value=await re("projectStage",!0)},q=s([]),V=async()=>{q.value=await re("projectType",!0)},N=s(null),Z=s(null),D=d=>{r.value.startYear=J(d)?"":d.toString(),N.value?.focus(),N.value?.handleOpen(),Z.value?.handleClose()},b=d=>{J(d)?(r.value.startYear="",r.value.endYear=""):r.value.endYear=d.toString()},U=()=>{(J(r.value.startYear)||J(r.value.endYear))&&(r.value.startYear="",r.value.endYear="",window.$message.warning("请重新选择完整的范围年份"));let d=[],a=r.value.startYear,u=r.value.endYear;for(let c=a;c<=u;c++)d.push({value:c,label:c,yearForm:{planYear:c,oneInvest:"",twoInvest:"",threeInvest:"",fourInvest:"",yearlyTarget:"",onePlan:"",twoPlan:"",threePlan:"",fourPlan:""}});t.value=d,y.value=t.value[0].value},p=s(0),t=s([{value:"",label:"",yearForm:{yearlyInvest:"",oneInvest:"",twoInvest:"",threeInvest:"",fourInvest:"",yearlyTarget:"",onePlan:"",twoPlan:"",threePlan:"",fourPlan:"",planYear:""}}]),y=s(null),G=d=>{p.value=Pe(t.value,"value",d)},B=d=>d?(d=d.replace(/[^\d.]/g,""),/^\d+(\.\d{0,2})?$/.test(d)?d:d.slice(0,-1)):"",g=s(!1);ie(()=>[t.value[p.value].yearForm.oneInvest,t.value[p.value].yearForm.twoInvest,t.value[p.value].yearForm.threeInvest,t.value[p.value].yearForm.fourInvest],([d,a,u,c])=>{Number(d)>0||Number(a)>0||Number(u)>0||Number(c)>0?g.value=!0:g.value=!1,t.value[p.value].yearForm.yearlyInvest=te(Number(d)).plus(te(Number(a))).plus(te(Number(u))).plus(te(Number(c))).toNumber(),t.value.reduce((v,P)=>te(Number(v)).plus(te(Number(P.yearForm.yearlyInvest))).toNumber(),0)});const m=()=>{T("back")},I=s(null),E=s(!1),A=async()=>{let d=[];if(t.value.forEach(P=>{let k=P.yearForm;d.push(k)}),!await ne(I.value))return!1;E.value=!0;const{error:u,code:c,msg:v}=await le.add({...r.value,list:d});E.value=!1,!u&&c===200?(window.$message.success(v),r.value={},t.value=[{value:"",label:"",yearForm:{yearlyInvest:"",oneInvest:"",twoInvest:"",threeInvest:"",fourInvest:"",yearlyTarget:"",onePlan:"",twoPlan:"",threePlan:"",fourPlan:""}}]):window.$message.error(v??"操作失败")},S=async()=>{let d=[];if(t.value.forEach(P=>{let k=P.yearForm;d.push(k)}),!await ne(I.value))return!1;E.value=!0;const{error:u,code:c,msg:v}=await le.update({...r.value,list:d});E.value=!1,!u&&c===200?(window.$message.success(v),m()):window.$message.error(v??"操作失败")};return(d,a)=>{const u=i("el-input"),c=i("el-form-item"),v=i("el-col"),P=i("el-option"),k=i("el-select"),j=i("el-row"),n=i("el-form"),R=i("el-date-picker"),X=i("hc-card-item"),O=i("el-button"),ee=i("hc-card");return f(),h(ee,{class:"create-project","is-action-btn":"",scrollbar:""},{header:l(()=>a[21]||(a[21]=[C("div",{class:"flex-1 text-center text-[24px] font-bold"},"项目信息填写",-1)])),action:l(()=>[e(O,{type:"info",onClick:m},{default:l(()=>a[33]||(a[33]=[x("取消")])),_:1}),F.value.id?(f(),h(O,{key:1,type:"warning",onClick:S},{default:l(()=>a[35]||(a[35]=[x("保存")])),_:1})):(f(),h(O,{key:0,class:"text-white",color:"#20C98B",type:"primary",onClick:A},{default:l(()=>a[34]||(a[34]=[x("创建")])),_:1}))]),default:l(()=>[e(n,{ref_key:"formRef",ref:I,model:r.value,rules:Y,"label-position":"left","label-width":"auto",size:"large"},{default:l(()=>[e(j,{gutter:20},{default:l(()=>[e(v,{span:12},{default:l(()=>[e(c,{label:"项目名称:",prop:"name"},{default:l(()=>[e(u,{modelValue:r.value.name,"onUpdate:modelValue":a[0]||(a[0]=o=>r.value.name=o),clearable:"",placeholder:"请输入"},null,8,["modelValue"])]),_:1})]),_:1}),e(v,{span:12},{default:l(()=>[e(c,{label:"建设规模:",prop:"buildScale"},{default:l(()=>[e(u,{modelValue:r.value.buildScale,"onUpdate:modelValue":a[2]||(a[2]=o=>r.value.buildScale=o),clearable:"",placeholder:"请输入"},{append:l(()=>[e(k,{modelValue:r.value.buildScaleUnit,"onUpdate:modelValue":a[1]||(a[1]=o=>r.value.buildScaleUnit=o),placeholder:"单位",style:{width:"80px"}},{default:l(()=>[e(P,{label:"公里",value:1}),e(P,{label:"无",value:2})]),_:1},8,["modelValue"])]),_:1},8,["modelValue"])]),_:1})]),_:1}),e(v,{span:6},{default:l(()=>[e(c,{label:"项目阶段:",prop:"projectStage"},{default:l(()=>[e(k,{modelValue:r.value.projectStage,"onUpdate:modelValue":a[3]||(a[3]=o=>r.value.projectStage=o),placeholder:"请选择"},{default:l(()=>[(f(!0),K(H,null,Q(M.value,o=>(f(),h(P,{key:o.value,label:o.label,value:o.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1}),e(v,{span:6},{default:l(()=>[e(c,{label:"项目类型:",prop:"projectType"},{default:l(()=>[e(k,{modelValue:r.value.projectType,"onUpdate:modelValue":a[4]||(a[4]=o=>r.value.projectType=o),placeholder:"请选择"},{default:l(()=>[(f(!0),K(H,null,Q(q.value,o=>(f(),h(P,{key:o.value,label:o.label,value:o.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1}),e(v,{span:12},{default:l(()=>[e(c,{label:"总投资:",prop:"allInvestMoney"},{default:l(()=>[e(u,{modelValue:r.value.allInvestMoney,"onUpdate:modelValue":a[5]||(a[5]=o=>r.value.allInvestMoney=o),clearable:"",placeholder:"请输入"},{append:l(()=>a[22]||(a[22]=[x("亿元")])),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1})]),_:1},8,["model"]),e(n,{model:r.value,"label-position":"left","label-width":"81",size:"large"},{default:l(()=>[e(j,{gutter:20},{default:l(()=>[e(v,{span:6},{default:l(()=>[e(c,{label:"开工年:",prop:"startYear"},{default:l(()=>[e(R,{ref_key:"startYearRef",ref:Z,modelValue:r.value.startYear,"onUpdate:modelValue":a[6]||(a[6]=o=>r.value.startYear=o),class:"block",placeholder:"请选择",type:"year","value-format":"YYYY",disabled:!!F.value.id&&!!r.value.startYear,onChange:D},null,8,["modelValue","disabled"])]),_:1})]),_:1}),e(v,{span:6},{default:l(()=>[e(c,{label:"完工年:",prop:"endYear"},{default:l(()=>[e(R,{ref_key:"endYearRef",ref:N,modelValue:r.value.endYear,"onUpdate:modelValue":a[7]||(a[7]=o=>r.value.endYear=o),class:"block",placeholder:"请选择",type:"year","value-format":"YYYY",disabled:!!F.value.id&&!!r.value.startYear,onBlur:U,onChange:b},null,8,["modelValue","disabled"])]),_:1})]),_:1}),e(v,{span:6},{default:l(()=>[e(c,{class:"is-multiple-rows",label:"交通强国建设试点任务:",prop:"isPilotPlan"},{default:l(()=>[e(k,{modelValue:r.value.isPilotPlan,"onUpdate:modelValue":a[8]||(a[8]=o=>r.value.isPilotPlan=o),placeholder:"请选择"},{default:l(()=>[e(P,{value:1,label:"是"}),e(P,{value:0,label:"否"})]),_:1},8,["modelValue"])]),_:1})]),_:1}),e(v,{span:6},{default:l(()=>[e(c,{label:"责任单位:",prop:"dutyUnit"},{default:l(()=>[e(u,{modelValue:r.value.dutyUnit,"onUpdate:modelValue":a[9]||(a[9]=o=>r.value.dutyUnit=o),clearable:"",placeholder:"请输入",type:"textarea"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})]),_:1},8,["model"]),e(X,{class:"year-detail mt-3"},{header:l(()=>[e(k,{modelValue:y.value,"onUpdate:modelValue":a[10]||(a[10]=o=>y.value=o),class:"select-year w-[100px]",placeholder:"选择年份",disabled:t.value.length<=1,onChange:G},{default:l(()=>[(f(!0),K(H,null,Q(t.value,o=>(f(),h(P,{key:o.value,label:o.label,value:o.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","disabled"])]),default:l(()=>[e(n,{disabled:!y.value,model:t.value[p.value].yearForm,class:"mt-3","label-position":"left","label-width":"auto",size:"large"},{default:l(()=>[e(c,{class:"w-100",label:"全年计划投资:",prop:"yearlyInvest"},{default:l(()=>[e(u,{modelValue:t.value[p.value].yearForm.yearlyInvest,"onUpdate:modelValue":a[11]||(a[11]=o=>t.value[p.value].yearForm.yearlyInvest=o),disabled:g.value,formatter:B,clearable:"",placeholder:"请输入"},{append:l(()=>a[23]||(a[23]=[x("亿元")])),_:1},8,["modelValue","disabled"])]),_:1}),e(c,{label:"预计完成投资额:",prop:"key1"},{default:l(()=>[C("div",Le,[C("div",ze,[e(u,{modelValue:t.value[p.value].yearForm.oneInvest,"onUpdate:modelValue":a[12]||(a[12]=o=>t.value[p.value].yearForm.oneInvest=o),formatter:B,clearable:"",placeholder:"请输入"},{prepend:l(()=>a[24]||(a[24]=[x("一季度")])),append:l(()=>a[25]||(a[25]=[x("亿元")])),_:1},8,["modelValue"])]),C("div",Ae,[e(u,{modelValue:t.value[p.value].yearForm.twoInvest,"onUpdate:modelValue":a[13]||(a[13]=o=>t.value[p.value].yearForm.twoInvest=o),formatter:B,clearable:"",placeholder:"请输入"},{prepend:l(()=>a[26]||(a[26]=[x("二季度")])),append:l(()=>a[27]||(a[27]=[x("亿元")])),_:1},8,["modelValue"])]),C("div",Oe,[e(u,{modelValue:t.value[p.value].yearForm.threeInvest,"onUpdate:modelValue":a[14]||(a[14]=o=>t.value[p.value].yearForm.threeInvest=o),formatter:B,clearable:"",placeholder:"请输入"},{prepend:l(()=>a[28]||(a[28]=[x("三季度")])),append:l(()=>a[29]||(a[29]=[x("亿元")])),_:1},8,["modelValue"])]),C("div",Me,[e(u,{modelValue:t.value[p.value].yearForm.fourInvest,"onUpdate:modelValue":a[15]||(a[15]=o=>t.value[p.value].yearForm.fourInvest=o),formatter:B,clearable:"",placeholder:"请输入"},{prepend:l(()=>a[30]||(a[30]=[x("四季度")])),append:l(()=>a[31]||(a[31]=[x("亿元")])),_:1},8,["modelValue"])])])]),_:1}),e(c,{label:"全年目标:",prop:"yearlyTarget"},{default:l(()=>[e(u,{modelValue:t.value[p.value].yearForm.yearlyTarget,"onUpdate:modelValue":a[16]||(a[16]=o=>t.value[p.value].yearForm.yearlyTarget=o),clearable:"",placeholder:"请输入",type:"textarea"},null,8,["modelValue"])]),_:1})]),_:1},8,["disabled","model"]),e(n,{disabled:!y.value,model:t.value[p.value]?.yearForm,class:"mt-3","label-position":"left","label-width":"auto"},{default:l(()=>[a[32]||(a[32]=C("div",{class:"hc-form-item-title"},"各季度工作计划:",-1)),e(c,{label:"一季度:",prop:"onePlan"},{default:l(()=>[e(u,{modelValue:t.value[p.value].yearForm.onePlan,"onUpdate:modelValue":a[17]||(a[17]=o=>t.value[p.value].yearForm.onePlan=o),clearable:"",placeholder:"请输入",type:"textarea"},null,8,["modelValue"])]),_:1}),e(c,{label:"二季度:",prop:"twoPlan"},{default:l(()=>[e(u,{modelValue:t.value[p.value].yearForm.twoPlan,"onUpdate:modelValue":a[18]||(a[18]=o=>t.value[p.value].yearForm.twoPlan=o),clearable:"",placeholder:"请输入",type:"textarea"},null,8,["modelValue"])]),_:1}),e(c,{label:"三季度:",prop:"threePlan "},{default:l(()=>[e(u,{modelValue:t.value[p.value].yearForm.threePlan,"onUpdate:modelValue":a[19]||(a[19]=o=>t.value[p.value].yearForm.threePlan=o),clearable:"",placeholder:"请输入",type:"textarea"},null,8,["modelValue"])]),_:1}),e(c,{label:"四季度:",prop:"fourPlan"},{default:l(()=>[e(u,{modelValue:t.value[p.value].yearForm.fourPlan,"onUpdate:modelValue":a[20]||(a[20]=o=>t.value[p.value].yearForm.fourPlan=o),clearable:"",placeholder:"请输入",type:"textarea"},null,8,["modelValue"])]),_:1})]),_:1},8,["disabled","model"])]),_:1})]),_:1})}}},Ke={class:"relative ml-3 w-[300px]"},We={class:"w-[120px]"},Ze={class:"ml-2 w-[100px]"},He={class:"dialog-footer"},Je={class:"hc-flex mt-5"},Qe={__name:"list",emits:["edit"],setup(ae,{emit:W}){const L=W;se(async()=>{await M(),await q(),r().then()});const T=s(null),F=s(0),w=s([]),z=s(!1),r=async()=>{w.value=[],z.value=!0;const{error:j,code:n,data:R}=await le.page(V.value);z.value=!1,!j&&n===200?(w.value=oe(R.records),V.value.total=R.total||0,F.value=R?.buildTotal||0):(w.value=[],V.value.total=0,F.value=0)},Y=s([]),M=async()=>{Y.value=await re("projectStage",!0)},$=s([]),q=async()=>{$.value=await re("projectType",!0)},V=s({startYear:"",endYear:"",searchValue:"",year:"",projectStage:"",projectType:"",current:1,size:20,total:0}),N=()=>{V.value.current=1,r()},Z=({current:j,size:n})=>{V.value.current=j,V.value.size=n,r()},D=s([]),b=j=>{D.value=j},U=j=>{L("edit",j)},p=async(j,n)=>{const R=ge(D.value),{error:X,code:O,msg:ee}=await le.del(R);!X&&O===200?(window.$message.success("删除成功"),n(),N()):(window.$message.error(ee??"删除失败"),n())},t=s(!1),y=s([]),G=async()=>{t.value=!0;const{data:j}=await le.getProjectYear();y.value=oe(j);const n=new Date,R=n.getMonth(),X=Math.floor(R/3)+1;g.value={year:n.getFullYear(),quarter:X}},B=s(null),g=s({}),m={year:{required:!0,trigger:"blur",message:"请选择年份"},quarter:{required:!0,trigger:"blur",message:"请选择季度"}},I=s(!1),E=async()=>{if(!await ne(B.value))return!1;I.value=!0;const{error:n,val:R}=await le.buildReport(g.value);if(n){I.value=!1,window.$message?.error("数据异常");return}await ye(R),I.value=!1,t.value=!1},A=()=>{t.value=!1},S=s(!1),d=s([]),a={url:"/api/blade-attach/project/import-project",size:120,accept:".xls,.xlsx",accept_tip:"请选择Excel文件"},u=()=>{S.value=!0},c=()=>{S.value=!1},v=s(!1),P=async()=>{await we(),v.value=!0;const{error:j,data:n,msg:R}=await le.exportTemplate();if(v.value=!1,j&&J(n)){window.$message?.error(R??"数据异常");return}v.value=!1,$e.localModel?window.electronAPI?.sendFownloadFile(n):Ie(n)},k=({res:j})=>{c(),window?.$message.success(j.msg),r()};return(j,n)=>{const R=i("hc-date-year"),X=i("hc-search-input"),O=i("el-option"),ee=i("el-select"),o=i("el-button"),Ve=i("hc-pages"),ce=i("el-form-item"),pe=i("el-col"),ke=i("el-row"),he=i("el-form"),me=i("hc-dialog"),xe=i("hc-form-upload"),Fe=i("hc-card"),Ce=be("del-com");return f(),h(Fe,{class:"hc-project-collect-admin-list","w-to":"1660"},{headerToSearch:l(()=>[e(R,{modelValue:V.value.startYear,"onUpdate:modelValue":n[0]||(n[0]=_=>V.value.startYear=_),end:V.value.endYear,"onUpdate:end":n[1]||(n[1]=_=>V.value.endYear=_)},null,8,["modelValue","end"]),C("div",Ke,[e(X,{modelValue:V.value.searchValue,"onUpdate:modelValue":n[2]||(n[2]=_=>V.value.searchValue=_),text:"搜索",color:"#151921",onSearch:N},null,8,["modelValue"])])]),extraToHeader:l(()=>[C("div",We,[e(ee,{modelValue:V.value.projectStage,"onUpdate:modelValue":n[3]||(n[3]=_=>V.value.projectStage=_),filterable:"",clearable:"",block:"",placeholder:"项目阶段",onChange:N},{default:l(()=>[(f(!0),K(H,null,Q(Y.value,_=>(f(),h(O,{key:_.value,label:_.label,value:_.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),C("div",Ze,[e(ee,{modelValue:V.value.projectType,"onUpdate:modelValue":n[4]||(n[4]=_=>V.value.projectType=_),filterable:"",clearable:"",block:"",placeholder:"项目类型",onChange:N},{default:l(()=>[(f(!0),K(H,null,Q($.value,_=>(f(),h(O,{key:_.value,label:_.label,value:_.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])])]),extra:l(()=>[e(o,{type:"success",class:"ml-6",onClick:G},{default:l(()=>n[10]||(n[10]=[x("生成报告")])),_:1}),_e((f(),h(o,{type:"danger",class:"ml-2",disabled:D.value.length<=0},{default:l(()=>n[11]||(n[11]=[x("批量删除")])),_:1},8,["disabled"])),[[Ce,void 0,p]]),e(o,{type:"warning",class:"ml-2",onClick:u},{default:l(()=>n[12]||(n[12]=[x("导入")])),_:1})]),action:l(()=>[C("div",null,"建设规模:共计 "+Ee(F.value)+" 公里",1),e(Ve,{pages:V.value,onChange:Z},null,8,["pages"])]),default:l(()=>[e(De,{ref_key:"tableRef",ref:T,"is-admin":"",datas:w.value,onTap:U,onCheck:b,onChange:N},null,8,["datas"]),e(me,{modelValue:t.value,"onUpdate:modelValue":n[7]||(n[7]=_=>t.value=_),widths:"24rem",title:"生成报告",onClose:A},{footer:l(()=>[C("div",He,[e(o,{size:"large",onClick:A},{default:l(()=>n[13]||(n[13]=[x("取消")])),_:1}),e(o,{loading:I.value,type:"primary",onClick:E},{default:l(()=>n[14]||(n[14]=[x("确定")])),_:1},8,["loading"])])]),default:l(()=>[e(he,{ref_key:"reportsFormRef",ref:B,model:g.value,rules:m,"label-position":"top","label-width":"auto"},{default:l(()=>[e(ke,{gutter:20},{default:l(()=>[e(pe,{span:12},{default:l(()=>[e(ce,{label:"选择年份:",prop:"year"},{default:l(()=>[e(ee,{modelValue:g.value.year,"onUpdate:modelValue":n[5]||(n[5]=_=>g.value.year=_),placeholder:"选择年份"},{default:l(()=>[(f(!0),K(H,null,Q(y.value,_=>(f(),h(O,{key:_,label:_,value:_},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1}),e(pe,{span:12},{default:l(()=>[e(ce,{label:"选择季度:",prop:"quarter"},{default:l(()=>[e(ee,{modelValue:g.value.quarter,"onUpdate:modelValue":n[6]||(n[6]=_=>g.value.quarter=_),placeholder:"选择季度"},{default:l(()=>[e(O,{label:"一季度",value:1}),e(O,{label:"二季度",value:2}),e(O,{label:"三季度",value:3}),e(O,{label:"四季度",value:4})]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),e(me,{modelValue:S.value,"onUpdate:modelValue":n[9]||(n[9]=_=>S.value=_),widths:"24rem",title:"项目数据导入",footer:!1,onClose:c},{default:l(()=>[e(xe,{modelValue:d.value,"onUpdate:modelValue":n[8]||(n[8]=_=>d.value=_),class:"hc-form-drop-upload",options:{num:1,type:"list",drop:!0},upload:{options:a},onSuccess:k},null,8,["modelValue","upload"]),C("div",Je,[n[16]||(n[16]=C("span",{class:"mr-2"},"模板下载:",-1)),e(o,{color:"#20C98B",size:"small",class:"text-white",loading:v.value,onClick:P},{default:l(()=>n[15]||(n[15]=[x("点击下载")])),_:1},8,["loading"])])]),_:1},8,["modelValue"])]),_:1})}}},Xe={key:0,class:"hc-form-gist-action hc-flex"},el=["onClick"],ll={__name:"create",props:{form:{type:Object,default:()=>({})}},emits:["back"],setup(ae,{emit:W}){const L=ae,T=W,F=s(L.form);ie(()=>L.form,t=>{F.value=t},{deep:!0}),se(()=>{z()});const w=s([]),z=async()=>{w.value=await re("projectStage",!0);const t=de(F.value);J(t.id)||(Y.value={id:t.id,workFocusStage:t.workFocusStage,targetPlan:t.targetPlan},$.value=[{startYear:t.startYear,endYear:t.endYear,workPlan:t.workPlan,dutyUnit:t.dutyUnit}])},r=s(null),Y=s({workFocusStage:null,targetPlan:""}),M={workFocusStage:{required:!0,trigger:"blur",message:"请选择项目阶段"},targetPlan:{required:!0,trigger:"blur",message:"请输入目标任务"}},$=s([{}]),q=s([]),V=(t,y)=>{if(t)try{q.value[y]=t}catch{q.value.push(t)}},N={startYear:{required:!0,trigger:"blur",message:"请选择年份"},workPlan:{required:!0,trigger:"blur",message:"请填写工作任务"},dutyUnit:{required:!0,trigger:"blur",message:"请填写责任单位"}},Z=()=>{oe($.value).push({})},D=t=>{const y=Se($.value);if(y.length<=1){window.$message.warning("至少需要保留一个任务");return}y.splice(t,1),$.value=y},b=()=>{T("back")},U=s(!1),p=async()=>{const t=await ne(r.value);let y=!0;const G=oe(q.value);for(let S=0;S<G.length;S++)await ne(G[S])||(y=!1);if(!t||!y)return;U.value=!0;const B=Y.value,g=$.value;let m=[];for(let S=0;S<g.length;S++)m.push({...B,...g[S]});const{error:I,code:E,msg:A}=await ue.submit({workFocusEntityList:m});U.value=!1,!I&&E===200?(window?.$message?.success(A),Y.value={},$.value=[{}],J(B.id)||b()):window.$message.error(A??"操作失败")};return(t,y)=>{const G=i("el-option"),B=i("el-select"),g=i("el-form-item"),m=i("el-input"),I=i("el-form"),E=i("hc-icon"),A=i("hc-date-year"),S=i("hc-card-item"),d=i("el-button"),a=i("hc-card");return f(),h(a,{scrollbar:"","is-action-btn":"",class:"create-gist"},{header:l(()=>y[2]||(y[2]=[C("div",{class:"flex-1 text-center text-[24px] font-bold"},"工作重点填写",-1)])),action:l(()=>[F.value.id?(f(),h(d,{key:0,type:"info",onClick:b},{default:l(()=>y[3]||(y[3]=[x("取消")])),_:1})):ve("",!0),F.value.id?(f(),h(d,{key:2,loading:U.value,type:"warning",onClick:p},{default:l(()=>y[5]||(y[5]=[x("保存")])),_:1},8,["loading"])):(f(),h(d,{key:1,loading:U.value,color:"#20C98B",type:"primary",class:"text-white",onClick:p},{default:l(()=>y[4]||(y[4]=[x("创建工作要点")])),_:1},8,["loading"]))]),default:l(()=>[e(I,{ref_key:"baseFormRef",ref:r,model:Y.value,rules:M,"label-position":"left","label-width":"auto",size:"large"},{default:l(()=>[e(g,{label:"项目阶段:",prop:"workFocusStage"},{default:l(()=>[e(B,{modelValue:Y.value.workFocusStage,"onUpdate:modelValue":y[0]||(y[0]=u=>Y.value.workFocusStage=u),placeholder:"请选择"},{default:l(()=>[(f(!0),K(H,null,Q(w.value,u=>(f(),h(G,{key:u.value,label:u.label,value:u.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),e(g,{label:"目标任务:",prop:"targetPlan"},{default:l(()=>[e(m,{modelValue:Y.value.targetPlan,"onUpdate:modelValue":y[1]||(y[1]=u=>Y.value.targetPlan=u),placeholder:"请输入",clearable:"",type:"textarea"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"]),(f(!0),K(H,null,Q($.value,(u,c)=>(f(),h(S,{key:c,class:"gist-detail"},{default:l(()=>[F.value.id?ve("",!0):(f(),K("div",Xe,[C("div",{class:"add hc-flex-center h-[24px] w-[24px]",onClick:Z},[e(E,{name:"add",fill:""})]),C("div",{class:"subtract hc-flex-center h-[24px] w-[24px]",onClick:v=>D(c)},[e(E,{name:"subtract",fill:""})],8,el)])),e(I,{ref_for:!0,ref:v=>V(v,c),model:u,rules:N,"label-position":"left","label-width":"auto",size:"large"},{default:l(()=>[e(g,{label:"选择年份:",prop:"startYear"},{default:l(()=>[e(A,{modelValue:u.startYear,"onUpdate:modelValue":v=>u.startYear=v,end:u.endYear,"onUpdate:end":v=>u.endYear=v,text1:"开始年份",text2:"结束年份",disabled:!!F.value.id},null,8,["modelValue","onUpdate:modelValue","end","onUpdate:end","disabled"])]),_:2},1024),e(g,{label:"工作任务:",prop:"workPlan"},{default:l(()=>[e(m,{modelValue:u.workPlan,"onUpdate:modelValue":v=>u.workPlan=v,placeholder:"请输入",clearable:"",type:"textarea"},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024),e(g,{label:"责任单位:",prop:"dutyUnit"},{default:l(()=>[e(m,{modelValue:u.dutyUnit,"onUpdate:modelValue":v=>u.dutyUnit=v,placeholder:"请输入",clearable:""},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)]),_:2},1032,["model"])]),_:2},1024))),128))]),_:1})}}},al={class:"relative ml-3 w-[300px]"},tl={class:"w-[120px]"},ol={class:"hc-flex mt-5"},rl={__name:"list",emits:["edit"],setup(ae,{emit:W}){const L=W;se(()=>{T()});const T=async()=>{F.value=await re("workFocusStage",!0),z()},F=s([]),w=s({targetPlan:"",workFocusStage:null,current:1,size:20,total:0}),z=()=>{w.value.current=1,$()},r=({current:g,size:m})=>{w.value.current=g,w.value.size=m,$()},Y=s([]),M=s(!1),$=async()=>{Y.value=[],M.value=!0;const{error:g,code:m,data:I}=await ue.page(w.value);M.value=!1,!g&&m===200?(Y.value=oe(I.records),w.value.total=I.total||0):(Y.value=[],w.value.total=0)},q=s([]),V=g=>{q.value=g},N=g=>{L("edit",g)},Z=async(g,m)=>{const I=ge(q.value),{error:E,code:A,msg:S}=await ue.del(I);!E&&A===200?(window.$message.success("删除成功"),m(),z()):window.$message.error(S??"删除失败")},D=s(!1),b=s(""),U={url:"/api/blade-attach/workfocus/import-workfocus",size:120,accept:".xls,.xlsx",accept_tip:"请选择Excel文件"},p=()=>{D.value=!0},t=s(!1),y=async()=>{await we(),t.value=!0;const{error:g,val:m}=await ue.exportTemplate();if(t.value=!1,g){window.$message?.error("数据异常");return}await ye(m)},G=()=>{D.value=!1},B=({res:g})=>{G(),window?.$message.success(g.msg),$()};return(g,m)=>{const I=i("hc-date-year"),E=i("hc-search-input"),A=i("el-option"),S=i("el-select"),d=i("el-button"),a=i("hc-pages"),u=i("hc-form-upload"),c=i("hc-dialog"),v=i("hc-card"),P=be("del-com");return f(),h(v,{class:"hc-project-collect-gist-list"},{header:l(()=>[e(I,{modelValue:w.value.startYear,"onUpdate:modelValue":m[0]||(m[0]=k=>w.value.startYear=k),end:w.value.endYear,"onUpdate:end":m[1]||(m[1]=k=>w.value.endYear=k)},null,8,["modelValue","end"]),C("div",al,[e(E,{modelValue:w.value.targetPlan,"onUpdate:modelValue":m[2]||(m[2]=k=>w.value.targetPlan=k),text:"搜索",color:"#151921",onSearch:z},null,8,["modelValue"])])]),extra:l(()=>[C("div",tl,[e(S,{modelValue:w.value.workFocusStage,"onUpdate:modelValue":m[3]||(m[3]=k=>w.value.workFocusStage=k),filterable:"",clearable:"",block:"",placeholder:"项目阶段",onChange:z},{default:l(()=>[(f(!0),K(H,null,Q(F.value,k=>(f(),h(A,{key:k.value,label:k.label,value:k.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_e((f(),h(d,{type:"danger",class:"ml-2",disabled:q.value.length<=0},{default:l(()=>m[6]||(m[6]=[x("批量删除")])),_:1},8,["disabled"])),[[P,void 0,Z]]),e(d,{type:"warning",class:"ml-2",onClick:p},{default:l(()=>m[7]||(m[7]=[x("导入")])),_:1})]),action:l(()=>[e(a,{pages:w.value,onChange:r},null,8,["pages"])]),default:l(()=>[e(Be,{datas:Y.value,loading:M.value,"is-admin":"",onTap:N,onCheck:V,onChange:z},null,8,["datas","loading"]),e(c,{modelValue:D.value,"onUpdate:modelValue":m[5]||(m[5]=k=>D.value=k),widths:"24rem",title:"项目数据导入",footer:!1,onClose:G},{default:l(()=>[e(u,{modelValue:b.value,"onUpdate:modelValue":m[4]||(m[4]=k=>b.value=k),class:"hc-form-drop-upload",options:{num:1,type:"list",drop:!0},upload:{options:U},onSuccess:B},null,8,["modelValue","upload"]),C("div",ol,[m[9]||(m[9]=C("span",{class:"mr-2"},"模板下载:",-1)),e(d,{color:"#20C98B",size:"small",class:"text-white",loading:t.value,onClick:y},{default:l(()=>m[8]||(m[8]=[x("点击下载")])),_:1},8,["loading"])])]),_:1},8,["modelValue"])]),_:1})}}},nl={class:"hc-project-collect-middle hc-h-full flex"},sl={class:"menu hc-h-full inline-block w-[180px]"},ul={class:"content hc-h-full inline-block"},wl={__name:"middle",setup(ae){const W=Ye(),L=Ue();se(()=>{z()});const T=s(""),F=s([]),w=({code:b})=>{Y.value={},V.value={},T.value=b,W.push({path:L.path,query:{code:b}})},z=async()=>{const b=Te("projectMenu");if(!je(b)||(F.value=b,b.length<=0))return;const U=await r(b),{code:p}=L.query;T.value=p||U},r=async b=>{const U=b[0].children;return!J(U)&&U.length>0?await r(U):b[0].code},Y=s({}),M=b=>{q("project-collect-admin-create",b)},$=()=>{q("project-collect-admin-list")},q=(b,U={})=>{Y.value=U,T.value=b,W.push({path:L.path,query:{code:b}})},V=s({}),N=b=>{D("project-collect-gist-create",b)},Z=()=>{D("project-collect-gist-list")},D=(b,U={})=>{V.value=U,T.value=b,W.push({path:L.path,query:{code:b}})};return(b,U)=>{const p=i("hc-card"),t=i("hc-empty");return f(),K("div",nl,[F.value.length>0?(f(),K(H,{key:0},[C("div",sl,[e(p,null,{default:l(()=>[e(Re,{cur:T.value,datas:F.value,onChange:w},null,8,["cur","datas"])]),_:1})]),C("div",ul,[T.value==="project-collect-admin-create"?(f(),h(Ge,{key:0,form:Y.value,onBack:$},null,8,["form"])):T.value==="project-collect-admin-list"?(f(),h(Qe,{key:1,onEdit:M})):T.value==="project-collect-gist-create"?(f(),h(ll,{key:2,form:V.value,onBack:Z},null,8,["form"])):T.value==="project-collect-gist-list"?(f(),h(rl,{key:3,onEdit:N})):(f(),h(p,{key:4},{default:l(()=>[e(t,{src:fe(Ne),title:"404",text:"抱歉,您要访问的页面不存在"},null,8,["src"])]),_:1}))])],64)):(f(),h(p,{key:1},{default:l(()=>[e(t,{src:fe(qe),title:"403",text:"抱歉,您现在无权访问该页面"},null,8,["src"])]),_:1}))])}}};export{wl as default};