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/do/b3-work-time-management/work-time-statistics.vue |  233 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 230 insertions(+), 3 deletions(-)

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>

--
Gitblit v1.9.3