@maketribe/ms-app 3.2.51 → 3.2.53
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/business/verify-dialog/verify-panel.js +13 -18
- package/dist/cjs/components/business/verify-dialog/verify-panel.js.map +1 -1
- package/dist/cjs/core/MSAppClient.js.map +1 -1
- package/dist/cjs/layouts/components/header/index.js +1 -2
- package/dist/cjs/layouts/components/header/index.js.map +1 -1
- package/dist/cjs/layouts/components/header/passwordDialog.js +251 -0
- package/dist/cjs/layouts/components/header/passwordDialog.js.map +1 -0
- package/dist/cjs/layouts/components/header/tools.js +7 -157
- package/dist/cjs/layouts/components/header/tools.js.map +1 -1
- package/dist/cjs/message-impl/DialogerImpl.js +157 -0
- package/dist/cjs/message-impl/DialogerImpl.js.map +1 -1
- package/dist/cjs/page/login/index.vue2.js +11 -1
- package/dist/cjs/page/login/index.vue2.js.map +1 -1
- package/dist/esm/components/business/verify-dialog/verify-panel.js +13 -18
- package/dist/esm/components/business/verify-dialog/verify-panel.js.map +1 -1
- package/dist/esm/core/MSAppClient.js.map +1 -1
- package/dist/esm/layouts/components/header/index.js +1 -2
- package/dist/esm/layouts/components/header/index.js.map +1 -1
- package/dist/esm/layouts/components/header/passwordDialog.js +251 -0
- package/dist/esm/layouts/components/header/passwordDialog.js.map +1 -0
- package/dist/esm/layouts/components/header/tools.js +9 -159
- package/dist/esm/layouts/components/header/tools.js.map +1 -1
- package/dist/esm/message-impl/DialogerImpl.js +159 -2
- package/dist/esm/message-impl/DialogerImpl.js.map +1 -1
- package/dist/esm/page/login/index.vue2.js +11 -1
- package/dist/esm/page/login/index.vue2.js.map +1 -1
- package/dist/types/components/business/resource-manager/index.d.ts +4 -4
- package/dist/types/core/MSAppClient.d.ts +1 -0
- package/dist/types/index.d.ts +1 -1
- package/dist/types/layouts/components/header/passwordDialog.d.ts +9 -0
- package/dist/types/message-impl/DialogerImpl.d.ts +3 -0
- package/dist/types/modules/cms/components/part-tree/index.d.ts +1 -1
- package/package.json +4 -4
- package/dist/cjs/layouts/components/header/message.js +0 -94
- package/dist/cjs/layouts/components/header/message.js.map +0 -1
- package/dist/cjs/layouts/components/header/notify.js +0 -26
- package/dist/cjs/layouts/components/header/notify.js.map +0 -1
- package/dist/cjs/layouts/components/message-list/index.vue.js +0 -242
- package/dist/cjs/layouts/components/message-list/index.vue.js.map +0 -1
- package/dist/cjs/layouts/components/message-list/index.vue2.js +0 -4
- package/dist/cjs/layouts/components/message-list/index.vue2.js.map +0 -1
- package/dist/esm/layouts/components/header/message.js +0 -77
- package/dist/esm/layouts/components/header/message.js.map +0 -1
- package/dist/esm/layouts/components/header/notify.js +0 -26
- package/dist/esm/layouts/components/header/notify.js.map +0 -1
- package/dist/esm/layouts/components/message-list/index.vue.js +0 -243
- package/dist/esm/layouts/components/message-list/index.vue.js.map +0 -1
- package/dist/esm/layouts/components/message-list/index.vue2.js +0 -5
- package/dist/esm/layouts/components/message-list/index.vue2.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sources":["../../../../../src/layouts/components/header/tools.tsx"],"sourcesContent":["import { computed, defineComponent, unref, ref, reactive, watch, nextTick } from \"vue\";\r\nimport {\r\n ElDropdown,\r\n ElDropdownItem,\r\n ElDropdownMenu,\r\n ElImage,\r\n ElDialog,\r\n ElForm,\r\n ElFormItem,\r\n ElInput,\r\n ElButton\r\n} from \"element-plus\";\r\nimport { MSAppClient } from \"../../../core\";\r\nimport { MKSvgIcon,MKOpenVerifyCode } from \"../../../components\";\r\nimport { Messager } from \"@maketribe/dm\";\r\n\r\nexport const MKHeaderTools = defineComponent({\r\n name: \"MKHeaderTools\",\r\n setup(props) {\r\n const msAppClient = MSAppClient?.instance!;\r\n const userSession = msAppClient?.userSession!;\r\n\r\n const userInfo = computed(() => userSession?.userInfo!);\r\n\r\n const avatar = computed(() => unref(userInfo)?.avatar);\r\n const showDialog = ref(false);\r\n const form = reactive({\r\n password: \"\",\r\n newPassword: \"\",\r\n repeatPassword: \"\",\r\n });\r\n const formRef = ref();\r\n const btnLoading = ref(false)\r\n\r\n watch(showDialog, async () => {\r\n if (unref(showDialog)) {\r\n form.password = \"\";\r\n form.newPassword = \"\";\r\n form.repeatPassword = \"\";\r\n }\r\n })\r\n\r\n const reg = /^([a-zA-Z]+[0-9]+[,._!@#$%^&*]+)|([a-zA-Z]+[,._!@#$%^&*]+[0-9]+)|([0-9]+[,._!@#$%^&*]+[a-zA-Z]+)|([0-9]+[a-zA-Z]+[,._!@#$%^&*]+)|([,._!@#$%^&*]+[a-zA-Z]+[0-9]+)|([,._!@#$%^&*]+[0-9]+[a-zA-Z]+)$/\r\n\r\n const validateCode1 = (rule: any, value: any, callback: any) => {\r\n if (value == \"\") {\r\n callback(new Error(\"请输入密码\"));\r\n }\r\n if (value != form.newPassword) {\r\n callback(new Error(\"两次输入不一致\"));\r\n }\r\n callback()\r\n }\r\n\r\n const validateCode = (rule: any, value: any, callback: any) => {\r\n if (value == \"\") {\r\n callback(new Error(\"请输入密码码\"));\r\n }\r\n\r\n if (value.length < 8) {\r\n callback(new Error(\"密码码长度不能小于8位\"));\r\n }\r\n\r\n if (value == form.password) {\r\n callback(new Error(\"新密码不能与旧密码相同\"));\r\n }\r\n\r\n if (!reg.test(value)) {\r\n callback(new Error(\"密码必须包含数字,字母和特殊符号\"))\r\n } else {\r\n callback()\r\n }\r\n }\r\n\r\n const submitChangePassword = async () => {\r\n\r\n if(!await formRef.value.validate()){\r\n return;\r\n }\r\n\r\n try {\r\n\r\n btnLoading.value = true\r\n\r\n const vCode = (await MKOpenVerifyCode({ sence:\"ModifyPassword\" } as any)) + \"\";\r\n\r\n const result = await msAppClient.changePassword(form.password, form.newPassword, vCode);\r\n\r\n if (result.data.code != 200) {\r\n Messager.error({ message: result.data.msg || \"修改密码失败\" });\r\n return;\r\n }\r\n\r\n btnLoading.value = false\r\n msAppClient.logout()\r\n \r\n } catch (e) {\r\n console.error(e);\r\n } finally {\r\n btnLoading.value = false\r\n }\r\n }\r\n\r\n return () => {\r\n\r\n\r\n return (\r\n <div class=\"mk-header-tools\">\r\n <div class=\"mk-header-tools__item\">\r\n <ElDropdown\r\n class=\"mk-header-tools__user\"\r\n trigger=\"click\"\r\n v-slots={{\r\n default: () => (\r\n <div class=\"mk-header-tools__user-info\">\r\n <ElImage\r\n class=\"mk-header-tools__avatar\"\r\n src={unref(avatar)}\r\n v-slots={{\r\n error: () => (\r\n <MKSvgIcon iconClass=\"Avatar\" class=\" mk-header-tools__default-avatar\" />\r\n ),\r\n }}\r\n />\r\n <span class=\"mk-header-tools__nickName\">\r\n {unref(userInfo)?.nickName}\r\n </span>\r\n </div>\r\n ),\r\n dropdown: () => (\r\n <ElDropdownMenu>\r\n <ElDropdownItem onClick={() => { showDialog.value = true }}>\r\n <MKSvgIcon iconClass=\"EditPen\" />\r\n 修改密码\r\n </ElDropdownItem>\r\n <ElDropdownItem onClick={() => msAppClient.logout()}>\r\n <MKSvgIcon iconClass=\"SwitchButton\" />\r\n 退出登录\r\n </ElDropdownItem>\r\n </ElDropdownMenu>\r\n ),\r\n }}\r\n />\r\n </div>\r\n <ElDialog model-value={showDialog.value} onUpdate:modelValue={(v) => { showDialog.value = v }} title={'修改密码'} width={'30%'} v-slots={{\r\n footer: () => (\r\n <div>\r\n <ElButton onClick={() => { showDialog.value = false }}>取消</ElButton>\r\n <ElButton type={\"primary\"} loading={btnLoading.value} onClick={() => { submitChangePassword() }}>确定</ElButton>\r\n </div>\r\n )\r\n }}>\r\n <ElForm ref={formRef} model={form} label-width={'80px'}>\r\n <ElFormItem label={'旧密码'} required={true} prop={'password'} rules={[{ required: true, message: '请输入旧密码', trigger: 'change' }]}>\r\n <ElInput model-value={form.password} placeholder={\"请输入旧密码\"} onUpdate:modelValue={(v) => { form.password = v }} type={'password'} />\r\n </ElFormItem>\r\n <ElFormItem label={'新密码'} required={true} prop={'newPassword'} rules={[{ required: true, message: '请输入新密码', trigger: 'change' }, { validator: validateCode, trigger: 'change' }]} >\r\n <ElInput model-value={form.newPassword} placeholder={\"请输入新密码\"} onUpdate:modelValue={(v) => { form.newPassword = v }} type={'password'} />\r\n </ElFormItem>\r\n <ElFormItem label={'重复密码'} required={true} prop={'repeatPassword'} rules={[{ required: true, message: '请再次输入密码', trigger: 'change' }, { validator: validateCode1, trigger: 'change' }]} >\r\n <ElInput model-value={form.repeatPassword} placeholder={\"请再次输入密码\"} onUpdate:modelValue={(v) => { form.repeatPassword = v }} type={'password'} />\r\n </ElFormItem>\r\n </ElForm>\r\n </ElDialog>\r\n </div >\r\n );\r\n };\r\n },\r\n});\r\n"],"names":["MKHeaderTools","defineComponent","name","setup","props","msAppClient","MSAppClient","instance","userSession","userInfo","computed","avatar","unref","showDialog","ref","form","reactive","password","newPassword","repeatPassword","formRef","btnLoading","watch","reg","validateCode1","rule","value","callback","Error","validateCode","length","test","submitChangePassword","validate","vCode","MKOpenVerifyCode","sence","result","changePassword","data","code","Messager","error","message","msg","logout","e","console","_createVNode","ElDropdown","default","ElImage","MKSvgIcon","nickName","dropdown","ElDropdownMenu","ElDropdownItem","onClick","_createTextVNode","ElDialog","v","ElForm","ElFormItem","required","trigger","ElInput","validator","footer","ElButton"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tools.js","sources":["../../../../../src/layouts/components/header/tools.tsx"],"sourcesContent":["import { computed, defineComponent, unref, ref, reactive, watch, nextTick } from \"vue\";\r\nimport {\r\n ElDropdown,\r\n ElDropdownItem,\r\n ElDropdownMenu,\r\n ElImage,\r\n ElDialog,\r\n ElForm,\r\n ElFormItem,\r\n ElInput,\r\n ElButton\r\n} from \"element-plus\";\r\nimport { MSAppClient } from \"../../../core\";\r\nimport { MKSvgIcon, MKOpenVerifyCode } from \"../../../components\";\r\nimport { Messager } from \"@maketribe/dm\";\r\nimport { MKPasswordDialog } from \"./passwordDialog.tsx\"\r\n\r\nexport const MKHeaderTools = defineComponent({\r\n name: \"MKHeaderTools\",\r\n setup(props) {\r\n const msAppClient = MSAppClient?.instance!;\r\n const userSession = msAppClient?.userSession!;\r\n\r\n const userInfo = computed(() => userSession?.userInfo!);\r\n\r\n const avatar = computed(() => unref(userInfo)?.avatar);\r\n const showDialog = ref(false);\r\n\r\n return () => {\r\n return (\r\n <div class=\"mk-header-tools\">\r\n <div class=\"mk-header-tools__item\">\r\n <ElDropdown\r\n class=\"mk-header-tools__user\"\r\n trigger=\"click\"\r\n v-slots={{\r\n default: () => (\r\n <div class=\"mk-header-tools__user-info\">\r\n <ElImage\r\n class=\"mk-header-tools__avatar\"\r\n src={unref(avatar)}\r\n v-slots={{\r\n error: () => (\r\n <MKSvgIcon iconClass=\"Avatar\" class=\" mk-header-tools__default-avatar\" />\r\n ),\r\n }}\r\n />\r\n <span class=\"mk-header-tools__nickName\">\r\n {unref(userInfo)?.nickName}\r\n </span>\r\n </div>\r\n ),\r\n dropdown: () => (\r\n <ElDropdownMenu>\r\n <ElDropdownItem onClick={() => { showDialog.value = true }}>\r\n <MKSvgIcon iconClass=\"EditPen\" />\r\n 修改密码\r\n </ElDropdownItem>\r\n <ElDropdownItem onClick={() => msAppClient.logout()}>\r\n <MKSvgIcon iconClass=\"SwitchButton\" />\r\n 退出登录\r\n </ElDropdownItem>\r\n </ElDropdownMenu>\r\n ),\r\n }}\r\n />\r\n </div>\r\n <MKPasswordDialog showDialog={showDialog.value} onUpdate:showDialog={(v) => showDialog.value = v}></MKPasswordDialog>\r\n </div >\r\n );\r\n };\r\n },\r\n});\r\n"],"names":["MKHeaderTools","defineComponent","name","setup","props","msAppClient","MSAppClient","instance","userSession","userInfo","computed","avatar","unref","showDialog","ref","_createVNode","ElDropdown","default","ElImage","error","MKSvgIcon","nickName","dropdown","ElDropdownMenu","ElDropdownItem","onClick","value","_createTextVNode","logout","MKPasswordDialog","v"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiBaA,MAAAA,gBAAgBC,gCAAgB;AAAA,EAC3CC,MAAM;AAAA,EACNC,MAAMC,OAAO;;AACX,UAAMC,eAAcC,wCAAaC;AACjC,UAAMC,cAAcH,2CAAaG;AAEjC,UAAMC,WAAWC,SAAS,MAAMF,2CAAaC,QAAS;AAEtD,UAAME,SAASD,SAAS,MAAA;;AAAME,cAAAA,MAAAA,MAAMH,QAAQ,MAAdG,gBAAAA,IAAiBD;AAAAA,KAAM;AACrD,UAAME,aAAaC,IAAI,KAAK;AAE5B,WAAO,MAAM;AACX,aAAAC,YAAA,OAAA;AAAA,QAAA,SAAA;AAAA,MAAA,GAAA,CAAAA,YAAA,OAAA;AAAA,QAAA,SAAA;AAAA,SAAAA,CAAAA,YAAAC,YAAA;AAAA,QAAA,SAAA;AAAA,QAAA,WAAA;AAAA,SAMiB;AAAA,QACPC,SAASA,MAAAA;;AAAAF,6BAAA,OAAA;AAAA,YAAA,SAAA;AAAA,aAAAA,CAAAA,YAAAG,SAAA;AAAA,YAAA,SAAA;AAAA,YAAA,OAIEN,MAAMD,MAAM;AAAA,aACR;AAAA,YACPQ,OAAOA,MAAAJ,YAAAK,WAAA;AAAA,cAAA,aAAA;AAAA,cAAA,SAAA;AAAA,YAAA,GAAA,IAAA;AAAA,UAGT,CAAC,GAAAL,YAAA,QAAA;AAAA,YAAA,SAAA;AAAA,UAAA,GAAA,EAGAH,MAAAA,MAAMH,QAAQ,MAAdG,gBAAAA,IAAiBS,QAAQ,CAG/B,CAAA,CAAA;AAAA;AAAA,QACDC,UAAUA,MAAAP,YAAAQ,gBAAA,MAAA;AAAA,UAAAN,SAAAA,MAAAF,CAAAA,YAAAS,gBAAA;AAAA,YAAA,WAEmBC,MAAM;AAAEZ,yBAAWa,QAAQ;AAAA,YAAK;AAAA,UAAC,GAAA;AAAA,YAAAT,SAAAA,MAAAF,CAAAA,YAAAK,WAAA;AAAA,cAAA,aAAA;AAAA,YAAA,GAAA,IAAA,GAAAO,gBAAA,MAAA,CAAA;AAAA,WAAAZ,GAAAA,YAAAS,gBAAA;AAAA,YAAA,WAIjCC,MAAMpB,YAAYuB,OAAO;AAAA,UAAC,GAAA;AAAA,YAAAX,SAAAA,MAAAF,CAAAA,YAAAK,WAAA;AAAA,cAAA,aAAA;AAAA,YAAA,GAAA,IAAA,GAAAO,gBAAA,MAAA,CAAA;AAAA,UAAA,CAAA,CAAA;AAAA,QAAA,CAAA;AAAA,OAMxD,CAAA,CAAA,GAAAZ,YAAAc,kBAAA;AAAA,QAAA,cAGyBhB,WAAWa;AAAAA,QAAK,uBAAwBI,OAAMjB,WAAWa,QAAQI;AAAAA,MAAC,GAAA,IAAA,CAAA,CAAA;AAAA;EAIxG;AACF,CAAC;"}
|
|
@@ -2,9 +2,9 @@ var __defProp = Object.defineProperty;
|
|
|
2
2
|
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
3
3
|
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
4
4
|
import { reactive, createVNode, Fragment, createTextVNode, isVNode } from "vue";
|
|
5
|
-
import { SkeletonDialoger, TableActionColumn } from "@maketribe/dm";
|
|
5
|
+
import { SkeletonDialoger, TableActionColumn, FormColumn, Messager } from "@maketribe/dm";
|
|
6
6
|
import { Event } from "@maketribe/utils";
|
|
7
|
-
import { ElMessageBox, ElButton, ElScrollbar } from "element-plus";
|
|
7
|
+
import { ElMessageBox, ElButton, ElScrollbar, ElUpload, ElTableColumn, ElTable } from "element-plus";
|
|
8
8
|
import { isFunction } from "lodash-es";
|
|
9
9
|
import "../components/abstract/abstract-select/abstract-select.js";
|
|
10
10
|
import "../components/abstract/abstract-select/abstract-select-options.js";
|
|
@@ -191,6 +191,7 @@ class DialogerImpl extends SkeletonDialoger {
|
|
|
191
191
|
});
|
|
192
192
|
});
|
|
193
193
|
}
|
|
194
|
+
//3.x版本暂时不支持
|
|
194
195
|
async dataFormDialog(dataFormOptions) {
|
|
195
196
|
return new Promise((resolve) => {
|
|
196
197
|
const dataForm = reactive(dataFormOptions.dataForm);
|
|
@@ -251,6 +252,162 @@ class DialogerImpl extends SkeletonDialoger {
|
|
|
251
252
|
resolve(dialogInstance);
|
|
252
253
|
});
|
|
253
254
|
}
|
|
255
|
+
async importDataFormDialog(dataFormOptions, template) {
|
|
256
|
+
return new Promise((resolve) => {
|
|
257
|
+
const dataForm = reactive(dataFormOptions.dataForm);
|
|
258
|
+
let title = "";
|
|
259
|
+
dataForm.afterInitdEvent.once(() => {
|
|
260
|
+
dataForm.addColumn(new FormColumn({
|
|
261
|
+
name: "postFiles",
|
|
262
|
+
label: "文件",
|
|
263
|
+
required: true,
|
|
264
|
+
componentInfo: {
|
|
265
|
+
name: "postFiles",
|
|
266
|
+
component: () => {
|
|
267
|
+
const fileSelectHandle = async (file, fileList) => {
|
|
268
|
+
dataForm.data.postFiles = file.raw;
|
|
269
|
+
Messager.success({
|
|
270
|
+
message: "上传成功"
|
|
271
|
+
});
|
|
272
|
+
};
|
|
273
|
+
return createVNode("div", {
|
|
274
|
+
"style": {
|
|
275
|
+
display: "flex"
|
|
276
|
+
}
|
|
277
|
+
}, [createVNode(ElUpload, {
|
|
278
|
+
"accept": ".xls,.xlsx",
|
|
279
|
+
"autoUpload": false,
|
|
280
|
+
"limit": 1,
|
|
281
|
+
"onChange": fileSelectHandle
|
|
282
|
+
}, {
|
|
283
|
+
default: () => [createVNode(ElButton, {
|
|
284
|
+
"type": "primary"
|
|
285
|
+
}, {
|
|
286
|
+
default: () => [createTextVNode("上传文件")]
|
|
287
|
+
})]
|
|
288
|
+
})]);
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
}));
|
|
292
|
+
if (template) {
|
|
293
|
+
dataForm.addColumn(new FormColumn({
|
|
294
|
+
name: "template",
|
|
295
|
+
label: "模板下载",
|
|
296
|
+
componentInfo: {
|
|
297
|
+
name: "template",
|
|
298
|
+
component: () => {
|
|
299
|
+
const downloadHandle = () => {
|
|
300
|
+
const a = document.createElement("a");
|
|
301
|
+
a.style.display = "none";
|
|
302
|
+
document.body.appendChild(a);
|
|
303
|
+
a.href = template;
|
|
304
|
+
a.click();
|
|
305
|
+
document.body.removeChild(a);
|
|
306
|
+
};
|
|
307
|
+
return createVNode(ElButton, {
|
|
308
|
+
"onClick": downloadHandle,
|
|
309
|
+
"type": "primary"
|
|
310
|
+
}, {
|
|
311
|
+
default: () => [createTextVNode("点击下载")]
|
|
312
|
+
});
|
|
313
|
+
}
|
|
314
|
+
}
|
|
315
|
+
}));
|
|
316
|
+
}
|
|
317
|
+
});
|
|
318
|
+
if (dataFormOptions.customDataFormStatus !== true) {
|
|
319
|
+
if (dataFormOptions.recId) {
|
|
320
|
+
dataForm.editRecord(dataFormOptions.recId);
|
|
321
|
+
} else {
|
|
322
|
+
dataForm.addRecord();
|
|
323
|
+
}
|
|
324
|
+
title = dataFormOptions.recId ? "编辑" : "新增";
|
|
325
|
+
}
|
|
326
|
+
const dialogInstance = this.customRender({
|
|
327
|
+
title: dataFormOptions.title ?? title,
|
|
328
|
+
onClose: () => {
|
|
329
|
+
dataForm.cancel();
|
|
330
|
+
dialogInstance.destroy();
|
|
331
|
+
},
|
|
332
|
+
body: () => {
|
|
333
|
+
return createVNode(ElScrollbar, {
|
|
334
|
+
"max-height": "550px"
|
|
335
|
+
}, {
|
|
336
|
+
default: () => [createVNode(MKDataForm, {
|
|
337
|
+
"dataForm": dataForm
|
|
338
|
+
}, {
|
|
339
|
+
default: () => [createVNode(MKForm, {
|
|
340
|
+
"dataForm": dataForm
|
|
341
|
+
}, null)]
|
|
342
|
+
})]
|
|
343
|
+
});
|
|
344
|
+
},
|
|
345
|
+
footer: () => {
|
|
346
|
+
let _slot3, _slot4;
|
|
347
|
+
return createVNode(Fragment, null, [createVNode(ElButton, {
|
|
348
|
+
"type": "primary",
|
|
349
|
+
"disabled": !dataForm.isChanged,
|
|
350
|
+
"loading": !dataForm.allowSubmit,
|
|
351
|
+
"onClick": async () => {
|
|
352
|
+
if (!await dataForm.validate()) {
|
|
353
|
+
return;
|
|
354
|
+
}
|
|
355
|
+
if (await dataForm.simpleSubmit()) {
|
|
356
|
+
dialogInstance.destroy();
|
|
357
|
+
}
|
|
358
|
+
}
|
|
359
|
+
}, _isSlot(_slot3 = I18n.instance.translate("mk.dataForm.saveButton")) ? _slot3 : {
|
|
360
|
+
default: () => [_slot3]
|
|
361
|
+
}), createVNode(ElButton, {
|
|
362
|
+
"onClick": () => {
|
|
363
|
+
dataForm.cancel();
|
|
364
|
+
dialogInstance.destroy();
|
|
365
|
+
}
|
|
366
|
+
}, _isSlot(_slot4 = I18n.instance.translate("mk.dataForm.cancelButton")) ? _slot4 : {
|
|
367
|
+
default: () => [_slot4]
|
|
368
|
+
})]);
|
|
369
|
+
}
|
|
370
|
+
});
|
|
371
|
+
resolve(dialogInstance);
|
|
372
|
+
});
|
|
373
|
+
}
|
|
374
|
+
importResultTableDialog(data, filed) {
|
|
375
|
+
return this.customRender({
|
|
376
|
+
title: "导入结果",
|
|
377
|
+
body: () => {
|
|
378
|
+
const cols = filed.map((item) => {
|
|
379
|
+
return createVNode(ElTableColumn, {
|
|
380
|
+
"prop": item.name,
|
|
381
|
+
"label": item.label
|
|
382
|
+
}, null);
|
|
383
|
+
});
|
|
384
|
+
var successSlot = {
|
|
385
|
+
default: (data2) => {
|
|
386
|
+
return data2.row.isSuccess ? createVNode("span", {
|
|
387
|
+
"style": "color: green"
|
|
388
|
+
}, [createTextVNode("成功")]) : createVNode("span", {
|
|
389
|
+
"style": "color: red"
|
|
390
|
+
}, [createTextVNode("失败")]);
|
|
391
|
+
}
|
|
392
|
+
};
|
|
393
|
+
return createVNode(ElTable, {
|
|
394
|
+
"data": data,
|
|
395
|
+
"style": {
|
|
396
|
+
height: "550px"
|
|
397
|
+
}
|
|
398
|
+
}, {
|
|
399
|
+
default: () => [cols, createVNode(ElTableColumn, {
|
|
400
|
+
"label": "结果",
|
|
401
|
+
"prop": "isSuccess",
|
|
402
|
+
"width": "80px"
|
|
403
|
+
}, successSlot), createVNode(ElTableColumn, {
|
|
404
|
+
"label": "失败原因",
|
|
405
|
+
"prop": "reason"
|
|
406
|
+
}, null)]
|
|
407
|
+
});
|
|
408
|
+
}
|
|
409
|
+
});
|
|
410
|
+
}
|
|
254
411
|
}
|
|
255
412
|
export {
|
|
256
413
|
DialogerImpl
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DialogerImpl.js","sources":["../../../src/message-impl/DialogerImpl.tsx"],"sourcesContent":["import {\r\n DataForm,\r\n DataFormDialogOptions,\r\n DataTable,\r\n DataTableSelectDialogResult,\r\n DialogInstance,\r\n IDialogMessage,\r\n IDialogRenderOptions,\r\n Messager,\r\n SkeletonDialoger,\r\n TableActionColumn,\r\n} from \"@maketribe/dm\";\r\nimport { Event } from \"@maketribe/utils\";\r\nimport { ElButton, ElDrawer, ElMessageBox, ElScrollbar } from \"element-plus\";\r\nimport { isFunction } from \"lodash-es\";\r\nimport { MKDataForm, MKDataTable, MKForm } from \"../components\";\r\nimport { Fragment, reactive } from \"vue\";\r\nimport { I18n } from \"@maketribe/locale\";\r\n\r\nlet uid = 0;\r\n\r\nexport class DialogerImpl extends SkeletonDialoger {\r\n dialogInstanceCreateEvent: Event<DialogInstance> = new Event();\r\n\r\n async prompt(options: IDialogMessage): Promise<string> {\r\n const promptResult = await ElMessageBox.prompt(\r\n options.message,\r\n options.title,\r\n options\r\n );\r\n\r\n return promptResult.value;\r\n }\r\n\r\n async confirm(options: IDialogMessage): Promise<boolean> {\r\n try {\r\n await ElMessageBox.confirm(options.message, options.title, options);\r\n return true;\r\n } catch (e) {\r\n return false;\r\n }\r\n }\r\n\r\n async alert(options: IDialogMessage): Promise<void> {\r\n await ElMessageBox.alert(options.message, options.title, options);\r\n }\r\n\r\n customRender(options: IDialogRenderOptions): DialogInstance {\r\n let visible = true;\r\n\r\n const dialogInstance: DialogInstance = {\r\n class: \"\",\r\n ...options,\r\n id: uid++,\r\n get visible() {\r\n return visible;\r\n },\r\n set visible(v) {\r\n visible = v;\r\n dialogInstance.visibleChangeEvent.emit(visible);\r\n },\r\n visibleChangeEvent: new Event(),\r\n destroyEvent: new Event(),\r\n destroy: () => {\r\n dialogInstance.visible = false;\r\n dialogInstance.destroyEvent.emit();\r\n },\r\n };\r\n this.dialogInstanceCreateEvent.emit(dialogInstance);\r\n\r\n return dialogInstance;\r\n }\r\n\r\n async custom(options: IDialogRenderOptions): Promise<boolean> {\r\n return new Promise<boolean>((resolve) => {\r\n const dialogInstance = this.customRender({\r\n ...options,\r\n onConfirm: async () => {\r\n if (\r\n isFunction(options.onConfirm)\r\n ? (await options.onConfirm()) === false\r\n : false\r\n ) {\r\n return false;\r\n }\r\n\r\n dialogInstance.destroy();\r\n\r\n resolve(true);\r\n },\r\n onCancel: async () => {\r\n if (\r\n isFunction(options.onCancel)\r\n ? (await options.onCancel()) === false\r\n : false\r\n ) {\r\n return false;\r\n }\r\n\r\n dialogInstance.destroy();\r\n\r\n resolve(false);\r\n },\r\n });\r\n });\r\n }\r\n\r\n async dataTableSelectDialog(\r\n dataTable: DataTable\r\n ): Promise<DataTableSelectDialogResult> {\r\n dataTable = reactive(dataTable) as DataTable;\r\n\r\n dataTable.afterInitdEvent.once(() => {\r\n // 过滤掉操作列\r\n const columns = dataTable\r\n .getColumns()\r\n .filter((column) => column.name !== TableActionColumn.actionColumnName);\r\n dataTable.setColumns(columns);\r\n });\r\n\r\n return new Promise((resolve) => {\r\n const handleConfirm = () => {\r\n resolve({ isConfirm: true, selections: dataTable.getSelection() });\r\n\r\n dataTable.setList([]);\r\n dataTable.setSelection([]);\r\n\r\n dialogInstance.destroy();\r\n };\r\n\r\n const handleCancel = () => {\r\n resolve({ isConfirm: false, selections: [] });\r\n\r\n dialogInstance.destroy();\r\n };\r\n\r\n const dialogInstance = this.customRender({\r\n class: \"mk-data-table-select-dialog\",\r\n width: \"80%\",\r\n body: () => {\r\n return (\r\n <div class=\"mk-data-table-select-dialog__main\">\r\n <MKDataTable dataTable={dataTable} selection />\r\n </div>\r\n );\r\n },\r\n footer: () => {\r\n return (\r\n <Fragment>\r\n <ElButton\r\n type=\"primary\"\r\n onClick={handleConfirm}\r\n disabled={dataTable.getSelection().length === 0}\r\n >\r\n 确定\r\n </ElButton>\r\n <ElButton onClick={handleCancel}>取消</ElButton>\r\n </Fragment>\r\n );\r\n },\r\n });\r\n });\r\n }\r\n\r\n async dataFormDialog(\r\n dataFormOptions: DataFormDialogOptions\r\n ): Promise<DialogInstance> {\r\n return new Promise((resolve) => {\r\n const dataForm = reactive(dataFormOptions.dataForm) as DataForm;\r\n\r\n let title = \"\";\r\n\r\n if (dataFormOptions.customDataFormStatus !== true) {\r\n if (dataFormOptions.recId) {\r\n dataForm.editRecord(dataFormOptions.recId);\r\n } else {\r\n dataForm.addRecord();\r\n }\r\n\r\n title = dataFormOptions.recId ? \"编辑\" : \"新增\";\r\n }\r\n\r\n const dialogInstance = this.customRender({\r\n title: dataFormOptions.title ?? title,\r\n onClose: () => {\r\n dataForm.cancel();\r\n\r\n dialogInstance.destroy();\r\n },\r\n body: () => {\r\n return (\r\n <ElScrollbar max-height=\"550px\">\r\n <MKDataForm dataForm={dataForm}>\r\n <MKForm dataForm={dataForm} />\r\n </MKDataForm>\r\n </ElScrollbar>\r\n );\r\n },\r\n\r\n footer: () => {\r\n return (\r\n <Fragment>\r\n <ElButton\r\n type=\"primary\"\r\n disabled={!dataForm.isChanged}\r\n loading={!dataForm.allowSubmit}\r\n onClick={async () => {\r\n if (!(await dataForm.validate())) {\r\n return;\r\n }\r\n\r\n if (await dataForm.simpleSubmit()) {\r\n dialogInstance.destroy();\r\n }\r\n }}\r\n >\r\n {I18n.instance.translate(\"mk.dataForm.saveButton\")}\r\n </ElButton>\r\n <ElButton\r\n onClick={() => {\r\n dataForm.cancel();\r\n\r\n dialogInstance.destroy();\r\n }}\r\n >\r\n {I18n.instance.translate(\"mk.dataForm.cancelButton\")}\r\n </ElButton>\r\n </Fragment>\r\n );\r\n },\r\n });\r\n\r\n resolve(dialogInstance);\r\n });\r\n }\r\n}\r\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","uid","DialogerImpl","SkeletonDialoger","dialogInstanceCreateEvent","Event","prompt","options","promptResult","ElMessageBox","message","title","value","confirm","e","alert","customRender","visible","dialogInstance","class","id","v","visibleChangeEvent","emit","destroyEvent","destroy","custom","Promise","resolve","onConfirm","isFunction","onCancel","dataTableSelectDialog","dataTable","reactive","afterInitdEvent","once","columns","getColumns","filter","column","name","TableActionColumn","actionColumnName","setColumns","handleConfirm","isConfirm","selections","getSelection","setList","setSelection","handleCancel","width","body","_createVNode","MKDataTable","footer","_Fragment","ElButton","length","default","_createTextVNode","dataFormDialog","dataFormOptions","dataForm","customDataFormStatus","recId","editRecord","addRecord","onClose","cancel","ElScrollbar","MKDataForm","MKForm","_slot","_slot2","isChanged","allowSubmit","validate","simpleSubmit","I18n","instance","translate","onClick"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DialogerImpl.js","sources":["../../../src/message-impl/DialogerImpl.tsx"],"sourcesContent":["import {\r\n DataForm,\r\n DataFormDialogOptions,\r\n DataTable,\r\n DataTableSelectDialogResult,\r\n DialogInstance,\r\n FormColumn,\r\n IDialogMessage,\r\n IDialogRenderOptions,\r\n Messager,\r\n SkeletonDialoger,\r\n TableActionColumn,\r\n} from \"@maketribe/dm\";\r\nimport { Event } from \"@maketribe/utils\";\r\nimport { ElButton, ElDrawer, ElMessageBox, ElScrollbar, ElTable, ElTableColumn, ElUpload } from \"element-plus\";\r\nimport { isFunction } from \"lodash-es\";\r\nimport { MKDataForm, MKDataTable, MKForm } from \"../components\";\r\nimport { Fragment, reactive } from \"vue\";\r\nimport { I18n } from \"@maketribe/locale\";\r\nimport { ImportResultColField } from \"@maketribe/dm\";\r\n\r\nlet uid = 0;\r\n\r\nexport class DialogerImpl extends SkeletonDialoger {\r\n dialogInstanceCreateEvent: Event<DialogInstance> = new Event();\r\n\r\n async prompt(options: IDialogMessage): Promise<string> {\r\n const promptResult = await ElMessageBox.prompt(\r\n options.message,\r\n options.title,\r\n options\r\n );\r\n\r\n return promptResult.value;\r\n }\r\n\r\n async confirm(options: IDialogMessage): Promise<boolean> {\r\n try {\r\n await ElMessageBox.confirm(options.message, options.title, options);\r\n return true;\r\n } catch (e) {\r\n return false;\r\n }\r\n }\r\n\r\n async alert(options: IDialogMessage): Promise<void> {\r\n await ElMessageBox.alert(options.message, options.title, options);\r\n }\r\n\r\n customRender(options: IDialogRenderOptions): DialogInstance {\r\n let visible = true;\r\n\r\n const dialogInstance: DialogInstance = {\r\n class: \"\",\r\n ...options,\r\n id: uid++,\r\n get visible() {\r\n return visible;\r\n },\r\n set visible(v) {\r\n visible = v;\r\n dialogInstance.visibleChangeEvent.emit(visible);\r\n },\r\n visibleChangeEvent: new Event(),\r\n destroyEvent: new Event(),\r\n destroy: () => {\r\n dialogInstance.visible = false;\r\n dialogInstance.destroyEvent.emit();\r\n },\r\n };\r\n this.dialogInstanceCreateEvent.emit(dialogInstance);\r\n\r\n return dialogInstance;\r\n }\r\n\r\n async custom(options: IDialogRenderOptions): Promise<boolean> {\r\n return new Promise<boolean>((resolve) => {\r\n const dialogInstance = this.customRender({\r\n ...options,\r\n onConfirm: async () => {\r\n if (\r\n isFunction(options.onConfirm)\r\n ? (await options.onConfirm()) === false\r\n : false\r\n ) {\r\n return false;\r\n }\r\n\r\n dialogInstance.destroy();\r\n\r\n resolve(true);\r\n },\r\n onCancel: async () => {\r\n if (\r\n isFunction(options.onCancel)\r\n ? (await options.onCancel()) === false\r\n : false\r\n ) {\r\n return false;\r\n }\r\n\r\n dialogInstance.destroy();\r\n\r\n resolve(false);\r\n },\r\n });\r\n });\r\n }\r\n\r\n async dataTableSelectDialog(\r\n dataTable: DataTable\r\n ): Promise<DataTableSelectDialogResult> {\r\n dataTable = reactive(dataTable) as DataTable;\r\n\r\n dataTable.afterInitdEvent.once(() => {\r\n // 过滤掉操作列\r\n const columns = dataTable\r\n .getColumns()\r\n .filter((column) => column.name !== TableActionColumn.actionColumnName);\r\n dataTable.setColumns(columns);\r\n });\r\n\r\n return new Promise((resolve) => {\r\n const handleConfirm = () => {\r\n resolve({ isConfirm: true, selections: dataTable.getSelection() });\r\n\r\n dataTable.setList([]);\r\n dataTable.setSelection([]);\r\n\r\n dialogInstance.destroy();\r\n };\r\n\r\n const handleCancel = () => {\r\n resolve({ isConfirm: false, selections: [] });\r\n\r\n dialogInstance.destroy();\r\n };\r\n\r\n const dialogInstance = this.customRender({\r\n class: \"mk-data-table-select-dialog\",\r\n width: \"80%\",\r\n body: () => {\r\n return (\r\n <div class=\"mk-data-table-select-dialog__main\">\r\n <MKDataTable dataTable={dataTable} selection />\r\n </div>\r\n );\r\n },\r\n footer: () => {\r\n return (\r\n <Fragment>\r\n <ElButton\r\n type=\"primary\"\r\n onClick={handleConfirm}\r\n disabled={dataTable.getSelection().length === 0}\r\n >\r\n 确定\r\n </ElButton>\r\n <ElButton onClick={handleCancel}>取消</ElButton>\r\n </Fragment>\r\n );\r\n },\r\n });\r\n });\r\n }\r\n\r\n //3.x版本暂时不支持\r\n async dataFormDialog(\r\n dataFormOptions: DataFormDialogOptions\r\n ): Promise<DialogInstance> {\r\n return new Promise((resolve) => {\r\n const dataForm = reactive(dataFormOptions.dataForm) as DataForm;\r\n\r\n let title = \"\";\r\n\r\n if (dataFormOptions.customDataFormStatus !== true) {\r\n if (dataFormOptions.recId) {\r\n dataForm.editRecord(dataFormOptions.recId);\r\n } else {\r\n dataForm.addRecord();\r\n }\r\n\r\n title = dataFormOptions.recId ? \"编辑\" : \"新增\";\r\n }\r\n\r\n const dialogInstance = this.customRender({\r\n title: dataFormOptions.title ?? title,\r\n onClose: () => {\r\n dataForm.cancel();\r\n\r\n dialogInstance.destroy();\r\n },\r\n body: () => {\r\n return (\r\n <ElScrollbar max-height=\"550px\">\r\n <MKDataForm dataForm={dataForm}>\r\n <MKForm dataForm={dataForm} />\r\n </MKDataForm>\r\n </ElScrollbar>\r\n );\r\n },\r\n\r\n footer: () => {\r\n return (\r\n <Fragment>\r\n <ElButton\r\n type=\"primary\"\r\n disabled={!dataForm.isChanged}\r\n loading={!dataForm.allowSubmit}\r\n onClick={async () => {\r\n if (!(await dataForm.validate())) {\r\n return;\r\n }\r\n\r\n if (await dataForm.simpleSubmit()) {\r\n dialogInstance.destroy();\r\n }\r\n }}\r\n >\r\n {I18n.instance.translate(\"mk.dataForm.saveButton\")}\r\n </ElButton>\r\n <ElButton\r\n onClick={() => {\r\n dataForm.cancel();\r\n\r\n dialogInstance.destroy();\r\n }}\r\n >\r\n {I18n.instance.translate(\"mk.dataForm.cancelButton\")}\r\n </ElButton>\r\n </Fragment>\r\n );\r\n },\r\n });\r\n\r\n resolve(dialogInstance);\r\n });\r\n }\r\n async importDataFormDialog(\r\n dataFormOptions: DataFormDialogOptions, template: string\r\n ): Promise<DialogInstance> {\r\n return new Promise((resolve) => {\r\n const dataForm = reactive(dataFormOptions.dataForm) as DataForm;\r\n\r\n let title = \"\";\r\n dataForm.afterInitdEvent.once(() => {\r\n dataForm.addColumn(\r\n new FormColumn({\r\n name: \"postFiles\",\r\n label: \"文件\",\r\n required: true,\r\n componentInfo: {\r\n name: \"postFiles\",\r\n component: () => {\r\n const fileSelectHandle = async (file: any, fileList: any) => {\r\n dataForm.data.postFiles = file.raw;\r\n Messager.success({ message: \"上传成功\" })\r\n }\r\n\r\n return (<div style={{ display: \"flex\" }}>\r\n <ElUpload accept=\".xls,.xlsx\" autoUpload={false} limit={1} onChange={fileSelectHandle}>\r\n <ElButton type=\"primary\" >上传文件</ElButton>\r\n </ElUpload>\r\n </div>)\r\n }\r\n }\r\n }),\r\n )\r\n if (template) {\r\n dataForm.addColumn(new FormColumn({\r\n name: \"template\",\r\n label: \"模板下载\",\r\n componentInfo: {\r\n name: \"template\",\r\n component: () => {\r\n const downloadHandle = () => {\r\n const a = document.createElement(\"a\");\r\n a.style.display = \"none\";\r\n document.body.appendChild(a);\r\n a.href = template;\r\n a.click();\r\n document.body.removeChild(a);\r\n }\r\n return <ElButton onClick={downloadHandle} type=\"primary\">点击下载</ElButton>\r\n }\r\n }\r\n }))\r\n }\r\n })\r\n\r\n\r\n if (dataFormOptions.customDataFormStatus !== true) {\r\n if (dataFormOptions.recId) {\r\n dataForm.editRecord(dataFormOptions.recId);\r\n } else {\r\n dataForm.addRecord();\r\n }\r\n title = dataFormOptions.recId ? \"编辑\" : \"新增\";\r\n }\r\n\r\n const dialogInstance = this.customRender({\r\n title: dataFormOptions.title ?? title,\r\n onClose: () => {\r\n dataForm.cancel();\r\n\r\n dialogInstance.destroy();\r\n },\r\n body: () => {\r\n return (\r\n <ElScrollbar max-height=\"550px\">\r\n <MKDataForm dataForm={dataForm}>\r\n <MKForm dataForm={dataForm} />\r\n </MKDataForm>\r\n </ElScrollbar>\r\n );\r\n },\r\n\r\n footer: () => {\r\n return (\r\n <Fragment>\r\n <ElButton\r\n type=\"primary\"\r\n disabled={!dataForm.isChanged}\r\n loading={!dataForm.allowSubmit}\r\n onClick={async () => {\r\n if (!(await dataForm.validate())) {\r\n return;\r\n }\r\n\r\n if (await dataForm.simpleSubmit()) {\r\n dialogInstance.destroy();\r\n }\r\n }}\r\n >\r\n {I18n.instance.translate(\"mk.dataForm.saveButton\")}\r\n </ElButton>\r\n <ElButton\r\n onClick={() => {\r\n dataForm.cancel();\r\n\r\n dialogInstance.destroy();\r\n }}\r\n >\r\n {I18n.instance.translate(\"mk.dataForm.cancelButton\")}\r\n </ElButton>\r\n </Fragment>\r\n );\r\n },\r\n });\r\n\r\n resolve(dialogInstance);\r\n });\r\n }\r\n\r\n importResultTableDialog(data: any, filed: ImportResultColField[]) {\r\n return this.customRender({\r\n title: \"导入结果\",\r\n body: () => {\r\n const cols = filed.map((item) => {\r\n return (<ElTableColumn prop={item.name} label={item.label}></ElTableColumn>)\r\n })\r\n\r\n var successSlot = {\r\n default: (data: any) => {\r\n return data.row.isSuccess ? <span style=\"color: green\">成功</span> : <span style=\"color: red\">失败</span>\r\n }\r\n }\r\n\r\n return (\r\n <ElTable data={data} style={{ height: \"550px\" }}>\r\n {cols}\r\n <ElTableColumn label=\"结果\" prop=\"isSuccess\" width=\"80px\" v-slots={successSlot}>\r\n </ElTableColumn>\r\n <ElTableColumn label=\"失败原因\" prop=\"reason\" ></ElTableColumn>\r\n </ElTable>\r\n )\r\n }\r\n })\r\n }\r\n}\r\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","uid","DialogerImpl","SkeletonDialoger","dialogInstanceCreateEvent","Event","prompt","options","promptResult","ElMessageBox","message","title","value","confirm","e","alert","customRender","visible","dialogInstance","class","id","v","visibleChangeEvent","emit","destroyEvent","destroy","custom","Promise","resolve","onConfirm","isFunction","onCancel","dataTableSelectDialog","dataTable","reactive","afterInitdEvent","once","columns","getColumns","filter","column","name","TableActionColumn","actionColumnName","setColumns","handleConfirm","isConfirm","selections","getSelection","setList","setSelection","handleCancel","width","body","_createVNode","MKDataTable","footer","_Fragment","ElButton","length","default","_createTextVNode","dataFormDialog","dataFormOptions","dataForm","customDataFormStatus","recId","editRecord","addRecord","onClose","cancel","ElScrollbar","MKDataForm","MKForm","_slot","_slot2","isChanged","allowSubmit","validate","simpleSubmit","I18n","instance","translate","onClick","importDataFormDialog","template","addColumn","FormColumn","label","required","componentInfo","component","fileSelectHandle","file","fileList","data","postFiles","raw","Messager","success","display","ElUpload","downloadHandle","a","document","createElement","style","appendChild","href","click","removeChild","_slot3","_slot4","importResultTableDialog","filed","cols","map","item","ElTableColumn","successSlot","row","isSuccess","ElTable","height"],"mappings":"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"}
|
|
@@ -70,6 +70,7 @@ import { MKOpenVerifyCode } from "../../components/business/verify-dialog/index.
|
|
|
70
70
|
import "../../components/business/resource-list/index.js";
|
|
71
71
|
import "../../components/business/resource-manager/index.js";
|
|
72
72
|
import _sfc_main$1 from "../../layouts/components/simple-page-layout/index.vue.js";
|
|
73
|
+
import { MKPasswordDialog } from "../../layouts/components/header/passwordDialog.js";
|
|
73
74
|
const _hoisted_1 = { class: "login-form-wrap" };
|
|
74
75
|
const _hoisted_2 = /* @__PURE__ */ createElementVNode("div", { class: "login-form-title" }, " 账号登录 ", -1);
|
|
75
76
|
const _hoisted_3 = { class: "login-form-item" };
|
|
@@ -91,6 +92,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
91
92
|
},
|
|
92
93
|
__name: "index",
|
|
93
94
|
setup(__props) {
|
|
95
|
+
const showDialog = ref(false);
|
|
94
96
|
ref(null);
|
|
95
97
|
ref(false);
|
|
96
98
|
const formEl = ref(null);
|
|
@@ -121,6 +123,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
121
123
|
}
|
|
122
124
|
var vResult = await MKOpenVerifyCode({ sence: scene.value });
|
|
123
125
|
loginFormData.vCode = vResult + "";
|
|
126
|
+
console.log(vResult);
|
|
124
127
|
try {
|
|
125
128
|
loading.value = true;
|
|
126
129
|
if (forgotPassword.value) {
|
|
@@ -142,6 +145,9 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
142
145
|
);
|
|
143
146
|
if (data.code !== 200) {
|
|
144
147
|
ElMessage.error(data.msg || "登录失败!");
|
|
148
|
+
if (data.data.isMidifyPassword) {
|
|
149
|
+
showDialog.value = true;
|
|
150
|
+
}
|
|
145
151
|
return;
|
|
146
152
|
}
|
|
147
153
|
router.push({ path: "/" });
|
|
@@ -271,7 +277,11 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
271
277
|
]),
|
|
272
278
|
_: 1
|
|
273
279
|
}, 8, ["model"])
|
|
274
|
-
])
|
|
280
|
+
]),
|
|
281
|
+
createVNode(unref(MKPasswordDialog), {
|
|
282
|
+
showDialog: showDialog.value,
|
|
283
|
+
"onUpdate:showDialog": _cache[5] || (_cache[5] = ($event) => showDialog.value = $event)
|
|
284
|
+
}, null, 8, ["showDialog"])
|
|
275
285
|
]),
|
|
276
286
|
_: 1
|
|
277
287
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.vue2.js","sources":["../../../../src/page/login/index.vue"],"sourcesContent":["<template>\r\n <SimplePageLayout class=\"login-wrap\">\r\n <div class=\"login-form-wrap\">\r\n\r\n <template v-if=\"!forgotPassword\">\r\n <div class=\"login-form-title\"> 账号登录 </div>\r\n <div class=\"login-form-item\">\r\n <div></div>\r\n <span class=\"notify\">\r\n 没有账号?\r\n <el-link :underline=\"false\" type=\"primary\" @click=\"router.push('/signup')\">\r\n 申请账号\r\n <MKSvgIcon iconClass=\"ArrowRightBold\" style=\"margin-left: 5px;\" />\r\n </el-link>\r\n </span>\r\n </div>\r\n </template>\r\n <template v-else>\r\n <div class=\"login-form-title\">账号重置</div>\r\n <div class=\"login-form-item\">\r\n 新密码将会在重置后送至 {{loginFormData.account}} 绑定的邮箱!请查收!\r\n </div>\r\n </template
|
|
1
|
+
{"version":3,"file":"index.vue2.js","sources":["../../../../src/page/login/index.vue"],"sourcesContent":["<template>\r\n <SimplePageLayout class=\"login-wrap\">\r\n <div class=\"login-form-wrap\">\r\n\r\n <template v-if=\"!forgotPassword\">\r\n <div class=\"login-form-title\"> 账号登录 </div>\r\n <div class=\"login-form-item\">\r\n <div></div>\r\n <span class=\"notify\">\r\n 没有账号?\r\n <el-link :underline=\"false\" type=\"primary\" @click=\"router.push('/signup')\">\r\n 申请账号\r\n <MKSvgIcon iconClass=\"ArrowRightBold\" style=\"margin-left: 5px;\" />\r\n </el-link>\r\n </span>\r\n </div>\r\n </template>\r\n <template v-else>\r\n <div class=\"login-form-title\">账号重置</div>\r\n <div class=\"login-form-item\">\r\n 新密码将会在重置后送至 {{ loginFormData.account }} 绑定的邮箱!请查收!\r\n </div>\r\n </template>\r\n\r\n <ElForm :model=\"loginFormData\" :rules=\"rules\" size=\"large\" ref=\"formEl\" @submit.native.prevent>\r\n <ElFormItem prop=\"account\">\r\n <ElInput v-model=\"loginFormData.account\" placeholder=\"帐号\" @keyup.enter.native.prevent=\"sendAction\" />\r\n </ElFormItem>\r\n <ElFormItem prop=\"password\" style=\"margin-top: 30px;\" v-if=\"!forgotPassword\">\r\n <ElInput v-model=\"loginFormData.password\" type=\"password\" placeholder=\"密码\"\r\n @keyup.enter.native.prevent=\"sendAction\" />\r\n </ElFormItem>\r\n <div class=\"login-form-item\">\r\n <div></div>\r\n <el-link :underline=\"false\" type=\"primary\" @click=\"forgotPassword = !forgotPassword\">\r\n {{ forgotPassword ? \"返回登陆\" : \"忘记密码\" }}\r\n <MKSvgIcon iconClass=\"ArrowRightBold\" style=\"margin-left: 2px;\" />\r\n </el-link>\r\n </div>\r\n <ElFormItem>\r\n <ElButton type=\"primary\" style=\"width: 100%\" :loading=\"loading\" @click=\"sendAction\" v-if=\"!forgotPassword\">\r\n 登陆\r\n </ElButton>\r\n <ElButton type=\"primary\" v-else style=\"width: 100%\" :loading=\"loading\" @click=\"sendAction\">\r\n 重置\r\n </ElButton>\r\n </ElFormItem>\r\n </ElForm>\r\n <!-- <ElDivider></ElDivider> -->\r\n </div>\r\n <MKPasswordDialog v-model:showDialog=\"showDialog\"></MKPasswordDialog>\r\n </SimplePageLayout>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { ElMessage, ElForm, ElFormItem } from \"element-plus\";\r\nimport { useMSAppClient } from \"../../composables\";\r\nimport { MKOpenVerifyCode } from \"../../components\";\r\nimport { Ref, computed, reactive, ref } from \"vue\";\r\nimport { useRouter } from \"vue-router\";\r\nimport SimplePageLayout from \"../../layouts/components/simple-page-layout/index.vue\"\r\nimport { MKPasswordDialog } from \"../../layouts/components/header/passwordDialog\"\r\n\r\ndefineOptions({\r\n mkRoute: {\r\n name: \"login\",\r\n path: \"/login\",\r\n meta: {\r\n isAuthorization: false,\r\n },\r\n },\r\n});\r\n\r\nconst showDialog = ref(false)\r\n\r\nconst verifyDialog: Ref<{ fail: () => void } | null> = ref(null);\r\n\r\n// 记住登陆状态\r\nconst rememberLoginState = ref(false);\r\n\r\nconst formEl: Ref<any> = ref(null);\r\n\r\nconst system = useMSAppClient()!;\r\n\r\nconst router = useRouter();\r\n\r\nconst loading = ref(false);\r\n\r\nconst loginDisabled = computed(\r\n () => !loginFormData.account || !loginFormData.password\r\n);\r\nconst resetDisabled = computed(() => !loginFormData.account);\r\n\r\nconst forgotPassword = ref(false);\r\nconst scene = computed(() =>\r\n forgotPassword.value ? \"ModifyPassword\" : \"Login\"\r\n);\r\n\r\nconst rules = {\r\n account: [{ required: true, message: \"账号必填\" }],\r\n password: [{ required: true, message: \"密码必填\" }],\r\n};\r\n\r\nconst loginFormData = reactive({\r\n account: \"\",\r\n password: \"\",\r\n vCode: \"\",\r\n});\r\n\r\n// 发起动作 可能是登录 也可能是修改密码\r\nconst sendAction = async (v: number) => {\r\n // 验证不通过\r\n if (!await formEl.value?.validate()) {\r\n return;\r\n }\r\n // 验证码\r\n var vResult = await MKOpenVerifyCode({ sence: scene.value } as any);\r\n\r\n // 转成字符串格式\r\n loginFormData.vCode = vResult + \"\";\r\n console.log(vResult);\r\n try {\r\n\r\n loading.value = true;\r\n\r\n if (forgotPassword.value) {\r\n\r\n const { data } = await system.resetPassword(\r\n loginFormData.account,\r\n loginFormData.vCode\r\n );\r\n\r\n if (data.code !== 200) {\r\n ElMessage.error(data.msg || \"重置邮箱失败!\");\r\n return;\r\n }\r\n\r\n ElMessage.success(\"重置密码邮件已发送到邮箱\");\r\n forgotPassword.value = false;\r\n\r\n } else {\r\n\r\n const { data } = await system.login(\r\n loginFormData.account,\r\n loginFormData.password,\r\n loginFormData.vCode\r\n );\r\n\r\n if (data.code !== 200) {\r\n ElMessage.error(data.msg || \"登录失败!\");\r\n if (data.data.isMidifyPassword) {\r\n showDialog.value = true;\r\n }\r\n return;\r\n }\r\n\r\n router.push({ path: \"/\" });\r\n }\r\n } catch (e) {\r\n ElMessage.error(\"登录失败\");\r\n } finally {\r\n loading.value = false;\r\n }\r\n};\r\n</script>\r\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyEM,UAAA,aAAa,IAAI,KAAK;AAE2B,QAAI,IAAI;AAGpC,QAAI,KAAK;AAE9B,UAAA,SAAmB,IAAI,IAAI;AAEjC,UAAM,SAAS;AAEf,UAAM,SAAS;AAET,UAAA,UAAU,IAAI,KAAK;AAEH;AAAA,MACpB,MAAM,CAAC,cAAc,WAAW,CAAC,cAAc;AAAA,IACjD;AACsB,aAAS,MAAM,CAAC,cAAc,OAAO;AAErD,UAAA,iBAAiB,IAAI,KAAK;AAChC,UAAM,QAAQ;AAAA,MAAS,MACrB,eAAe,QAAQ,mBAAmB;AAAA,IAAA;AAG5C,UAAM,QAAQ;AAAA,MACZ,SAAS,CAAC,EAAE,UAAU,MAAM,SAAS,QAAQ;AAAA,MAC7C,UAAU,CAAC,EAAE,UAAU,MAAM,SAAS,QAAQ;AAAA,IAAA;AAGhD,UAAM,gBAAgB,SAAS;AAAA,MAC7B,SAAS;AAAA,MACT,UAAU;AAAA,MACV,OAAO;AAAA,IAAA,CACR;AAGK,UAAA,aAAa,OAAO,MAAc;;AAEtC,UAAI,CAAC,QAAM,YAAO,UAAP,mBAAc,aAAY;AACnC;AAAA,MACF;AAEA,UAAI,UAAU,MAAM,iBAAiB,EAAE,OAAO,MAAM,OAAc;AAGlE,oBAAc,QAAQ,UAAU;AAChC,cAAQ,IAAI,OAAO;AACf,UAAA;AAEF,gBAAQ,QAAQ;AAEhB,YAAI,eAAe,OAAO;AAExB,gBAAM,EAAE,KAAA,IAAS,MAAM,OAAO;AAAA,YAC5B,cAAc;AAAA,YACd,cAAc;AAAA,UAAA;AAGZ,cAAA,KAAK,SAAS,KAAK;AACX,sBAAA,MAAM,KAAK,OAAO,SAAS;AACrC;AAAA,UACF;AAEA,oBAAU,QAAQ,cAAc;AAChC,yBAAe,QAAQ;AAAA,QAAA,OAElB;AAEL,gBAAM,EAAE,KAAA,IAAS,MAAM,OAAO;AAAA,YAC5B,cAAc;AAAA,YACd,cAAc;AAAA,YACd,cAAc;AAAA,UAAA;AAGZ,cAAA,KAAK,SAAS,KAAK;AACX,sBAAA,MAAM,KAAK,OAAO,OAAO;AAC/B,gBAAA,KAAK,KAAK,kBAAkB;AAC9B,yBAAW,QAAQ;AAAA,YACrB;AACA;AAAA,UACF;AAEA,iBAAO,KAAK,EAAE,MAAM,IAAK,CAAA;AAAA,QAC3B;AAAA,eACO,GAAG;AACV,kBAAU,MAAM,MAAM;AAAA,MAAA,UACtB;AACA,gBAAQ,QAAQ;AAAA,MAClB;AAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -5,7 +5,7 @@ export declare const MKResourceManager: import("@maketribe/utils").SFCWithInstal
|
|
|
5
5
|
default: string;
|
|
6
6
|
};
|
|
7
7
|
resourceManager: {
|
|
8
|
-
type: typeof import("../index.
|
|
8
|
+
type: typeof import("../index.ts").ResourceManager;
|
|
9
9
|
required: true;
|
|
10
10
|
};
|
|
11
11
|
}>>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Readonly<globalThis.ExtractPropTypes<{
|
|
@@ -14,7 +14,7 @@ export declare const MKResourceManager: import("@maketribe/utils").SFCWithInstal
|
|
|
14
14
|
default: string;
|
|
15
15
|
};
|
|
16
16
|
resourceManager: {
|
|
17
|
-
type: typeof import("../index.
|
|
17
|
+
type: typeof import("../index.ts").ResourceManager;
|
|
18
18
|
required: true;
|
|
19
19
|
};
|
|
20
20
|
}>>, {
|
|
@@ -32,7 +32,7 @@ export declare const MKResourceManager: import("@maketribe/utils").SFCWithInstal
|
|
|
32
32
|
default: string;
|
|
33
33
|
};
|
|
34
34
|
resourceManager: {
|
|
35
|
-
type: typeof import("../index.
|
|
35
|
+
type: typeof import("../index.ts").ResourceManager;
|
|
36
36
|
required: true;
|
|
37
37
|
};
|
|
38
38
|
}>>, {}, {}, {}, {}, {
|
|
@@ -47,7 +47,7 @@ export declare const MKResourceManager: import("@maketribe/utils").SFCWithInstal
|
|
|
47
47
|
default: string;
|
|
48
48
|
};
|
|
49
49
|
resourceManager: {
|
|
50
|
-
type: typeof import("../index.
|
|
50
|
+
type: typeof import("../index.ts").ResourceManager;
|
|
51
51
|
required: true;
|
|
52
52
|
};
|
|
53
53
|
}>>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {
|
package/dist/types/index.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ export * from "./layouts";
|
|
|
7
7
|
export * from "./composables";
|
|
8
8
|
export * from "./components";
|
|
9
9
|
export * from "./tokens";
|
|
10
|
-
export declare const install: (app: import("vue").App, options?: Partial<import("./components/basic/config-provider/config-provider-options").ConfigProviderProps> | undefined) => void;
|
|
10
|
+
export declare const install: (app: import("vue").App, options?: Partial<import("./components/basic/config-provider/config-provider-options.js").ConfigProviderProps> | undefined) => void;
|
|
11
11
|
export declare const version: string;
|
|
12
12
|
export * from "./init-application";
|
|
13
13
|
export * from "./define-data-table";
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare const MKPasswordDialog: import("vue").DefineComponent<{
|
|
2
|
+
showDialog: BooleanConstructor;
|
|
3
|
+
}, () => import("vue/jsx-runtime").JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:showDialog"[], "update:showDialog", import("vue").PublicProps, Readonly<globalThis.ExtractPropTypes<{
|
|
4
|
+
showDialog: BooleanConstructor;
|
|
5
|
+
}>> & {
|
|
6
|
+
"onUpdate:showDialog"?: ((...args: any[]) => any) | undefined;
|
|
7
|
+
}, {
|
|
8
|
+
showDialog: boolean;
|
|
9
|
+
}, {}>;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { DataFormDialogOptions, DataTable, DataTableSelectDialogResult, DialogInstance, IDialogMessage, IDialogRenderOptions, SkeletonDialoger } from "@maketribe/dm";
|
|
2
2
|
import { Event } from "@maketribe/utils";
|
|
3
|
+
import { ImportResultColField } from "@maketribe/dm";
|
|
3
4
|
export declare class DialogerImpl extends SkeletonDialoger {
|
|
4
5
|
dialogInstanceCreateEvent: Event<DialogInstance>;
|
|
5
6
|
prompt(options: IDialogMessage): Promise<string>;
|
|
@@ -9,4 +10,6 @@ export declare class DialogerImpl extends SkeletonDialoger {
|
|
|
9
10
|
custom(options: IDialogRenderOptions): Promise<boolean>;
|
|
10
11
|
dataTableSelectDialog(dataTable: DataTable): Promise<DataTableSelectDialogResult>;
|
|
11
12
|
dataFormDialog(dataFormOptions: DataFormDialogOptions): Promise<DialogInstance>;
|
|
13
|
+
importDataFormDialog(dataFormOptions: DataFormDialogOptions, template: string): Promise<DialogInstance>;
|
|
14
|
+
importResultTableDialog(data: any, filed: ImportResultColField[]): DialogInstance;
|
|
12
15
|
}
|
|
@@ -3,7 +3,7 @@ export declare const MKPartTree: import("@maketribe/utils").SFCWithInstall<impor
|
|
|
3
3
|
type: globalThis.PropType<string>;
|
|
4
4
|
};
|
|
5
5
|
}, {
|
|
6
|
-
dataTree: import("../../index.
|
|
6
|
+
dataTree: import("../../index.ts").CmsPartTree;
|
|
7
7
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
8
8
|
select: (...args: any[]) => void;
|
|
9
9
|
add: (...args: any[]) => void;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@maketribe/ms-app",
|
|
3
|
-
"version": "3.2.
|
|
3
|
+
"version": "3.2.53",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "dist/cjs",
|
|
6
6
|
"module": "dist/esm",
|
|
@@ -52,10 +52,10 @@
|
|
|
52
52
|
"vue-codemirror": "^6.1.1",
|
|
53
53
|
"vue-cropper": "^1.1.4",
|
|
54
54
|
"vue-router": "^4.2.4",
|
|
55
|
-
"@maketribe/dm": "^3.2.12",
|
|
56
55
|
"@maketribe/locale": "^3.2.0",
|
|
57
|
-
"@maketribe/
|
|
58
|
-
"@maketribe/utils": "^3.2.1"
|
|
56
|
+
"@maketribe/dm": "^3.2.12",
|
|
57
|
+
"@maketribe/utils": "^3.2.1",
|
|
58
|
+
"@maketribe/request": "^3.2.5"
|
|
59
59
|
},
|
|
60
60
|
"devDependencies": {
|
|
61
61
|
"@types/sortablejs": "^1.15.8"
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const vue = require("vue");
|
|
4
|
-
const elementPlus = require("element-plus");
|
|
5
|
-
const index = require("../../../components/basic/svg-icon/index.js");
|
|
6
|
-
const index_vue_vue_type_script_setup_true_lang = require("../message-list/index.vue.js");
|
|
7
|
-
const SignalR = require("@microsoft/signalr");
|
|
8
|
-
const notify = require("./notify.js");
|
|
9
|
-
require("@maketribe/dm");
|
|
10
|
-
require("@maketribe/utils");
|
|
11
|
-
require("../../../core/DataModelDefines.js");
|
|
12
|
-
const MSAppClient = require("../../../core/MSAppClient.js");
|
|
13
|
-
require("@maketribe/request");
|
|
14
|
-
function _interopNamespaceDefault(e) {
|
|
15
|
-
const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
|
|
16
|
-
if (e) {
|
|
17
|
-
for (const k in e) {
|
|
18
|
-
if (k !== "default") {
|
|
19
|
-
const d = Object.getOwnPropertyDescriptor(e, k);
|
|
20
|
-
Object.defineProperty(n, k, d.get ? d : {
|
|
21
|
-
enumerable: true,
|
|
22
|
-
get: () => e[k]
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
n.default = e;
|
|
28
|
-
return Object.freeze(n);
|
|
29
|
-
}
|
|
30
|
-
const SignalR__namespace = /* @__PURE__ */ _interopNamespaceDefault(SignalR);
|
|
31
|
-
const MKMessage = /* @__PURE__ */ vue.defineComponent({
|
|
32
|
-
name: "MKMessage",
|
|
33
|
-
setup() {
|
|
34
|
-
const showMessageList = vue.ref(false);
|
|
35
|
-
const num = vue.ref(0);
|
|
36
|
-
console.log(localStorage.getItem("access-token"));
|
|
37
|
-
const connection = new SignalR__namespace.HubConnectionBuilder().withUrl("/api/ms/hubs/notification", {
|
|
38
|
-
accessTokenFactory: () => localStorage.getItem("access-token")
|
|
39
|
-
}).withAutomaticReconnect({
|
|
40
|
-
nextRetryDelayInMilliseconds: function(val) {
|
|
41
|
-
let arr = [1e3, 5e3, 1e4, 3e4];
|
|
42
|
-
if (val.previousRetryCount <= 3) {
|
|
43
|
-
return arr[val.previousRetryCount];
|
|
44
|
-
} else {
|
|
45
|
-
return arr[3];
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
}).build();
|
|
49
|
-
connection.on('Notification"', (infos) => {
|
|
50
|
-
console.log(infos);
|
|
51
|
-
notify.notifyHandle(infos);
|
|
52
|
-
getUnreadMessageNum();
|
|
53
|
-
});
|
|
54
|
-
window.connection = connection;
|
|
55
|
-
const start = async () => {
|
|
56
|
-
try {
|
|
57
|
-
await connection.start();
|
|
58
|
-
console.log("SignalR Connected.");
|
|
59
|
-
} catch (err) {
|
|
60
|
-
console.log(err);
|
|
61
|
-
setTimeout(start, 5e3);
|
|
62
|
-
}
|
|
63
|
-
};
|
|
64
|
-
connection.onclose(async () => {
|
|
65
|
-
await start();
|
|
66
|
-
});
|
|
67
|
-
const getUnreadMessageNum = async () => {
|
|
68
|
-
const httpRequest = MSAppClient.MSAppClient.instance.httpRequest;
|
|
69
|
-
const result = await httpRequest.get("/ms/dv/message/unread/count");
|
|
70
|
-
if (result.data.code == 200) {
|
|
71
|
-
num.value = result.data.data;
|
|
72
|
-
}
|
|
73
|
-
};
|
|
74
|
-
vue.onMounted(() => {
|
|
75
|
-
getUnreadMessageNum();
|
|
76
|
-
});
|
|
77
|
-
return () => {
|
|
78
|
-
return vue.createVNode("div", null, [vue.createVNode(elementPlus.ElBadge, {
|
|
79
|
-
"value": num.value
|
|
80
|
-
}, {
|
|
81
|
-
default: () => [vue.createVNode(index.MKSvgIcon, {
|
|
82
|
-
"iconClass": "Message",
|
|
83
|
-
"class": "mk-header__tools-message",
|
|
84
|
-
"onClick": () => showMessageList.value = true
|
|
85
|
-
}, null)]
|
|
86
|
-
}), vue.createVNode(index_vue_vue_type_script_setup_true_lang, {
|
|
87
|
-
"showMessageList": vue.unref(showMessageList),
|
|
88
|
-
"onUpdate:showMessageList": (v) => showMessageList.value = v
|
|
89
|
-
}, null)]);
|
|
90
|
-
};
|
|
91
|
-
}
|
|
92
|
-
});
|
|
93
|
-
exports.MKMessage = MKMessage;
|
|
94
|
-
//# sourceMappingURL=message.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"message.js","sources":["../../../../../src/layouts/components/header/message.tsx"],"sourcesContent":["import { ElBadge, ElButton, ElNotification } from \"element-plus\";\r\nimport { MKSvgIcon } from \"../../../components/basic/svg-icon\";\r\nimport { defineComponent, h, isVNode, onMounted, ref, Ref, unref } from \"vue\";\r\nimport MessageList from \"../message-list/index.vue\"\r\nimport * as SignalR from \"@microsoft/signalr\"\r\nimport { notifyHandle, NotifyType } from \"./notify\";\r\nimport { MSAppClient } from \"../../../core\"\r\n\r\n\r\n\r\nexport const MKMessage = defineComponent({\r\n name: \"MKMessage\",\r\n setup() {\r\n\r\n const showMessageList: Ref<boolean> | undefined = ref(false)\r\n const num: Ref<number> = ref(0)\r\n console.log(localStorage.getItem(\"access-token\"));\r\n //signalR连接\r\n const connection = new SignalR.HubConnectionBuilder()\r\n .withUrl(\"/api/ms/hubs/notification\", { accessTokenFactory: () => localStorage.getItem(\"access-token\") as string })\r\n //自动连接\r\n .withAutomaticReconnect({\r\n nextRetryDelayInMilliseconds: function (val) {\r\n // _this.$TF.closeLoading()\r\n let arr = [1000, 5000, 10000, 30000]\r\n if (val.previousRetryCount <= 3) {\r\n return arr[val.previousRetryCount]\r\n } else {\r\n return arr[3]\r\n }\r\n }\r\n })\r\n .build();\r\n //接收消息\r\n connection.on('Notification\"', (infos) => {\r\n console.log(infos);\r\n notifyHandle(infos);\r\n getUnreadMessageNum();\r\n });\r\n (window as any).connection = connection\r\n const start = async () => {\r\n try {\r\n await connection.start();\r\n console.log(\"SignalR Connected.\");\r\n } catch (err) {\r\n console.log(err);\r\n setTimeout(start, 5000);\r\n }\r\n };\r\n\r\n connection.onclose(async () => {\r\n await start();\r\n });\r\n\r\n //Start the connection.启动\r\n // start();\r\n\r\n const getUnreadMessageNum = async () => {\r\n const httpRequest = MSAppClient.instance!.httpRequest\r\n const result = await httpRequest.get(\"/ms/dv/message/unread/count\")\r\n if (result.data.code == 200) {\r\n num.value = result.data.data\r\n }\r\n\r\n }\r\n onMounted(() => {\r\n getUnreadMessageNum();\r\n })\r\n return () => {\r\n return (<div>\r\n <ElBadge value={num.value}>\r\n <MKSvgIcon iconClass=\"Message\" class=\"mk-header__tools-message\" onClick={() => (showMessageList.value = true)} />\r\n </ElBadge>\r\n <MessageList showMessageList={unref(showMessageList)} onUpdate:showMessageList={(v) => (showMessageList.value = v)}>\r\n\r\n </MessageList>\r\n </div>)\r\n }\r\n }\r\n})"],"names":["MKMessage","defineComponent","name","setup","showMessageList","ref","num","console","log","localStorage","getItem","connection","SignalR","HubConnectionBuilder","withUrl","accessTokenFactory","withAutomaticReconnect","nextRetryDelayInMilliseconds","val","arr","previousRetryCount","build","on","infos","notifyHandle","getUnreadMessageNum","window","start","err","setTimeout","onclose","httpRequest","MSAppClient","instance","result","get","data","code","value","onMounted","_createVNode","ElBadge","default","MKSvgIcon","onClick","MessageList","unref","v"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUaA,MAAAA,YAAYC,oBAAAA,gBAAgB;AAAA,EACrCC,MAAM;AAAA,EACNC,QAAQ;AAEJ,UAAMC,kBAA4CC,QAAI,KAAK;AAC3D,UAAMC,MAAmBD,QAAI,CAAC;AAC9BE,YAAQC,IAAIC,aAAaC,QAAQ,cAAc,CAAC;AAEhD,UAAMC,aAAa,IAAIC,mBAAQC,qBAAoB,EAC9CC,QAAQ,6BAA6B;AAAA,MAAEC,oBAAoBA,MAAMN,aAAaC,QAAQ,cAAc;AAAA,KAAa,EAEjHM,uBAAuB;AAAA,MACpBC,8BAA8B,SAAUC,KAAK;AAEzC,YAAIC,MAAM,CAAC,KAAM,KAAM,KAAO,GAAK;AACnC,YAAID,IAAIE,sBAAsB,GAAG;AAC7B,iBAAOD,IAAID,IAAIE,kBAAkB;AAAA,QACrC,OAAO;AACH,iBAAOD,IAAI,CAAC;AAAA,QAChB;AAAA,MACJ;AAAA,IACJ,CAAC,EACAE,MAAK;AAEVV,eAAWW,GAAG,iBAAkBC,WAAU;AACtChB,cAAQC,IAAIe,KAAK;AACjBC,aAAY,aAACD,KAAK;AAClBE;IACJ,CAAC;AACAC,WAAef,aAAaA;AAC7B,UAAMgB,QAAQ,YAAY;AACtB,UAAI;AACA,cAAMhB,WAAWgB;AACjBpB,gBAAQC,IAAI,oBAAoB;AAAA,MACnC,SAAQoB,KAAK;AACVrB,gBAAQC,IAAIoB,GAAG;AACfC,mBAAWF,OAAO,GAAI;AAAA,MAC1B;AAAA;AAGJhB,eAAWmB,QAAQ,YAAY;AAC3B,YAAMH,MAAK;AAAA,IACf,CAAC;AAKD,UAAMF,sBAAsB,YAAY;AACpC,YAAMM,cAAcC,YAAAA,YAAYC,SAAUF;AAC1C,YAAMG,SAAS,MAAMH,YAAYI,IAAI,6BAA6B;AAClE,UAAID,OAAOE,KAAKC,QAAQ,KAAK;AACzB/B,YAAIgC,QAAQJ,OAAOE,KAAKA;AAAAA,MAC5B;AAAA;AAGJG,QAAAA,UAAU,MAAM;AACZd;IACJ,CAAC;AACD,WAAO,MAAM;AACT,aAAAe,IAAA,YAAA,OAAA,MAAA,CAAAA,IAAAA,YAAAC,YAAAA,SAAA;AAAA,QAAA,SACoBnC,IAAIgC;AAAAA,MAAK,GAAA;AAAA,QAAAI,SAAAA,MAAAF,CAAAA,IAAA,YAAAG,iBAAA;AAAA,UAAA,aAAA;AAAA,UAAA,SAAA;AAAA,UAAA,WACoDC,MAAOxC,gBAAgBkC,QAAQ;AAAA,QAAK,GAAA,IAAA,CAAA;AAAA,OAAAE,GAAAA,IAAA,YAAAK,2CAAA;AAAA,QAAA,mBAEnFC,IAAK,MAAC1C,eAAe;AAAA,QAAC,4BAA6B2C,OAAO3C,gBAAgBkC,QAAQS;AAAAA,MAAE,GAAA,IAAA,CAAA,CAAA;AAAA;EAK9H;AACJ,CAAC;;"}
|