huang_an 2 лет назад
Родитель
Сommit
6ac70b2037
2 измененных файлов с 52 добавлено и 10 удалено
  1. 6 5
      src/App.vue
  2. 46 5
      src/api/saleOrder/index.js

+ 6 - 5
src/App.vue

@@ -6,21 +6,22 @@
 
 <script>
   import { updateDocumentTitle } from '@/utils/document-title-util';
-  import { getPageList } from '@/api/saleOrder';
+  import { getPageList, getWorkerOrderList } from '@/api/saleOrder';
 
   export default {
     name: 'App',
-    created () {
+    created() {
       console.log(
         '我是-----------aps----应用------------------------------------'
       );
       // 恢复主题
       this.$store.dispatch('theme/recoverTheme');
       getPageList({ status: [1], size: 10, pageNum: 1 });
+      getWorkerOrderList();
     },
     methods: {
       /* 路由切换更新浏览器标题 */
-      setDocumentTitle () {
+      setDocumentTitle() {
         updateDocumentTitle(
           this.$route,
           (key) => this.$t(key),
@@ -29,10 +30,10 @@
       }
     },
     watch: {
-      '$i18n.locale' () {
+      '$i18n.locale'() {
         this.setDocumentTitle();
       },
-      $route () {
+      $route() {
         this.setDocumentTitle();
       }
     }

+ 46 - 5
src/api/saleOrder/index.js

@@ -10,6 +10,49 @@ export async function importFile(data) {
   return Promise.reject(res.data); //报错处理
 }
 
+// 获取工单处理条数
+export async function getWorkerOrderList(data) {
+  const res = await request.get(`/eam/PdaWorkOrder/statistics`);
+  if (res.data.code == 0) {
+    if (store.state.user.menus?.length) {
+      for (const p of store.state.user.menus) {
+        if (p.path === '/tickets') {
+          store.dispatch('user/setMenuBadge', {
+            path: '/tickets',
+            value: res.data.data.total || 0,
+            color: 'danger'
+          });
+          break;
+        }
+      }
+    } else {
+      const unwatch = Vue.prototype.$watch(
+        '$store.state.user.menus',
+        () => {
+          if (store.state.user.menus?.length) {
+            for (const p of store.state.user.menus) {
+              if (p.path === '/tickets') {
+                store.dispatch('user/setMenuBadge', {
+                  path: '/tickets',
+                  value: res.data.data.total || 0,
+                  color: 'danger'
+                });
+                break;
+              }
+            }
+            unwatch();
+          }
+        },
+        {
+          immediate: true
+        }
+      );
+    }
+    return res.data.data;
+  }
+  return Promise.reject(new Error(res.data.message));
+}
+
 // 获取销售订单列表
 export async function getPageList(data) {
   const res = await request.post(`/aps/salesorder/page`, data);
@@ -68,9 +111,9 @@ export async function productionToPlan(data) {
 }
 
 // 生产版本列表
-export async function versionPage (params) {
+export async function versionPage(params) {
   let par = new URLSearchParams(params);
-  const res = await request.get( `/main/produceversion/page?` + par );
+  const res = await request.get(`/main/produceversion/page?` + par);
   if (res.data.code == 0) {
     return res.data.data;
   }
@@ -140,16 +183,14 @@ export async function getPlanProductVersion(code) {
   return Promise.reject(new Error(res.data.message));
 }
 
-
 // 选择工艺路线
-export async function routeList (params)  {
+export async function routeList(params) {
   const res = await request.get('/main/producerouting/page', { params });
   if (res.data.code == 0) {
     return res.data.data;
   }
 }
 
-
 // 获取订单详情
 export async function getOrderDetail(code) {
   const res = await request.get(`/aps/salesorder/getByCode/${code}`);