From 3ef19c59f59bb1b5a43434b8d14ec12e06d505b0 Mon Sep 17 00:00:00 2001
From: licp <lichunping@guanfang.com.cn>
Date: 星期二, 19 三月 2024 13:07:19 +0800
Subject: [PATCH] 检验下单-下发功能更新

---
 src/components/view/a6-device-management.vue |  744 +++++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 637 insertions(+), 107 deletions(-)

diff --git a/src/components/view/a6-device-management.vue b/src/components/view/a6-device-management.vue
index 8c9e4a2..3e3fd6a 100644
--- a/src/components/view/a6-device-management.vue
+++ b/src/components/view/a6-device-management.vue
@@ -19,7 +19,7 @@
 
 	.search_label {
 		width: 110px;
-		
+
 		font-size: 14px;
 		text-align: right;
 	}
@@ -35,6 +35,17 @@
 		height: calc(100% - 60px - 80px - 10px - 40px);
 		padding: 20px;
 	}
+
+  .el-form-item{
+    margin-bottom: 16px;
+  }
+  .picName{
+    overflow: hidden;
+    text-overflow: ellipsis;
+    white-space: nowrap;
+    word-break: break-all;
+    width: 120px;
+  }
 </style>
 
 <template>
@@ -49,30 +60,30 @@
 		<div class="search">
 			<div class="search_thing">
 				<div class="search_label">鐘舵�侊細</div>
-				<el-select v-model="value" placeholder="鍏ㄩ儴">
+				<el-select v-model="componentData.entity.deviceStatus" placeholder="鍏ㄩ儴">
 					<el-option
-					  v-for="item in options"
+					  v-for="item in deviceStatusList"
 					  :key="item.value"
 					  :label="item.label"
 					  :value="item.value">
 					</el-option>
-				  </el-select>
+				</el-select>
 			</div>
 			<div class="search_thing">
 				<div class="search_label">璁惧鍚嶇О锛�</div>
 				<div class="search_input"><el-input size="small" placeholder="璇疯緭鍏�" clearable
-						v-model="componentData.entity.laboratoryNumber" @keyup.enter.native="refreshTable()"></el-input></div>
+						v-model="componentData.entity.deviceName" @keyup.enter.native="refreshTable()"></el-input></div>
 			</div>
-            <div class="search_thing">
+        <div class="search_thing">
 				<div class="search_label">瑙勬牸鍨嬪彿锛�</div>
 				<div class="search_input"><el-input size="small" placeholder="璇疯緭鍏�" clearable
-						v-model="componentData.entity.head" @keyup.enter.native="refreshTable()"></el-input></div>
+						v-model="componentData.entity.specificationModel" @keyup.enter.native="refreshTable()"></el-input></div>
 			</div>
 						<div class="search_thing">
 							<div class="search_label">璁惧澶х被锛�</div>
-							<el-select v-model="value" placeholder="璇烽�夋嫨">
+							<el-select v-model="componentData.entity.largeCategory" placeholder="璇烽�夋嫨">
 								<el-option
-								  v-for="item in options"
+								  v-for="item in equipmentList"
 								  :key="item.value"
 								  :label="item.label"
 								  :value="item.value">
@@ -82,92 +93,443 @@
 			<div class="search_thing" style="padding-left: 30px;">
                 <el-button size="small" @click="refresh()">閲� 缃�</el-button>
 				<el-button size="small" type="primary" @click="refreshTable()">鏌� 璇�</el-button>
+        <el-col :span="12" style="text-align: right;">
+					<el-button size="medium" type="primary" @click="dialogVisible2 = true">鏂板</el-button>
+				</el-col>
 			</div>
 		</div>
 		<div class="table">
 			<!-- 璇硶 瀛愮粍浠堕�氳繃 this.$emit +浼犲叆鏂规硶鍚� 璋冪敤鐖剁粍浠舵柟娉� 渚嬪  this.$emit锛坰electAllByOne锛� 灏遍渶鍦ㄧ埗缁勪欢澹版槑骞朵紶鍏�  @selectAllByOne="selectAllByOne"-->
 			<ValueTable @selectAllByOne="selectAllByOne" @isUpdate="isUpdate" ref="ValueTable" :url="$api.deviceScope.selectDeviceParameter" :upUrl="$api.deviceScope.upDeviceParameter" :delUrl="$api.deviceScope.delDeviceParameter" :componentData="componentData" :key="upIndex"/>
 		</div>
