刘洋 9 maanden geleden
bovenliggende
commit
330e09ec67

+ 8 - 0
src/config/constants.js

@@ -275,3 +275,11 @@ export const DEVICE_TRANSPORT_METHOD = {
   MAIL: '邮寄',
   OTHER: '其它',
 };
+
+const PROJECT_PROCESS = {
+  PREPARE: '准备',
+  SCAN: '扫描',
+  MARK: '评卷',
+  FINAL: '收尾',
+  FINISH: '已完成',
+};

+ 4 - 0
src/router/modules/sop.js

@@ -95,6 +95,10 @@ export default {
             icon: 'project-change',
           },
         },
+        {
+          name: 'ProjectMonitor',
+          path: '/sop/sop-manage/project-monitor',
+        },
       ],
     },
     {

+ 7 - 0
src/views/my-workbenches/workbenches/message-reminder/message-list.vue

@@ -17,6 +17,7 @@
               >未读</t-tag
             >
           </div>
+          <div class="m-time">{{ timestampFilter(item.sendTime, 'mm') }}</div>
         </div>
         <div class="m-body m-t-10px">
           <div class="m-content">{{ item.content }}</div>
@@ -124,6 +125,8 @@ import { MessagePlugin } from 'tdesign-vue-next';
 import ViolationFlowDialog from '@/views/sop/sop-monitor/violation-registration/flow-dialog.vue';
 import { getViolationBy, setMyMessagesRead } from '@/api/my-workbenches';
 import { sopListApi } from '@/api/sop';
+import { useWorkStore } from '@/store';
+const workStore = useWorkStore();
 
 const IS_CYTX = (item) => {
   return ['OFFICE_SOP', 'CLOUD_MARK_SOP'].includes(item.messageType);
@@ -168,6 +171,10 @@ const editSopFlowHandle = (row, is_cytx) => {
         showSopStepDialog.value = true;
         if (is_cytx && curSopData.value) {
           sessionStorage.setItem('switchSetup', row.setup);
+          setMyMessagesRead(row.id).then(() => {
+            workStore.updateWorkCounts();
+            row.readStatus = true;
+          });
         }
       } else {
         MessagePlugin.error('未找到对应的SOP');

+ 17 - 0
src/views/resource-guard/person-guard/person-files/add-person-file-dialog.vue

@@ -166,6 +166,15 @@
             <t-textarea v-model="formData.remark" :maxlength="100"></t-textarea>
           </t-form-item>
         </t-col>
+        <t-col :span="12">
+          <t-form-item label="项目经验">
+            <t-textarea
+              class="project-experience"
+              v-model="formData.projectExperience"
+              :maxlength="200"
+            ></t-textarea>
+          </t-form-item>
+        </t-col>
       </t-row>
     </t-form>
     <template #foot>
@@ -221,6 +230,7 @@ const { formData, isEdit } = useClearDialog(
     authenticationScore: '',
     authenticationValidTime: '',
     remark: '',
+    projectExperience: '',
   },
   props,
   formRef,
@@ -401,3 +411,10 @@ const dialogOpened = async () => {
   getRoleList();
 };
 </script>
+<style lang="less">
+.project-experience {
+  & > .t-textarea__inner {
+    height: 130px !important;
+  }
+}
+</style>

+ 1 - 0
src/views/resource-guard/person-guard/person-files/index.vue

@@ -363,6 +363,7 @@ const columns = [
   },
   { colKey: 'authenticationStatus', title: '认证状态', cell: 'status' },
   { colKey: 'remark', title: '备注' },
+  { colKey: 'projectExperience', title: '备注' },
   {
     title: '管理',
     colKey: 'operate',

+ 5 - 0
src/views/sop/sop-manage/project-monitor/index.vue

@@ -0,0 +1,5 @@
+<template>
+  <div class="project-monitor flex flex-col h-full">项目监控 </div>
+</template>
+<script name="ProjectMonitor" setup></script>
+<style lang="less" scoped></style>