From 887b0e16b77a6d9c1161ada57f923f0ee20839b2 Mon Sep 17 00:00:00 2001
From: value <z1292839451@163.com>
Date: 星期二, 14 五月 2024 02:26:04 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 src/components/view/b3-work-time-management.vue                    |    2 
 src/components/do/b1-ins-order/add.vue                             |    4 
 src/main.js                                                        |    4 
 src/components/do/b3-work-time-management/work-time-management.vue |   10 
 src/components/do/b3-work-time-management/work-time-config.vue     |    6 
 src/components/do/b3-work-time-management/work-time-statistics.vue |  233 ++++++++++++++++++++++++++++++++++++++
 src/components/view/b3-classes.vue                                 |   33 ++++-
 src/components/view/b1-inspection-order.vue                        |   16 +-
 8 files changed, 278 insertions(+), 30 deletions(-)

diff --git a/src/components/do/b1-ins-order/add.vue b/src/components/do/b1-ins-order/add.vue
index 8967cea..75adee2 100644
--- a/src/components/do/b1-ins-order/add.vue
+++ b/src/components/do/b1-ins-order/add.vue
@@ -667,6 +667,10 @@
           this.addObj.sampleNum = this.sampleList.length
           this.$nextTick(() => {
             this.$refs.sampleTable.doLayout()
+            if(this.addObj.sampleNum>0){
+              this.$refs.sampleTable.setCurrentRow(this.sampleList[0],true)
+              this.rowClick(this.sampleList[0])
+            }
           })
         })
       }
diff --git a/src/components/do/b3-work-time-management/work-time-config.vue b/src/components/do/b3-work-time-management/work-time-config.vue
index ed06257..d26142d 100644
--- a/src/components/do/b3-work-time-management/work-time-config.vue
+++ b/src/components/do/b3-work-time-management/work-time-config.vue
@@ -8,7 +8,7 @@
 			</div>
 			<div class="search_thing">
 				<div class="search_label">瀹為獙瀹わ細</div>
-				<el-select v-model="componentData.entity.laboratory" placeholder="鍏ㄩ儴" size="small">
+				<el-select v-model="componentData.entity.laboratory" placeholder="鍏ㄩ儴" size="small" @change="refreshTable()">
 					<el-option v-for="item in laboratoryList" :key="item.value" :label="item.label" :value="item.value">
 					</el-option>
 				</el-select>
@@ -16,7 +16,7 @@
 			<div class="search_thing">
 				<div class="search_label">閮ㄩ棬锛�</div>
 				<div class="search_input">
-          <el-select v-model="componentData.entity.department" placeholder="鍏ㄩ儴" size="small">
+          <el-select v-model="componentData.entity.department" placeholder="鍏ㄩ儴" size="small" @change="refreshTable()">
 					  <el-option v-for="item in partList" :key="item.value" :label="item.label" :value="item.value">
             </el-option>
           </el-select>
@@ -200,7 +200,7 @@
 		margin-top: 10px;
 		background-color: #fff;
 		width: calc(100% - 40px);
-		height: calc(100% - 60px - 80px - 10px - 40px);
+		height: calc(100% - 60px - 80px - 10px - 24px);
 		padding: 20px;
 	}
 </style>
diff --git a/src/components/do/b3-work-time-management/work-time-management.vue b/src/components/do/b3-work-time-management/work-time-management.vue
index cb657d0..17c0b8a 100644
--- a/src/components/do/b3-work-time-management/work-time-management.vue
+++ b/src/components/do/b3-work-time-management/work-time-management.vue
@@ -13,13 +13,13 @@
 			</div>
 			<div class="search_thing" style="width: 200px;">
 				<div class="search_label">鏄熸湡锛�</div>
-				<el-select v-model="componentData.entity.laboratory" placeholder="鍏ㄩ儴" size="small">
+				<el-select v-model="componentData.entity.laboratory" placeholder="鍏ㄩ儴" size="small" @change="refreshTable()">
 					<el-option v-for="item in weekList" :key="item.value" :label="item.label" :value="item.value">
 					</el-option>
 				</el-select>
 			</div>
 			<div class="search_thing">
-				<div class="search_label">鏃堕棿鑼冨洿锛�</div>
+				<div class="search_label" style="width: 90px;">鏃堕棿鑼冨洿锛�</div>
 				<div class="search_input">
           <el-date-picker
             style="width: 100%;"