-			<div>
-			<el-dialog
-				title="璁惧璇︽儏"
-				:visible.sync="dialogVisible"
-				width="70%"
-				:before-close="handleClose">
-				<el-row style="display:flex;justify-content: space-around;">
-					<!-- 宸﹁竟甯冨眬 -->
-					<el-col  :span="7" >
-						<el-col>
-							<!-- 鍥剧墖 -->
-							<img src="https://www.baidu.com/img/bd_logo1.png" alt="" style="width:100%;height: 30vh;">
-							<!-- 琛ㄥ崟 -->
-							<el-form :label-position="labelPosition" :model="formData">
-								<el-form-item label="澶х被锛�" >
-								  <el-input style="width:75%" :disabled="isUp" v-model="formData.largeCategory"></el-input>
-								</el-form-item>
-								<el-form-item label="鍑哄巶鏃ユ湡">
+    <el-dialog
+      :title="isUp?'璁惧璇︽儏':'妗f淇'"
+      :visible.sync="dialogVisible"
+      width="70%"
+      :before-close="handleClose">
+      <el-row style="display:flex;justify-content: space-around;">
+        <!-- 宸﹁竟甯冨眬 -->
+        <el-col  :span="7" >
+          <el-col>
+            <!-- 鍥剧墖 -->
+            <el-image class="img" style="width:100%;height: 320px;marginBottom:16px" :src="javaApi+'/img/'+formData.imageUpload">
+              <div slot="error" class="image-error" style="width: calc(100% -2px);
+            height: 318px;
+            border-radius: 16px;
+            display: flex;
+            align-items: center;
+            justify-content: center;
+            border: 1px solid #EEEEEE;">
+                <i class="el-icon-picture-outline" style="font-size:60px;color:#666666;"></i>
+              </div>
+            </el-image>
+            <!-- 琛ㄥ崟 -->
+            <el-form :label-position="labelPosition" :model="formData" label-width="90px">
+              <el-form-item label="璁惧鍒嗙被:" >
+                <el-select :disabled="isUp" v-model="formData.largeCategory" placeholder="璇烽�夋嫨" size="small" style="width:100%">
+                  <el-option
+                    v-for="item in equipmentList"
+                    :key="item.value"
+                    :label="item.label"
+                    :value="item.value"
+                    >
+                  </el-option>
+                </el-select>
+              </el-form-item>
+              <el-form-item label="鍑哄巶鏃ユ湡:">
+                <el-date-picker
+                style="width:100%"
+                  :disabled="isUp"
+                  v-model="formData.dateProduction"
+                  type="datetime"
+                  size="small"
+                  format="yyyy-MM-dd HH:mm:ss"
+                  value-format="yyyy-MM-dd HH:mm:ss"
+                  placeholder="閫夋嫨鏃ユ湡">
+                </el-date-picker>
+              </el-form-item>
+              <el-form-item label="璁惧璐熻矗浜�:" >
+                <el-select :disabled="isUp" v-model="formData.getDeviceManager" placeholder="璇烽�夋嫨" size="small" style="width:100%">
+                  <el-option
+                    v-for="item in responsiblePersonList"
+                    :key="item.value"
+                    :label="item.label"
+                    :value="item.value"
+                    >
+                  </el-option>
+                </el-select>
+              </el-form-item>
+              <el-form-item label="琚巿鏉冧汉:" >
+                <el-select :disabled="isUp" v-model="formData.getDeviceManager" size="small" multiple placeholder="璇烽�夋嫨" style="width:100%">
+                  <el-option
+                    v-for="item in authorizerList"
+                    :key="item.value"
+                    :label="item.label"
+                    :value="item.value">
+                  </el-option>
+                </el-select>
+                </el-form-item>
+              </el-form>
+          </el-col>
+        </el-col>
+        <!-- 涓棿甯冨眬 -->
+        <el-col  :span="7">
+          <el-form :label-position="labelPosition" :model="formData" label-width="116px">
+            <el-form-item label="璁惧鍚嶇О:" >
+              <el-input :disabled="isUp" v-model="formData.deviceName" size="small"></el-input>
+            </el-form-item>
+            <el-form-item label="鍐呴儴缂栫爜:">
+              <el-input :disabled="isUp" v-model="formData.internalCode" size="small"></el-input>
+            </el-form-item>
+            <el-form-item label="璧勪骇缂栫爜:" >
+              <el-input :disabled="isUp" v-model="formData.assetCode" size="small"></el-input>
+            </el-form-item>
+            <el-form-item label="鏍″噯鏃ユ湡锛堟湀锛�:" >
+              <el-date-picker
+                :disabled="isUp"
+                v-model="formData.calibrationDate"
+                type="month"
+                size="small"
+                format="yyyy-MM"
+                value-format="yyyy-MM"
+                style="width:100%"
+                placeholder="閫夋嫨鏈�">
+              </el-date-picker>
+              </el-form-item>
+              <el-form-item label="鎶ュ簾鏃堕棿:" >
+                <el-date-picker
+                style="width:100%"
+                  :disabled="isUp"
+                  v-model="formData.scrapTime"
+                  type="datetime"
+                  format="yyyy-MM-dd HH:mm:ss"
+                  value-format="yyyy-MM-dd HH:mm:ss"
+                  size="small"
+                  placeholder="閫夋嫨鏃堕棿">
+                </el-date-picker>
+              </el-form-item>
+              <el-form-item label="楠屾敹璁板綍:" >
+              <el-input :disabled="isUp" v-model="formData.acceptanceRecords" size="small"></el-input>
+              </el-form-item>
+              <el-form-item label="鍑哄巶缂栧彿:" >
+              <el-input :disabled="isUp" v-model="formData.factoryNo" size="small"></el-input>
+              </el-form-item>
+              <el-form-item label="璐疆鏃ユ湡:" >
+                <el-date-picker
+                style="width:100%"
+                  :disabled="isUp"
+                  v-model="formData.acquisitionDate"
+                  type="datetime"
+                  size="small"
+                  format="yyyy-MM-dd HH:mm:ss"
+                  value-format="yyyy-MM-dd HH:mm:ss"
+                  placeholder="閫夋嫨鏃ユ湡">
+                </el-date-picker>
+              </el-form-item>
+              <el-form-item label="鍑嗙‘搴﹂噺鍊�:" >
+              <el-input :disabled="isUp" v-model="formData.accurateMeasurement" size="small"></el-input>
+              </el-form-item>
+              <el-form-item label="澶囨敞:" >
+              <el-input :disabled="isUp" v-model="formData.notes" size="small"></el-input>
+              </el-form-item>
+            </el-form>
+        </el-col>
+        <!-- 鍙宠竟甯冨眬 -->
+        <el-col  :span="7">
+          <el-form :label-position="labelPosition" :model="formData" label-width="110px" ref="ruleForm">
+            <el-form-item label="瑙勬牸鍨嬪彿:" >
+              <el-input :disabled="isUp" v-model="formData.specificationModel" size="small"></el-input>
+            </el-form-item>
+            <el-form-item label="璁惧鐘舵��:">
+              <el-select :disabled="isUp" v-model="formData.deviceStatus" placeholder="璇烽�夋嫨" size="small" style="width:100%">
+                  <el-option
+                    v-for="item in deviceStatusList"
+                    :key="item.value"
+                    :label="item.label"
+                    :value="item.value"
+                    >
+                  </el-option>
+                </el-select>
+            </el-form-item>
+            <el-form-item label="瀛樻斁鐐�:" >
+              <el-input :disabled="isUp" v-model="formData.storagePoint" size="small"></el-input>
+            </el-form-item>
+            <el-form-item label="鏈�杩戣拷婧棩鏈�:" >
+              <el-date-picker
+                style="width:100%"
+                  :disabled="isUp"
+                  v-model="formData.latestTraceability"
+                  format="yyyy-MM-dd HH:mm:ss"
+                  value-format="yyyy-MM-dd HH:mm:ss"
+                  type="datetime"
+                  size="small"
+                  placeholder="閫夋嫨鏃ユ湡">
+                </el-date-picker>
+              </el-form-item>
+              <el-form-item label="鍋滅敤鏃堕棿:" >
+                <el-date-picker
+                style="width:100%"
+                  :disabled="isUp"
+                  format="yyyy-MM-dd HH:mm:ss"
+                  value-format="yyyy-MM-dd HH:mm:ss"
+                  v-model="formData.downTime"
+                  type="datetime"
+                  size="small"
+                  placeholder="閫夋嫨鏃堕棿">
+                </el-date-picker>
+              </el-form-item>
+              <el-form-item label="缁翠慨璁板綍:" >
+              <el-input :disabled="isUp" v-model="formData.maintenanceRecords" size="small"></el-input>
+              </el-form-item>
+              <el-form-item label="鐢熶骇鍘傚:" >
+              <el-input :disabled="isUp" v-model="formData.manufacturer" size="small" ></el-input>
+              </el-form-item>
+              <el-form-item label="閲囪喘璐圭敤:" >
+              <el-input :disabled="isUp" v-model="formData.procurementCosts" size="small"></el-input>
+              </el-form-item>
+              <el-form-item label="鏍″噯璇佷功:" >
+              <el-input :disabled="isUp" v-model="formData.calibrationCerticate" size="small"></el-input>
+              </el-form-item>
+              <el-form-item v-if="!isUp" label="鍥剧墖:" >
+                <div style="border: 1px solid #DCDFE6;border-radius:4px;height:32px;lineHeight:32px;display:flex;justify-content: space-around;font-size: 13px;">
+                  <div v-show="formData.imageName" class="picName">{{formData.imageName}}</div>
+                  <el-upload
+                      :action="action"
+                      :on-success="handleSuccessUpImg"
+                      :show-file-list="false"
+                      accept='image/jpg,image/jpeg,image/png'
+                      :headers="headers"
+                      :on-change="beforeUpload"
+                      :on-error="onError"
+                      ref='upload'
+                      >
+                      <el-button type="text" style="height:30px;paddingTop:8px">涓婁紶</el-button>
+                    </el-upload>
+                </div>
+                </el-form-item>
+            </el-form>
+        </el-col>
+      </el-row>
+      <span slot="footer" class="dialog-footer">
+        <el-row v-if="!isUp">
+          <el-button @click="handleClose">鍙� 娑�</el-button>
+        <el-button type="primary" @click="submitForm" :loading="upLoad">纭� 瀹�</el-button>
+        </el-row>
+      </span>
+    </el-dialog>
 
