Просмотр исходного кода

Merge branch 'V0.0.4' of http://10.87.21.221:8000/jzyd_yyds/soc_app into V0.0.4

coys 1 год назад
Родитель
Сommit
b4ce07a1b8

+ 5 - 1
src/components/NavBar/index.vue

@@ -2,7 +2,7 @@
   <div class="nav-bar">
     <van-nav-bar
       :title="title"
-      left-arrow
+      :left-arrow="leftArrow"
       @click-left="goBack"
     />
   </div>
@@ -13,6 +13,10 @@ import {NavBar} from "vant";
 export default {
   components:{NavBar},
   props:{
+    leftArrow:{
+      type: Boolean,
+      default: true
+    },
     go:{
       type: Object,
       default: ()=>(

+ 1 - 1
src/components/dateCell/index.vue

@@ -74,7 +74,7 @@ export default {
         'date': {value: 'YYYY-MM-DD'},
         'year-month':{ value: 'YYYY-MM'},
         'month-day': {value: 'MM-DD'},
-        'datetime':{ value: 'YYYY-MM-DD HH:mm:ss'},
+        'datetime':{ value: 'YYYY-MM-DD HH:mm'},
       },
       label:'',
     }

+ 2 - 2
src/components/layouts/index.vue

@@ -22,7 +22,7 @@ export default {
       include: [],
       tabTars: [
         {
-          title: '工作台',
+          title: '待办',
           to: {
             name: 'works'
           },
@@ -60,7 +60,7 @@ export default {
   },
   watch: {
     $route(to, from) {
-      
+
       //如果 要 to(进入) 的页面是需要 keepAlive 缓存的,把 name push 进 include数组
       if (to.meta.keepAlive) {
         !this.include.includes(to.name) && this.include.push(to.name);

+ 2 - 2
src/router/router.config.js

@@ -35,7 +35,7 @@ export let routers = [
     component: () => import('@/views/menu/monitoringCall/components/consultInfo'),
     meta: { title: '监控调阅', keepAlive: true }
   },
-  
+
   {
     path: '/Addtraining/:id',
     name: 'Addtraining',
@@ -104,7 +104,7 @@ export let routers = [
         path: '/works',
         name: 'works',
         component: () => import('@/views/home/works'),
-        meta: { title: '工作台', keepAlive: false,deep:0.5 }
+        meta: { title: '待办', keepAlive: false,deep:0.5 }
       },
       {
         path: '/menu',

+ 2 - 2
src/views/home/menu.vue

@@ -1,6 +1,6 @@
 <template>
   <div class="menu-container">
-    <top-bar></top-bar>
+    <nav-bar :leftArrow="false"></nav-bar>
 
     <div class="menu-list">
       <Scroll ref="Scroll" :pullupDown="false" :pullup="false">
@@ -91,7 +91,7 @@ export default {
 }
 .menu-list {
   -padding: 30px 0 0 0;
-  height: calc(100vh - 400px);
+  height: calc(100vh - 194px);
   overflow: auto;
 }
 .menu-list-item {

+ 7 - 7
src/views/home/works.vue

@@ -1,6 +1,6 @@
 <template>
   <div class="index-container">
-    <top-bar ref="topbar"></top-bar>
+    <nav-bar :leftArrow="false"></nav-bar>
 
     <!-- 步骤条 -->
     <van-tabs class="tab-tabs" color="#008cd6" @click="tabClickHandler" v-if="workList && workList.length > 0">
@@ -11,7 +11,7 @@
         :key="i.taskType"
         :badge="i.nums"
       >
-     
+
       <template v-for="item in workList" >
         <!-- 列表 -->
         <div class="cellMargin"  v-if="item.taskType==i.taskType" :key="item.taskType">
@@ -22,7 +22,7 @@
             is-link
             :to="{ path: worksLink(3, item.taskType) }"
             :id="worksLink(1, item.taskType)"
-            
+
           >
             <!-- 使用 title 插槽来自定义标题 -->
             <template #title>
@@ -35,7 +35,7 @@
             <!-- <van-empty description="暂无数据" /> -->
             <van-cell-group >
               <van-cell
-              
+
                 @click.stop="isFalgHandler(i, item.taskType, item.id)"
                 v-for="(i, index) in item.dataList"
                 :key="index"
@@ -67,14 +67,14 @@
           </div>
         </div>
       </template>
-        
+
       </van-tab>
     </van-tabs>
 
-   
+
       <!-- 扫描弹框 -->
       <scandialog ref="scandialog" @input="resultImg" @changeNFC="getNFC"></scandialog>
-    
+
   </div>
 </template>
 

+ 3 - 0
src/views/menu/message/index.vue

@@ -287,7 +287,10 @@ export default {
     min-height: 40px;
     overflow: auto;
     >p{
+      text-indent: 2em;
       word-break: break-word;
+      white-space: pre-wrap;
+      text-align: justify;
       width: 100%;
       color: #777;
     }

+ 30 - 6
src/views/menu/resumption/detail.vue

@@ -139,7 +139,7 @@
             :key="item.areaId"
             :value="item.points.length + '项'"
           >
-            <div v-for="(point, index) in item.points">
+            <div v-for="(point, index) in item.points" :key="index">
               <van-cell>
                 <template #title>
                   <pre>{{ point.pointName }}</pre>
@@ -723,6 +723,7 @@ export default {
         for (let i = 0; i < this.checks.length; i++) {
           for (let j = 0; j < this.checks[i].points.length; j++) {
             let point =  this.checks[i].points[j];
+            let item = this.checks[i];
             if (point.dataStatus === 1) {
               if( point.required === 0){
                 //如果不是必填内容
@@ -736,7 +737,22 @@ export default {
               }
             } else {
               if (point.resValue === 1) {
-                if (!point.rectificationDeadline || !point.resRemark) {
+                if (!point.rectificationDeadline) {
+                  this.changeSwitch()
+                  this.areas.forEach((area, i) => {
+                    if (area.areaId === item.areaId) {
+                      this.activeArea(area, i)
+                      //切换后验证表单
+                      this.$refs.resumption_form.validate()
+                      this.$toast.fail({
+                        message: '请选择整改期限!',
+                        position: 'top'
+                      })
+                    }
+                  })
+                  throw new Error('存在未编辑完成履职项,无法提交')
+                }
+                if(!point.resRemark){
                   this.changeSwitch()
                   this.areas.forEach((area, i) => {
                     if (area.areaId === item.areaId) {
@@ -752,11 +768,19 @@ export default {
                   throw new Error('存在未编辑完成履职项,无法提交')
                 }
                 if(point.imgs.length < 1){
-                  this.$toast.fail({
-                    message: '请拍照上传异常图片!',
-                    position: 'top'
+                  this.changeSwitch()
+                  this.areas.forEach((area, i) => {
+                    if (area.areaId === item.areaId) {
+                      this.activeArea(area, i)
+                      //切换后验证表单
+                      this.$refs.resumption_form.validate()
+                      this.$toast.fail({
+                        message: '请拍照上传异常图片!',
+                        position: 'top'
+                      })
+                      throw new Error('请上传异常图片!');
+                    }
                   })
-                  throw new Error('请上传异常图片!');
                 }
               }
             }

+ 14 - 2
src/views/menu/resumption/list.vue

@@ -17,7 +17,7 @@
                     :title="v.planName"
                     :label="formatTime(v.planStartTime,v.planEndTime,'HH:mm')"
                     is-link
-                    :to="{path:path,query:{id:v.id,enable:1,taskDate:date}}"
+                    @click="onClick(path,v.id,date,v.planStartTime)"
                     :value-class="`title-orange`">
                     <template #right-icon>
                       <span :style="{ color: getState(getDictLabel(v.status, 'resumption_status')) }">
@@ -77,7 +77,7 @@
                     :title="v.planName"
                     :label="formatTime(v.planStartTime,v.planEndTime,'YYYY-MM-DD')"
                     is-link
-                    :to="{path:path,query:{id:v.id,enable:1,taskDate:date}}"
+                    @click="onClick(path,v.id,date,v.planStartTime)"
                     :value-class="`title-orange`">
                     <template #right-icon>
                       <span :style="{ color: getState(getDictLabel(v.status, 'resumption_status')) }">
@@ -190,6 +190,18 @@ export default {
     })
   },
   methods:{
+    onClick(path,id,date,planStartTime){
+      let now = new Date();
+      let start = new Date(planStartTime);
+      if(now > start){
+        this.$router.push({path:path,query:{id:id,enable:1,taskDate:date}})
+      }else{
+        this.$toast.fail({
+          message: '任务未到开始时间!',
+          position: 'top'
+        })
+      }
+    },
     getState(state) {
       switch (state) {
         case '待履职':

+ 5 - 2
src/views/menu/visitRecord/add.vue

@@ -70,7 +70,7 @@
                 <uploader :maxCount="2" v-model="formData.checkImage"/>
               </van-cell>
             </div>
-            <date-cell required title="到达时间" :max-date="maxData" v-model="formData.arrivalTime" date-type="datetime" />
+            <date-cell required title="到达时间" :min-date="selectedUser.startTime"  :max-date="maxDate" v-model="formData.arrivalTime" date-type="datetime" />
 <!--            <date-cell title="离开时间" :max-date="maxData" v-model="formData.departureTime" date-type="datetime" />-->
           </div>
           <div class="big-btn-box" >
@@ -96,7 +96,8 @@ export default {
   components: {Uploader, DateCell},
   data(){
     return {
-      maxData:new Date(),
+      minDate:null,
+      maxDate:new Date(),
       visitId:null,
       userList:[],
       selectedUser:{},
@@ -157,7 +158,9 @@ export default {
       })
     },
     getItemInfo(item){
+      item.startTime = new Date(item.startTime) || new Date();
       this.selectedUser = item;
+      this.formData.arrivalTime = null;
     },
     previewFile(file){
       this.openFilePreview(file);

+ 2 - 1
src/views/menu/visitRecord/index.vue

@@ -7,7 +7,7 @@
         <select-cell
           style="border-right: 1px solid #f5f5f5;"
           title="出入类型"
-          :isAll="true"
+          is-all
           :border="false"
           v-model="query.type"
           :data-list="getDictItem('out_in_type')"
@@ -28,6 +28,7 @@
             @click="clickItem(v.id)">
               <template #extra>
                 <van-button v-if="!v.departureTime" type="info" size="mini">登记离开时间</van-button>
+                <van-button v-else type="info" size="mini">查看详情</van-button>
               </template>
             <template #label>
               <div class="info-box">

+ 1 - 3
vue.config.js

@@ -118,9 +118,7 @@ module.exports = defineConfig({
         }
       },
       '/dev': {
-        target: "http://10.87.21.107:8080",
-        // target: "http://10.87.21.103:8080",
-        // target: "http://10.87.23.62:8080",
+        target: "http://10.87.21.103:8080",
         // ws:true,
         changOrigin:true,
         pathRewrite:{