yangg vor 10 Monaten
Ursprung
Commit
4523651c81
78 geänderte Dateien mit 309 neuen und 33 gelöschten Zeilen
  1. 1 1
      .env
  2. 2 1
      .env.test
  3. 1 1
      dist/assets/Notify-Crr2YtjK.js
  4. 0 0
      dist/assets/SKUList-CB__McS3.js
  5. 0 0
      dist/assets/accountTemplate-Btu-WkSN.js
  6. 0 0
      dist/assets/addInventory-Bcq5zXbF.js
  7. 0 0
      dist/assets/addOutbound-BAb7JLQX.js
  8. 0 0
      dist/assets/administratorManage-DHavzZKZ.js
  9. 0 0
      dist/assets/authorize-B_SY1GJM.css
  10. 0 0
      dist/assets/authorize-Czhk04MW.js
  11. 1 1
      dist/assets/basicSetting-B0Aq66-n.js
  12. 0 0
      dist/assets/boxed-lockscreen-DDsAOeYz.js
  13. 0 0
      dist/assets/boxed-lockscreen-De7sP7L8.js
  14. 0 0
      dist/assets/boxed-signin-DdSOUot3.js
  15. 0 0
      dist/assets/boxed-signup-zj29AJD8.js
  16. 0 0
      dist/assets/branch-CF5kSG0d.js
  17. 0 0
      dist/assets/category-BHkc5g2M.js
  18. 0 0
      dist/assets/category-DpXsDR_B.js
  19. 1 1
      dist/assets/companyInfo-Diwuiulo.js
  20. 0 0
      dist/assets/companyList-Bk_P6vRW.js
  21. 0 0
      dist/assets/configMsg-B9OyN6YS.js
  22. 0 0
      dist/assets/dicData-DABGJTN7.js
  23. 0 0
      dist/assets/dicData-DOD0O9pB.js
  24. 0 0
      dist/assets/emailtemplate-KabAWzrW.js
  25. 1 1
      dist/assets/express-Bmb_lcHt.js
  26. 0 0
      dist/assets/express-C1FYs2RL.js
  27. 1 1
      dist/assets/goods-B5eo1zzk.js
  28. 1 1
      dist/assets/goodsExchange-CxLOr8W3.js
  29. 1 1
      dist/assets/goodsInventory-2NVqbt9i.js
  30. 0 0
      dist/assets/goodsInventory-BZtozqBK.js
  31. 0 0
      dist/assets/goodsInventoryAdd-CC8zzjMs.js
  32. 0 0
      dist/assets/goodsInventoryLoss-Bd0HHdyY.js
  33. 1 1
      dist/assets/goodsInventoryLoss-DaDtQv6q.js
  34. 0 0
      dist/assets/goodsInventoryLossAdd-C6CpXpRg.js
  35. 1 1
      dist/assets/goodsLend-BE5ip8Zm.js
  36. 0 0
      dist/assets/goodsLend-DvCT_GJi.js
  37. 0 0
      dist/assets/goodsTransfer-0eqwV4c8.js
  38. 0 0
      dist/assets/goodsTransfer-IVrvAF2y.js
  39. 1 1
      dist/assets/goodsTransfer-LOjXhYsu.js
  40. 0 0
      dist/assets/goodsUnderstock-D4jnoaN1.js
  41. 0 0
      dist/assets/goodsUnderstockAdd-K7Xx8rQM.js
  42. 1 1
      dist/assets/index-B5uyx-Ig.js
  43. 0 0
      dist/assets/index-GCZD4BFP.js
  44. 0 0
      dist/assets/menuManage-DOKv93Fo.js
  45. 1 1
      dist/assets/menus--MQrcQOR.js
  46. 0 0
      dist/assets/orderList-BcCKHlNz.js
  47. 0 0
      dist/assets/outbound-Bx-uGVL_.js
  48. 0 0
      dist/assets/outbound-CPGUeXyG.js
  49. 0 0
      dist/assets/overseasList-CpXJa8xC.js
  50. 0 0
      dist/assets/overseasWarehouseAuth-BfjEFsqk.js
  51. 1 1
      dist/assets/package-D5xJ3a7L.js
  52. 0 0
      dist/assets/packageAdd-CV2nK3LQ.js
  53. 0 0
      dist/assets/packageList-BnG_9Xen.js
  54. 0 0
      dist/assets/packagePermissions-CeChErh8.js
  55. 0 0
      dist/assets/platformLogin-MPWJcC1p.js
  56. 0 0
      dist/assets/print-CUJqWjfA.js
  57. 0 0
      dist/assets/purchaseOrder-D7Ib-Y74.js
  58. 0 0
      dist/assets/roleManage-SrxrJ3ef.js
  59. 0 0
      dist/assets/roleManageAdd-CyAwGCk_.js
  60. 1 1
      dist/assets/setting-CjsMgkQh.js
  61. 0 0
      dist/assets/smsTemplate-CNG1JAQb.js
  62. 0 0
      dist/assets/style-C2Hp25A5.js
  63. 0 0
      dist/assets/systemLog-BZGwvP4-.js
  64. 0 0
      dist/assets/systemMessage-DzKqTNzj.js
  65. 1 1
      dist/assets/templateManage-De-GUBrx.js
  66. 0 0
      dist/assets/warehouseList-DFMYUooE.js
  67. 0 0
      dist/assets/warehouseLocation-BkwphUr4.js
  68. 0 0
      dist/assets/warehouseLocation-Ct72Lnc7.js
  69. 0 0
      dist/assets/warehousing-D5-VMuaQ.js
  70. 0 0
      dist/assets/warehousing-RVNHyiPx.js
  71. 1 1
      dist/index.html
  72. 2 2
      src/api/login.ts
  73. 22 3
      src/layouts/app-layout.vue
  74. 2 2
      src/permission.js
  75. 1 0
      src/router/index.ts
  76. 1 1
      src/stores/modules/permission.js
  77. 258 0
      src/views/authorize.vue
  78. 4 7
      vite.config.ts

+ 1 - 1
.env

@@ -1,6 +1,6 @@
 VITE_API_URL=https://api.raycos.net
 #线下地址
 #http://192.168.1.178:9998
-#http://192.168.1.141:9998
+#http://192.168.1.141:8082
 #线上地址
 #https://api.raycos.net

+ 2 - 1
.env.test

@@ -1 +1,2 @@
-VITE_API_URL=https://apidoc.raycos.net
+VITE_API_URL=https://apidoc.raycos.net
+#https://apidoc.raycos.net

+ 1 - 1
dist/assets/Notify-C3D_ttob.js → dist/assets/Notify-Crr2YtjK.js