@@ -28,7 +28,7 @@
             type="daterange"
             range-separator="鑷�"
             start-placeholder="寮�濮嬫棩鏈�"
-            end-placeholder="缁撴潫鏃ユ湡">
+            end-placeholder="缁撴潫鏃ユ湡" @change="refreshTable()">
           </el-date-picker>
         </div>
 			</div>
@@ -36,11 +36,11 @@
       <div class="search_thing" style="width: 200px;">
 				<div class="search_label" >鍚嶅瓧锛�</div>
 				<el-input size="small" placeholder="璇疯緭鍏�" clearable
-						v-model="componentData.entity.number"></el-input>
+						v-model="componentData.entity.number" @keyup.enter.native="refreshTable()"></el-input>
 			</div>
       <div class="search_thing" style="width: 200px;">
 				<div class="search_label">鐘舵�侊細</div>
-				<el-select v-model="componentData.entity.laboratory" placeholder="鍏ㄩ儴" size="small">
+				<el-select v-model="componentData.entity.laboratory" placeholder="鍏ㄩ儴" size="small" @change="refreshTable()">
 					<el-option v-for="item in stateList" :key="item.value" :label="item.label" :value="item.value">
 					</el-option>
 				</el-select>
diff --git a/src/components/do/b3-work-time-management/work-time-statistics.vue b/src/components/do/b3-work-time-management/work-time-statistics.vue
index e624163..fd79c90 100644
--- a/src/components/do/b3-work-time-management/work-time-statistics.vue
+++ b/src/components/do/b3-work-time-management/work-time-statistics.vue
@@ -1,19 +1,246 @@
 <template>
   <div class="work-time-statistics">
-    宸ユ椂缁熻
+    <div class="search">
+      <div class="search_thing">
+				<div class="search_label">鏃ユ湡锛�</div>
+				<div class="search_input" style="display: flex;align-items: center;">
+          <el-date-picker
+            v-model="componentData.entity.laboratory"
+            type="month"
+            format="yyyy-MM-dd HH:mm:ss"
+            value-format="yyyy-MM-dd HH:mm:ss"
+            placeholder="閫夋嫨鏈�" size="small" style="width: 100%;">
+          </el-date-picker>
+        </div>
+			</div>
+			<div class="search_thing">
+				<div class="search_label">鍛樺伐锛�</div>
+				<el-select v-model="componentData.entity.laboratory" placeholder="鍏ㄩ儴" size="small" @change="refreshTable()">
+					<el-option v-for="item in personList" :key="item.id" :label="item.name" :value="item.id">
+					</el-option>
+				</el-select>
+			</div>
+			<div class="search_thing">
+				<div class="search_label">閮ㄩ棬锛�</div>
+				<div class="search_input">
+          <el-select v-model="componentData.entity.laboratory" placeholder="鍏ㄩ儴" size="small" @change="refreshTable()">
+					<el-option v-for="item in weekList" :key="item.value" :label="item.label" :value="item.value">
+					</el-option>
+				</el-select>
+        </div>
+			</div>
+			<div class="search_thing" style="padding-left: 30px;width: 100px;">
+				<el-button size="small" @click="refresh()">閲� 缃�</el-button>
+				<el-button size="small" type="primary" @click="refreshTable()">鏌� 璇�</el-button>
+			</div>
+      <el-button size="small" type="primary" style="position: absolute;right: 50px;" @click="handleDown">瀵� 鍑�</el-button>
+      <el-button size="small" type="primary" style="position: absolute;right: 120px;" @click="handleUp" v-show="currentTable == 'value0'">瀵� 鍏�</el-button>
+		</div>
+    <el-radio-group v-model="currentTable" size="small" :key="'111'" style="margin-top: 10px;">
+      <el-radio-button label="value0">
+        鍘熷宸ユ椂
+      </el-radio-button>
+      <el-radio-button label="value1">
+        淇宸ユ椂
+      </el-radio-button>
+    </el-radio-group>
+    <div class="table">
+      <ValueTable ref="ValueTable0"
+        v-show="currentTable == 'value0'"
+				:url="$api.auxiliaryWorkingHours.selectAuxiliaryWorkingHours"
+				:componentData="componentData" :inputUrl="$api.auxiliaryWorkingHours.selectAuxiliaryWorkingHours" :downUrl="$api.auxiliaryWorkingHours.selectAuxiliaryWorkingHours" :key="upIndex" />
+      <ValueTable ref="ValueTable1"
+        v-show="currentTable == 'value1'"
+				:url="$api.auxiliaryWorkingHours.selectAuxiliaryWorkingHours"
+				:componentData="componentData0" :key="upIndex" />
+    </div>
   </div>
 </template>
 
 <script>
