UNPKG

@javaguns/flow-ui

Version:

``` <template> <a-spin :spinning="loading"> <FlowDesigner ref="flowDesigner" top="50px"> </FlowDesigner> </a-spin> </template> <script lang="ts" setup> import { ref, provide, onMounted } from 'vue'; import { FlowDesigner, LoadingKey } from '@j

179 lines (178 loc) 6.89 kB
import { defineComponent as b, getCurrentInstance as j, ref as i, inject as q, onMounted as L, computed as M, openBlock as t, createBlock as p, unref as l, withCtx as s, createElementBlock as _, Fragment as $, renderList as h, createVNode as d, createCommentVNode as m } from "vue"; import { pluginManager as v } from "@javaguns/utils"; import { DataInfoKey as D } from "../../utils/injection-key.mjs"; import E from "../../flow-designer/common/flowSelect.vue.mjs"; import { FlowSelection as f } from "../../flow-selection/index.mjs"; const K = b({ name: "flow-operate-suggest" }), Q = /* @__PURE__ */ b({ ...K, props: { code: { default: "" }, showCc: { type: Boolean, default: !1 }, selectApprovers: {}, candidateNodeId: { default: null }, nodeApprovers: { default: () => [] } }, emits: ["chagne"], setup(k, { expose: V, emit: C }) { const N = v.getComponent("Form"), n = v.getComponent("FormItem"); v.getComponent("Timeline"), v.getComponent("TimelineItem"); const w = v.getComponent("Textarea"), o = k, { appContext: x } = j(), g = x.app.config.globalProperties.$flowUI, c = i(), U = { style: { width: "150px" } }, F = q(D, i({})), e = i({ suggest: "", remark: "", copyerAssigneeList: "", nextAssigneeList: "", nodeApprovers: [], selectApprovers: { approverIds: [], approverNames: [] }, copyers: { approverIds: [], approverNames: [] } }), R = i({ remark: [ { required: !0, message: "审批意见不能为空" } ] }); L(() => { o.selectApprovers && o.selectApprovers.approverIds && (e.value.selectApprovers.approverIds = o.selectApprovers.approverIds, e.value.selectApprovers.approverNames = o.selectApprovers.approverNames), o.nodeApprovers && o.nodeApprovers.length > 0 && (e.value.nodeApprovers = o.nodeApprovers); }); const I = M(() => o.code === "reject" ? [{ value: 2, name: "已阅,不同意" }] : o.code === "agree" ? [{ value: 1, name: "已阅,同意" }] : o.code === "consultSubmit" ? [ { value: 1, name: "已阅,同意" }, { value: 2, name: "已阅,不同意" }, { value: 3, name: "已修改,请领导审批" } ] : [{ value: 3, name: "已修改,请领导审批" }]), y = () => o.code == "agree" || o.code == "reject" || o.code == "consultSubmit" || o.code == "submit" && F.value.ruInstance, B = C, S = (u) => { u && (e.value.remark = I.value.filter((a) => a.value == u).map((a) => a.name)[0]), B("chagne", e.value); }; return V({ valid: async () => { try { return g == "element-plus" || g == "arco-design" ? await c.value.validate() : await c.value.validateFields(), e.value; } catch { return null; } } }), (u, a) => (t(), p(l(N), { ref_key: "attFormRef", ref: c, model: e.value, rules: R.value, "label-col": U, layout: "vertical", "label-position": "top" }, { default: s(() => [ e.value.nodeApprovers.length > 0 ? (t(!0), _($, { key: 0 }, h(e.value.nodeApprovers, (r, A) => (t(), p(l(n), { key: r.nodeId, label: r.nodeName, name: ["nodeApprovers", A, "approverIds"], prop: "nodeApprovers." + A + ".approverIds", rules: [{ required: !0, message: "发起人自选不能为空" }] }, { default: s(() => [ d(l(f), { type: "user", title: "请选择发起人自选人员", isRadio: !1, min: 1, max: 25, modelValue: r.approverIds, "onUpdate:modelValue": (T) => r.approverIds = T, label: r.approverNames }, null, 8, ["modelValue", "onUpdate:modelValue", "label"]) ]), _: 2 }, 1032, ["label", "name", "prop"]))), 128)) : m("", !0), u.candidateNodeId ? (t(), p(l(n), { key: 1, label: "选择审批", name: ["selectApprovers", "approverIds"], prop: "selectApprovers.approverIds", rules: { required: !0, message: "选择审批不能为空" } }, { default: s(() => [ d(l(f), { type: "user", title: "请选择审批人人员", isRadio: !1, min: 1, max: 25, modelValue: e.value.selectApprovers.approverIds, "onUpdate:modelValue": a[0] || (a[0] = (r) => e.value.selectApprovers.approverIds = r), label: e.value.selectApprovers.approverNames, "onUpdate:label": a[1] || (a[1] = (r) => e.value.selectApprovers.approverNames = r) }, null, 8, ["modelValue", "label"]) ]), _: 1 }, 8, ["prop"])) : m("", !0), o.showCc && o.code == "agree" ? (t(), p(l(n), { key: 2, label: "抄送人", name: "approverIds", prop: "approverIds" }, { default: s(() => [ d(l(f), { type: "user", title: "请选择抄送人员", isRadio: !1, min: 1, max: 25, modelValue: e.value.copyers.approverIds, "onUpdate:modelValue": a[2] || (a[2] = (r) => e.value.copyers.approverIds = r), label: e.value.copyers.approverNames, "onUpdate:label": a[3] || (a[3] = (r) => e.value.copyers.approverNames = r) }, null, 8, ["modelValue", "label"]) ]), _: 1 })) : m("", !0), y() ? (t(), p(l(n), { key: 3, label: "意见快选", prop: "suggest" }, { default: s(() => [ d(E, { modelValue: e.value.suggest, "onUpdate:modelValue": a[4] || (a[4] = (r) => e.value.suggest = r), datas: I.value, mode: "simple", placeholder: "请选择常用审批意见", style: { width: "200px" }, onChange: S }, null, 8, ["modelValue", "datas"]) ]), _: 1 })) : m("", !0), y() ? (t(), p(l(n), { key: 4, label: "审批意见", prop: "remark" }, { default: s(() => [ d(l(w), { modelValue: e.value.remark, "onUpdate:modelValue": a[5] || (a[5] = (r) => e.value.remark = r), value: e.value.remark, "onUpdate:value": a[6] || (a[6] = (r) => e.value.remark = r), type: "textarea", rows: 3 }, null, 8, ["modelValue", "value"]) ]), _: 1 })) : m("", !0) ]), _: 1 }, 8, ["model", "rules"])); } }); export { Q as default };