-								  <el-input style="width:75%" :disabled="isUp" v-model="formData.dateProduction"></el-input>
-								</el-form-item>
-								<el-form-item label="璁惧璐熻矗浜�" >
-								  <el-input style="width:75%" :disabled="isUp" v-model="formData.equipmentManager"></el-input>
-								</el-form-item>
-								<el-form-item label="琚巿鏉冧汉" >
-									<el-input style="width:75%" :disabled="isUp" v-model="formData.authorizedPerson"></el-input>
-								  </el-form-item>
-								  <el-form-item v-if="!isUp" label="鍥剧墖" >
-									<div style="width:75%;border: 1px solid #DCDFE6;border-radius:4px;margin-left: 22%;display:flex;justify-content: space-around;">
-											<div>{{formData.largeCategory}}</div>
-											<div style="width: 40%;"></div>
-											<div><el-button type="text">棰勮</el-button></div>
-									</div>
-								  </el-form-item>
-							  </el-form>
-						</el-col>
-					</el-col>
-					<!-- 涓棿甯冨眬 -->
-					<el-col  :span="7">
-						<el-form :label-position="labelPosition" :model="formData">
-							<el-form-item label="璁惧鍚嶇О" >
-							  <el-input style="width:75%" :disabled="isUp" v-model="formData.deviceName"></el-input>
-							</el-form-item>
-							<el-form-item label="鍐呴儴缂栫爜">
-							  <el-input style="width:75%" :disabled="isUp" v-model="formData.internalCode"></el-input>
-							</el-form-item>
-							<el-form-item label="璧勪骇缂栫爜" >
-							  <el-input style="width:75%" :disabled="isUp" v-model="formData.assetCode"></el-input>
-							</el-form-item>
-							<el-form-item label="鏍″噯鏃ユ湡锛堟湀锛�" >
-								<el-input style="width:75%" :disabled="isUp" v-model="formData.calibrationDate"></el-input>
-							  </el-form-item>
-						  </el-form>
-					</el-col>
-					<!-- 鍙宠竟甯冨眬 -->
-					<el-col  :span="7">
-						<el-form :label-position="labelPosition" :model="formData">
-							<el-form-item label="娲诲姩鍖哄煙" >
-							  <el-input style="width:75%" :disabled="isUp" v-model="formData.largeCategory"></el-input>
-							</el-form-item>
-							<el-form-item label="娲诲姩鍖哄煙">
-							  <el-input style="width:75%" :disabled="isUp" v-model="formData.latestTraceability"></el-input>
-							</el-form-item>
-							<el-form-item label="娲诲姩褰㈠紡" >
-							  <el-input style="width:75%" :disabled="isUp" v-model="formData.largeCategory"></el-input>
-							</el-form-item>
-							<el-form-item label="娲诲姩褰㈠紡" >
-								<el-input style="width:75%" :disabled="isUp" v-model="formData.largeCategory"></el-input>
-							  </el-form-item>
-						  </el-form>
-					</el-col>
-				</el-row>
-				<span slot="footer" class="dialog-footer">
-					<el-row v-if="!isUp">
-						<el-button @click="dialogVisible = false">鍙� 娑�</el-button>
-					<el-button type="primary" @click="dialogVisible = false">纭� 瀹�</el-button>
-					</el-row>
-				</span>
-			</el-dialog>
-		</div>
+
+
+<!-- 鏂板-->
+    <el-dialog
+    title="鏂板璁惧"
+    :visible.sync="dialogVisible2"
+    width="70%"
+    :before-close="handleClose2">
+    <el-row style="display:flex;justify-content: space-around;">
+      <!-- 宸﹁竟甯冨眬 -->
+      <el-col  :span="7" >
+        <el-col>
+          <!-- 鍥剧墖 -->
+          <el-image class="img" style="width:100%;height: 320px;margin-bottom:16px" :src="javaApi+'/img/'+formData2.imageUpload">
+            <div slot="error" class="image-error" style="width: calc(100% -2px);
+          height: 318px;
+          border-radius: 16px;
+          display: flex;
+          align-items: center;
+          justify-content: center;
+          border: 1px solid #EEEEEE;">
+              <i class="el-icon-picture-outline" style="font-size:60px;color:#666666;"></i>
+            </div>
+          </el-image>
+          <!-- 琛ㄥ崟 -->
+          <el-form :label-position="labelPosition" :model="formData2" label-width="90px">
+            <el-form-item label="璁惧鍒嗙被:" >
+              <el-select v-model="formData2.largeCategory" placeholder="璇烽�夋嫨" size="small" style="width:100%">
+                <el-option
+                  v-for="item in equipmentList"
+                  :key="item.value"
+                  :label="item.label"
+                  :value="item.value"
+                  >
+                </el-option>
+              </el-select>
+            </el-form-item>
+            <el-form-item label="鍑哄巶鏃ユ湡:">
+              <el-date-picker
+              style="width:100%"
+                v-model="formData2.dateProduction"
+                type="datetime"
+                size="small"
+                format="yyyy-MM-dd HH:mm:ss"
+                value-format="yyyy-MM-dd HH:mm:ss"
+                placeholder="閫夋嫨鏃ユ湡">
+              </el-date-picker>
+            </el-form-item>
+            <el-form-item label="璁惧璐熻矗浜�:" >
+              <el-select v-model="formData2.equipmentManager" placeholder="璇烽�夋嫨" size="small" style="width:100%">
+                <el-option
+                  v-for="item in responsiblePersonList"
+                  :key="item.value"
+                  :label="item.label"
+                  :value="item.value"
+                  >
+                </el-option>
+              </el-select>
+            </el-form-item>
+            <el-form-item label="琚巿鏉冧汉:" >
+              <el-select v-model="formData2.authorizedPerson" size="small" multiple placeholder="璇烽�夋嫨" style="width:100%">
+                <el-option
+                  v-for="item in authorizerList"
+                  :key="item.value"
+                  :label="item.label"
+                  :value="item.value">
+                </el-option>
+              </el-select>
+              </el-form-item>
+            </el-form>
+        </el-col>
+      </el-col>
+      <!-- 涓棿甯冨眬 -->
+      <el-col  :span="7">
+        <el-form :label-position="labelPosition" :model="formData2" label-width="116px">
+          <el-form-item label="璁惧鍚嶇О:" >
+            <el-input v-model="formData2.deviceName" size="small"></el-input>
+          </el-form-item>
+          <el-form-item label="鍐呴儴缂栫爜:">
+            <el-input v-model="formData2.internalCode" size="small"></el-input>
+          </el-form-item>
+          <el-form-item label="璧勪骇缂栫爜:" >
+            <el-input v-model="formData2.assetCode" size="small"></el-input>
+          </el-form-item>
+          <el-form-item label="鏍″噯鏃ユ湡锛堟湀锛�:" >
+            <el-date-picker
+              v-model="formData2.calibrationDate"
+              type="month"
+              size="small"
+              format="yyyy-MM"
+              value-format="yyyy-MM"
+              style="width:100%"
+              placeholder="閫夋嫨鏈�">
+            </el-date-picker>
+            </el-form-item>
+            <el-form-item label="鎶ュ簾鏃堕棿:" >
+              <el-date-picker
+              style="width:100%"
+                v-model="formData2.scrapTime"
+                type="datetime"
+                format="yyyy-MM-dd HH:mm:ss"
+                value-format="yyyy-MM-dd HH:mm:ss"
+                size="small"
+                placeholder="閫夋嫨鏃堕棿">
+              </el-date-picker>
+            </el-form-item>
+            <el-form-item label="楠屾敹璁板綍:" >
+            <el-input v-model="formData2.acceptanceRecords" size="small"></el-input>
+            </el-form-item>
+            <el-form-item label="鍑哄巶缂栧彿:" >
+            <el-input v-model="formData2.factoryNo" size="small"></el-input>
+            </el-form-item>
+            <el-form-item label="璐疆鏃ユ湡:" >
+              <el-date-picker
+              style="width:100%"
+                v-model="formData2.acquisitionDate"
+                type="datetime"
+                size="small"
+                format="yyyy-MM-dd HH:mm:ss"
+                value-format="yyyy-MM-dd HH:mm:ss"
+                placeholder="閫夋嫨鏃ユ湡">
+              </el-date-picker>
+            </el-form-item>
+            <el-form-item label="鍑嗙‘搴﹂噺鍊�:" >
+            <el-input v-model="formData2.accurateMeasurement" size="small"></el-input>
+            </el-form-item>
+            <el-form-item label="澶囨敞:" >
+            <el-input v-model="formData2.notes" size="small"></el-input>
+            </el-form-item>
+          </el-form>
+      </el-col>
+      <!-- 鍙宠竟甯冨眬 -->
+      <el-col  :span="7">
+        <el-form :label-position="labelPosition" :model="formData2" label-width="110px" ref="ruleForm">
+          <el-form-item label="瑙勬牸鍨嬪彿:" >
+            <el-input v-model="formData2.specificationModel" size="small"></el-input>
+          </el-form-item>
+          <el-form-item label="璁惧鐘舵��:">
+            <el-select v-model="formData2.deviceStatus" placeholder="璇烽�夋嫨" size="small" style="width:100%">
+                <el-option
+                  v-for="item in deviceStatusList"
+                  :key="item.value"
+                  :label="item.label"
+                  :value="item.value"
+                  >
+                </el-option>
+              </el-select>
+          </el-form-item>
+          <el-form-item label="瀛樻斁鐐�:" >
+            <el-input v-model="formData2.storagePoint" size="small"></el-input>
+          </el-form-item>
+          <el-form-item label="鏈�杩戣拷婧棩鏈�:" >
+            <el-date-picker
+              style="width:100%"
+                v-model="formData2.latestTraceability"
+                format="yyyy-MM-dd HH:mm:ss"
+                value-format="yyyy-MM-dd HH:mm:ss"
+                type="datetime"
+                size="small"
+                placeholder="閫夋嫨鏃ユ湡">
+              </el-date-picker>
+            </el-form-item>
+            <el-form-item label="鍋滅敤鏃堕棿:" >
+              <el-date-picker
+              style="width:100%"
+                format="yyyy-MM-dd HH:mm:ss"
+                value-format="yyyy-MM-dd HH:mm:ss"
+                v-model="formData2.downTime"
+                type="datetime"
+                size="small"
+                placeholder="閫夋嫨鏃堕棿">
+              </el-date-picker>
+            </el-form-item>
+            <el-form-item label="缁翠慨璁板綍:" >
+            <el-input v-model="formData2.maintenanceRecords" size="small"></el-input>
+            </el-form-item>
+            <el-form-item label="鐢熶骇鍘傚:" >
+            <el-input v-model="formData2.manufacturer" size="small" ></el-input>
+            </el-form-item>
+            <el-form-item label="閲囪喘璐圭敤:" >
+            <el-input v-model="formData2.procurementCosts" size="small"></el-input>
+            </el-form-item>
+            <el-form-item label="鏍″噯璇佷功:" >
+            <el-input v-model="formData2.calibrationCerticate" size="small"></el-input>
+            </el-form-item>
+            <el-form-item label="鍥剧墖:" >
+              <div style="border: 1px solid #DCDFE6;border-radius:4px;height:32px;lineHeight:32px;display:flex;justify-content: space-around;font-size: 13px;">
+                <div v-show="formData2.imageName" class="picName">{{formData2.imageName}}</div>
+                <el-upload
+                    :action="action"
+                    :on-success="handleSuccessUpImg2"
+                    :show-file-list="false"
+                    accept='image/jpg,image/jpeg,image/png'
+                    :headers="headers"
+                    :on-change="beforeUpload"
+                    :on-error="onError"
+                    ref='upload'
+                    >
+                    <el-button type="text" style="height:30px;paddingTop:8px">涓婁紶</el-button>
+                  </el-upload>
+              </div>
+              </el-form-item>
+          </el-form>
+      </el-col>
+    </el-row>
+    <span slot="footer" class="dialog-footer">
+      <el-row >
+        <el-button @click="handleClose2">鍙� 娑�</el-button>
+      <el-button type="primary" @click="submitForm2" :loading="upLoad2">纭� 瀹�</el-button>
+      </el-row>
+    </span>
+  </el-dialog>
 	</div>
 </template>
 
