UNPKG

@cdwx/system

Version:

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

315 lines (314 loc) 19.7 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 */ 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-tooltip.css.js"; /* empty css */ import { defineComponent as G, onMounted as L, ref as w, openBlock as a, createBlock as r, unref as i, withCtx as m, createElementVNode as p, createTextVNode as h, createCommentVNode as n, createVNode as u, toDisplayString as C, resolveDynamicComponent as O } from "vue"; /* 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-sub-menu.css.js"; 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-menu-item.css.js"; import "vue-router"; /* 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-breadcrumb-item.css.js"; /* empty css */ import "../workspace/code/cloud-frontend/node_modules/.pnpm/vue-echarts@7.0.3_@vue_runtime-core@3.5.13_echarts@5.6.0_vue@3.5.13_typescript@5.5.4_/node_modules/vue-echarts/dist/index.js"; /* empty css */ /* empty css */ /* empty css */ /* empty css */ /* empty css */ import "../workspace/code/cloud-frontend/packages/http/src/index.js"; import "../workspace/code/cloud-frontend/packages/stores/src/instance.js"; import "../workspace/code/cloud-frontend/packages/stores/src/modules/menu.js"; import "../workspace/code/cloud-frontend/packages/stores/src/modules/page-tab.js"; import { useRequestingStore as W } from "../workspace/code/cloud-frontend/packages/stores/src/modules/requesting-records.js"; import "../workspace/code/cloud-frontend/packages/stores/src/modules/system.js"; import "../workspace/code/cloud-frontend/packages/stores/src/modules/user.js"; import { ElMessageBox as X, ElMessage as j } from "element-plus"; /* empty css */ /* empty css */ import "../workspace/code/cloud-frontend/node_modules/.pnpm/sm-crypto-v2@1.9.3/node_modules/sm-crypto-v2/dist/index.js"; /* empty css */ /* empty css */ import { useSearchTable as F } from "../workspace/code/cloud-frontend/packages/hooks/src/use-search-table.js"; /* empty css */ import "../workspace/code/cloud-frontend/node_modules/.pnpm/@vue-office_docx@1.6.3_vue-demi@0.14.10_vue@3.5.13_typescript@5.5.4___vue@3.5.13_typescript@5.5.4_/node_modules/@vue-office/docx/lib/index.js"; import "../workspace/code/cloud-frontend/node_modules/.pnpm/@vue-office_excel@1.7.14_vue-demi@0.14.10_vue@3.5.13_typescript@5.5.4___vue@3.5.13_typescript@5.5.4_/node_modules/@vue-office/excel/lib/index.js"; import "../workspace/code/cloud-frontend/node_modules/.pnpm/@vue-office_pdf@2.0.10_vue-demi@0.14.10_vue@3.5.13_typescript@5.5.4___vue@3.5.13_typescript@5.5.4_/node_modules/@vue-office/pdf/lib/index.js"; /* empty css */ /* empty css */ /* empty css */ /* empty css */ /* empty css */ /* empty css */ /* empty css */ /* empty css */ /* empty css */ import "../workspace/code/cloud-frontend/packages/ui/src/assets/iconfont/iconfont.js"; /* empty css */ /* 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-tab-pane.css.js"; /* empty css */ /* empty css */ /* empty css */ /* empty css */ /* empty css */ /* empty css */ /* empty css */ /* empty css */ import R from "../workspace/code/cloud-frontend/packages/ui/src/components/search-bar/src/index.vue.js"; /* empty css */ import { FormType as H } from "../workspace/code/cloud-frontend/packages/ui/src/components/search-bar/src/types.js"; /* empty css */ import K from "../workspace/code/cloud-frontend/packages/ui/src/components/table/index.vue.js"; /* empty css */ /* empty css */ /* empty css */ import Q 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 { getListData as Y, deleteData as Z, operateData as tt } from "../workspace/code/cloud-frontend/service-modules/system/src/api/api-job.js"; import S from "./add.vue.js"; /* empty css */ import { ElButton as et } 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 { ElTableColumn as ot } 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/table/index.js"; import { ElSwitch as at } 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/switch/index.js"; import { ElDialog as rt } 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/dialog/index.js"; import { ElConfigProvider as lt } 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 it = { class: "h-[calc(100%-100px)] bg-white" }, mt = { class: "p-30 pt-20" }, nt = { class: "flex items-center" }, pt = { class: "mr-12 text-14 color-[--el-text-color-regular]" }, st = { class: "flex items-center" }, ut = { class: "mr-12 text-14 color-[--el-text-color-regular]" }, ct = { class: "px-14 pt-14" }, Ae = /* @__PURE__ */ G({ name: "Job", __name: "list", props: { search: {}, btn: {}, table: {}, addItem: {} }, setup(x) { const o = x, T = W(), { search: D, turnPage: B, pageInfo: P, tableData: V, getData: d, remove: $ } = F({ api: Y, removeApi: Z, defaultPageSize: 10, defaultSearchParams: { name: "" // 名称 } }); function b(l) { const t = l.commandStatus === 1 ? "禁用" : "启用"; X.confirm(`请确认要${t}${l.name}】指挥调度权限吗?`, `${t}`, { confirmButtonText: "确认", cancelButtonText: "取消" }).then(async () => { await E(l), j({ type: "success", message: `${t}成功!` }), d(); }); } async function E(l) { try { const t = { id: l.id, commandStatus: l.commandStatus ? 0 : 1 }; return await tt(t), Promise.resolve(!0); } catch { return Promise.reject(new Error("false")); } } L(async () => { d(); }); function N(l) { return JSON.parse(JSON.stringify(l)); } const c = w(!1), f = w("add"), _ = w(), M = /* @__PURE__ */ new Map([ ["add", "新增"], ["update", "编辑"] ]), z = /* @__PURE__ */ new Map([ ["add", S], ["update", S] ]); function y(l, t) { _.value = N(t), f.value = l, c.value = !0; } function I() { c.value = !1, d(); } return (l, t) => { const g = et, J = R, s = ot, k = at, U = K, q = rt, A = lt; return a(), r(A, { locale: i(Q) }, { default: m(() => [ p("div", it, [ p("div", null, [ p("div", mt, [ o.search ? (a(), r(J, { key: 0, "is-loading": i(T).loading, "field-list": [ { type: i(H).input, label: "岗位名称", placeholder: "请输入岗位名称", prop: "name", maxlength: 200, defaultValue: "" } ], onSearch: t[1] || (t[1] = (e) => i(D)(e)) }, { buttons: m(() => [ o.btn.showAdd ? (a(), r(g, { key: 0, onClick: t[0] || (t[0] = (e) => y("add", null)) }, { default: m(() => t[4] || (t[4] = [ h(" 新增岗位 ") ])), _: 1 })) : n("", !0) ]), _: 1 }, 8, ["is-loading", "field-list"])) : n("", !0), u(U, { data: i(V), "page-info": i(P), onPageChange: i(B) }, { default: m(() => [ o.table.showName ? (a(), r(s, { key: 0, prop: "name", label: "岗位名称" })) : n("", !0), o.table.showNum ? (a(), r(s, { key: 1, prop: "userNum", label: "成员数量" })) : n("", !0), o.table.showCreateTime ? (a(), r(s, { key: 2, label: "创建时间", "show-word-limit": "", prop: "createTime" })) : n("", !0), o.table.showUpdateTime ? (a(), r(s, { key: 3, label: "更新时间", "show-word-limit": "", prop: "updateTime" })) : n("", !0), o.table.showGPS ? (a(), r(s, { key: 4, label: "GPS数据" }, { default: m((e) => [ p("div", nt, [ p("span", pt, C(e.row.status === 1 ? "启用" : "禁用"), 1), u(k, { "model-value": e.row.status, size: "small", "active-value": 1, "inactive-value": e.row.status !== 1, "before-change": () => !1, onClick: (v) => b(e.row) }, null, 8, ["model-value", "inactive-value", "onClick"]) ]) ]), _: 1 })) : n("", !0), o.table.showCommand ? (a(), r(s, { key: 5, label: "指挥调度" }, { default: m((e) => [ p("div", st, [ p("span", ut, C(e.row.commandStatus === 1 ? "启用" : "禁用"), 1), u(k, { "model-value": e.row.commandStatus, size: "small", "active-value": 1, "inactive-value": e.row.commandStatus !== 1, "before-change": () => !1, onClick: (v) => b(e.row) }, null, 8, ["model-value", "inactive-value", "onClick"]) ]) ]), _: 1 })) : n("", !0), u(s, { label: "操作" }, { default: m((e) => [ o.table.showEdit ? (a(), r(g, { key: 0, type: o.table.showBtnType === "text" ? "primary" : "", link: o.table.showBtnType === "text", onClick: (v) => y("update", e.row) }, { default: m(() => t[5] || (t[5] = [ h(" 编辑 ") ])), _: 2 }, 1032, ["type", "link", "onClick"])) : n("", !0), o.table.showDel ? (a(), r(g, { key: 1, type: o.table.showBtnType === "text" ? "primary" : "", link: o.table.showBtnType === "text", onClick: (v) => i($)(e.row, "name", "id", "") }, { default: m(() => t[6] || (t[6] = [ h(" 删除 ") ])), _: 2 }, 1032, ["type", "link", "onClick"])) : n("", !0) ]), _: 1 }) ]), _: 1 }, 8, ["data", "page-info", "onPageChange"]) ]) ]), u(q, { modelValue: c.value, "onUpdate:modelValue": t[3] || (t[3] = (e) => c.value = e), title: i(M).get(f.value), width: "502", "destroy-on-close": "", "align-center": "", "close-on-click-modal": !1, "close-on-press-escape": !1 }, { default: m(() => [ p("div", ct, [ (a(), r(O(i(z).get(f.value)), { modelValue: _.value, "onUpdate:modelValue": t[2] || (t[2] = (e) => _.value = e), rules: o.addItem, onClose: I }, null, 40, ["modelValue", "rules"])) ]) ]), _: 1 }, 8, ["modelValue", "title"]) ]) ]), _: 1 }, 8, ["locale"]); }; } }); export { Ae as default };