zsysview 0.1.35 → 0.1.38

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.
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, ref, reactive, onMounted, resolveComponent, createElementBlock, openBlock, Fragment, createVNode, createElementVNode, withCtx, createTextVNode, createCommentVNode } from "vue";
2
- import { H as HttpApiV1, i as _sfc_main$1, k as _sfc_main$2, Z as ZSYSMessage } from "./index-CtKk28NV.js";
2
+ import { H as HttpApiV1, i as _sfc_main$1, k as _sfc_main$2, Z as ZSYSMessage } from "./index-CYY3XQIG.js";
3
3
  const _hoisted_1 = { style: { padding: "0px 20px" } }, _hoisted_2 = { key: 0 }, _hoisted_3 = { key: 0 }, _sfc_main = /* @__PURE__ */ defineComponent({
4
4
  __name: "backup",
5
5
  setup(__props) {
@@ -1,5 +1,5 @@
1
1
  import { resolveComponent, createElementBlock, openBlock, Fragment, createVNode, createElementVNode, withCtx } from "vue";
2
- import { _ as _export_sfc } from "./index-CtKk28NV.js";
2
+ import { _ as _export_sfc } from "./index-CYY3XQIG.js";
3
3
  const _sfc_main = {}, _hoisted_1 = { style: { padding: "0px 20px", "margin-top": "20px" } };
4
4
  function _sfc_render(_ctx, _cache) {
5
5
  const _component_breadcrumb = resolveComponent("breadcrumb"), _component_el_result = resolveComponent("el-result");
@@ -1,6 +1,6 @@
1
1
  import { defineComponent, createElementBlock, openBlock, Fragment, createVNode, createElementVNode } from "vue";
2
- import { i as _sfc_main$1 } from "./index-CtKk28NV.js";
3
- import { _ as _sfc_main$2 } from "./change_password_panel.vue_vue_type_script_setup_true_lang-CDSXHHec.js";
2
+ import { i as _sfc_main$1 } from "./index-CYY3XQIG.js";
3
+ import { _ as _sfc_main$2 } from "./change_password_panel.vue_vue_type_script_setup_true_lang-DDSkJ0UZ.js";
4
4
  const _hoisted_1 = { style: { padding: "0px 20px", "margin-top": "20px" } }, _sfc_main = /* @__PURE__ */ defineComponent({
5
5
  __name: "change_password",
6
6
  setup(__props) {
@@ -1,7 +1,7 @@
1
- import { defineComponent, ref, reactive, resolveComponent, createBlock, openBlock, withCtx, createCommentVNode, createVNode, createTextVNode } from "vue";
2
- import { e as useRouter, Z as ZSYSMessage, H as HttpApiV1 } from "./index-CtKk28NV.js";
1
+ import { defineComponent, ref, reactive, onMounted, resolveComponent, createBlock, openBlock, withCtx, createCommentVNode, createVNode, createElementVNode, createTextVNode } from "vue";
2
+ import { e as useRouter, Z as ZSYSMessage, H as HttpApiV1 } from "./index-CYY3XQIG.js";
3
3
  import { h } from "./index.es-DrN1BLo5.js";
4
- const _sfc_main = /* @__PURE__ */ defineComponent({
4
+ const _hoisted_1 = ["src"], _sfc_main = /* @__PURE__ */ defineComponent({
5
5
  __name: "change_password_panel",
6
6
  props: {
7
7
  after_login: { type: Boolean, default: !0 },
@@ -13,12 +13,15 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
13
13
  const props = __props, ruleFormRef = ref(), r = useRouter(), goBack = () => {
14
14
  r.back();
15
15
  }, view = reactive({
16
- isloading: !1
16
+ isloading: !1,
17
+ b64Captcha: ""
17
18
  }), form_data = reactive({
18
19
  username: "",
19
20
  old_p: "",
20
21
  new_p1: "",
21
- new_p2: ""
22
+ new_p2: "",
23
+ vid: "",
24
+ v: ""
22
25
  });
23
26
  props.username != "" && (form_data.username = props.username), props.old_p != "" && (form_data.old_p = props.old_p);
24
27
  const rules = reactive({
@@ -42,7 +45,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
42
45
  old_p: h.hashStr(form_data.old_p),
43
46
  new_p: h.hashStr(form_data.new_p1)
44
47
  }).then((res) => {
45
- res.IsSuccess ? (ZSYSMessage.ShowSuccess("密码修改成功"), r.back()) : ZSYSMessage.ShowError("密码修改失败");
48
+ res.IsSuccess ? (ZSYSMessage.ShowSuccess("密码修改成功"), r.back()) : ZSYSMessage.ShowError(res.message);
46
49
  }).catch((err) => {
47
50
  console.log(err);
48
51
  }).finally(() => {
@@ -50,11 +53,13 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
50
53
  }) : HttpApiV1.Post(HttpApiV1.url_user_change_pwd_by_username, {
51
54
  username: props.username,
52
55
  old_p: h.hashStr(form_data.old_p),
53
- new_p: h.hashStr(form_data.new_p1)
56
+ new_p: h.hashStr(form_data.new_p1),
57
+ vid: form_data.vid,
58
+ v: form_data.v
54
59
  }).then((res) => {
55
60
  res.IsSuccess ? (ZSYSMessage.ShowSuccess("修改成功,请用新密码登录"), setTimeout(() => {
56
61
  location.href = "/";
57
- }, 1500)) : ZSYSMessage.ShowError("密码修改失败");
62
+ }, 1500)) : ZSYSMessage.ShowError(res.message);
58
63
  }).catch((err) => {
59
64
  console.log(err);
60
65
  }).finally(() => {
@@ -64,7 +69,16 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
64
69
  console.log("error submit!");
65
70
  });
66
71
  };
67
- return (_ctx, _cache) => {
72
+ async function getVC() {
73
+ let res = await HttpApiV1.Post(HttpApiV1.url_user_change_pwd_by_username_vc, {});
74
+ if (res.IsSuccess) {
75
+ let data = res.data;
76
+ form_data.vid = data.key, view.b64Captcha = data.b64Captcha;
77
+ }
78
+ }
79
+ return onMounted(() => {
80
+ getVC();
81
+ }), (_ctx, _cache) => {
68
82
  const _component_el_input = resolveComponent("el-input"), _component_el_form_item = resolveComponent("el-form-item"), _component_el_button = resolveComponent("el-button"), _component_el_form = resolveComponent("el-form");
69
83
  return openBlock(), createBlock(_component_el_form, {
70
84
  ref_key: "ruleFormRef",
@@ -119,14 +133,31 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
119
133
  ]),
120
134
  _: 1
121
135
  }),
136
+ createVNode(_component_el_form_item, { label: "验证码" }, {
137
+ default: withCtx(() => [
138
+ createVNode(_component_el_input, {
139
+ size: "large",
140
+ modelValue: form_data.v,
141
+ "onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => form_data.v = $event),
142
+ clearable: "",
143
+ style: { width: "150px" }
144
+ }, null, 8, ["modelValue"]),
145
+ createElementVNode("img", {
146
+ src: view.b64Captcha,
147
+ style: { height: "40px", width: "100px", "margin-left": "4px", cursor: "pointer" },
148
+ onClick: getVC
149
+ }, null, 8, _hoisted_1)
150
+ ]),
151
+ _: 1
152
+ }),
122
153
  createVNode(_component_el_form_item, { style: { "margin-left": "120px" } }, {
123
154
  default: withCtx(() => [
124
155
  createVNode(_component_el_button, {
125
156
  type: "primary",
126
- onClick: _cache[3] || (_cache[3] = ($event) => submitForm(ruleFormRef.value)),
157
+ onClick: _cache[4] || (_cache[4] = ($event) => submitForm(ruleFormRef.value)),
127
158
  loading: view.isloading
128
159
  }, {
129
- default: withCtx(() => [..._cache[4] || (_cache[4] = [
160
+ default: withCtx(() => [..._cache[5] || (_cache[5] = [
130
161
  createTextVNode("确认修改", -1)
131
162
  ])]),
132
163
  _: 1
@@ -136,7 +167,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
136
167
  onClick: goBack,
137
168
  disabled: view.isloading
138
169
  }, {
139
- default: withCtx(() => [..._cache[5] || (_cache[5] = [
170
+ default: withCtx(() => [..._cache[6] || (_cache[6] = [
140
171
  createTextVNode("返回", -1)
141
172
  ])]),
142
173
  _: 1
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, ref, watch, reactive, resolveComponent, resolveDirective, createBlock, openBlock, withCtx, withDirectives, withModifiers, createVNode, createElementVNode, createCommentVNode, createTextVNode, onMounted, onUnmounted, createElementBlock, Fragment, unref } from "vue";
2
- import { z as zsysEventBus, l as useMagicKeys, w as whenever, H as HttpApiV1, Z as ZSYSMessage, i as _sfc_main$2, p as refresh_default, m as _sfc_main$3 } from "./index-CtKk28NV.js";
2
+ import { z as zsysEventBus, l as useMagicKeys, w as whenever, H as HttpApiV1, Z as ZSYSMessage, i as _sfc_main$2, p as refresh_default, m as _sfc_main$3 } from "./index-CYY3XQIG.js";
3
3
  const _hoisted_1$1 = { style: { display: "flex", "justify-content": "right" } }, _sfc_main$1 = /* @__PURE__ */ defineComponent({
4
4
  __name: "department_edit_dialog",
5
5
  props: {
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, reactive, onMounted, resolveComponent, createElementBlock, openBlock, Fragment, createVNode, createElementVNode, withCtx, createTextVNode, toDisplayString } from "vue";
2
- import { i as _sfc_main$1 } from "./index-CtKk28NV.js";
2
+ import { i as _sfc_main$1 } from "./index-CYY3XQIG.js";
3
3
  const _hoisted_1 = { style: { padding: "0px 20px" } }, _sfc_main = /* @__PURE__ */ defineComponent({
4
4
  __name: "help",
5
5
  setup(__props) {
@@ -48817,7 +48817,7 @@ const useTokenStore = /* @__PURE__ */ defineStore("UseToken", () => {
48817
48817
  path: "/main",
48818
48818
  //"/main"
48819
48819
  name: "main",
48820
- component: () => import("./main-9qsBz3n1.js"),
48820
+ component: () => import("./main-DeClXX8F.js"),
48821
48821
  meta: { requiresAuth: !0, title: "主界面" },
48822
48822
  children: [
48823
48823
  {
@@ -48829,13 +48829,13 @@ const useTokenStore = /* @__PURE__ */ defineStore("UseToken", () => {
48829
48829
  path: "/self",
48830
48830
  //个人中心
48831
48831
  meta: { title: "基本信息" },
48832
- component: () => import("./self-zgC9Bxvr.js")
48832
+ component: () => import("./self-DcPZkb96.js")
48833
48833
  },
48834
48834
  {
48835
48835
  path: "/notification",
48836
48836
  //个人中心
48837
48837
  meta: { title: "系统消息" },
48838
- component: () => import("./notification-BLE-evDJ.js")
48838
+ component: () => import("./notification-Bi2ZYoqB.js")
48839
48839
  }
48840
48840
  ]
48841
48841
  },
@@ -48843,7 +48843,7 @@ const useTokenStore = /* @__PURE__ */ defineStore("UseToken", () => {
48843
48843
  path: "/password",
48844
48844
  //修改密码
48845
48845
  meta: { title: "修改密码" },
48846
- component: () => import("./change_password-DD2T6X7I.js")
48846
+ component: () => import("./change_password-afQS9hpD.js")
48847
48847
  },
48848
48848
  {
48849
48849
  path: "/sys",
@@ -48854,61 +48854,61 @@ const useTokenStore = /* @__PURE__ */ defineStore("UseToken", () => {
48854
48854
  {
48855
48855
  path: "/user",
48856
48856
  meta: { title: "用户管理" },
48857
- component: () => import("./user-DfIRlt4y.js")
48857
+ component: () => import("./user-BPo7id69.js")
48858
48858
  },
48859
48859
  {
48860
48860
  path: "/department",
48861
48861
  meta: { title: "组织架构" },
48862
- component: () => import("./department-BULuEdr3.js")
48862
+ component: () => import("./department-Coc6AmKf.js")
48863
48863
  },
48864
48864
  {
48865
48865
  path: "/position",
48866
48866
  meta: { title: "职务" },
48867
- component: () => import("./position-CZLL-EtO.js")
48867
+ component: () => import("./position-DEVBbOgG.js")
48868
48868
  },
48869
48869
  {
48870
48870
  path: "/role",
48871
48871
  meta: { title: "角色权限" },
48872
- component: () => import("./role-CCfEGckq.js")
48872
+ component: () => import("./role-Drok2lDN.js")
48873
48873
  },
48874
48874
  {
48875
48875
  path: "/log",
48876
48876
  meta: { title: "日志" },
48877
- component: () => import("./log-CdUReCmA.js")
48877
+ component: () => import("./log-DGd-Ce1l.js")
48878
48878
  },
48879
48879
  {
48880
48880
  path: "/backup",
48881
48881
  meta: { title: "备份" },
48882
- component: () => import("./backup-BomDF70f.js")
48882
+ component: () => import("./backup-DSz2cfgD.js")
48883
48883
  },
48884
48884
  {
48885
48885
  path: "/systemsetting",
48886
48886
  meta: { title: "高级设置" },
48887
- component: () => import("./systemsetting-Clvu_Ins.js")
48887
+ component: () => import("./systemsetting-hHyD-61k.js")
48888
48888
  }
48889
48889
  ]
48890
48890
  },
48891
48891
  {
48892
48892
  path: "/help",
48893
48893
  meta: { title: "使用帮助" },
48894
- component: () => import("./help-Dq_D2MVF.js")
48894
+ component: () => import("./help-CzBastTj.js")
48895
48895
  },
48896
48896
  {
48897
48897
  path: "/version",
48898
48898
  meta: { title: "版本记录" },
48899
- component: () => import("./version-C6UTuUy4.js")
48899
+ component: () => import("./version-DocdF12G.js")
48900
48900
  },
48901
48901
  {
48902
48902
  path: "/building",
48903
48903
  meta: { title: "开发中的功能" },
48904
- component: () => import("./building-D7SfeTp3.js")
48904
+ component: () => import("./building-DYTv4Si2.js")
48905
48905
  }
48906
48906
  ]
48907
48907
  },
48908
48908
  {
48909
48909
  path: "/login",
48910
48910
  name: "login",
48911
- component: () => import("./login-CBHzo0k4.js")
48911
+ component: () => import("./login-BeBdyIoU.js")
48912
48912
  }
48913
48913
  ], router = createRouter({
48914
48914
  history: createWebHistory(),
@@ -51660,9 +51660,11 @@ class HttpApiV1 {
51660
51660
  //'http://localhost:1788/' //1788
51661
51661
  //当前用户
51662
51662
  static url_login = "api/login";
51663
+ static url_login_vc = "api/login_vc";
51663
51664
  static url_usercenter = "api/user_center";
51664
51665
  static url_change_password = "api/change_password";
51665
51666
  static url_user_change_pwd_by_username = "api/user_change_pwd_by_username";
51667
+ static url_user_change_pwd_by_username_vc = "api/user_change_pwd_by_username_vc";
51666
51668
  static url_user_permission = "api/user_permission";
51667
51669
  //系统消息
51668
51670
  static url_notification_list = "api/notification_list";
@@ -51697,7 +51699,9 @@ class HttpApiV1 {
51697
51699
  static url_backup_list = "api/backup_list";
51698
51700
  static url_backup_del = "api/backup_del";
51699
51701
  static url_backup_config_get = "api/backup_config_get";
51700
- static url_backup_config_save = "api/backup_config_save";
51702
+ static url_backup_config_save = "api/system_setting_set";
51703
+ //系统高级设置
51704
+ static url_system_setting_save = "api/backup_config_save";
51701
51705
  //权限
51702
51706
  static url_syspermission_list = "api/permission_list";
51703
51707
  static url_sysrole_list = "api/role_list";
@@ -51710,7 +51714,7 @@ class HttpApiV1 {
51710
51714
  // 系统
51711
51715
  static url_system_version = "api/system_version";
51712
51716
  static url_system_version_history = "api/system_version_history";
51713
- static url_system_publish = "api/system_publish";
51717
+ static url_system_public = "api/system_public";
51714
51718
  static url_system_common_info = "api/system_common_info";
51715
51719
  static GetFullApiUrl(api) {
51716
51720
  return this.api_host + api;
@@ -51991,7 +51995,7 @@ const _hoisted_1$4 = { style: { "padding-left": "20px", "padding-right": "20px",
51991
51995
  }, 8, ["modelValue"]);
51992
51996
  };
51993
51997
  }
51994
- }), export_dialog = /* @__PURE__ */ _export_sfc$1(_sfc_main$7, [["__scopeId", "data-v-f6c153b5"]]), _sfc_main$6 = /* @__PURE__ */ defineComponent({
51998
+ }), export_dialog = /* @__PURE__ */ _export_sfc$1(_sfc_main$7, [["__scopeId", "data-v-a9e71fc0"]]), _sfc_main$6 = /* @__PURE__ */ defineComponent({
51995
51999
  __name: "zsyslist_header",
51996
52000
  props: ["config", "query"],
51997
52001
  emits: ["refresh"],
@@ -52765,6 +52769,16 @@ async function HasPermission(p2) {
52765
52769
  }
52766
52770
  return has;
52767
52771
  }
52772
+ async function GetAppName() {
52773
+ let ps = "";
52774
+ try {
52775
+ let res = await HttpApiV1.Post(HttpApiV1.url_system_public, {});
52776
+ res.IsSuccess && (ps = res.data.app_name);
52777
+ } catch (e) {
52778
+ console.log("GetAppName error", e);
52779
+ }
52780
+ return ps;
52781
+ }
52768
52782
  const sysUrls = [], appUrls = [];
52769
52783
  function getClientUrl(url2) {
52770
52784
  let curl = "";
@@ -52807,15 +52821,16 @@ export {
52807
52821
  _sfc_main$4 as D,
52808
52822
  _sfc_main$5 as E,
52809
52823
  _sfc_main as F,
52810
- GetItemsIds as G,
52824
+ GetAppName as G,
52811
52825
  HttpApiV1 as H,
52812
- GetItemsTitles as I,
52813
- HttpApiReturnData as J,
52814
- HasPermission as K,
52815
- GetUserPermission as L,
52816
- AddClientUrl as M,
52817
- HasClientUrl as N,
52826
+ GetItemsIds as I,
52827
+ GetItemsTitles as J,
52828
+ HttpApiReturnData as K,
52829
+ HasPermission as L,
52830
+ GetUserPermission as M,
52831
+ AddClientUrl as N,
52818
52832
  OpenClientUrlWithID as O,
52833
+ HasClientUrl as P,
52819
52834
  ZSYSMessage as Z,
52820
52835
  _export_sfc$1 as _,
52821
52836
  avatar_default as a,
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, ref, onMounted, resolveComponent, createElementBlock, openBlock, Fragment, createVNode, withCtx, createTextVNode, reactive, computed, createElementVNode, toDisplayString } from "vue";
2
- import { H as HttpApiV1, Z as ZSYSMessage, j as formatDateTime, i as _sfc_main$2, k as _sfc_main$3 } from "./index-CtKk28NV.js";
2
+ import { H as HttpApiV1, Z as ZSYSMessage, j as formatDateTime, i as _sfc_main$2, k as _sfc_main$3 } from "./index-CYY3XQIG.js";
3
3
  const _sfc_main$1 = /* @__PURE__ */ defineComponent({
4
4
  __name: "log_setting",
5
5
  setup(__props, { expose: __expose }) {
@@ -1,37 +1,47 @@
1
- import { defineComponent, reactive, resolveComponent, createElementBlock, openBlock, Fragment, createElementVNode, createVNode, withCtx, withKeys, createTextVNode, toDisplayString, inject } from "vue";
2
- import { e as useRouter, t as useRoute, H as HttpApiV1, Z as ZSYSMessage, _ as _export_sfc } from "./index-CtKk28NV.js";
1
+ import { defineComponent, reactive, resolveComponent, createElementBlock, openBlock, Fragment, createElementVNode, createVNode, withCtx, createBlock, createCommentVNode, withKeys, createTextVNode, toDisplayString, inject } from "vue";
2
+ import { e as useRouter, t as useRoute, H as HttpApiV1, Z as ZSYSMessage, _ as _export_sfc } from "./index-CYY3XQIG.js";
3
3
  import { h } from "./index.es-DrN1BLo5.js";
4
- import { _ as _sfc_main$1 } from "./change_password_panel.vue_vue_type_script_setup_true_lang-CDSXHHec.js";
4
+ import { _ as _sfc_main$1 } from "./change_password_panel.vue_vue_type_script_setup_true_lang-DDSkJ0UZ.js";
5
5
  const _hoisted_1 = {
6
6
  class: "bg",
7
7
  style: { "background-image": 'url("/public/img/login_bg.jpg")' }
8
8
  }, _hoisted_2 = {
9
9
  class: "card-header",
10
10
  style: {}
11
- }, _sfc_main = /* @__PURE__ */ defineComponent({
11
+ }, _hoisted_3 = ["src"], _sfc_main = /* @__PURE__ */ defineComponent({
12
12
  __name: "login",
13
13
  setup(__props) {
14
14
  const r = useRouter(), route = useRoute(), d = reactive({
15
15
  u: "",
16
- p: ""
16
+ p: "",
17
+ v: ""
17
18
  }), view = reactive({
18
19
  loading: !1,
19
- change_pwd_dialog: !1
20
+ change_pwd_dialog: !1,
21
+ v: ""
20
22
  }), ToPasswordInput = () => {
21
23
  }, login2 = () => {
22
24
  view.loading = !0;
23
25
  let data = {
24
26
  u: d.u,
25
- p: h.hashStr(d.p)
27
+ p: h.hashStr(d.p),
28
+ v: d.v
26
29
  };
27
30
  HttpApiV1.Post(HttpApiV1.url_login, data).then((res) => {
28
- res.IsSuccess ? (ZSYSMessage.ShowSuccess("登录成功"), r.push(route.query.redirect || "/desktop")) : res.error_code == 101 ? view.change_pwd_dialog = !0 : ZSYSMessage.ShowError(res.message);
31
+ res.IsSuccess ? (ZSYSMessage.ShowSuccess("登录成功"), r.push(route.query.redirect || "/desktop")) : (res.error_code == 101 ? view.change_pwd_dialog = !0 : ZSYSMessage.ShowError(res.message), res.error_code == 102 && (view.v = res.data));
29
32
  }).catch(() => {
30
33
  console.log("请求失败"), ZSYSMessage.ShowError("登录服务器失败");
31
34
  }).finally(() => {
32
35
  view.loading = !1;
33
36
  });
34
37
  };
38
+ async function getVc() {
39
+ let res = await HttpApiV1.Post(HttpApiV1.url_login_vc, { u: d.u });
40
+ if (res.IsSuccess) {
41
+ let data = res.data;
42
+ view.v = data;
43
+ }
44
+ }
35
45
  return (_ctx, _cache) => {
36
46
  const _component_el_image = resolveComponent("el-image"), _component_el_input = resolveComponent("el-input"), _component_el_form_item = resolveComponent("el-form-item"), _component_el_button = resolveComponent("el-button"), _component_el_form = resolveComponent("el-form"), _component_el_card = resolveComponent("el-card"), _component_el_alert = resolveComponent("el-alert"), _component_el_dialog = resolveComponent("el-dialog");
37
47
  return openBlock(), createElementBlock(Fragment, null, [
@@ -83,6 +93,27 @@ const _hoisted_1 = {
83
93
  ]),
84
94
  _: 1
85
95
  }),
96
+ view.v != "" ? (openBlock(), createBlock(_component_el_form_item, {
97
+ key: 0,
98
+ label: "验证码"
99
+ }, {
100
+ default: withCtx(() => [
101
+ createVNode(_component_el_input, {
102
+ size: "large",
103
+ modelValue: d.v,
104
+ "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => d.v = $event),
105
+ clearable: "",
106
+ onKeyup: withKeys(login2, ["enter", "native"]),
107
+ style: { width: "150px" }
108
+ }, null, 8, ["modelValue"]),
109
+ createElementVNode("img", {
110
+ src: view.v,
111
+ style: { height: "40px", width: "100px", "margin-left": "4px", cursor: "pointer" },
112
+ onClick: getVc
113
+ }, null, 8, _hoisted_3)
114
+ ]),
115
+ _: 1
116
+ })) : createCommentVNode("", !0),
86
117
  createVNode(_component_el_form_item, null, {
87
118
  default: withCtx(() => [
88
119
  createVNode(_component_el_button, {
@@ -92,7 +123,7 @@ const _hoisted_1 = {
92
123
  onClick: login2,
93
124
  style: { width: "100%" }
94
125
  }, {
95
- default: withCtx(() => [..._cache[3] || (_cache[3] = [
126
+ default: withCtx(() => [..._cache[4] || (_cache[4] = [
96
127
  createTextVNode("登录", -1)
97
128
  ])]),
98
129
  _: 1
@@ -109,7 +140,7 @@ const _hoisted_1 = {
109
140
  ]),
110
141
  createVNode(_component_el_dialog, {
111
142
  modelValue: view.change_pwd_dialog,
112
- "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => view.change_pwd_dialog = $event),
143
+ "onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => view.change_pwd_dialog = $event),
113
144
  title: "请修改密码",
114
145
  "align-center": !0,
115
146
  width: "550",
@@ -137,7 +168,7 @@ const _hoisted_1 = {
137
168
  ], 64);
138
169
  };
139
170
  }
140
- }), login = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-d7e104d9"]]);
171
+ }), login = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-38585230"]]);
141
172
  export {
142
173
  login as default
143
174
  };
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, resolveComponent, createBlock, openBlock, withCtx, createVNode, createElementVNode, resolveDynamicComponent, toDisplayString, createElementBlock, Fragment, renderList, markRaw, inject, reactive, onMounted, ref, createCommentVNode, unref, onUnmounted, createTextVNode, watch } from "vue";
2
- import { b as bell_default, u as user_default, o as office_building_default, a as avatar_default, r as reading_default, c as copy_document_default, d as operation_default, s as setting_default, q as question_filled_default, H as HttpApiV1, C as CommonHelper, _ as _export_sfc, f as formatPreciseOralTime, O as OpenClientUrlWithID, e as useRouter, g as arrow_down_default, h as useTokenStore, Z as ZSYSMessage } from "./index-CtKk28NV.js";
2
+ import { b as bell_default, u as user_default, o as office_building_default, a as avatar_default, r as reading_default, c as copy_document_default, d as operation_default, s as setting_default, q as question_filled_default, H as HttpApiV1, C as CommonHelper, _ as _export_sfc, f as formatPreciseOralTime, Z as ZSYSMessage, O as OpenClientUrlWithID, e as useRouter, g as arrow_down_default, h as useTokenStore, G as GetAppName } from "./index-CYY3XQIG.js";
3
3
  const _sfc_main$4 = /* @__PURE__ */ defineComponent({
4
4
  __name: "userMenuItem",
5
5
  props: {
@@ -121,38 +121,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
121
121
  { name: "使用帮助", icon: markRaw(question_filled_default), url: "/help" }
122
122
  ], all_menus = [];
123
123
  app_menus != null ? all_menus.push(...app_menus, ...sys_menus) : all_menus.push(...sys_menus);
124
- const menus = reactive([
125
- /*
126
- { name: '首页', icon: markRaw(House), url: '/desktop', show: true },
127
- { name: '个人中心', icon: markRaw(User), url: '/self', show: true },
128
- { name: '数据看板', icon: markRaw(Odometer), url: '/chart', show: false },
129
- { name: '事件管理', icon: markRaw(Collection), url: '/eventgroup/event', show: false },
130
- // {
131
- // name: '事件管理', icon: markRaw(Collection), url: '/111', show: false,
132
- // children: [
133
- // { name: '数据看板', icon: markRaw(Odometer), url: '/user', show: false },
134
- // { name: '事件', icon: markRaw(Collection), url: '/eventgroup/event', show: false },
135
- // ]
136
- // },
137
- { name: '行为分析引擎', icon: markRaw(SetUp), url: '/engine', show: false },
138
- { name: '设备管理', icon: markRaw(VideoCamera), url: '/equipment', show: false },
139
- { name: '区域管理', icon: markRaw(Location), url: '/area', show: false },
140
- { name: '报表与统计', icon: markRaw(Document), url: '/building?1', show: false },
141
- { name: '报警与通知', icon: markRaw(Bell), url: '/building?2', show: false },
142
- {
143
- name: '系统管理', icon: markRaw(Setting), url: '/zsys', show: false,
144
- children: [
145
- { name: '用户管理', icon: markRaw(User), url: '/user', show: false },
146
- { name: '组织架构', icon: markRaw(OfficeBuilding), url: '/department', show: false },
147
- { name: '职务', icon: markRaw(Avatar), url: '/position', show: false },
148
- { name: '角色权限', icon: markRaw(Avatar), url: '/role', show: false },
149
- { name: '日志', icon: markRaw(Reading), url: '/log', show: false },
150
- { name: '备份', icon: markRaw(CopyDocument), url: '/backup', show: false },
151
- { name: '高级设置', icon: markRaw(Operation), url: '/systemsetting', show: false },
152
- ]
153
- },
154
- */
155
- ]);
124
+ const menus = reactive([]);
156
125
  function filterMenusStrict(menus2, userPermissions) {
157
126
  return menus2.filter((menu) => {
158
127
  let hasPermission = !1;
@@ -181,7 +150,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
181
150
  try {
182
151
  let res = await HttpApiV1.Post(HttpApiV1.url_user_permission, {});
183
152
  if (res.IsSuccess) {
184
- let ps = res.data, m = filterMenusStrict(all_menus, ps);
153
+ let ps = res.data || [], m = filterMenusStrict(all_menus, ps);
185
154
  for (const i of m)
186
155
  menus.push({
187
156
  name: i.name,
@@ -226,18 +195,21 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
226
195
  });
227
196
  };
228
197
  }
229
- }), Usermenu = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["__scopeId", "data-v-c77e10a7"]]), _hoisted_1$1 = ["onClick"], _hoisted_2$1 = { style: { height: "20px" } }, _hoisted_3$1 = { style: { "font-weight": "bold", float: "left" } }, _hoisted_4$1 = {
198
+ }), Usermenu = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["__scopeId", "data-v-69fc3cad"]]), _hoisted_1$1 = ["onClick"], _hoisted_2$1 = { style: { height: "20px" } }, _hoisted_3$1 = { style: { "font-weight": "bold", float: "left" } }, _hoisted_4$1 = {
230
199
  key: 0,
231
- style: { "background-color": "#EF4444", "border-radius": "50%", height: "5px", width: "5px", float: "right" }
200
+ style: { "background-color": "#ef4444", "border-radius": "50%", height: "5px", width: "5px", float: "right" }
232
201
  }, _hoisted_5$1 = { style: { color: "#909399", "font-size": "small", float: "right" } }, _hoisted_6$1 = { style: { width: "100%", display: "inline-block" } }, _hoisted_7$1 = { style: { "font-size": "medium", color: "#374151" } }, _sfc_main$2 = /* @__PURE__ */ defineComponent({
233
202
  __name: "notification_box",
234
203
  setup(__props) {
235
204
  const data = ref([]), handleClick = (item) => {
236
205
  HttpApiV1.Post(HttpApiV1.url_notification_read, { id: item.notification_id });
237
206
  const n = data.value.find((i) => i.notification_id == item.notification_id);
238
- n && (n.is_read = 1), OpenClientUrlWithID(item.url, item.data_id);
207
+ n && (n.is_read = 1), (item.url || "") == "" ? ZSYSMessage.ShowInfo("该消息没有链接,已为您标记已阅") : OpenClientUrlWithID(item.url, item.data_id);
239
208
  }, getdata = async () => {
240
- let d = [], res = await HttpApiV1.Post(HttpApiV1.url_notification_list, { page_size: 50, page_index: 1 });
209
+ let d = [], res = await HttpApiV1.Post(HttpApiV1.url_notification_list, {
210
+ page_size: 50,
211
+ page_index: 1
212
+ });
241
213
  if (res.IsSuccess) {
242
214
  let data2 = res.data;
243
215
  for (let i = 0; i < data2.listdata.length; i++) {
@@ -265,7 +237,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
265
237
  ])
266
238
  ], 8, _hoisted_1$1))), 128));
267
239
  }
268
- }), notification = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-54048ec7"]]), _hoisted_1 = { style: { "padding-left": "20px", "padding-right": "20px" } }, _hoisted_2 = { style: { height: "60px", "margin-right": "10px", float: "left", display: "flex", "align-items": "center", "justify-content": "center" } }, _hoisted_3 = { style: { float: "left", "line-height": "60px" } }, _hoisted_4 = {
240
+ }), notification = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-d682f19d"]]), _hoisted_1 = { style: { "padding-left": "20px", "padding-right": "20px" } }, _hoisted_2 = { style: { height: "60px", "margin-right": "10px", float: "left", display: "flex", "align-items": "center", "justify-content": "center" } }, _hoisted_3 = { style: { float: "left", "line-height": "60px" } }, _hoisted_4 = {
269
241
  key: 0,
270
242
  style: { color: "rgb(196, 86, 86)" }
271
243
  }, _hoisted_5 = { class: "el-dropdown-link" }, _hoisted_6 = { style: { "font-size": "24px" } }, _hoisted_7 = { style: { "text-align": "center" } }, _sfc_main$1 = /* @__PURE__ */ defineComponent({
@@ -274,7 +246,8 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
274
246
  const view = reactive({
275
247
  version: "未知",
276
248
  view_build_time: "未知",
277
- server_build_time: "未知"
249
+ server_build_time: "未知",
250
+ app_name: ""
278
251
  }), notification_open = ref(!1), has_new_notification = ref(!1), r = useRouter(), user = reactive({
279
252
  uname: ""
280
253
  });
@@ -322,6 +295,10 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
322
295
  console.log(e);
323
296
  }
324
297
  }
298
+ async function getAppName() {
299
+ let res = await GetAppName();
300
+ view.app_name = res;
301
+ }
325
302
  const allread = () => {
326
303
  HttpApiV1.Post(HttpApiV1.url_notification_all_read, {}), notification_open.value = !1, has_new_notification.value = !1;
327
304
  }, getLastNotification = async () => {
@@ -339,7 +316,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
339
316
  };
340
317
  let hasNewTimer = null;
341
318
  return onMounted(() => {
342
- getViewTime(), getServerTime(), getVersion(), hasNewTimer = setInterval(() => {
319
+ getViewTime(), getServerTime(), getVersion(), getAppName(), hasNewTimer = setInterval(() => {
343
320
  getLastNotification();
344
321
  }, 3e3);
345
322
  }), onUnmounted(() => {
@@ -374,7 +351,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
374
351
  _: 1
375
352
  })
376
353
  ]),
377
- createElementVNode("div", _hoisted_3, toDisplayString(inject("appname")), 1),
354
+ createElementVNode("div", _hoisted_3, toDisplayString(view.app_name), 1),
378
355
  createVNode(_component_el_space, {
379
356
  wrap: "",
380
357
  style: { float: "right" }
@@ -482,7 +459,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
482
459
  ], 64);
483
460
  };
484
461
  }
485
- }), Userheader = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-c75aedcf"]]), _sfc_main = /* @__PURE__ */ defineComponent({
462
+ }), Userheader = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-705e4fa1"]]), _sfc_main = /* @__PURE__ */ defineComponent({
486
463
  __name: "main",
487
464
  setup(__props) {
488
465
  const store = useTokenStore(), r = useRouter();
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, ref, reactive, computed, resolveComponent, createElementBlock, openBlock, createVNode, createElementVNode, withCtx, createTextVNode, toDisplayString, createBlock, createCommentVNode } from "vue";
2
- import { z as zsysEventBus, H as HttpApiV1, j as formatDateTime, i as _sfc_main$1, k as _sfc_main$2, O as OpenClientUrlWithID } from "./index-CtKk28NV.js";
2
+ import { z as zsysEventBus, H as HttpApiV1, j as formatDateTime, i as _sfc_main$1, k as _sfc_main$2, O as OpenClientUrlWithID } from "./index-CYY3XQIG.js";
3
3
  const _hoisted_1 = { class: "flex_height" }, _hoisted_2 = {
4
4
  class: "flex_fill",
5
5
  style: { padding: "0px 20px" }
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, ref, watch, reactive, resolveComponent, resolveDirective, createBlock, openBlock, withCtx, withDirectives, withModifiers, createVNode, createElementVNode, createCommentVNode, createTextVNode, createElementBlock, Fragment, unref } from "vue";
2
- import { z as zsysEventBus, l as useMagicKeys, w as whenever, H as HttpApiV1, Z as ZSYSMessage, i as _sfc_main$2, k as _sfc_main$3, m as _sfc_main$4 } from "./index-CtKk28NV.js";
2
+ import { z as zsysEventBus, l as useMagicKeys, w as whenever, H as HttpApiV1, Z as ZSYSMessage, i as _sfc_main$2, k as _sfc_main$3, m as _sfc_main$4 } from "./index-CYY3XQIG.js";
3
3
  const _hoisted_1$1 = { style: { display: "flex", "justify-content": "right" } }, _sfc_main$1 = /* @__PURE__ */ defineComponent({
4
4
  __name: "position_edit_dialog",
5
5
  props: {
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, ref, watch, reactive, resolveComponent, resolveDirective, createBlock, openBlock, withCtx, withDirectives, withModifiers, createVNode, createElementVNode, createCommentVNode, createTextVNode, createElementBlock, Fragment, unref } from "vue";
2
- import { z as zsysEventBus, l as useMagicKeys, w as whenever, H as HttpApiV1, Z as ZSYSMessage, _ as _export_sfc, i as _sfc_main$2, k as _sfc_main$3, m as _sfc_main$4 } from "./index-CtKk28NV.js";
2
+ import { z as zsysEventBus, l as useMagicKeys, w as whenever, H as HttpApiV1, Z as ZSYSMessage, _ as _export_sfc, i as _sfc_main$2, k as _sfc_main$3, m as _sfc_main$4 } from "./index-CYY3XQIG.js";
3
3
  const _hoisted_1$1 = { style: { display: "flex", "justify-content": "right" } }, _sfc_main$1 = /* @__PURE__ */ defineComponent({
4
4
  __name: "role_edit_dialog",
5
5
  props: {
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, ref, onMounted, resolveComponent, createElementBlock, openBlock, Fragment, createVNode, createElementVNode, withCtx, createTextVNode, toDisplayString } from "vue";
2
- import { H as HttpApiV1, i as _sfc_main$1 } from "./index-CtKk28NV.js";
2
+ import { H as HttpApiV1, i as _sfc_main$1 } from "./index-CYY3XQIG.js";
3
3
  const _hoisted_1 = { style: { padding: "0px 20px", "margin-top": "20px" } }, _sfc_main = /* @__PURE__ */ defineComponent({
4
4
  __name: "self",
5
5
  setup(__props) {