UNPKG

@cdwx/system

Version:

成都文宣业务类服务模块组件库

288 lines (287 loc) 13.6 kB
/* empty css */ import "../workspace/code/cloud-frontend/node_modules/.pnpm/element-plus@2.9.1_vue@3.5.13_typescript@5.5.4_/node_modules/element-plus/theme-chalk/el-config-provider.css.js"; /* empty css */ /* empty css */ /* empty css */ /* empty css */ import "../workspace/code/cloud-frontend/node_modules/.pnpm/element-plus@2.9.1_vue@3.5.13_typescript@5.5.4_/node_modules/element-plus/theme-chalk/el-form-item.css.js"; /* empty css */ import { defineComponent as T, ref as f, reactive as $, onMounted as A, openBlock as s, createBlock as d, unref as r, withCtx as l, createElementVNode as c, toDisplayString as V, createVNode as n, createCommentVNode as m, createElementBlock as M, Fragment as S, renderList as j, createTextVNode as v } from "vue"; import { ElMessage as k } from "element-plus"; import z from "../workspace/code/cloud-frontend/node_modules/.pnpm/element-plus@2.9.1_vue@3.5.13_typescript@5.5.4_/node_modules/element-plus/es/locale/lang/zh-cn.js"; import { useRouter as G, useRoute as H } from "vue-router"; import { getData as O, updateData as J, saveData as K } from "../workspace/code/cloud-frontend/service-modules/system/src/api/api-package.js"; import { useDictList as Q } from "../workspace/code/cloud-frontend/service-modules/system/src/hooks/use-dict-list.js"; import W from "./tree.vue.js"; import { ElInput as X } from "../workspace/code/cloud-frontend/node_modules/.pnpm/element-plus@2.9.1_vue@3.5.13_typescript@5.5.4_/node_modules/element-plus/es/components/input/index.js"; import { ElFormItem as Y, ElForm as Z } from "../workspace/code/cloud-frontend/node_modules/.pnpm/element-plus@2.9.1_vue@3.5.13_typescript@5.5.4_/node_modules/element-plus/es/components/form/index.js"; import { ElRadio as ee, ElRadioGroup as te } from "../workspace/code/cloud-frontend/node_modules/.pnpm/element-plus@2.9.1_vue@3.5.13_typescript@5.5.4_/node_modules/element-plus/es/components/radio/index.js"; import { ElButton as ae } from "../workspace/code/cloud-frontend/node_modules/.pnpm/element-plus@2.9.1_vue@3.5.13_typescript@5.5.4_/node_modules/element-plus/es/components/button/index.js"; import { ElConfigProvider as le } from "../workspace/code/cloud-frontend/node_modules/.pnpm/element-plus@2.9.1_vue@3.5.13_typescript@5.5.4_/node_modules/element-plus/es/components/config-provider/index.js"; const oe = { class: "app-box h-[100%] overflow-hidden" }, re = { class: "h-[100%] bg-white p-30" }, ue = { class: "mb-10 flex text-20 color-[--el-text-color-primary] line-height-28" }, se = { style: { flex: "1" } }, de = { class: "content-box h-[calc(100%)] pb-20" }, ne = { class: "form-box" }, Ie = /* @__PURE__ */ T({ name: "PackageAdd", __name: "add", props: { customName: {}, search: {}, btn: {}, table: {}, addItem: {} }, setup(C) { const i = C, _ = G(), u = H(), x = f(), t = f({ id: void 0, name: "", des: "", code: "", language: "Chinese", status: 1, menuDtoList: [] }), E = $({ name: [ { required: !0, message: "请输入套餐名称", trigger: "blur" } ], code: [ { required: !0, message: "请输入套餐编码", trigger: "blur" } ], menuDtoList: [ { required: !0, message: "请选择套餐权限", trigger: "change" } ] }), { dictList: I } = Q("languageClassify"), h = f([]), q = f(), y = f(!1); async function N() { t.value.menuDtoList = await q.value.getCheckedData(); let o = 0; if (t.value.menuDtoList && Object.values(t.value.menuDtoList).forEach((e) => { Array.isArray(e) && e.length > 0 && (o = o + 1); }), o <= 0) return k.error("请选择套餐权限"); y.value = !0; try { t.value.id ? (await J(t.value), k.success("编辑成功"), y.value = !1, setTimeout(() => { _.replace("/system/package"); }, 1e3)) : (await K(t.value), k.success("新增成功"), y.value = !1, setTimeout(() => { _.replace("/system/package"); }, 1e3)); } catch { y.value = !1; } } async function R(o) { o && await o.validate((e) => { e && N(); }); } const g = f(!0); async function U() { g.value = !0; try { const { data: o } = await O(u.query.id); h.value = o.classifyMenuVoList, t.value = o; } catch (o) { console.log(o); } g.value = !1; } return A(async () => { u.query.id && await U(), g.value = !1; }), (o, e) => { const w = X, p = Y, b = ee, D = te, L = ae, B = Z, F = le; return s(), d(F, { locale: r(z) }, { default: l(() => [ c("div", oe, [ c("div", re, [ c("div", ue, [ c("div", se, V(r(u).query.type === "show" ? "查看套餐" : t.value.id ? "编辑套餐" : "新增套餐"), 1) ]), c("div", de, [ c("div", ne, [ g.value ? m("", !0) : (s(), d(B, { key: 0, ref_key: "formRef", ref: x, model: t.value, rules: E, "label-width": 120, class: "mt-15", "status-icon": "" }, { default: l(() => [ i.addItem.showName ? (s(), d(p, { key: 0, label: "套餐名称", prop: "name" }, { default: l(() => [ n(w, { modelValue: t.value.name, "onUpdate:modelValue": e[0] || (e[0] = (a) => t.value.name = a), placeholder: "请输入套餐名称", style: { width: "300px" }, maxlength: "20", readonly: r(u).query.type === "show" }, null, 8, ["modelValue", "readonly"]) ]), _: 1 })) : m("", !0), i.addItem.showCode ? (s(), d(p, { key: 1, label: "套餐编码", prop: "code" }, { default: l(() => [ n(w, { modelValue: t.value.code, "onUpdate:modelValue": e[1] || (e[1] = (a) => t.value.code = a), placeholder: "请输入套餐编码", style: { width: "300px" }, maxlength: "100", readonly: r(u).query.type === "show" }, null, 8, ["modelValue", "readonly"]) ]), _: 1 })) : m("", !0), i.addItem.showLanguage ? (s(), d(p, { key: 2, label: "套餐语言", prop: "language", required: "" }, { default: l(() => [ n(D, { modelValue: t.value.language, "onUpdate:modelValue": e[2] || (e[2] = (a) => t.value.language = a) }, { default: l(() => [ (s(!0), M(S, null, j(r(I), (a, P) => (s(), d(b, { key: P, value: a.value, disabled: r(u).query.type === "show" }, { default: l(() => [ v(V(a.label), 1) ]), _: 2 }, 1032, ["value", "disabled"]))), 128)) ]), _: 1 }, 8, ["modelValue"]) ]), _: 1 })) : m("", !0), i.addItem.showStatus ? (s(), d(p, { key: 3, label: "套餐状态" }, { default: l(() => [ n(D, { modelValue: t.value.status, "onUpdate:modelValue": e[3] || (e[3] = (a) => t.value.status = a), disabled: r(u).query.type === "show" }, { default: l(() => [ n(b, { value: 1 }, { default: l(() => e[8] || (e[8] = [ v(" 启用 ") ])), _: 1 }), n(b, { value: 0 }, { default: l(() => e[9] || (e[9] = [ v(" 禁用 ") ])), _: 1 }) ]), _: 1 }, 8, ["modelValue", "disabled"]) ]), _: 1 })) : m("", !0), i.addItem.showPermission ? (s(), d(p, { key: 4, label: "套餐权限", required: "" }, { default: l(() => [ n(W, { ref_key: "permissionRef", ref: q, modelValue: h.value, "onUpdate:modelValue": e[4] || (e[4] = (a) => h.value = a), disabled: r(u).query.type === "show" }, null, 8, ["modelValue", "disabled"]) ]), _: 1 })) : m("", !0), i.addItem.showDes ? (s(), d(p, { key: 5, label: i.customName || "备注" }, { default: l(() => [ n(w, { modelValue: t.value.des, "onUpdate:modelValue": e[5] || (e[5] = (a) => t.value.des = a), style: { width: "600px" }, rows: 4, type: "textarea", maxlength: "200", placeholder: `请输入${i.customName || "备注信息"}`, readonly: r(u).query.type === "show" }, null, 8, ["modelValue", "placeholder", "readonly"]) ]), _: 1 }, 8, ["label"])) : m("", !0), n(p, { class: "mt-10" }, { default: l(() => [ r(u).query.type !== "show" ? (s(), d(L, { key: 0, type: "primary", class: "w-108 line-height-30", loading: y.value, onClick: e[6] || (e[6] = (a) => R(x.value)) }, { default: l(() => e[10] || (e[10] = [ v(" 保存 ") ])), _: 1 }, 8, ["loading"])) : m("", !0), n(L, { class: "w-108 line-height-30", onClick: e[7] || (e[7] = (a) => r(_).go(-1)) }, { default: l(() => [ v(V(r(u).query.type === "show" ? "返回" : "取消"), 1) ]), _: 1 }) ]), _: 1 }) ]), _: 1 }, 8, ["model", "rules"])) ]) ]) ]) ]) ]), _: 1 }, 8, ["locale"]); }; } }); export { Ie as default };