+import ValueTable from '../../tool/value-table.vue'
 export default {
+  components: {
+    ValueTable
+  },
   data () {
     return{
-
+      componentData: {
+					entity: {
+						number: null,
+						department: null,
+						laboratory: null,
+						orderBy: {
+							field: 'id',
+							order: 'desc'
+						}
+					},
+					isIndex: true,
+					showSelect: false,
+					select: false,
+					do: [],
+					tagField: {
+						deviceStatus: {
+							select: []
+						},
+						equipmentManager: {
+							select: []
+						},
+						authorizedPerson: {
+							select: []
+						},
+            insProductIds:{
+              select:[]
+            }
+					},
+					linkEvent: {
+						deviceName: {
+							method: 'selectAllByOne'
+						}
+					},
+					selectField: {
+						authorizedPerson: {
+							select: [],
+							choose: true
+						},
+						equipmentManager: {
+							select: []
+						},
+            insProductIds:{
+              select:[],
+              choose: true
+            }
+					},
+					requiredAdd: [],
+					requiredUp: []
+			},
+      componentData0: {
+					entity: {
+						number: null,
+						department: null,
+						laboratory: null,
+						orderBy: {
+							field: 'id',
+							order: 'desc'
+						}
+					},
+					isIndex: true,
+					showSelect: false,
+					select: false,
+					do: [],
+					tagField: {
+						deviceStatus: {
+							select: []
+						},
+						equipmentManager: {
+							select: []
+						},
+						authorizedPerson: {
+							select: []
+						},
+            insProductIds:{
+              select:[]
+            }
+					},
+					linkEvent: {
+						deviceName: {
+							method: 'selectAllByOne'
+						}
+					},
+					selectField: {
+						authorizedPerson: {
+							select: [],
+							choose: true
+						},
+						equipmentManager: {
+							select: []
+						},
+            insProductIds:{
+              select:[],
+              choose: true
+            }
+					},
+					requiredAdd: [],
+					requiredUp: []
+			},
+      upIndex:0,
+      weekList:[],
+      personList:[],
+      currentTable:'value0'
+    }
+  },
+  mounted(){
+    this.getUsers()
+  },
+  methods: {
+    refresh(){},
+    refreshTable(){},
+    getUsers(){
+      this.$axios.post(this.$api.user.selectUserList, {
+					page: {
+            current: -1,
+            size: -1,
+          },
+					entity: {
+            name: null,
+          }
+				}, {
+					headers: {
+						'Content-Type': 'application/json'
+					}
+				}).then(res => {
+					if (res.code === 201) {
+						return
+					}
+          let arr = res.data.body.records
+          this.personList = arr
+        })
+    },
+    handleDown(){
+      if(this.currentTable == 'value0'){
+        this.$refs.ValueTable0.downFile(false)
+      }else{
+        this.$refs.ValueTable1.downFile(false)
+      }
+    },
+    handleUp(){
+      this.$refs.ValueTable0.openUpload()
     }
   }
 }
 </script>
 
-<style>
+<style scoped>
+.work-time-statistics{
+  height: 100%;
+}
+.search {
+		background-color: #fff;
+		height: 80px;
+		display: flex;
+		align-items: center;
+	}
 
+	.search_thing {
+		width: 270px;
+		display: flex;
+		align-items: center;
+	}
+
+	.search_label {
+		width: 60px;
+		font-size: 14px;
+		text-align: right;
+	}
+
+	.search_input {
+		width: calc(100% - 60px);
+	}
+  .table {
+		margin-top: 10px;
+		background-color: #fff;
+		width: calc(100% - 40px);
+		height: calc(100% - 60px - 80px - 10px - 40px - 25px);
+		padding: 20px;
+	}
 </style>
