@aplus-frontend/ui
Version:
193 lines (192 loc) • 7.3 kB
JavaScript
import { defineComponent as T, ref as f, computed as B, createElementBlock as F, openBlock as M, createVNode as o, unref as e, mergeProps as L, withCtx as s, h as N } from "vue";
import { message as P, Modal as V, Input as q, Textarea as E } from "@aplus-frontend/antdv";
import { ApForm as n } from "../ap-form/index.mjs";
import "./help-message.vue.mjs";
import "../ap-upload/index.mjs";
import { langMap as I, DictCode as k } from "./interfaces.mjs";
import "../config-provider/index.mjs";
import "../hooks/index.mjs";
import { useLocale as y } from "../config-provider/hooks/use-locale.mjs";
import { useNamespace as A } from "../config-provider/hooks/use-namespace.mjs";
import { useGlobalConfig as R } from "../config-provider/hooks/use-global-config.mjs";
import { useControllableValue as $ } from "../hooks/useControllableValue.mjs";
import z from "../ap-form/items/select/index.vue.mjs";
import D from "../ap-form/items/radio/index.vue.mjs";
import S from "../ap-upload/apUpload.vue.mjs";
import j from "./help-message.vue2.mjs";
const re = /* @__PURE__ */ T({
__name: "work-order-modal",
props: {
api: { type: Function },
getOssAccess: {},
initialValues: {},
disabledList: {},
successCallback: { type: Function },
prefixCls: {},
visible: { type: Boolean },
open: { type: Boolean },
confirmLoading: { type: Boolean },
title: {},
closable: { type: Boolean },
closeIcon: {},
onOk: { type: Function },
onCancel: { type: Function },
"onUpdate:visible": { type: Function },
"onUpdate:open": { type: Function },
onChange: { type: Function },
afterClose: { type: Function },
afterOpenChange: { type: Function },
centered: { type: Boolean },
width: {},
footer: {},
okText: {},
okType: {},
cancelText: {},
icon: {},
maskClosable: { type: Boolean },
forceRender: { type: Boolean },
okButtonProps: {},
cancelButtonProps: {},
destroyOnClose: { type: Boolean },
wrapClassName: {},
maskTransitionName: {},
transitionName: {},
getContainer: { type: [String, Boolean, Function] },
zIndex: {},
bodyStyle: {},
maskStyle: {},
mask: { type: Boolean },
keyboard: { type: Boolean },
wrapProps: {},
focusTriggerAfterClose: { type: Boolean },
modalRender: { type: Function },
mousePosition: {},
loading: { type: Boolean }
},
emits: ["update:open", "modalClose"],
setup(b, { emit: g }) {
const { t } = y(), { b: v } = A("work-order-modal"), i = g, c = f(), l = f(!1), a = b, w = R("api"), { lang: C } = y(), x = B(() => I[C.value] ?? "zh_CN"), { value: p, updateValue: h } = $(a, i, {
valuePropName: "open",
defaultValue: !0
}), d = async (r) => (await w.value?.select?.({
dictCode: r,
locale: x.value
}))?.map((u) => ({ label: u.itemText, value: u.itemValue })), O = async () => {
if (!l.value)
try {
l.value = !0;
const r = await c.value?.validateFields();
await a.api(r), l.value = !1, P.success("操作成功"), a.successCallback?.(), m();
} catch {
l.value = !1;
return;
}
}, m = () => {
h(!1), p.value = !1, i("modalClose");
};
return (r, _) => (M(), F("div", null, [
o(e(V), L(a, {
width: 600,
centered: !0,
open: e(p),
title: e(t)("ap.workOrderModal.createTickets"),
"ok-text": e(t)("ap.workOrderModal.submit"),
"cancel-text": e(t)("ap.workOrderModal.cancel"),
mask: !0,
"mask-closable": !0,
"wrap-class-name": e(v)(),
closable: !0,
"confirm-loading": l.value,
onOk: O,
onCancel: m
}), {
default: s(() => [
o(e(n), {
ref_key: "formRef",
ref: c,
colon: "",
"initial-values": a.initialValues ?? {}
}, {
default: s(() => [
o(e(n).FormItem, {
label: e(t)("ap.workOrderModal.ticketsTitle"),
name: "ticketsTitle",
rules: [{ required: !0, message: e(t)("ap.workOrderModal.noEmpty") }]
}, {
default: s(() => [
o(e(q), {
placeholder: e(t)("ap.common.inputText"),
maxlength: 50,
"show-count": !0,
disabled: a.disabledList?.includes("ticketsTitle")
}, null, 8, ["placeholder", "disabled"])
]),
_: 1
}, 8, ["label", "rules"]),
o(e(z), {
label: e(t)("ap.workOrderModal.ticketsType"),
name: "ticketsType",
rules: [{ required: !0, message: e(t)("ap.workOrderModal.noEmpty") }],
field: {
placeholder: e(t)("ap.common.chooseText"),
request: () => d(e(k).TicketsType),
disabled: a.disabledList?.includes("ticketsType")
}
}, null, 8, ["label", "rules", "field"]),
o(e(n).FormItem, {
label: e(t)("ap.workOrderModal.ticketsDetail"),
name: "ticketsContent",
rules: [{ required: !0, message: e(t)("ap.workOrderModal.noEmpty") }]
}, {
default: s(() => [
o(e(E), {
placeholder: e(t)("ap.workOrderModal.pleaseEntry"),
maxlength: 300,
"show-count": !1,
disabled: a.disabledList?.includes("ticketsContent")
}, null, 8, ["placeholder", "disabled"])
]),
_: 1
}, 8, ["label", "rules"]),
o(e(D), {
label: e(t)("ap.workOrderModal.ticketsLevel"),
name: "ticketsLevel",
rules: [{ required: !0, message: e(t)("ap.workOrderModal.noEmpty") }],
field: {
request: () => d(e(k).TicketsLevel),
disabled: a.disabledList?.includes("ticketsLevel")
}
}, null, 8, ["label", "rules", "field"]),
o(e(n).FormItem, {
name: "files",
label: e(t)("ap.workOrderModal.fileLabel")
}, {
default: s(() => [
o(e(S), {
"dir-name": "WorkOrder",
"get-oss-access": a.getOssAccess,
type: "multipleFile",
"need-name": {
pathKey: "filePath",
nameKey: "fileName"
},
accept: ".txt,.doc,.docx,.rtf,.pdf,.jpg,.jpeg,.png,.gif,.bmp,.tiff,.tif,.mp4,.avi,.wmv,.mov,.mkv,.xls,.xlsx,.csv,.ppt,.pptx",
"max-count": 10,
"max-size": 50,
"sub-title": N(j)
}, null, 8, ["get-oss-access", "sub-title"])
]),
_: 1
}, 8, ["label"])
]),
_: 1
}, 8, ["initial-values"])
]),
_: 1
}, 16, ["open", "title", "ok-text", "cancel-text", "wrap-class-name", "confirm-loading"])
]));
}
});
export {
re as default
};