@@ -1 +1 @@
-import{d as x,r as b,o as S,f as t,i as c,w as u,j as g,H as M,aA as N,p as v,x as l,h as d,F as _,y as m,t as p}from"./index-B91o8cA_.js";const V={class:"bg-white p-2"},w=["onClick"],z=["onClick"],B=["onClick"],E=["onClick"],T=x({__name:"Notify",setup(F){let s=b("SYSTEM");const a=b({}),r=o=>{},C=(o,f)=>{s.value=o.props.name,y()},y=()=>{N(s.value).then(o=>{a.value=o})};return S(()=>{y()}),(o,f)=>{const i=v("el-tab-pane"),h=v("el-tabs");return l(),t("div",V,[c(h,{modelValue:g(s),"onUpdate:modelValue":f[0]||(f[0]=e=>M(s)?s.value=e:s=e),type:"card",class:"demo-tabs",onTabClick:C},{default:u(()=>[c(i,{label:"系统消息",name:"SYSTEM"},{default:u(()=>[d("ul",null,[(l(!0),t(_,null,m(a.value.records,(e,n)=>(l(),t("li",{key:n,onClick:k=>r(e),class:"mt-1 mb-1",style:{"font-size":"16px"}},p(e.content),9,w))),128))])]),_:1}),c(i,{label:"短息消息",name:"SMS"},{default:u(()=>[d("ul",null,[(l(!0),t(_,null,m(a.value.records,(e,n)=>(l(),t("li",{key:n,onClick:k=>r(e),class:"mt-1 mb-1",style:{"font-size":"16px"}},p(e.content),9,z))),128))])]),_:1}),c(i,{label:"邮件消息",name:"MAIL"},{default:u(()=>[d("ul",null,[(l(!0),t(_,null,m(a.value.records,(e,n)=>(l(),t("li",{key:n,onClick:k=>r(e),class:"mt-1 mb-1",style:{"font-size":"16px"}},p(e.content),9,B))),128))])]),_:1}),c(i,{label:"公众号消息",name:"OFFICIAL"},{default:u(()=>[d("ul",null,[(l(!0),t(_,null,m(a.value.records,(e,n)=>(l(),t("li",{key:n,onClick:k=>r(e),class:"mt-1 mb-1",style:{"font-size":"16px"}},p(e.content),9,E))),128))])]),_:1})]),_:1},8,["modelValue"])])}}});export{T as default};
+import{d as x,r as b,o as S,f as t,i as c,w as u,j as g,H as M,aA as N,p as v,x as l,h as d,F as _,y as m,t as p}from"./index-GCZD4BFP.js";const V={class:"bg-white p-2"},w=["onClick"],z=["onClick"],B=["onClick"],E=["onClick"],T=x({__name:"Notify",setup(F){let s=b("SYSTEM");const a=b({}),r=o=>{},C=(o,f)=>{s.value=o.props.name,y()},y=()=>{N(s.value).then(o=>{a.value=o})};return S(()=>{y()}),(o,f)=>{const i=v("el-tab-pane"),h=v("el-tabs");return l(),t("div",V,[c(h,{modelValue:g(s),"onUpdate:modelValue":f[0]||(f[0]=e=>M(s)?s.value=e:s=e),type:"card",class:"demo-tabs",onTabClick:C},{default:u(()=>[c(i,{label:"系统消息",name:"SYSTEM"},{default:u(()=>[d("ul",null,[(l(!0),t(_,null,m(a.value.records,(e,n)=>(l(),t("li",{key:n,onClick:k=>r(e),class:"mt-1 mb-1",style:{"font-size":"16px"}},p(e.content),9,w))),128))])]),_:1}),c(i,{label:"短息消息",name:"SMS"},{default:u(()=>[d("ul",null,[(l(!0),t(_,null,m(a.value.records,(e,n)=>(l(),t("li",{key:n,onClick:k=>r(e),class:"mt-1 mb-1",style:{"font-size":"16px"}},p(e.content),9,z))),128))])]),_:1}),c(i,{label:"邮件消息",name:"MAIL"},{default:u(()=>[d("ul",null,[(l(!0),t(_,null,m(a.value.records,(e,n)=>(l(),t("li",{key:n,onClick:k=>r(e),class:"mt-1 mb-1",style:{"font-size":"16px"}},p(e.content),9,B))),128))])]),_:1}),c(i,{label:"公众号消息",name:"OFFICIAL"},{default:u(()=>[d("ul",null,[(l(!0),t(_,null,m(a.value.records,(e,n)=>(l(),t("li",{key:n,onClick:k=>r(e),class:"mt-1 mb-1",style:{"font-size":"16px"}},p(e.content),9,E))),128))])]),_:1})]),_:1},8,["modelValue"])])}}});export{T as default};

Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/SKUList-CB__McS3.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/accountTemplate-Btu-WkSN.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/addInventory-Bcq5zXbF.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/addOutbound-BAb7JLQX.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/administratorManage-DHavzZKZ.js


+ 0 - 0
dist/assets/authorize-B_SY1GJM.css


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/authorize-Czhk04MW.js


+ 1 - 1
dist/assets/basicSetting-BkABLMWO.js → dist/assets/basicSetting-B0Aq66-n.js

@@ -1 +1 @@
-import{a5 as a}from"./index-B91o8cA_.js";function n(e,t){return a({url:`admin/erp/warehouse/${e}`,method:"put",headers:{"Content-Type":"application/json"},data:t})}function s(e){return a({url:"admin/erp/warehouse",method:"post",headers:{"Content-Type":"application/json"},data:e})}function o(){return a({url:"admin/erp/warehouse/list-all",method:"get",loading:!1})}function u(e){return a({url:"admin/erp/warehouse",method:"get",loading:!1,params:e})}function i(e){return a({url:"/admin/systems/manager/admin-users/getUserByDept",method:"get",loading:!1,params:e})}export{s as a,i as b,n as e,o as g,u as w};
+import{a5 as a}from"./index-GCZD4BFP.js";function n(e,t){return a({url:`admin/erp/warehouse/${e}`,method:"put",headers:{"Content-Type":"application/json"},data:t})}function s(e){return a({url:"admin/erp/warehouse",method:"post",headers:{"Content-Type":"application/json"},data:e})}function o(){return a({url:"admin/erp/warehouse/list-all",method:"get",loading:!1})}function u(e){return a({url:"admin/erp/warehouse",method:"get",loading:!1,params:e})}function i(e){return a({url:"/admin/systems/manager/admin-users/getUserByDept",method:"get",loading:!1,params:e})}export{s as a,i as b,n as e,o as g,u as w};

Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/boxed-lockscreen-DDsAOeYz.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/boxed-lockscreen-De7sP7L8.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/boxed-signin-DdSOUot3.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/boxed-signup-zj29AJD8.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/branch-CF5kSG0d.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/category-BHkc5g2M.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/category-DpXsDR_B.js


Datei-Diff unterdrückt, da er zu groß ist
+ 1 - 1
dist/assets/companyInfo-Diwuiulo.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/companyList-Bk_P6vRW.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/configMsg-B9OyN6YS.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/dicData-DABGJTN7.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/dicData-DOD0O9pB.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/emailtemplate-KabAWzrW.js


+ 1 - 1
dist/assets/express-FEKwKsUZ.js → dist/assets/express-Bmb_lcHt.js

@@ -1 +1 @@
-import{a5 as s,am as o}from"./index-B91o8cA_.js";function r(e){return s({url:"admin/systems/logi-companies",method:"get",loading:!1,params:e})}function a(e){let t=e.formItems;return delete e.formItems,s({url:`admin/systems/logi-companies?${o.stringify(e)}`,method:"post",headers:{"Content-Type":"application/json"},data:t})}function m(e){return s({url:`admin/systems/logi-companies/${e}`,method:"delete"})}function d(e,t){let n=t.formItems;return delete t.formItems,s({url:`admin/systems/logi-companies/${e}?${o.stringify(t)}`,method:"put",headers:{"Content-Type":"application/json"},data:n})}function l(e,t){return s({url:`admin/systems/logi-companies/${e}`,method:"post",data:{disabled:t}})}export{a,m as d,d as e,r as g,l as o};
+import{a5 as s,am as o}from"./index-GCZD4BFP.js";function r(e){return s({url:"admin/systems/logi-companies",method:"get",loading:!1,params:e})}function a(e){let t=e.formItems;return delete e.formItems,s({url:`admin/systems/logi-companies?${o.stringify(e)}`,method:"post",headers:{"Content-Type":"application/json"},data:t})}function m(e){return s({url:`admin/systems/logi-companies/${e}`,method:"delete"})}function d(e,t){let n=t.formItems;return delete t.formItems,s({url:`admin/systems/logi-companies/${e}?${o.stringify(t)}`,method:"put",headers:{"Content-Type":"application/json"},data:n})}function l(e,t){return s({url:`admin/systems/logi-companies/${e}`,method:"post",data:{disabled:t}})}export{a,m as d,d as e,r as g,l as o};

Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/express-C1FYs2RL.js