diff --git a/src/components/view/b1-inspection-order.vue b/src/components/view/b1-inspection-order.vue
index 7ccb0ea..a5f0a23 100644
--- a/src/components/view/b1-inspection-order.vue
+++ b/src/components/view/b1-inspection-order.vue
@@ -509,13 +509,15 @@
 			},
 			// 涓嬭浇鎶ュ憡
 			download(row) {
-        // console.log(row);
-        let url = row.url;
-        const link = document.createElement('a');
-        link.href = this.javaApi + url;
-        link.target = '_blank';
-        document.body.appendChild(link);
-        link.click();
+        let url = row.urlS?row.urlS:row.url;
+        if(url){
+          url = url.split('.')[0]+'.pdf'
+          const link = document.createElement('a');
+          link.href = this.javaApi + url;
+          link.target = '_blank';
+          document.body.appendChild(link);
+          link.click();
+        }
       },
 			// 瀹℃牳
 			handleVerify(row) {
diff --git a/src/components/view/b3-classes.vue b/src/components/view/b3-classes.vue
index 2d9ffd5..0417519 100644
--- a/src/components/view/b3-classes.vue
+++ b/src/components/view/b3-classes.vue
@@ -60,7 +60,7 @@
             <div class="user-pic">{{ item.name.charAt(0) }}</div>
             <div class="user-info">
               <p style="font-size: 14px;color: #3A7BFA;line-height: 24px;">{{ item.name }}</p>
-              <p style="color: #999999;font-size: 12px;transform: scale(0.8) translateX(-20px);white-space: nowrap;width: 150px;overflow-x: show;">鏃�: {{ item.day0 }}, 涓�: {{ item.day1 }}, 澶�: {{ item.day2 }}, 浼�: {{ item.day3 }}, 鍋�: {{ item.day4 }}</p>
+              <p style="color: #999999;font-size: 12px;transform: scale(0.8) translateX(-20px);white-space: nowrap;width: 150px;overflow-x: show;">鏃�:{{ item.day0 }},涓�:{{ item.day1 }},澶�:{{ item.day2 }},浼�:{{ item.day3 }},鍋�:{{ item.day4 }},宸�:{{ item.day6 }}</p>
               <p style="margin-top: 4px;"><span style="color: #999999;font-size: 12px;display: inline-block;transform: scale(0.8) translateX(-10px);">鍚堣鍑哄嫟: </span><span style="font-size: 16px;
     color: #FF4902;">{{ query.month?item.monthlyAttendance
 .totalAttendance:item.sidebarAnnualAttendance
@@ -75,7 +75,7 @@
                 <span class="month" style="position: absolute;top: 4px;" v-if="item.week=='鍛ㄦ棩'">{{ item.weekNum }}鍛�</span>
                 <p style="height: 26px;position: absolute;bottom: 12px;">
                   <span class="day">{{ item.day }}</span>
-                  <span class="week">{{ item.week }}</span>
+                  <span class="week">{{ item.week.charAt(1) }}</span>
                 </p>
               </div>
             </div>
@@ -83,13 +83,13 @@
             v-on:mouseenter="onMouseEnter(index)"
           v-on:mouseleave="currentUserIndex=null">
               <div class="content-body-item" v-for="(m,i) in item.list" :key="'d'+i" :class="{hoverType:currentUserIndex==index}">
-                <div class="work-box" :class="{type0:m.shift==='0',type1:m.shift==='1',type2:m.shift==='2',type3:m.shift==='3',type4:m.shift==='4',}">
+                <div class="work-box" :class="{type0:m.shift==='0',type1:m.shift==='1',type2:m.shift==='2',type3:m.shift==='3',type4:m.shift==='4',type5:m.shift==='5',type6:m.shift==='6'}">
                   <!-- <div class="work-box-left">
                     <span>{{ getShiftByDic(m.shift) }}</span>
                   </div> -->
                   <el-dropdown trigger="click" placement="bottom" @command="e=>handleCommand(e,m)" :disabled="!downPower">
                     <!-- <i class="el-icon-arrow-down el-icon--right" style="font-size: 20px;color: #fff;cursor: pointer;"></i> -->
-                    <span style="cursor: pointer;">{{ getShiftByDic(m.shift) }}</span>
+                    <span style="cursor: pointer;" :style="`opacity: ${getShiftByDic(m.shift)=='鏃�'?0:1};`">{{ getShiftByDic(m.shift) }}</span>
                     <el-dropdown-menu slot="dropdown">
                       <el-dropdown-item v-for="(n,j) in classType" :key="'h'+j" :command="n.value">{{ n.label }}</el-dropdown-item>
                     </el-dropdown-menu>
@@ -112,7 +112,7 @@
             <div class="user-pic">{{ item.name.charAt(0) }}</div>
             <div class="user-info">
               <p style="font-size: 14px;color: #3A7BFA;line-height: 24px;">{{ item.name }}</p>
-              <p style="color: #999999;font-size: 12px;transform: scale(0.8) translateX(-20px);white-space: nowrap;width: 150px;overflow-x: show;">鏃�: {{ item.day0 }}, 涓�: {{ item.day1 }}, 澶�: {{ item.day2 }}, 浼�: {{ item.day3 }}, 鍋�: {{ item.day4 }}</p>
+              <p style="color: #999999;font-size: 12px;transform: scale(0.8) translateX(-20px);white-space: nowrap;width: 150px;overflow-x: show;">鏃�:{{ item.day0 }},涓�:{{ item.day1 }},澶�:{{ item.day2 }},浼�:{{ item.day3 }},鍋�:{{ item.day4 }},宸�:{{ item.day6 }}</p>
               <p style="margin-top: 4px;"><span style="color: #999999;font-size: 12px;display: inline-block;transform: scale(0.8) translateX(-10px);">鍚堣鍑哄嫟: </span><span style="font-size: 16px;
     color: #FF4902;">{{ item.work_time }}澶�</span></p>
             </div>
@@ -139,7 +139,7 @@
               <div class="content-body-item" v-for="(m,i) in item.monthList" :key="'d'+i" :class="{hoverType:currentUserIndex==index}">
                 <p style="color:rgb(153, 153, 153);font-size: 12px;">鍚堣鍑哄嫟锛�<span style="font-size: 14px;color:#000">{{ m.totalMonthAttendance }}</span></p>
                 <p style="color:rgb(153, 153, 153);font-size: 12px;">
-                  鏃�: {{ m.day0 }}, 涓�:  {{ m.day1 }}, 澶�:  {{ m.day2 }}, 浼�:  {{ m.day3 }}, 鍋�:  {{ m.day4 }}
+                  鏃�:{{ m.day0 }},涓�:{{ m.day1 }},澶�:{{ m.day2 }},浼�:{{ m.day3 }},鍋�:{{ m.day4 }},宸�:{{ m.day6 }}
                 </p>
               </div>
             </div>
@@ -583,7 +583,7 @@
       if(obj){
         return obj.label
       }
-      return '鏈帓鐝�'
+      return '鏃�'
     }
   }
 }