@@ -182,18 +544,22 @@
 				//鏄惁鏄。妗堜慨璁�  true涓嶆槸 false鏄�
 				isUp: true,
 				formData: {},
+        formData2: {
+          imageUpload:'',
+          imageName:''
+        },
 				value: '',
 				options: [],
 				labelPosition: 'right',
 				dialogVisible: false,
+        dialogVisible2: false,
+        addPower: false,
 				componentData: {
 					entity: {
-						largeCategory: null,
-						subclass: null,
+						deviceStatus: null,
 						deviceName: null,
-						internalCode: null,
 						specificationModel: null,
-						manufacturer: null,
+						largeCategory: null,
 						orderBy: {
 							field: 'id',
 							order: 'asc'
@@ -203,11 +569,6 @@
 					showSelect: false,
 					select: false,
 					do: [{
-						id: 'details',
-						font: '璇︽儏',
-						type: 'text',
-						method: 'selectAllByOne'
-					}, {
 						id: 'delete',
 						font: '鍒犻櫎',
 						type: 'text',
@@ -218,7 +579,28 @@
 						type: 'text',
 						method: 'isUpdate'
 					}],
-					tagField: {},
+					tagField: {
+            deviceStatus: {
+							select: [{
+								value: 0,
+								type: 'success',
+								label: '姝e父'
+							},{
+								value: 1,
+								type: 'warning',
+								label: '鎶ュ簾'
+							},{
+								value: 2,
+								type: 'danger',
+								label: '淇濅慨'
+							}]
+						}
+          },
+          linkEvent:{
+            deviceName:{
+              method:'selectAllByOne'
+            }
+          },
 					selectField: {},
 					requiredAdd:['largeCategory','subclass','deviceName','internalCode','specificationModel','manufacturer'],
 					requiredUp:['largeCategory','subclass','deviceName','internalCode','specificationModel','manufacturer']
@@ -226,12 +608,33 @@
 				entityCopy: {},
 				upIndex: 0,
 				addDia: true,
-				addPower: true
+				addPower: true,
+        //璁惧绫诲瀷鍒楄〃
+        equipmentList:[],
+        // 璐熻矗浜哄垪琛�
+        responsiblePersonList:[],
+        // 鎺堟潈浜哄垪琛�
+        authorizerList:[],
+        // 璁惧鐘舵�佸垪琛�
+        deviceStatusList:[],
+        upLoad:false,
+        upLoad2:false,
 			}
 		},
+    computed: {
+        headers() {
+          return { 'token': sessionStorage.getItem('token') }
+        },
+        action(){
+          return this.javaApi+this.$api.deviceScope.uploadFile
+        }
+    },
 		mounted() {
 			this.entityCopy = this.HaveJson(this.componentData.entity)
 			this.getPower()
+      this.getAuthorizedPerson()
+      this.selectEnumByCategory()
+      this.selectDevicePrincipal()
 		},
 		methods: {
 			refreshTable() {
@@ -241,7 +644,6 @@
 				this.componentData.entity = this.HaveJson(this.entityCopy)
 				this.upIndex++
 			},
-	
 			// 鏉冮檺鍒嗛厤
 			getPower(radio) {
 				let power = JSON.parse(sessionStorage.getItem('power'))
@@ -259,16 +661,60 @@
 						add = true
 					}
 				}
-				if(!del){
+        if(!up){
 					this.componentData.do.splice(1, 1)
 				}
-				if(!up){
+				if(!del){
 					this.componentData.do.splice(0, 1)
 				}
 				this.addPower = add
 			},
+      // 鑾峰彇鎺堟潈浜�
+      getAuthorizedPerson(){
+        this.$axios.get(this.$api.deviceScope.selectDevicePrincipal).then(res => {
+					let data = []
+					res.data.forEach(a=>{
+						data.push({
+							label: a.name,
+							value: a.id
+						})
+					})
+					this.authorizerList = data
+				})
+      },
+      // 鑾峰彇瀛楀吀
+      selectEnumByCategory() {
+				this.$axios.post(this.$api.enums.selectEnumByCategory, {
+					category: "璁惧鐘舵��"
+				}).then(res => {
+					this.deviceStatusList = res.data
+				})
+        this.$axios.post(this.$api.enums.selectEnumByCategory, {
+					category: "璁惧鍒嗙被"
+				}).then(res => {
+					this.equipmentList = res.data
+				})
+			},
+      // 鑾峰彇璐熻矗浜哄垪琛�
+      selectDevicePrincipal(){
+        this.$axios.get(this.$api.deviceScope.selectDevicePrincipal).then(res => {
+					let data = []
+					res.data.forEach(a=>{
+						data.push({
+							label: a.name,
+							value: a.id
+						})
+					})
+					this.responsiblePersonList = data
+				})
+      },
 			handleClose(){
 				this.dialogVisible = false;
+        this.upLoad = false;
+			},
+      handleClose2(){
+				this.dialogVisible2 = false;
+        this.upLoad = false;
 			},
 			selectAllByOne(row){
 				this.isUp = true
@@ -276,7 +722,8 @@
 				this.dialogVisible = true;
 				//row = 鐐瑰嚮瀵瑰簲琛屽��
 				//澶嶅埗缁檉ormData
-				this.formData=row;
+				this.formData=this.HaveJson(row);
+        this.formData.authorizedPerson=row.authorizedPerson?row.authorizedPerson.split(','):[];
 			},
 			isUpdate(row){
 				//淇敼  isUp 涓烘。妗堜慨鏀�
@@ -285,8 +732,91 @@
 				this.dialogVisible = true;
 				//row = 鐐瑰嚮瀵瑰簲琛屽�间竴琛屽��
 				//澶嶅埗缁檉ormData
-				this.formData=row;
-			}
-			}
+				this.formData=this.HaveJson(row);
+        this.formData.authorizedPerson=row.authorizedPerson?row.authorizedPerson.split(','):[];
+			},
+      beforeUpload(file){
+        if (file.size > 1024*1024*10) {
+					this.$message.error('涓婁紶鏂囦欢涓嶈秴杩�10M');
+					this.$refs.upload.clearFiles()
+					return false;
+				}else{
+          return true;
+        }
+      },
+      onError(err, file, fileList) {
+				this.$message.error('涓婁紶澶辫触')
+				this.$refs.upload.clearFiles()
+			},
+      // 涓婁紶鍥剧墖鎴愬姛
+      handleSuccessUpImg(response,){
+        if(response.code==200){
+          this.formData.imageUpload = response.data.url;
+          this.formData.imageName = response.data.name;
+        }
+      },
+      handleSuccessUpImg2(response,){
+        if(response.code==200){
+          this.$nextTick(()=>{
+            this.formData2.imageUpload = response.data.url;
+            this.formData2.imageName = response.data.name;
+          })
+        }
+      },
+      submitForm(){
+        this.upLoad = true;
+        let authorizedPerson = this.formData.authorizedPerson.length>0?this.formData.authorizedPerson.join(','):''
+        delete this.formData.createTime
+        delete this.formData.updateTime
+        delete this.formData.createUser
+        delete this.formData.updateUser
+        this.formData.authorizedPerson = authorizedPerson
+        this.$axios.post(this.$api.deviceScope.upDeviceParameter, this.formData, {
+					headers: {
+						'Content-Type': 'application/json'
+					}
+				}).then(res => {
+					if (res.code === 201) {
+						this.upLoad = false
+						return
+					}
+					this.$message.success('淇敼鎴愬姛')
+          this.upLoad = false
+					this.refreshTable()
+          this.dialogVisible = false
+				}).catch(e => {
+					this.$message.error('淇敼澶辫触')
+					this.dialogVisible = false
+					this.upLoad = false
+				})
+      },
+      submitForm2(){
+        this.upLoad2 = true;
+        let authorizedPerson = this.formData2.authorizedPerson.length>0?this.formData2.authorizedPerson.join(','):''
+        this.formData2.authorizedPerson = authorizedPerson
+        this.$axios.post(this.$api.deviceScope.addDeviceParameter, this.formData2, {
+					headers: {
+						'Content-Type': 'application/json'
+					}
+				}).then(res => {
+					if (res.code === 201) {
+						this.upLoad2 = false
+						return
+					}
+					this.$message.success('鎻愪氦鎴愬姛')
+          this.upLoad2 = false
+					this.refreshTable()
+          this.dialogVisible2 = false
+          this.formData2 = {
+            imageUpload:'',
+            imageName:''
+          }
+				}).catch(e => {
+					this.$message.error('鎻愪氦澶辫触')
+					this.dialogVisible2 = false
+					this.upLoad2 = false
+				})
+      }
 		}
-</script>
\ No newline at end of file
+	}
+</script>

--
Gitblit v1.9.3