+ 1 - 1
dist/assets/goods-Bo3MWOfJ.js → dist/assets/goods-B5eo1zzk.js

@@ -1 +1 @@
-import{a5 as o}from"./index-B91o8cA_.js";function d(t){return o({url:"/admin/erp/product/addProduct",method:"post",headers:{"Content-Type":"application/json"},data:t})}function a(t,e){return o({url:`/admin/erp/product/updateProduct/${t}`,method:"post",headers:{"Content-Type":"application/json"},data:e})}function u(t){return o({url:"/admin/erp/product",method:"get",params:t})}function i(t){return o({url:`/admin/erp/product/deletedProduct/${t}`,method:"post",headers:{"Content-Type":"application/json"}})}function c(t){const e={name:t.category_name,parent_id:t.parent_id?t.parent_id:"0",customSn:t.custom_sn,is_show:"YES"};return o({url:"admin/goods/categories",method:"post",data:e})}function s(t,e){const n={name:e.category_name,parent_id:e.parent_id?e.parent_id:"0",customSn:e.custom_sn};return o({url:`admin/goods/categories/${t}`,method:"put",data:n})}function p(t){return Array.isArray(t)&&(t=t.join(",")),o({url:`admin/goods/categories/${t}`,method:"delete"})}export{d as a,c as b,s as c,i as d,a as e,p as f,u as p};
+import{a5 as o}from"./index-GCZD4BFP.js";function d(t){return o({url:"/admin/erp/product/addProduct",method:"post",headers:{"Content-Type":"application/json"},data:t})}function a(t,e){return o({url:`/admin/erp/product/updateProduct/${t}`,method:"post",headers:{"Content-Type":"application/json"},data:e})}function u(t){return o({url:"/admin/erp/product",method:"get",params:t})}function i(t){return o({url:`/admin/erp/product/deletedProduct/${t}`,method:"post",headers:{"Content-Type":"application/json"}})}function c(t){const e={name:t.category_name,parent_id:t.parent_id?t.parent_id:"0",customSn:t.custom_sn,is_show:"YES"};return o({url:"admin/goods/categories",method:"post",data:e})}function s(t,e){const n={name:e.category_name,parent_id:e.parent_id?e.parent_id:"0",customSn:e.custom_sn};return o({url:`admin/goods/categories/${t}`,method:"put",data:n})}function p(t){return Array.isArray(t)&&(t=t.join(",")),o({url:`admin/goods/categories/${t}`,method:"delete"})}export{d as a,c as b,s as c,i as d,a as e,p as f,u as p};

+ 1 - 1
dist/assets/goodsExchange-gAmuS8ox.js → dist/assets/goodsExchange-CxLOr8W3.js

@@ -1 +1 @@
-import{a5 as t}from"./index-B91o8cA_.js";function r(e){return t({url:`/admin/erp/warehouseEntry/${e}`,method:"get",loaidng:!1})}function u(e){return t({url:`/admin/erp/warehouseOut/${e}`,method:"get",loaidng:!1})}function s(e){return t({url:"/admin/erp/warehouseEntry",method:"post",headers:{"Content-Type":"application/json"},data:e})}function d(e,n){return t({url:`/admin/erp/warehouseEntry/${e}`,method:"put",headers:{"Content-Type":"application/json"},data:n})}function i(e){return t({url:"/admin/erp/warehouseOut",method:"post",headers:{"Content-Type":"application/json"},data:e})}function h(e,n,a){return t({url:`/admin/erp/warehouseOut/getGoodByWarehouse/${n}/${a}`,method:"get",loaidng:!1,params:e})}function l(e){return t({url:"/admin/erp/warehouseOut",method:"get",loaidng:!1,params:e})}function p(e){return t({url:"/admin/erp/warehouseEntry",method:"get",loaidng:!1,params:e})}function g(e){return t({url:"/admin/systems/admin-users/info",method:"get",loaidng:!1,params:e})}function m(e,n){return t({url:`/admin/erp/warehouseOut/${e}`,method:"put",headers:{"Content-Type":"application/json"},data:n})}function c(e,n){return t({url:`/admin/erp/scancode/getProduct/${e}/${n}`,method:"get",loaidng:!1})}function f(e,n,a){return t({url:`/admin/erp/scancode/getsnCode/${e}/${n}/${a}`,method:"get",loaidng:!1})}function y(e){return t({url:`/admin/erp/order/getOneBySn/${e}`,method:"get",loaidng:!1})}function w(e){return t({url:"/admin/erp/scancode/skuRedis",method:"post",headers:{"Content-Type":"application/json"},data:e})}export{l as a,r as b,h as c,f as d,d as e,y as f,p as g,m as h,i,g as j,c as k,u as l,w as s,s as w};
+import{a5 as t}from"./index-GCZD4BFP.js";function r(e){return t({url:`/admin/erp/warehouseEntry/${e}`,method:"get",loaidng:!1})}function u(e){return t({url:`/admin/erp/warehouseOut/${e}`,method:"get",loaidng:!1})}function s(e){return t({url:"/admin/erp/warehouseEntry",method:"post",headers:{"Content-Type":"application/json"},data:e})}function d(e,n){return t({url:`/admin/erp/warehouseEntry/${e}`,method:"put",headers:{"Content-Type":"application/json"},data:n})}function i(e){return t({url:"/admin/erp/warehouseOut",method:"post",headers:{"Content-Type":"application/json"},data:e})}function h(e,n,a){return t({url:`/admin/erp/warehouseOut/getGoodByWarehouse/${n}/${a}`,method:"get",loaidng:!1,params:e})}function l(e){return t({url:"/admin/erp/warehouseOut",method:"get",loaidng:!1,params:e})}function p(e){return t({url:"/admin/erp/warehouseEntry",method:"get",loaidng:!1,params:e})}function g(e){return t({url:"/admin/systems/admin-users/info",method:"get",loaidng:!1,params:e})}function m(e,n){return t({url:`/admin/erp/warehouseOut/${e}`,method:"put",headers:{"Content-Type":"application/json"},data:n})}function c(e,n){return t({url:`/admin/erp/scancode/getProduct/${e}/${n}`,method:"get",loaidng:!1})}function f(e,n,a){return t({url:`/admin/erp/scancode/getsnCode/${e}/${n}/${a}`,method:"get",loaidng:!1})}function y(e){return t({url:`/admin/erp/order/getOneBySn/${e}`,method:"get",loaidng:!1})}function w(e){return t({url:"/admin/erp/scancode/skuRedis",method:"post",headers:{"Content-Type":"application/json"},data:e})}export{l as a,r as b,h as c,f as d,d as e,y as f,p as g,m as h,i,g as j,c as k,u as l,w as s,s as w};

+ 1 - 1
dist/assets/goodsInventory-BDaSUC8_.js → dist/assets/goodsInventory-2NVqbt9i.js