@@ -664,7 +664,7 @@
 }
 .content-title-item{
   height: 100%;
-  width: 60px;
+  width: 50px;
   flex-shrink: 0;
   border-bottom: 1px solid #EEEEEE;
   box-sizing: border-box;
@@ -699,8 +699,9 @@
 }
 .content-body-item{
   height: 70px;
-  width: 60px;
+  width: 50px;
   flex-shrink: 0;
+  font-size: 12px;
   box-sizing: border-box;
   padding: 4px;
   border-right: 1px solid #EEEEEE;
@@ -752,6 +753,20 @@
 .work-box.type4 span{
   color: #F56C6C !important;
 }
+.work-box.type5{
+  background: #ff46c145;
+  color: #ff46c0 !important;
+}
+.work-box.type5 span{
+  color: #ff46c0 !important;
+}
+.work-box.type6{
+  background: #00036418;
+  color: #000464 !important;
+}
+.work-box.type6 span{
+  color: #000464 !important;
+}
 /* .el-icon-arrow-down::before{
   color: #c6c4c4;
 } */
diff --git a/src/components/view/b3-work-time-management.vue b/src/components/view/b3-work-time-management.vue
index 9a90bfc..66d77a4 100644
--- a/src/components/view/b3-work-time-management.vue
+++ b/src/components/view/b3-work-time-management.vue
@@ -27,7 +27,7 @@
   },
   data() {
     return{
-      currentComponent:'workTimeConfig'
+      currentComponent:'workTimeStatistics'
     }
   }
 }
diff --git a/src/main.js b/src/main.js
index f149db9..24fdc91 100644
--- a/src/main.js
+++ b/src/main.js
@@ -13,8 +13,8 @@
 
 //鏈湴
 Vue.prototype.LOCATIONVUE = "http://127.0.0.1:80";
-// const javaApi = 'http://192.168.11.200:8001';//鏉�
-const javaApi = 'http://10.20.102.168:8001';//寮�
+const javaApi = 'http://192.168.11.200:8001';//鏉�
+// const javaApi = 'http://10.20.102.168:8001';//寮�
 // const javaApi = 'http://172.20.10.3:8001';//濮�
 // const javaApi = 'http://192.168.11.2:8001';//鏌�
 // const javaApi = 'http://114.132.189.42:1234';//娴嬭瘯鏈�

--
Gitblit v1.9.3