2025-06-02 21:34:56 +08:00

2 lines
8.7 KiB
JavaScript

var e=Object.defineProperty,l=Object.getOwnPropertySymbols,a=Object.prototype.hasOwnProperty,t=Object.prototype.propertyIsEnumerable,n=(l,a,t)=>a in l?e(l,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):l[a]=t;import{Z as o,_ as u,C as r,d as p,r as m,O as i,S as d,j as s,H as c,c as f,o as g,F as v,e as b,R as y,k as h,w as C,l as V,m as _,h as k,I as w,J as N,f as x,P as O}from"./index-C-c3zR6K.js";import{s as T}from"./variable-BQq6M8_1.js";const $={class:"app-container"},q={class:"dialog-footer"},P=r({name:"Template"}),S=u(Object.assign(P,{setup(e){const{proxy:u}=p(),{template_type:r}=u.useDict("template_type"),P=m([]),S=m(!1),U=m(!0),j=m(!0),D=m([]),I=m(!0),E=m(!0),R=m(0),M=m(""),z=m([]),B=i({form:{templateContent:""},queryParams:{pageNum:1,pageSize:10,templateName:null,templateType:null},rules:{templateName:[{required:!0,message:"请输入模版名称",trigger:"blur"}],templateCode:[{required:!0,message:"请输入模版CODE",trigger:"blur"}],templateType:[{required:!0,message:"请选择模版类型",trigger:"change"}],templateVariable:[{required:!0,message:"请选择变量",trigger:"change"}],remark:[{required:!0,message:"请输入场景说明",trigger:"blur"}],templateContent:[{required:!0,message:"请输入模版内容",trigger:"blur"}]}}),{queryParams:F,form:H,rules:J}=d(B);function K(){var e;U.value=!0,(e=F.value,o({url:"/modelMessage/template/list",method:"get",params:e})).then((e=>{P.value=e.rows,R.value=e.total,U.value=!1}))}function Z(){S.value=!1,A()}function A(){H.value={templateId:null,templateName:null,templateCode:null,templateType:null,templateContent:"",templateVariable:[],createBy:null,createTime:null,updateBy:null,updateTime:null,remark:null},u.resetForm("templateRef")}function G(){F.value.pageNum=1,K()}function L(){u.resetForm("queryRef"),G()}function Q(e){D.value=e.map((e=>e.templateId)),I.value=1!=e.length,E.value=!e.length}function W(){A(),ae(),S.value=!0,M.value="添加模版"}function X(e){A(),ae();const l=e.templateId||D.value;var a;(a=l,o({url:"/modelMessage/template/"+a,method:"get"})).then((e=>{H.value=e.data,H.value.templateVariable=e.data.templateVariable.split("/"),S.value=!0,M.value="编辑模版"}))}function Y(){u.$refs.templateRef.validate((e=>{e&&(H.value.templateVariable=H.value.templateVariable.join("/"),null!=H.value.templateId?function(e){return o({url:"/modelMessage/template",method:"put",data:e})}(H.value).then((e=>{u.$modal.msgSuccess("编辑模版成功"),S.value=!1,K()})):function(e){return o({url:"/modelMessage/template",method:"post",data:e})}(H.value).then((e=>{u.$modal.msgSuccess("新增模版成功"),S.value=!1,K()})))}))}function ee(e){const l=e.templateId||D.value;u.$modal.confirm('是否确认删除模版管理编号为"'+l+'"的数据项?').then((function(){return o({url:"/modelMessage/template/"+l,method:"delete"})})).then((()=>{K(),u.$modal.msgSuccess("删除成功")})).catch((()=>{}))}function le(){u.download("modelMessage/template/export",((e,o)=>{for(var u in o||(o={}))a.call(o,u)&&n(e,u,o[u]);if(l)for(var u of l(o))t.call(o,u)&&n(e,u,o[u]);return e})({},F.value),`template_${(new Date).getTime()}.xlsx`)}function ae(){return e=this,l=null,a=function*(){try{z.value=(yield T()).data}catch(e){}},new Promise(((t,n)=>{var o=e=>{try{r(a.next(e))}catch(l){n(l)}},u=e=>{try{r(a.throw(e))}catch(l){n(l)}},r=e=>e.done?t(e.value):Promise.resolve(e.value).then(o,u);r((a=a.apply(e,l)).next())}));var e,l,a}function te(e){H.value.templateVariable=e,H.value.templateContent||(H.value.templateContent="");const l=H.value.templateContent.match(/\$\{\w+\}/g)||[],a=z.value.filter((l=>e.includes(l.variableName))).map((e=>`\${${e.variableContent}}`));l.forEach((e=>{a.includes(e)||(H.value.templateContent=H.value.templateContent.replace(e,"").trim())}));const t=z.value.find((l=>l.variableName===e[e.length-1]));if(t){const e=`\${${t.variableContent}}`;H.value.templateContent.includes(e)||(H.value.templateContent+=` ${e}`)}H.value.templateContent=H.value.templateContent.replace(/\s+/g," ").trim()}return ae(),K(),(e,l)=>{const a=s("el-input"),t=s("el-form-item"),n=s("el-button"),o=s("el-form"),u=s("el-col"),p=s("el-row"),m=s("el-table-column"),i=s("dict-tag"),d=s("el-table"),T=s("pagination"),D=s("el-option"),I=s("el-select"),B=s("el-dialog"),A=c("loading");return g(),f("div",$,[v(b(o,{model:h(F),ref:"queryRef",inline:!0,"label-width":"68px"},{default:C((()=>[b(t,{label:"模版名称",prop:"templateName"},{default:C((()=>[b(a,{modelValue:h(F).templateName,"onUpdate:modelValue":l[0]||(l[0]=e=>h(F).templateName=e),placeholder:"请输入模版名称",clearable:"",onKeyup:V(G,["enter"])},null,8,["modelValue"])])),_:1}),b(t,null,{default:C((()=>[b(n,{type:"primary",icon:"Search",onClick:G},{default:C((()=>l[10]||(l[10]=[_("搜索")]))),_:1}),b(n,{icon:"Refresh",onClick:L},{default:C((()=>l[11]||(l[11]=[_("重置")]))),_:1})])),_:1})])),_:1},8,["model"]),[[y,h(j)]]),b(p,{gutter:10,class:"mb8"},{default:C((()=>[b(u,{span:1.5},{default:C((()=>[b(n,{type:"primary",plain:"",icon:"Plus",onClick:W},{default:C((()=>l[12]||(l[12]=[_("新增模版")]))),_:1})])),_:1}),b(u,{span:1.5},{default:C((()=>[b(n,{type:"danger",plain:"",icon:"Delete",disabled:h(E),onClick:ee},{default:C((()=>l[13]||(l[13]=[_("删除模版")]))),_:1},8,["disabled"])])),_:1}),b(u,{span:1.5},{default:C((()=>[b(n,{type:"warning",plain:"",icon:"Download",onClick:le},{default:C((()=>l[14]||(l[14]=[_("导出")]))),_:1})])),_:1})])),_:1}),v((g(),k(d,{data:h(P),onSelectionChange:Q},{default:C((()=>[b(m,{type:"selection",width:"55",align:"center"}),b(m,{label:"模版名称",align:"center",prop:"templateName"}),b(m,{label:"模版CODE",align:"center",prop:"templateCode"}),b(m,{label:"模版类型",align:"center",prop:"templateType"},{default:C((e=>[b(i,{options:h(r),value:e.row.templateType},null,8,["options","value"])])),_:1}),b(m,{label:"模版内容",align:"center",prop:"templateContent"}),b(m,{label:"变量",align:"center",prop:"templateVariable"}),b(m,{label:"场景说明",align:"center",prop:"remark"}),b(m,{label:"操作",align:"center",class:"small-padding fixed-width"},{default:C((e=>[b(n,{link:"",type:"primary",icon:"Edit",onClick:l=>X(e.row)},{default:C((()=>l[15]||(l[15]=[_("编辑")]))),_:2},1032,["onClick"]),b(n,{link:"",type:"danger",icon:"Delete",onClick:l=>ee(e.row)},{default:C((()=>l[16]||(l[16]=[_("删除")]))),_:2},1032,["onClick"])])),_:1})])),_:1},8,["data"])),[[A,h(U)]]),v(b(T,{total:h(R),page:h(F).pageNum,"onUpdate:page":l[1]||(l[1]=e=>h(F).pageNum=e),limit:h(F).pageSize,"onUpdate:limit":l[2]||(l[2]=e=>h(F).pageSize=e),onPagination:K},null,8,["total","page","limit"]),[[y,h(R)>0]]),b(B,{title:h(M),modelValue:h(S),"onUpdate:modelValue":l[9]||(l[9]=e=>O(S)?S.value=e:null),width:"500px","append-to-body":"",class:"dialog-container"},{footer:C((()=>[x("div",q,[b(n,{type:"primary",onClick:Y},{default:C((()=>l[17]||(l[17]=[_("确 定")]))),_:1}),b(n,{onClick:Z},{default:C((()=>l[18]||(l[18]=[_("取 消")]))),_:1})])])),default:C((()=>[b(o,{ref:"templateRef",model:h(H),rules:h(J),"label-width":"80px"},{default:C((()=>[b(t,{label:"模版名称",prop:"templateName"},{default:C((()=>[b(a,{modelValue:h(H).templateName,"onUpdate:modelValue":l[3]||(l[3]=e=>h(H).templateName=e),placeholder:"请输入模版名称"},null,8,["modelValue"])])),_:1}),b(t,{label:"模版CODE",prop:"templateCode","label-width":"90px"},{default:C((()=>[b(a,{modelValue:h(H).templateCode,"onUpdate:modelValue":l[4]||(l[4]=e=>h(H).templateCode=e),placeholder:"请输入模版CODE"},null,8,["modelValue"])])),_:1}),b(t,{label:"模版类型",prop:"templateType"},{default:C((()=>[b(I,{modelValue:h(H).templateType,"onUpdate:modelValue":l[5]||(l[5]=e=>h(H).templateType=e),placeholder:"请选择模版类型"},{default:C((()=>[(g(!0),f(w,null,N(h(r),(e=>(g(),k(D,{key:e.value,label:e.label,value:e.value},null,8,["label","value"])))),128))])),_:1},8,["modelValue"])])),_:1}),b(t,{label:"变量",prop:"templateVariable"},{default:C((()=>[b(I,{modelValue:h(H).templateVariable,"onUpdate:modelValue":l[6]||(l[6]=e=>h(H).templateVariable=e),placeholder:"请选择变量",multiple:"",onChange:te},{default:C((()=>[(g(!0),f(w,null,N(h(z),(e=>(g(),k(D,{key:e.variableId,label:e.variableName,value:e.variableName},null,8,["label","value"])))),128))])),_:1},8,["modelValue"])])),_:1}),b(t,{label:"模版内容",prop:"templateContent"},{default:C((()=>[b(a,{modelValue:h(H).templateContent,"onUpdate:modelValue":l[7]||(l[7]=e=>h(H).templateContent=e),type:"textarea",placeholder:"请输入模版内容"},null,8,["modelValue"])])),_:1}),b(t,{label:"场景说明",prop:"remark"},{default:C((()=>[b(a,{modelValue:h(H).remark,"onUpdate:modelValue":l[8]||(l[8]=e=>h(H).remark=e),type:"textarea",placeholder:"请输入场景说明"},null,8,["modelValue"])])),_:1})])),_:1},8,["model","rules"])])),_:1},8,["title","modelValue"])])}}}),[["__scopeId","data-v-e25253f2"]]);export{S as default};