@@ -1 +1 @@
-import{a5 as t}from"./index-B91o8cA_.js";function a(n,o){return t({url:`admin/stock/inventory/${n}`,method:"post",headers:{"Content-Type":"application/json"},data:o})}function r(n){return t({url:"admin/stock/inventory",method:"post",headers:{"Content-Type":"application/json"},data:n})}function s(n,o){return t({url:`admin/stock/inventory/audit/${n}`,method:"post",data:o})}function d(n){return t({url:`admin/stock/inventory/${n}`,method:"get",loaidng:!1})}function i(n){return t({url:"admin/stock/inventory",method:"get",loaidng:!1,params:n})}function u(n){return t({url:`/admin/stock/inventory/syncStock/${n}`,method:"get",loaidng:!1})}function m(){return t({url:"/admin/systems/manager/admin-users/getUserByCompany",method:"get",loaidng:!1})}export{u as a,d as b,m as c,r as d,a as e,s as f,i as g};
+import{a5 as t}from"./index-GCZD4BFP.js";function a(n,o){return t({url:`admin/stock/inventory/${n}`,method:"post",headers:{"Content-Type":"application/json"},data:o})}function r(n){return t({url:"admin/stock/inventory",method:"post",headers:{"Content-Type":"application/json"},data:n})}function s(n,o){return t({url:`admin/stock/inventory/audit/${n}`,method:"post",data:o})}function d(n){return t({url:`admin/stock/inventory/${n}`,method:"get",loaidng:!1})}function i(n){return t({url:"admin/stock/inventory",method:"get",loaidng:!1,params:n})}function u(n){return t({url:`/admin/stock/inventory/syncStock/${n}`,method:"get",loaidng:!1})}function m(){return t({url:"/admin/systems/manager/admin-users/getUserByCompany",method:"get",loaidng:!1})}export{u as a,d as b,m as c,r as d,a as e,s as f,i as g};

Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/goodsInventory-BZtozqBK.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/goodsInventoryAdd-CC8zzjMs.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/goodsInventoryLoss-Bd0HHdyY.js


+ 1 - 1
dist/assets/goodsInventoryLoss-C8htzTaI.js → dist/assets/goodsInventoryLoss-DaDtQv6q.js

@@ -1 +1 @@
-import{a5 as o}from"./index-B91o8cA_.js";function n(t,e){return o({url:`admin/stock/damage/report/${t}`,method:"post",headers:{"Content-Type":"application/json"},data:e})}function s(t){return o({url:"admin/stock/damage/report",method:"post",headers:{"Content-Type":"application/json"},data:t})}function r(t,e){return o({url:`admin/stock/damage/report/audit/${t}`,method:"post",data:e})}function d(t){return o({url:`admin/stock/damage/report/${t}`,method:"get",loaidng:!1})}function i(t){return o({url:"admin/stock/damage/report",method:"get",loaidng:!1,params:t})}function u(t,e){return o({url:`/admin/stock/damage/report/submit/${t}`,method:"post",headers:{"Content-Type":"application/json"},data:e})}export{s as a,d as b,r as c,n as e,i as g,u as s};
+import{a5 as o}from"./index-GCZD4BFP.js";function n(t,e){return o({url:`admin/stock/damage/report/${t}`,method:"post",headers:{"Content-Type":"application/json"},data:e})}function s(t){return o({url:"admin/stock/damage/report",method:"post",headers:{"Content-Type":"application/json"},data:t})}function r(t,e){return o({url:`admin/stock/damage/report/audit/${t}`,method:"post",data:e})}function d(t){return o({url:`admin/stock/damage/report/${t}`,method:"get",loaidng:!1})}function i(t){return o({url:"admin/stock/damage/report",method:"get",loaidng:!1,params:t})}function u(t,e){return o({url:`/admin/stock/damage/report/submit/${t}`,method:"post",headers:{"Content-Type":"application/json"},data:e})}export{s as a,d as b,r as c,n as e,i as g,u as s};

Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/goodsInventoryLossAdd-C6CpXpRg.js


+ 1 - 1
dist/assets/goodsLend-B-VtD1CN.js → dist/assets/goodsLend-BE5ip8Zm.js

@@ -1 +1 @@
-import{a5 as a}from"./index-B91o8cA_.js";function n(e){return a({url:"/admin/erp/warehouse/area/query",method:"get",params:e})}function o(e){return a({url:"/admin/erp/warehouse/area/create ",method:"post",headers:{"Content-Type":"application/json"},data:e})}function p(e){return a({url:"/admin/erp/warehouse/area/update ",method:"post",headers:{"Content-Type":"application/json"},data:e})}function u(e){return a({url:"/admin/erp/warehouse/area/delete",method:"delete",headers:{"Content-Type":"application/json"},data:e})}function d(e){return a({url:"/admin/erp/warehouse/area/listAreaType",method:"get",loaidng:!1,params:e})}function s(e){return a({url:"/admin/erp/warehouse/area/createAreaType",method:"post",headers:{"Content-Type":"application/json"},data:e})}function i(e,r){return a({url:`/admin/erp/warehouse/area/updateAreaType/${e}`,method:"put",headers:{"Content-Type":"application/json"},data:r})}function h(e){return a({url:`/admin/erp/warehouse/area/removeAreaType/${e}`,method:"delete"})}export{s as a,o as c,u as d,i as e,d as g,n as q,h as r,p as u};
+import{a5 as a}from"./index-GCZD4BFP.js";function n(e){return a({url:"/admin/erp/warehouse/area/query",method:"get",params:e})}function o(e){return a({url:"/admin/erp/warehouse/area/create ",method:"post",headers:{"Content-Type":"application/json"},data:e})}function p(e){return a({url:"/admin/erp/warehouse/area/update ",method:"post",headers:{"Content-Type":"application/json"},data:e})}function u(e){return a({url:"/admin/erp/warehouse/area/delete",method:"delete",headers:{"Content-Type":"application/json"},data:e})}function d(e){return a({url:"/admin/erp/warehouse/area/listAreaType",method:"get",loaidng:!1,params:e})}function s(e){return a({url:"/admin/erp/warehouse/area/createAreaType",method:"post",headers:{"Content-Type":"application/json"},data:e})}function i(e,r){return a({url:`/admin/erp/warehouse/area/updateAreaType/${e}`,method:"put",headers:{"Content-Type":"application/json"},data:r})}function h(e){return a({url:`/admin/erp/warehouse/area/removeAreaType/${e}`,method:"delete"})}export{s as a,o as c,u as d,i as e,d as g,n as q,h as r,p as u};

Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/goodsLend-DvCT_GJi.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/goodsTransfer-0eqwV4c8.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/goodsTransfer-IVrvAF2y.js


+ 1 - 1
dist/assets/goodsTransfer-DqZGiogt.js → dist/assets/goodsTransfer-LOjXhYsu.js

@@ -1 +1 @@
-import{a5 as e}from"./index-B91o8cA_.js";function n(t){return e({url:`admin/erp/stockTransfer/${t}`,method:"get",loaidng:!1})}function o(t){return e({url:"admin/erp/stockTransfer",method:"post",headers:{"Content-Type":"application/json"},data:t})}function d(t,r){return e({url:`admin/erp/stockTransfer/${t}`,method:"put",headers:{"Content-Type":"application/json"},data:r})}function s(t){return e({url:"/admin/erp/productStock",method:"get",loaidng:!1,params:t})}function p(t){return e({url:"/admin/erp/product/updateWarnStock",method:"post",headers:{"Content-Type":"application/json"},data:t})}export{o as a,d as e,n as g,s as p,p as u};
+import{a5 as e}from"./index-GCZD4BFP.js";function n(t){return e({url:`admin/erp/stockTransfer/${t}`,method:"get",loaidng:!1})}function o(t){return e({url:"admin/erp/stockTransfer",method:"post",headers:{"Content-Type":"application/json"},data:t})}function d(t,r){return e({url:`admin/erp/stockTransfer/${t}`,method:"put",headers:{"Content-Type":"application/json"},data:r})}function s(t){return e({url:"/admin/erp/productStock",method:"get",loaidng:!1,params:t})}function p(t){return e({url:"/admin/erp/product/updateWarnStock",method:"post",headers:{"Content-Type":"application/json"},data:t})}export{o as a,d as e,n as g,s as p,p as u};

Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/goodsUnderstock-D4jnoaN1.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/goodsUnderstockAdd-K7Xx8rQM.js


