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

345 lines (344 loc) 13.4 kB
import { defineComponent as R, ref as b, getCurrentInstance as X, reactive as D, openBlock as f, createBlock as y, unref as r, withCtx as o, createElementVNode as i, createVNode as n, createTextVNode as _, createElementBlock as M, Fragment as Y, renderList as Z, normalizeClass as ee, toDisplayString as q, createCommentVNode as h } from "vue"; import { pluginManager as u } from "@javaguns/utils"; import { GunsSpace as le } from "@javaguns/ui"; import te from "../../../hooks/useDrawer.mjs"; import ae from "../../../hooks/useForm.mjs"; import { editJob as oe, saveJob as ne } from "../../../utils/jobApi.mjs"; import g from "../../common/flowDrawerContent.vue.mjs"; import se from "../../common/flowSelect.vue.mjs"; import re from "../../common/flowNoticeSelect.vue.mjs"; import { FlowSelection as O } from "../../../flow-selection/index.mjs"; const de = ["onClick"], ue = ["src"], ie = { key: 0, class: "action-type-modeal-item-wrap-active-img", src: "https://foruda.gitee.com/images/1675700393520586389/bb92d805_9837676.png" }, me = /* @__PURE__ */ i("span", { style: { "padding-right": "8px", "font-size": "14px", color: "rgb(25, 31, 37)" } }, "流程到达该审批节点超过", -1), fe = { style: { "font-size": "14px", color: "rgb(25, 31, 37)" } }, pe = { class: "dialog-footer" }, ce = R({ name: "flow-approver-timeLimitJob" }), Ve = /* @__PURE__ */ R({ ...ce, emits: ["ok"], setup(ve, { expose: T, emit: G }) { const F = u.getComponent("Row"), J = u.getComponent("Col"), B = u.getComponent("Form"), m = u.getComponent("FormItem"), L = u.getComponent("InputNumber"), $ = u.getComponent("Checkbox"), C = u.getComponent("Button"), z = u.getComponent("Dialog"), p = b(!1), V = b(!1), d = b(!1), j = b(), { appContext: S } = X(), { jobItems: E } = te(), { formValid: A } = ae(S), t = b({}), a = D(E), c = D({ jobDuration: [ { required: !0, message: "超时时长不为空" } ], lengthUnit: [ { required: !0, message: "时长单位不为空" } ], warnType: [ { required: !0, message: "提醒方式不能为空" } ] }), H = [ { label: "天(24小时)", value: 1 }, { label: "小时", value: 2 }, { label: "分", value: 3 } ], U = () => { d.value = !1; }, K = (s) => { for (let l = 0; l < a.length; l++) a[l].check = !1; s.check = !0, t.value.jobMode = s.index, t.value.jobMode == 2 ? c.transferUserIds = [ { required: !0, message: "转交人不能为空" } ] : delete c.transferUserIds, t.value.jobMode == 1 ? c.noticeUserIds = [ { required: !0, message: "提醒人不能为空 " } ] : delete c.noticeUserIds; }, P = (s) => { p.value = !1, d.value = !0, t.value = { modelId: s.modelId, definitionId: s.definitionId, nodeId: s.nodeId, /** * 处理方式: * 1-自动提醒(默认), * 2-自动转交, * 3-自动同意, * 4-自动拒绝 */ jobMode: 1, jobDuration: 3, lengthUnit: 1, addOpinion: !0, noticeUserIds: [], noticeUserNames: [], transferUserIds: [], transferUserNames: [], warnType: 1 }, c.noticeUserIds = [ { required: !0, message: "提醒人不能为空 " } ], w(null, s.jobs); }, Q = (s, l) => { p.value = !1, d.value = !0; const e = { ...s }; e.addOpinion == 1 ? e.addOpinion = !0 : e.addOpinion = !1, t.value = e, V.value = !0, w(e, l); }, w = (s, l) => { for (var e = 0; e < a.length; e++) a[e].disabled = !1, a[e].check = !1, !s && a[e].index == 1 && (a[e].check = !0); let k = l.filter((I) => I.jobMode == 3 || I.jobMode == 4), v = l.filter((I) => I.jobMode == 2), x = !1; if (k && k.length > 0) for (var e = 0; e < a.length; e++) a[e].index == 3 || a[e].index == 4 || a[e].index == 2 && v && v.length > 0 ? a[e].disabled = !0 : a[e].disabled = !1, s && s.jobMode == a[e].index ? (a[e].check = !0, x = !0) : a[e].check = !1; else if (v && v.length > 0) for (var e = 0; e < a.length; e++) a[e].index == 2 ? a[e].disabled = !0 : a[e].disabled = !1, s && s.jobMode == a[e].index ? (a[e].check = !0, x = !0) : a[e].check = !1; x || (a[0].check = !0); }, W = G, N = async () => { if (!await A(j)) return !1; p.value = !0; let l = null; V.value ? l = oe(t.value) : l = ne(t.value), l.then((e) => { p.value = !1, d.value = !1, W("ok"); }).catch(() => { p.value = !1; }); }; return T({ addLimitJob: P, editLimitJob: Q, close: U }), (s, l) => d.value ? (f(), y(r(z), { key: 0, modelValue: d.value, "onUpdate:modelValue": l[11] || (l[11] = (e) => d.value = e), visible: d.value, open: d.value, width: 650, title: "处理方式", "body-style": { paddingBottom: "8px" }, "onUpdate:visible": U, onClose: U, maskClosable: !0, onOk: N }, { footer: o(() => [ i("div", pe, [ n(r(C), { onClick: U }, { default: o(() => [ _("取消") ]), _: 1 }), n(r(C), { type: "primary", onClick: N }, { default: o(() => [ _(" 确定 ") ]), _: 1 }) ]) ]), default: o(() => [ i("div", null, [ n(r(F), { gutter: 16 }, { default: o(() => [ (f(!0), M(Y, null, Z(a, (e, k) => (f(), y(r(J), { span: 6, key: k }, { default: o(() => [ i("div", { class: ee(["action-type-modeal-item", { "action-type-modeal-item-check": e.check, "action-type-modeal-item-disabled": e.disabled }]), onClick: (v) => !e.disabled && K(e) }, [ i("img", { src: e.disabled ? e.disabledImg : e.activateImg, alt: "" }, null, 8, ue), i("span", null, q(e.name), 1), e.check ? (f(), M("img", ie)) : h("", !0) ], 10, de) ]), _: 2 }, 1024))), 128)) ]), _: 1 }), n(r(B), { ref_key: "formRef", ref: j, model: t.value }, { default: o(() => [ n(g, { name: "时间设置" }, { default: o(() => [ n(r(le), { class: "time-rule-content" }, { default: o(() => [ n(r(m), { name: "jobDuration", prop: "jobDuration", field: "jobDuration", rules: [{ required: !0, message: "不能为空" }] }, { default: o(() => [ me, n(r(L), { modelValue: t.value.jobDuration, "onUpdate:modelValue": l[0] || (l[0] = (e) => t.value.jobDuration = e), value: t.value.jobDuration, "onUpdate:value": l[1] || (l[1] = (e) => t.value.jobDuration = e), min: 1, max: 10, style: { width: "128px" } }, null, 8, ["modelValue", "value"]) ]), _: 1 }), n(r(m), { name: "lengthUnit", prop: "lengthUnit", field: "lengthUnit", rules: [{ required: !0, message: "不能为空" }] }, { default: o(() => [ n(se, { modelValue: t.value.lengthUnit, "onUpdate:modelValue": l[2] || (l[2] = (e) => t.value.lengthUnit = e), label: t.value.lengthUnitName, "onUpdate:label": l[3] || (l[3] = (e) => t.value.lengthUnitName = e), valueName: "value", labelName: "label", mode: "simple", datas: H, style: { width: "120px" } }, null, 8, ["modelValue", "label"]) ]), _: 1 }), n(r(m), null, { default: o(() => [ i("span", fe, "未处理时" + q(t.value.name), 1) ]), _: 1 }) ]), _: 1 }) ]), _: 1 }), t.value.jobMode == 2 ? (f(), y(g, { key: 0, name: "转交给谁" }, { default: o(() => [ n(r(m), { name: "transferUserIds", prop: "transferUserIds", field: "transferUserIds", rules: [{ required: !0, message: "不能为空" }] }, { default: o(() => [ n(r(O), { type: "user", title: "请选择成员", isRadio: !1, min: 1, max: 1, modelValue: t.value.transferUserIds, "onUpdate:modelValue": l[4] || (l[4] = (e) => t.value.transferUserIds = e), label: t.value.transferUserNames, "onUpdate:label": l[5] || (l[5] = (e) => t.value.transferUserNames = e) }, null, 8, ["modelValue", "label"]) ]), _: 1 }) ]), _: 1 })) : h("", !0), n(g, { name: "被提醒人", text: " (默认当前节点审批人/转交人和发起人,其他提醒人不能超过 25 人)" }, { default: o(() => [ n(r(m), { name: "noticeUserIds", prop: "noticeUserIds", field: "noticeUserIds", rules: [{ required: !0, message: "不能为空" }] }, { default: o(() => [ n(r(O), { type: "user", title: "请选择成员", isRadio: !1, min: 1, max: 25, modelValue: t.value.noticeUserIds, "onUpdate:modelValue": l[6] || (l[6] = (e) => t.value.noticeUserIds = e), label: t.value.noticeUserNames, "onUpdate:label": l[7] || (l[7] = (e) => t.value.noticeUserNames = e) }, null, 8, ["modelValue", "label"]) ]), _: 1 }) ]), _: 1 }), t.value.jobMode != 1 ? (f(), y(g, { key: 1, name: "审批意见" }, { default: o(() => [ n(r($), { modelValue: t.value.addOpinion, "onUpdate:modelValue": l[8] || (l[8] = (e) => t.value.addOpinion = e), checked: t.value.addOpinion, "onUpdate:checked": l[9] || (l[9] = (e) => t.value.addOpinion = e) }, { default: o(() => [ _(" 审批流中添加超时审批意见 ") ]), _: 1 }, 8, ["modelValue", "checked"]) ]), _: 1 })) : h("", !0), n(g, { name: "提醒方式" }, { default: o(() => [ n(r(m), { name: "warnType", prop: "warnType", field: "warnType", rules: [{ required: !0, message: "不能为空" }] }, { default: o(() => [ n(re, { modelValue: t.value.warnType, "onUpdate:modelValue": l[10] || (l[10] = (e) => t.value.warnType = e) }, null, 8, ["modelValue"]) ]), _: 1 }) ]), _: 1 }) ]), _: 1 }, 8, ["model"]) ]) ]), _: 1 }, 8, ["modelValue", "visible", "open"])) : h("", !0); } }); export { Ve as default };