+ 1 - 1
dist/assets/index-CzwU4Ujf.js → dist/assets/index-B5uyx-Ig.js

@@ -1,4 +1,4 @@
-import{d as Te,r as Dt,P as hi,o as ci,Q as di,R as gi,T as ui,U as Gt,V as pi,W as fi,_ as ut,x as ht,f as ct,h as A,X as St,c as Zt,i as j,w as st,j as Xt,t as Le,m as J,p as oe,v as xi,Y as bi,J as Pe}from"./index-B91o8cA_.js";const mi="/assets/images/profile-6.jpeg",vi="/assets/images/profile-7.jpeg",yi="/assets/images/profile-8.jpeg",wi="/assets/images/profile-9.jpeg",ki="/assets/images/profile-10.jpeg",Ai="/assets/images/product-headphones.jpg",Ci="/assets/images/product-shoes.jpg",ze="/assets/images/product-laptop.jpg",Si="/assets/images/product-camera.jpg",Li="/assets/images/profile-34.jpeg";function Pi(B){return B&&B.__esModule&&Object.prototype.hasOwnProperty.call(B,"default")?B.default:B}var le={exports:{}};/*!
+import{d as Te,r as Dt,R as hi,o as ci,T as di,U as gi,V as ui,W as Gt,X as pi,Y as fi,_ as ut,x as ht,f as ct,h as A,Z as St,c as Zt,i as j,w as st,j as Xt,t as Le,m as J,p as oe,v as xi,$ as bi,J as Pe}from"./index-GCZD4BFP.js";const mi="/assets/images/profile-6.jpeg",vi="/assets/images/profile-7.jpeg",yi="/assets/images/profile-8.jpeg",wi="/assets/images/profile-9.jpeg",ki="/assets/images/profile-10.jpeg",Ai="/assets/images/product-headphones.jpg",Ci="/assets/images/product-shoes.jpg",ze="/assets/images/product-laptop.jpg",Si="/assets/images/product-camera.jpg",Li="/assets/images/profile-34.jpeg";function Pi(B){return B&&B.__esModule&&Object.prototype.hasOwnProperty.call(B,"default")?B.default:B}var le={exports:{}};/*!
  * ApexCharts v3.45.2
  * (c) 2018-2024 ApexCharts
  * Released under the MIT License.

Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/index-GCZD4BFP.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/menuManage-DOKv93Fo.js


+ 1 - 1
dist/assets/menus-Cgx7s5sm.js → dist/assets/menus--MQrcQOR.js

@@ -1 +1 @@
-import{a5 as t}from"./index-B91o8cA_.js";function u(){return t({url:"admin/systems/menus/children",method:"get"})}function d(e){return t({url:"admin/systems/menus",method:"post",data:e})}function m(e,n){return t({url:`admin/systems/menus/${e}`,method:"put",data:n})}function r(e){return t({url:`admin/systems/menus/${e}`,method:"delete"})}export{d as a,r as d,m as e,u as g};
+import{a5 as t}from"./index-GCZD4BFP.js";function u(){return t({url:"admin/systems/menus/children",method:"get"})}function d(e){return t({url:"admin/systems/menus",method:"post",data:e})}function m(e,n){return t({url:`admin/systems/menus/${e}`,method:"put",data:n})}function r(e){return t({url:`admin/systems/menus/${e}`,method:"delete"})}export{d as a,r as d,m as e,u as g};

Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/orderList-BcCKHlNz.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/outbound-Bx-uGVL_.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/outbound-CPGUeXyG.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/overseasList-CpXJa8xC.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/overseasWarehouseAuth-BfjEFsqk.js


+ 1 - 1
dist/assets/package-CrA4AykA.js → dist/assets/package-D5xJ3a7L.js

@@ -1 +1 @@
-import{a5 as e}from"./index-B91o8cA_.js";function o(a){return e({url:"/admin/erp/companyPackage/createCompanyPackage",method:"post",headers:{"Content-Type":"application/json"},data:a})}function p(a,n){return e({url:`/admin/erp/companyPackage/updateCompanyPackage/${a}`,method:"post",headers:{"Content-Type":"application/json"},data:n})}function r(a){return e({url:"/admin/erp/companyPackage",method:"post",headers:{"Content-Type":"application/json"},data:a,needToken:!1})}function s(a){return e({url:`/admin/erp/companyPackage/disAbleUse/${a}`,method:"post",headers:{"Content-Type":"application/json"}})}export{o as a,p as e,r as p,s};
+import{a5 as e}from"./index-GCZD4BFP.js";function o(a){return e({url:"/admin/erp/companyPackage/createCompanyPackage",method:"post",headers:{"Content-Type":"application/json"},data:a})}function p(a,n){return e({url:`/admin/erp/companyPackage/updateCompanyPackage/${a}`,method:"post",headers:{"Content-Type":"application/json"},data:n})}function r(a){return e({url:"/admin/erp/companyPackage",method:"post",headers:{"Content-Type":"application/json"},data:a,needToken:!1})}function s(a){return e({url:`/admin/erp/companyPackage/disAbleUse/${a}`,method:"post",headers:{"Content-Type":"application/json"}})}export{o as a,p as e,r as p,s};

Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/packageAdd-CV2nK3LQ.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/packageList-BnG_9Xen.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/packagePermissions-CeChErh8.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/platformLogin-MPWJcC1p.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/print-CUJqWjfA.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/purchaseOrder-D7Ib-Y74.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/roleManage-SrxrJ3ef.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/roleManageAdd-CyAwGCk_.js


+ 1 - 1
dist/assets/setting-e7MSFUvs.js → dist/assets/setting-CjsMgkQh.js

@@ -1 +1 @@
-import{a5 as e}from"./index-B91o8cA_.js";function n(t){return e({url:"admin/system-logs",method:"get",loaidng:!1,params:t})}function s(){return e({url:"admin/erp/post/list-all",method:"get",loaidng:!1})}function d(t){return e({url:"admin/systems/dept/list",method:"get",params:t})}function i(t){return e({url:"admin/systems/dept/create",method:"post",headers:{"Content-Type":"application/json"},data:t})}function o(t){return e({url:"admin/systems/dept/update",method:"put",headers:{"Content-Type":"application/json"},data:t})}function r(t){return e({url:"admin/systems/dept/delete",method:"delete",params:t})}function l(t){return e({url:"admin/systems/dict-type/page",method:"get",params:t})}function u(t){return e({url:"admin/systems/dict-type/create",method:"post",headers:{"Content-Type":"application/json"},data:t})}function m(t){return e({url:"admin/systems/dict-type/update",method:"put",headers:{"Content-Type":"application/json"},data:t})}function p(t){return e({url:"admin/systems/dict-type/delete",method:"delete",params:t})}function c(t){return e({url:"admin/systems/dict-data/list-all-simple",method:"get",loaidng:!1,params:{dict_type:t}})}function y(t){return e({url:"admin/systems/dict-data/page",method:"get",loaidng:!1,params:t})}function g(t){return e({url:"admin/systems/dict-data/update",method:"put",headers:{"Content-Type":"application/json"},data:t})}function f(t){return e({url:"admin/systems/dict-data/create",method:"post",headers:{"Content-Type":"application/json"},data:t})}function h(t){return e({url:"admin/systems/dict-data/delete",method:"delete",params:t})}function D(){return e({url:"/admin/erp/warehouse/list-all",method:"get",loaidng:!1})}function T(t){return e({url:"/admin/systems/dict-data/page",method:"get",loaidng:!1,params:t})}export{T as a,c as b,d as c,l as d,y as e,p as f,D as g,h,m as i,u as j,g as k,f as l,n as m,s as n,r as o,o as p,i as q};
+import{a5 as e}from"./index-GCZD4BFP.js";function n(t){return e({url:"admin/system-logs",method:"get",loaidng:!1,params:t})}function s(){return e({url:"admin/erp/post/list-all",method:"get",loaidng:!1})}function d(t){return e({url:"admin/systems/dept/list",method:"get",params:t})}function i(t){return e({url:"admin/systems/dept/create",method:"post",headers:{"Content-Type":"application/json"},data:t})}function o(t){return e({url:"admin/systems/dept/update",method:"put",headers:{"Content-Type":"application/json"},data:t})}function r(t){return e({url:"admin/systems/dept/delete",method:"delete",params:t})}function l(t){return e({url:"admin/systems/dict-type/page",method:"get",params:t})}function u(t){return e({url:"admin/systems/dict-type/create",method:"post",headers:{"Content-Type":"application/json"},data:t})}function m(t){return e({url:"admin/systems/dict-type/update",method:"put",headers:{"Content-Type":"application/json"},data:t})}function p(t){return e({url:"admin/systems/dict-type/delete",method:"delete",params:t})}function c(t){return e({url:"admin/systems/dict-data/list-all-simple",method:"get",loaidng:!1,params:{dict_type:t}})}function y(t){return e({url:"admin/systems/dict-data/page",method:"get",loaidng:!1,params:t})}function g(t){return e({url:"admin/systems/dict-data/update",method:"put",headers:{"Content-Type":"application/json"},data:t})}function f(t){return e({url:"admin/systems/dict-data/create",method:"post",headers:{"Content-Type":"application/json"},data:t})}function h(t){return e({url:"admin/systems/dict-data/delete",method:"delete",params:t})}function D(){return e({url:"/admin/erp/warehouse/list-all",method:"get",loaidng:!1})}function T(t){return e({url:"/admin/systems/dict-data/page",method:"get",loaidng:!1,params:t})}export{T as a,c as b,d as c,l as d,y as e,p as f,D as g,h,m as i,u as j,g as k,f as l,n as m,s as n,r as o,o as p,i as q};

Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/smsTemplate-CNG1JAQb.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/style-C2Hp25A5.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/systemLog-BZGwvP4-.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/systemMessage-DzKqTNzj.js


+ 1 - 1
dist/assets/templateManage-BZNpokqe.js → dist/assets/templateManage-De-GUBrx.js

@@ -1 +1 @@
-import{a5 as t}from"./index-B91o8cA_.js";function p(e){return t({url:"/admin/erp/SmsMailTemplate",method:"get",loaidng:!1,params:e})}function i(e){return t({url:"/admin/erp/SmsMailTemplate/createTemplate",method:"post",headers:{"Content-Type":"application/json"},data:e})}function l(e,a){return t({url:`/admin/erp/SmsMailTemplate/updateTemplate/${e}`,method:"post",headers:{"Content-Type":"application/json"},data:a})}function o(e){return t({url:`/admin/erp/SmsMailTemplate/alterStatus/${e}`,method:"post",headers:{"Content-Type":"application/json"}})}function r(e,a){return t({url:`/admin/erp/SmsMailTemplate/delete/${e}`,method:"post",headers:{"Content-Type":"application/json"},data:a})}function s(e){return t({url:`/admin/erp/SmsMailTemplate/getSysNotBand/${e}`,method:"get",loaidng:!1})}export{s as a,i as b,o as c,r as d,l as e,p as g};
+import{a5 as t}from"./index-GCZD4BFP.js";function p(e){return t({url:"/admin/erp/SmsMailTemplate",method:"get",loaidng:!1,params:e})}function i(e){return t({url:"/admin/erp/SmsMailTemplate/createTemplate",method:"post",headers:{"Content-Type":"application/json"},data:e})}function l(e,a){return t({url:`/admin/erp/SmsMailTemplate/updateTemplate/${e}`,method:"post",headers:{"Content-Type":"application/json"},data:a})}function o(e){return t({url:`/admin/erp/SmsMailTemplate/alterStatus/${e}`,method:"post",headers:{"Content-Type":"application/json"}})}function r(e,a){return t({url:`/admin/erp/SmsMailTemplate/delete/${e}`,method:"post",headers:{"Content-Type":"application/json"},data:a})}function s(e){return t({url:`/admin/erp/SmsMailTemplate/getSysNotBand/${e}`,method:"get",loaidng:!1})}export{s as a,i as b,o as c,r as d,l as e,p as g};

Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/warehouseList-DFMYUooE.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/warehouseLocation-BkwphUr4.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/warehouseLocation-Ct72Lnc7.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/warehousing-D5-VMuaQ.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/assets/warehousing-RVNHyiPx.js


+ 1 - 1
dist/index.html

@@ -8,7 +8,7 @@
         <link rel="preconnect" href="https://fonts.googleapis.com" />
         <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
         <link href="https://fonts.googleapis.com/css2?family=Nunito:wght@400;500;600;700;800&display=swap" rel="stylesheet" />
-      <script type="module" crossorigin src="/assets/index-B91o8cA_.js"></script>
+      <script type="module" crossorigin src="/assets/index-GCZD4BFP.js"></script>
       <link rel="stylesheet" crossorigin href="/assets/index-BLv00JWp.css">
     </head>
 

+ 2 - 2
src/api/login.ts

@@ -8,7 +8,7 @@ import md5 from 'js-md5'
  * @returns {*}
  */
 export function login(params) {
-   /*  params.password = md5(params.password) */
+    /*  params.password = md5(params.password) */
     return request({
         url: 'admin/systems/admin-users/login',
         method: 'get',
@@ -24,7 +24,7 @@ export function login(params) {
  * @returns {*}
  */
 export function loginByFranchise(params) {
-/*     params.password = md5(params.password) */
+    /*     params.password = md5(params.password) */
     return request({
         url: `admin/shops/franchise/login`,
         method: 'get',

+ 22 - 3
src/layouts/app-layout.vue

@@ -421,16 +421,17 @@ const contract = () => {
 const expand = () => {
   sidebarShow.value = true;
 };
-console.log(store.state.permission);
+console.log(store.state.permission.routers);
 /* 监听 */
 const toPath = ref('');
 const toPathList = ref<{ name: any; path: string }[]>([]);
+const currentPath = ref(route.path); // 新增:存储当前路径
 watch(route, (to) => {
-  console.log(to.path);
   const secondSlashIndex = to.path.indexOf('/', to.path.indexOf('/') + 1);
   const valueBeforeSecondSlash = to.path.substring(0, secondSlashIndex);
   console.log(valueBeforeSecondSlash);
   toPath.value = to.path;
+  currentPath.value = to.path; // 新增:更新当前路径
   //如果路径不存在则添加路径
   if (!toPathList.value.some((item) => item.path === to.path)) {
     toPathList.value.push({ name: to.name || null, path: to.path });
@@ -448,7 +449,7 @@ const lastTenVisitedViews = computed(() => {
 });
 /* 删除标签 */
 const removeTag = (index: number) => {
-  if (toPathList.value.length > 1) {
+  /* if (toPathList.value.length > 1) {
     const tagToRemove = toPathList.value[index]; // 获取要删除的标签
     toPathList.value.splice(index, 1); // 删除标签
 
@@ -460,6 +461,24 @@ const removeTag = (index: number) => {
       router.push(previousTag.path); // 导航到上一个标签
     }
   }
+  // 保证最后一个标签为首页
+  if (toPathList.value.length === 1 && toPathList.value[0].path !== '/dashboard') {
+    toPathList.value.push({ name: t('home'), path: '/dashboard' });
+  } */
+  const tagToRemove = toPathList.value[index]; // 获取要删除的标签
+
+  if (tagToRemove.path === currentPath.value) {
+    // 如果删除的是当前路径的标签
+    if (toPathList.value.length > 1) {
+      const previousTag = toPathList.value[index - 1] || toPathList.value[index + 1]; // 获取上一个或下一个标签
+      if (previousTag) {
+        router.push(previousTag.path); // 导航到上一个或下一个标签
+      }
+    }
+  }
+
+  toPathList.value.splice(index, 1); // 删除标签
+
   // 保证最后一个标签为首页
   if (toPathList.value.length === 1 && toPathList.value[0].path !== '/dashboard') {
     toPathList.value.push({ name: t('home'), path: '/dashboard' });

+ 2 - 2
src/permission.js

@@ -5,7 +5,7 @@ import 'nprogress/nprogress.css' // Progress 进度条样式 */
 import { ElMessage } from 'element-plus'
 import Storage from '@/utils/storage'
 
-const whiteList = ['/login', '/boxed-signup','/platformLogin']
+const whiteList = ['/login', '/boxed-signup','/platformLogin','/authorize']
 
 let toFirstRoute = function getTopRoutePath(router, next) {
   const excludes = [
@@ -17,7 +17,7 @@ let toFirstRoute = function getTopRoutePath(router, next) {
     '/login',
     '/cashier/login',
     '/boxed-signup',
-    '/payType'
+    '/payType','/authorize'
   ]
   const paths = router.getRoutes().map(item => item.path)
   const path = paths.filter(item => !excludes.includes(item) && item.indexOf('/:') === -1)[0]

+ 1 - 0
src/router/index.ts

@@ -9,6 +9,7 @@ const constantRouterMap: RouteRecordRaw[] = [
     { path: '/platformLogin', component: () => import('@/views/auth/platformLogin.vue'), meta: { layout: 'auth' } },
     { path: '/lockscreen', component: () => import('@/views/auth/boxed-lockscreen.vue'), meta: { layout: 'auth' } },
     { path: '/boxed-signup', component: () => import('@/views/auth/boxed-signup.vue'), meta: { layout: 'auth' } },
+    { path: '/authorize', component: () => import('@/views/authorize.vue'), meta: { layout: 'auth' } },
 ];
 
 const router = createRouter({

+ 1 - 1
src/stores/modules/permission.js

@@ -13,7 +13,7 @@ const permission = {
     SET_ROUTERS: (state, routers) => {
       state.addRouters = routers
       state.routers = constantRouterMap.concat(routers)
-      console.log(state.routers);
+      console.log('constantRouterMap:',constantRouterMap);
     },
     SET_ROUTERS_ALL: (state, routers) => {
       state.routersAlls = routers

+ 258 - 0
src/views/authorize.vue

@@ -0,0 +1,258 @@
+<template>
+  <!-- <div>
+    <table>
+      <thead>
+        <tr>
+          <td>卖家平台</td>
+          <td>URL</td>
+        </tr>
+      </thead>
+      <tbody>
+        <tr>
+          <td colspan="2">北美洲</td>
+        </tr>
+        <tr v-for="(region, index) in regions" :key="index">
+          <td>{{ region.name }}</td>
+          <td class="url">{{ region.url }}</td>
+          <td>
+            <button @click="authorize(region.url)">授权</button>
+          </td>
+        </tr>
+      </tbody>
+    </table>
+  </div> -->
+  <div>
+    <div class="absolute inset-0">
+      <img src="/assets/images/auth/bg-gradient.png" alt="image" class="h-full w-full object-cover" />
+    </div>
+
+    <div class="relative flex items-center justify-center bg-[url(/assets/images/auth/map.png)] bg-cover bg-center bg-no-repeat dark:bg-[#060818] sm:px-16">
+      <img src="/assets/images/auth/coming-soon-object3.png" alt="image" class="absolute right-0 top-0 h-[300px]" />
+
+      <div
+        class="relative w-full max-w-[870px] rounded-md bg-[linear-gradient(45deg,#fff9f9_0%,rgba(255,255,255,0)_25%,rgba(255,255,255,0)_75%,_#fff9f9_100%)] p-2 dark:bg-[linear-gradient(52.22deg,#0E1726_0%,rgba(14,23,38,0)_18.66%,rgba(14,23,38,0)_51.04%,rgba(14,23,38,0)_80.07%,#0E1726_100%)]"
+      >
+        <div class="relative flex flex-col justify-center rounded-md bg-white/60 backdrop-blur-lg dark:bg-black/50 px-6 lg:min-h-[758px] py-20">
+          <div class="absolute top-6 start-6"></div>
+
+          <div class="mx-auto w-full max-w-[440px]">
+            <div class="mb-10">
+              <h1 class="text-3xl font-extrabold uppercase !leading-snug text-primary md:text-4xl">{{ '授权-沙盒' }}</h1>
+            </div>
+            <el-form :model="AuthorizationForm" :rules="loginRules" ref="AuthorizationFormRef" class="login-input" label-width="120px">
+              <el-form-item :label="$t('店铺名称') + ':'" prop="store_name">
+                <el-input v-model="AuthorizationForm.store_name" :placeholder="$t('卖家自定义,以做区分')" autofocus clearable>
+                  <template v-slot:prefix>
+                    <svg-icon class="el-input__icon" icon-class="user" />
+                  </template>
+                </el-input>
+              </el-form-item>
+              <el-form-item :label="$t('平台账号') + ':'" prop="platform_account">
+                <el-input v-model="AuthorizationForm.platform_account" :placeholder="$t('卖家平台上的账号')" autofocus clearable>
+                  <template v-slot:prefix>
+                    <svg-icon class="el-input__icon" icon-class="user" />
+                  </template>
+                </el-input>
+              </el-form-item>
+              <el-form-item :label="$t('区域') + ':'" prop="region">
+                <el-select v-model="AuthorizationForm.region" placeholder="请选择区域" @change="handleRegionChange">
+                  <el-option v-for="(item, index) in regionList" :key="index" :label="item.label" :value="item.value"></el-option>
+                </el-select>
+              </el-form-item>
+              <el-form-item :label="$t('站点') + ':'" prop="site">
+                <el-checkbox v-model="AuthorizationForm.checkAll" @change="handleCheckAllChange">全选</el-checkbox>
+                <div style="margin: 15px 0"></div>
+                <el-checkbox-group v-model="AuthorizationForm.site" @change="handleCheckedCitiesChange">
+                  <el-checkbox v-for="city in cityOptions" :label="city" :key="city">{{ city }}</el-checkbox>
+                </el-checkbox-group>
+              </el-form-item>
+              <el-form-item :label="$t('店铺类型') + ':'" prop="store_type">
+                <el-radio-group v-model="AuthorizationForm.store_type">
+                  <el-radio label="1">跨境</el-radio>
+                  <el-radio label="2">本土</el-radio>
+                </el-radio-group>
+              </el-form-item>
+              <el-form-item :label="$t('店铺模式') + ':'" prop="store_model">
+                <el-checkbox-group v-model="AuthorizationForm.store_model">
+                  <el-checkbox label="1">FBM</el-checkbox>
+                  <el-checkbox label="2">FBA</el-checkbox>
+                </el-checkbox-group>
+              </el-form-item>
+              <el-form-item>
+                <el-button type="primary" :loading="loading" class="btn" @click="submit()">
+                  {{ $t('确定') }}
+                </el-button>
+              </el-form-item>
+            </el-form>
+          </div>
+        </div>
+      </div>
+    </div>
+  </div>
+</template>
+  
+  <script lang="ts" setup>
+import { computed, onMounted, reactive, ref, Ref } from 'vue';
+import Storage from '@/utils/storage';
+import { useStore } from 'vuex';
+import { useI18n } from 'vue-i18n';
+import { v4 as uuidv4 } from 'uuid';
+import { ElMessage, FormInstance } from 'element-plus';
+import axios from 'axios';
+
+const { t } = useI18n();
+const store = useStore();
+const i18n = reactive(useI18n());
+const AuthorizationForm = ref<any>({
+  store_name: '',
+  platform_account: '',
+  region: 'https://sellingpartnerapi-na.amazon.com',
+  site: ['美国', '加拿大', '墨西哥', '巴西'],
+  store_type: '1',
+  store_model: ['1'],
+  checkAll: false,
+});
+/* 区域列表 */
+const regionList = ref([
+  { label: '北美', value: 'https://sellingpartnerapi-na.amazon.com', cities: ['美国', '加拿大', '墨西哥', '巴西'] },
+  { label: '欧洲', value: 'https://sellingpartnerapi-eu.amazon.com', cities: ['英国', '德国', '法国', '意大利', '西班牙'] },
+  { label: '远东', value: 'https://sellingpartnerapi-fe.amazon.com', cities: ['日本', '澳大利亚', '新加坡'] },
+]);
+const loading = ref(false);
+const loginRules = ref({
+  store_name: [{ required: true, message: '请输入店铺名称', trigger: 'blur' }],
+  platform_account: [{ required: true, message: '请输入平台账号', trigger: 'blur' }],
+  region: [{ required: true, message: '请选择区域', trigger: 'change' }],
+  site: [{ type: 'array', required: true, message: '请至少选择一个站点', trigger: 'change' }],
+  store_type: [{ required: true, message: '请选择店铺类型', trigger: 'change' }],
+  store_model: [{ type: 'array', required: true, message: '请至少选择一个店铺模式', trigger: 'change' }],
+});
+const cityOptions = ref<string[]>([]);
+
+// ... (other code remains unchanged) ...
+onMounted(() => {
+  handleRegionChange(AuthorizationForm.value.region);
+});
+const handleRegionChange = (value: string) => {
+  const selectedRegion = regionList.value.find((region) => region.value === value);
+  if (selectedRegion) {
+    cityOptions.value = selectedRegion.cities;
+    AuthorizationForm.value.site = [...selectedRegion.cities];
+    AuthorizationForm.value.checkAll = true;
+  } else {
+    cityOptions.value = [];
+    AuthorizationForm.value.site = [];
+    AuthorizationForm.value.checkAll = false;
+  }
+};
+
+const handleCheckAllChange = (val: boolean) => {
+  AuthorizationForm.value.site = val ? cityOptions.value : [];
+};
+
+const handleCheckedCitiesChange = (value: string[]) => {
+  const checkedCount = value.length;
+  AuthorizationForm.value.checkAll = checkedCount === cityOptions.value.length;
+};
+
+const AuthorizationFormRef = ref();
+/* 授权 */
+const submit = async () => {
+  if (!AuthorizationFormRef.value) return;
+
+  try {
+    await new Promise<void>((resolve, reject) => {
+      (AuthorizationFormRef.value as any).validate((valid: boolean) => {
+        if (valid) {
+          resolve();
+        } else {
+          reject(new Error('Please fill in all required fields'));
+        }
+      });
+    });
+
+    loading.value = true;
+    const uuid = uuidv4();
+
+    // Prepare the form data
+    const formData = {
+      ...AuthorizationForm.value,
+      uuid: uuid,
+      site: AuthorizationForm.value.site.join(','),
+      store_model: AuthorizationForm.value.store_model.join(','),
+    };
+
+    // Make a POST request to the API https://apisaas.raycos.net 192.168.1.141:8082
+    const response = await axios.post('https://apisaas.raycos.net/erp/store/add', formData, {
+      headers: {
+        'Content-Type': 'application/json',
+        /* ' Access-Control-Allow-Origin': '*' */
+      },
+    });
+
+    if (response.data.success) {
+      const authUrl = generateAuthUrl(formData.region, uuid);
+      window.open(authUrl, '_blank');
+      ElMessage.success('提交成功');
+    } else {
+      ElMessage.error(response.data.message || '提交失败');
+    }
+  } catch (error) {
+    console.error('Authorization error:', error);
+    if (error instanceof Error) {
+      ElMessage.error(error.message);
+    } else {
+      ElMessage.error('授权过程中发生错误');
+    }
+  } finally {
+    loading.value = false;
+  }
+};
+
+const generateAuthUrl = (region: string, uuid: string) => {
+  const baseUrl = region;
+  const applicationId = 'amzn1.sp.solution.b50697a2-e3d3-47e0-8de3-9ae03fbdcd9b';
+  return `${baseUrl}/apps/authorize/consent?application_id=${applicationId}&state=${uuid}&version=beta`;
+};
+/* export default {
+  name: 'AmazonAuthorization',
+  data() {
+    return {
+      id_: 'amzn1.sp.solution.b50697a2-e3d3-47e0-8de3-9ae03fbdcd9b',
+      regions: [
+        { name: '加拿大', url: 'https://sellercentral.amazon.ca' },
+        { name: '美国', url: 'https://sellercentral.amazon.com' },
+        { name: '墨西哥', url: 'https://sellercentral.amazon.com.mx' },
+        { name: '巴西', url: 'https://sellercentral.amazon.com.br' },
+        { name: '西班牙', url: 'https://sellercentral-europe.amazon.com' },
+        { name: '英国', url: 'https://sellercentral-europe.amazon.com' },
+        { name: '法国', url: 'https://sellercentral-europe.amazon.com' },
+        { name: '荷兰', url: 'https://sellercentral.amazon.nl' },
+        { name: '德国', url: 'https://sellercentral-europe.amazon.com' },
+        { name: '意大利', url: 'https://sellercentral-europe.amazon.com' },
+        { name: '瑞典', url: 'https://sellercentral.amazon.se' },
+        { name: '南非', url: 'https://sellercentral.amazon.co.za' },
+        { name: '波兰', url: 'https://sellercentral.amazon.pl' },
+        { name: '埃及', url: 'https://sellercentral.amazon.eg' },
+        { name: '土耳其', url: 'https://sellercentral.amazon.com.tr' },
+        { name: '沙特阿拉伯', url: 'https://sellercentral.amazon.sa' },
+        { name: '阿联酋', url: 'https://sellercentral.amazon.ae' },
+        { name: '印度', url: 'https://sellercentral.amazon.in' },
+        { name: '比利时', url: 'https://sellercentral.amazon.com.be' },
+        { name: '新加坡', url: 'https://sellercentral.amazon.sg' },
+        { name: '澳大利亚', url: 'https://sellercentral.amazon.com.au' },
+        { name: '日本', url: 'https://sellercentral.amazon.co.jp' },
+      ],
+    };
+  },
+  methods: {
+    authorize(url) {
+      window.open(`${url}/apps/authorize/consent?application_id=${this.id_}&version=beta`);
+    },
+  },
+}; */
+</script>
+  
+  <style scoped>
+/* Add your styles here if needed */
+</style>

+ 4 - 7
vite.config.ts

@@ -36,16 +36,13 @@ export default defineConfig({
     server: {
         host: '0.0.0.0',
         port: 5173,
-        // 是否开启 https
         https: false,
-        // 设置反向代理,跨域
         proxy: {
-            '/api1': {
-                // 后台地址
-                target: 'http://127.0.0.1:8990/',
+            '/api': {
+                target: 'http://192.168.1.141:18082',
                 changeOrigin: true,
-                rewrite: path => path.replace(/^\/api1/, '')
+                rewrite: (path) => path.replace(/^\/api/, ''),
             },
-        }
+        },
     },
 });

Einige Dateien werden nicht angezeigt, da zu viele Dateien in diesem Diff geändert wurden.