From e2255cad8935c961fe161eca60dc88b0930395ad Mon Sep 17 00:00:00 2001
From: wente <329538422@qq.com>
Date: 星期一, 11 十二月 2023 15:25:00 +0800
Subject: [PATCH] 项目表

---
 web/src/views/modules/project/SoftwareTestOrder-AddOrUpdate.vue |  796 ++++++++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 708 insertions(+), 88 deletions(-)

diff --git a/web/src/views/modules/project/SoftwareTestOrder-AddOrUpdate.vue b/web/src/views/modules/project/SoftwareTestOrder-AddOrUpdate.vue
index 1e5b06a..cace7e2 100644
--- a/web/src/views/modules/project/SoftwareTestOrder-AddOrUpdate.vue
+++ b/web/src/views/modules/project/SoftwareTestOrder-AddOrUpdate.vue
@@ -1,105 +1,725 @@
 <template>
-  <zt-dialog ref="dialog" column="2" @confirm="formSubmit">
-    <el-form :model="dataForm" ref="dataForm" :disabled="dataForm.disabled" label-width="120px">
-      <zt-form-item label="杩愯鐜" prop="optEnviron" rules="required">
-                        <el-input v-model="dataForm.optEnviron"></el-input>
-                </zt-form-item>
-      <zt-form-item label="缂栫▼璇█" prop="programLang" rules="required">
-                        <el-input v-model="dataForm.programLang"></el-input>
-                </zt-form-item>
-      <zt-form-item label="娴嬭瘯渚濇嵁" prop="testBasis" rules="required">
-                        <zt-dict v-model="dataForm.testBasis" dict="test_basis"></zt-dict>
-                </zt-form-item>
-      <zt-form-item label="娴嬭瘯绫诲瀷" prop="testType" rules="required">
-                        <zt-dict v-model="dataForm.testType" dict="test_type1"></zt-dict>
-                </zt-form-item>
-      <zt-form-item label="娴嬭瘯鏍囧噯" prop="testStandard" rules="required">
-                        <zt-dict v-model="dataForm.testStandard" dict="test_standard"></zt-dict>
-                </zt-form-item>
-      <zt-form-item label="寮�濮嬫棩鏈�" prop="startDate" rules="required">
-                        <el-input v-model="dataForm.startDate"></el-input>
-                </zt-form-item>
-      <zt-form-item label="缁撴潫鏃ユ湡" prop="endDate" rules="required">
-                        <el-input v-model="dataForm.endDate"></el-input>
-                </zt-form-item>
-      <zt-form-item label="娴嬭瘯鍦哄湴" prop="testVenue" rules="required">
-                        <el-input v-model="dataForm.testVenue"></el-input>
-                </zt-form-item>
-      <zt-form-item label="鍏朵粬瑕佹眰" prop="otherRequire" rules="required">
-                        <el-input v-model="dataForm.otherRequire"></el-input>
-                </zt-form-item>
-      <zt-form-item label="娴嬭瘯鏃ユ湡" prop="testDate" rules="required">
-                        <el-input v-model="dataForm.testDate"></el-input>
-                </zt-form-item>
-      <zt-form-item label="浜や粯鏃ユ湡" prop="deliveryDate" rules="required">
-                        <el-input v-model="dataForm.deliveryDate"></el-input>
-                </zt-form-item>
-      <zt-form-item label="妫�娴嬭垂鐢�" prop="testCost" rules="required">
-                        <el-input v-model="dataForm.testCost"></el-input>
-                </zt-form-item>
-      <zt-form-item label="鐗╁搧鎬ц川" prop="articleNature" rules="required">
-                        <zt-dict v-model="dataForm.articleNature" dict="article_nature"></zt-dict>
-                </zt-form-item>
-      <zt-form-item label="鏍峰搧鐘舵��" prop="sampleStatus" rules="required">
-                        <el-input v-model="dataForm.sampleStatus"></el-input>
-                </zt-form-item>
-      <zt-form-item label="娴嬭瘎鏈烘瀯鍚嶇О" prop="agencyName" rules="required">
-                        <el-input v-model="dataForm.agencyName"></el-input>
-                </zt-form-item>
-      <zt-form-item label="鍦板潃" prop="site" rules="required">
-                        <el-input v-model="dataForm.site"></el-input>
-                </zt-form-item>
-      <zt-form-item label="涓氬姟鑱旂郴" prop="businContact" rules="required">
-                        <el-input v-model="dataForm.businContact"></el-input>
-                </zt-form-item>
-      <zt-form-item label="涓氬姟鎶曡瘔" prop="businComplaint" rules="required">
-                        <el-input v-model="dataForm.businComplaint"></el-input>
-                </zt-form-item>
-      <zt-form-item label="瀹為獙瀹よ仈绯讳汉" prop="laborContact" rules="required">
-                        <el-input v-model="dataForm.laborContact"></el-input>
-                </zt-form-item>
-      <zt-form-item label="瀹為獙瀹よ仈绯荤數璇�" prop="labContactNum" rules="required">
-                        <el-input v-model="dataForm.labContactNum"></el-input>
-                </zt-form-item>
-      <zt-form-item label="閭斂缂栫爜" prop="postalCode" rules="required">
-                        <el-input v-model="dataForm.postalCode"></el-input>
-                </zt-form-item>
-      <zt-form-item label="浼犵湡" prop="fax" rules="required">
-                        <el-input v-model="dataForm.fax"></el-input>
-                </zt-form-item>
+  <zt-dialog ref="dialog" column="2" @confirm="formSubmit" >
+    <el-form ref="form" :inline="true" :model="dataForm" :disabled="dataForm.disabled" label-width="93px"
+             class="weiTuoDanAuto" style="padding-top: 0">
+      <div class="DManageForm">
+        <el-form-item readonly label-width="50px" label="缂栧彿:" style="width: 99% ;margin-bottom:-5px">
+          <span>{{ dataForm.softwareTestOrder.code}}</span>
+        </el-form-item>
+      </div>
+      <div style="border: 1px solid rgba(0,0,0,.2)">
+        <div class="el-flex el-border-bottom">
+          <div class="DPadding1 DAlign DHold">
+            濮旀墭鏂�
+          </div>
+          <div class="el-border-left">
+            <div class="el-flex el-border-bottom">
+              <div class="DWidth DAlign DHold">
+                濮旀墭鍗曚綅
+              </div>
+              <div class="DOldForm el-border-left">
+                <el-form-item class="marginTopAndMarginBottom" label="鍗曚綅鍚嶇О" style="width: 49%">
+                  <el-input readonly v-model="dataForm.project.entrustUnitName" placeholder="璇疯緭鍏ュ崟浣嶅悕绉�"></el-input>
+                </el-form-item>
+                <el-form-item class="marginTopAndMarginBottom" label="鑱旂郴浜�" style="width: 49%">
+                  <el-input readonly v-model="dataForm.project.entrustUnitContact"
+                            placeholder="璇疯緭鍏ヨ仈绯讳汉"></el-input>
+                </el-form-item>
+                <el-form-item label="璇︾粏鍦板潃" style="width: 49%">
+                  <el-input readonly v-model="dataForm.project.entrustUnitAddress"
+                            placeholder="璇疯緭鍏ヨ缁嗗湴鍧�"></el-input>
+                </el-form-item>
+                <el-form-item label="鑱旂郴鏂瑰紡" style="width: 49%">
+                  <el-input readonly v-model="dataForm.project.entrustUnitContWay"
+                            placeholder="璇疯緭鍏ヨ仈绯绘柟寮�"></el-input>
+                </el-form-item>
+              </div>
+            </div>
+            <div class="el-flex el-border-bottom">
+              <div class="DWidth DAlign DHold">
+                寮�鍙戝崟浣�
+              </div>
+              <div class="DOldForm el-border-left">
+                <el-form-item class="marginTopAndMarginBottom" label="鍗曚綅鍚嶇О" style="width: 49%">
+                  <el-input readonly v-model="dataForm.project.developUnitName" placeholder="璇疯緭鍏ュ崟浣嶅悕绉�"></el-input>
+                </el-form-item>
+                <el-form-item class="marginTopAndMarginBottom" label="鑱旂郴浜�" style="width: 49%">
+                  <el-input readonly v-model="dataForm.project.developUnitContact"
+                            placeholder="璇疯緭鍏ヨ仈绯讳汉"></el-input>
+                </el-form-item>
+                <el-form-item label="璇︾粏鍦板潃" style="width: 49%">
+                  <el-input readonly v-model="dataForm.project.developUnitAddress"
+                            placeholder="璇疯緭鍏ヨ缁嗗湴鍧�"></el-input>
+                </el-form-item>
+                <el-form-item label="鑱旂郴鏂瑰紡" style="width: 49%">
+                  <el-input readonly v-model="dataForm.project.developUnitContWay"
+                            placeholder="璇疯緭鍏ヨ仈绯绘柟寮�"></el-input>
+                </el-form-item>
+              </div>
+            </div>
+            <div class="el-flex el-border-bottom">
+              <div  class="DWidth-Unt DAlign DHold">
+                琚祴浠朵俊鎭�
+              </div>
+              <div class="DOldForm el-border-left">
+                <el-form-item class="marginTopAndMarginBottom" label="杞欢鍚嶇О" style="width: 49%">
+                  <el-input readonly v-model="dataForm.project.softwareName" placeholder="璇疯緭鍏ヨ蒋浠跺悕绉�"></el-input>
+                </el-form-item>
+                <el-form-item class="marginTopAndMarginBottom" label="杞欢鏍囪瘑" style="width: 49%">
+                  <el-input readonly v-model="dataForm.project.softwareIdentity" placeholder="璇疯緭鍏ヨ蒋浠舵爣璇�"></el-input>
+                </el-form-item>
+                <el-form-item label="瀵嗙骇" style="width: 49%">
+                  <zt-dict readonly v-model="dataForm.project.secretClass" placeholder="瀵嗙骇" dict="secret_class"
+                           clearable></zt-dict>
+                </el-form-item>
+                <el-form-item label="鍏抽敭绛夌骇" style="width: 49%">
+                  <zt-dict readonly v-model="dataForm.project.criticalLevel" :radio="true" placeholder="鍏抽敭绛夌骇"
+                           clearable dict="critical_level"></zt-dict>
+                </el-form-item>
+                <el-form-item class="marginTopAndMarginBottom2" label="杩愯鐜" style="width: 49%">
+                  <el-input v-model="dataForm.softwareTestOrder.optEnviron" placeholder="璇疯緭鍏ヨ繍琛岀幆澧�"></el-input>
+                </el-form-item>
+                <el-form-item class="marginTopAndMarginBottom2" label="缂栫▼璇█" style="width: 49%">
+                  <el-input v-model="dataForm.softwareTestOrder.programLang" placeholder="璇疯緭鍏ョ紪绋嬭瑷�"></el-input>
+                </el-form-item>
+                <div class="el-flex el-border-top-and-bottom">
+                  <div style="width:88px !important;" class="DWidth DAlign DHold">
+                    琚祴浠跺強鍏朵粬鐩稿叧鐗╁搧娓呭崟
+                  </div>
+                  <div style="width: calc(100% - 120px);padding: 5px">
+                    <el-table class="el-software" height="230" border :data="dataForm.measuredList"
+                              @cell-click="handleCellClick"
+                              stripe>
+                      <el-table-column prop="no"  align="center"  width="80" label="搴忓彿"/>
+                      <el-table-column prop="name" min-width="300" label="鍚嶇О"/>
+                      <el-table-column align="center" prop="identify" width="180" label="鏍囪瘑/鐗堟湰">
+                        <template slot-scope="scope">
+                          <span v-if="editingCell && editingCell.row === scope.row && editingCell.column.property === scope.column.property">
+                            <el-input ref="editInput" v-model="scope.row.identify" placeholder="鏍囪瘑/鐗堟湰"></el-input>
+                          </span>
+                          <span v-else>{{ scope.row.identify }}</span>
+                        </template>
+                      </el-table-column>
+                      <el-table-column label="鏄惁琚祴浠�" width="180" align="center">
+                        <template slot-scope="scope">
+                          <zt-dict v-model="scope.row.isMeasured" dict="is_or_not" :radio="true"></zt-dict>
+                        </template>
+                      </el-table-column>
+                    </el-table>
+                  </div>
+                </div>
+                <div class="el-flex" style="height: 40px;">
+                  <div class="DWidth DAlign DHold">
+                    杞欢绫诲瀷
+                  </div>
+                  <div style="width: calc(100% - 120px)">
+                    <zt-dict v-model="dataForm.project.softwareType" :radio="true" dict="software_type"></zt-dict>
+                  </div>
+                </div>
+              </div>
+            </div>
+            <div class="el-flex el-border-bottom">
+              <div class="DWidth DAlign DHold">
+                娴嬭瘯瑕佹眰
+              </div>
+              <div class="el-border-left" style="width: 100%;">
+                <div class="el-flex el-border-bottom">
+                  <div class="DWidth DAlign DHold">
+                    娴嬭瘯渚濇嵁
+                  </div>
+                  <div class="el-border-left" style="width: 98%">
+                    <el-form-item style="width: 20%;padding-left:5%;margin-bottom: 0">
+                      <zt-dict v-model="dataForm.softwareTestOrder.testBasis" :radio="true" dict="test_basis"
+                               clearable  :inputName="dataForm.softwareTestOrder.otherBasis" origin="otherBasis" @getChangeInputData="getChangeInputData"></zt-dict>
+                    </el-form-item>
+                  </div>
+                </div>
+                <div class="el-flex el-border-bottom">
+                  <div class="DWidth DAlign DHold">
+                    娴嬭瘯绫诲瀷
+                  </div>
+                  <div class="el-border-left test-type-line-height" style="width: 98%">
+                    <el-form-item  style="width: 40%;padding-left:5%;margin-bottom: 0">
+                      <zt-dict-checkbox v-model="dataForm.softwareTestOrder.testType1" column="2" dict="test_type1"
+                                        clearable></zt-dict-checkbox>
+                    </el-form-item>
+                    <el-form-item style="width: 60%;padding-left: 15%;border-left: 1px solid rgba(0,0,0,.2);margin-bottom: 0">
+                      <zt-dict-checkbox v-model="dataForm.softwareTestOrder.testType2" dict="test_type2"
+                                        clearable></zt-dict-checkbox>
+                    </el-form-item>
+                  </div>
+                </div>
+                <div class="el-flex el-border-bottom">
+                  <div class="DWidth DAlign DHold">
+                    娴嬭瘯鐩稿叧鏍囧噯/瑕佹眰
+                  </div>
+                  <div class="el-border-left" style="width: 98%">
+                    <el-form-item style="width: 20%;padding-left:5%;margin-bottom: 0">
+                      <zt-dict  v-model="dataForm.softwareTestOrder.testStandard" :radio="true"
+                                origin="otherStandard" @getChangeInputData="getChangeInputData"
+                                dict="test_standard" :inputName="dataForm.softwareTestOrder.otherStandard">
+                      </zt-dict>
+                    </el-form-item>
+                  </div>
+                </div>
+                <div class="el-flex el-border-bottom">
+                  <div class="DWidth DAlign DHold">
+                    娴嬭瘯绾у埆
+                  </div>
+                  <div class="el-border-left" style="width: 98%">
+                    <el-form-item style="padding-left:5%;margin-bottom:0">
+                      <zt-dict v-model="dataForm.softwareTestOrder.testLevel" :radio="true" dict="test_level"></zt-dict>
+                    </el-form-item>
+                  </div>
+                </div>
+                <div class="el-flex el-border-bottom">
+                  <div class="DWidth DAlign DHold">
+                    寮�濮嬫棩鏈�
+                  </div>
+                  <div class="el-border-left startDate" style="width: 45%;">
+                    <el-form-item  style="width: 100%;padding-left:20px;margin:0;">
+                      <el-date-picker
+                        v-model="dataForm.softwareTestOrder.startDate"
+                        type="date"
+                        placeholder="閫夋嫨鏃ユ湡">
+                      </el-date-picker>
+                    </el-form-item>
+                  </div>
+                  <div class="DWidth DAlign DHold">
+                    缁撴潫鏃ユ湡
+                  </div>
+                  <div class="el-border-left endDate" style="width: 42%">
+                  <el-form-item  style="width: 100%;padding-left:20px;margin:0;">
+                    <el-date-picker
+                      v-model="dataForm.softwareTestOrder.endDate"
+                      type="date"
+                      placeholder="閫夋嫨鏃ユ湡">
+                    </el-date-picker>
+                  </el-form-item>
+                  </div>
+                </div>
+                <div class="el-flex el-border-bottom">
+                  <div class="DWidth DAlign DHold">
+                    娴嬭瘯鍦哄湴
+                  </div>
+                  <div class="el-border-left testVenue" style="width: 98%">
+                  <el-form-item  style="width: 98%;padding-left:20px;margin:0;">
+                    <el-input v-model="dataForm.softwareTestOrder.testVenue" placeholder="璇疯緭鍏ュ崟浣嶅悕绉�"></el-input>
+                  </el-form-item>
+                  </div>
+                </div>
+                <div class="el-flex">
+                  <div class="DWidth DAlign DHold">
+                    鍏朵粬瑕佹眰
+                  </div>
+                  <div class="el-border-left" style="width: 98%;">
+                    <el-form-item label="鏄惁鐩朇NAS绔�" label-width="130px" style="padding-left:5%;margin-bottom:0">
+                      <zt-dict v-model="dataForm.softwareTestOrder.otherRequire" :radio="true"
+                               dict="is_or_not"></zt-dict>
+                      <span>鍏朵粬:<el-input class="requireOther" v-model="dataForm.softwareTestOrder.requireOther"></el-input></span>
+                    </el-form-item>
+                  </div>
+                </div>
+              </div>
+            </div>
+            <div class="el-flex">
+              <div class="DWidth DAlign DHold">
+                濮旀墭鏂圭瀛�:
+              </div>
+              <div class="" style="width: 100%;">
+                <div class="el-flex " style="height: 40px">
+                  <div style="width: 60%">
+                    <span>{{ dataForm.softwareTestOrder.entrustSign }}</span>
+<!--                    <zt-select v-model="dataForm.softwareTestOrder.entrustSign" url="/sys/userEx/getUsersList" :multiple="true" :clearable="true" placeholder="濮旀墭鏂逛汉鍛�"/>-->
+                  </div>
+                  <div class="el-flex" style="margin-left: 10%">
+                    <el-date-picker
+                      v-model="dataForm.softwareTestOrder.entrustSignDate"
+                      type="date"
+                      placeholder="閫夋嫨鏃ユ湡">
+                    </el-date-picker>
+<!--                    {{ dataForm.softwareTestOrder.entrustSignDate | filterTime('YYYY骞碝M鏈圖D鏃�') }}-->
+                  </div>
+                </div>
+              </div>
+            </div>
+          </div>
+        </div>
+        <div class="el-flex el-border-bottom">
+          <div class="DPadding2 DAlign DHold">
+            鎵挎墭鏂�
+          </div>
+          <div class="el-border-left">
+            <div class="el-flex el-border-bottom">
+              <div class="DWidth-Unt DAlign DHold">
+                娴嬭瘯淇℃伅
+              </div>
+              <div class="DOldForm el-border-left">
+                <div class="el-flex el-border-bottom">
+                  <div class="DWidth DAlign DHold">
+                    娴嬭瘯鏃ユ湡
+                  </div>
+                  <div class="el-border-left startDate" style="width: 45%;">
+                    <el-form-item  style="width: 100%;padding-left:20px;margin:0;">
+                      <el-date-picker
+                        v-model="dataForm.softwareTestOrder.testDate"
+                        type="date"
+                        placeholder="閫夋嫨娴嬭瘯鏃ユ湡">
+                      </el-date-picker>
+                    </el-form-item>
+                  </div>
+                  <div class="DWidth DAlign DHold">
+                    浜や粯鏃ユ湡
+                  </div>
+                  <div class="el-border-left endDate" style="width: 42%">
+                    <el-form-item  style="width: 100%;padding-left:20px;margin:0;">
+                      <el-date-picker
+                        v-model="dataForm.softwareTestOrder.deliveryDate"
+                        type="date"
+                        placeholder="閫夋嫨浜や粯鏃ユ湡">
+                      </el-date-picker>
+                    </el-form-item>
+                  </div>
+                </div>
+                <div class="el-flex el-border-bottom">
+                  <div class="DWidth DAlign DHold">
+                    妫�娴嬭垂鐢�
+                  </div>
+                  <div class="el-border-left testCost" style="width: 98%">
+                    <el-form-item  style="width: 98%;padding-left:20px;margin:0;">
+                      <el-input v-model="dataForm.softwareTestOrder.testCost" placeholder="璇疯緭鍏ユ娴嬭垂鐢�"></el-input>
+                    </el-form-item>
+                  </div>
+                </div>
+                <div class="el-flex el-border-bottom">
+                  <div class="DWidth DAlign DHold">
+                    鐗╁搧鎬ц川
+                  </div>
+                  <div class="el-border-left" style="width: 98%">
+                    <el-form-item  style="width: 20%;padding-left:20px;margin:0;">
+                      <zt-dict v-model="dataForm.softwareTestOrder.articleNature" :radio="true"
+                               origin="otherNature" @getChangeInputData="getChangeInputData"
+                               dict="article_nature" :inputName="dataForm.softwareTestOrder.otherNature"></zt-dict>
+                    </el-form-item>
+                  </div>
+                </div>
+                <div class="el-flex el-border-bottom">
+                  <div class="DWidth DAlign DHold">
+                    鏍峰搧鐘舵��
+                  </div>
+                  <div class="el-border-left" style="width: 98%;">
+                    <el-form-item label="鏄惁婊¤冻娴嬭瘯瑕佹眰:" label-width="160px" style="margin-bottom: 0">
+                      <zt-dict v-model="dataForm.softwareTestOrder.sampleStatus" :radio="true"
+                               dict="is_satisfy"></zt-dict>
+                    </el-form-item>
+                  </div>
+                </div>
+                <div class="el-flex el-border-top">
+                  <div style="width:88px !important;" class="DWidth DAlign DHold">
+                    浜や粯鐗╂竻鍗�
+                  </div>
+                  <div style="width: calc(100% - 120px);padding: 5px">
+                    <el-table class="el-software" height="100" border :data="dataForm.deliverableList"
+                              stripe>
+                      <el-table-column type="index" align="center" width="80" label="搴忓彿"/>
+                      <el-table-column prop="name" min-width="300" label="鍚嶇О"></el-table-column>
+                      <el-table-column prop="identify" align="center" width="380" label="鏍囪瘑/鐗堟湰"></el-table-column>
+                    </el-table>
+                  </div>
+                </div>
+              </div>
+            </div>
+            <div class="el-flex el-border-bottom">
+              <div class="DWidth DAlign DHold">
+                娴嬭瘯鏈烘瀯淇℃伅
+              </div>
+              <div class="el-border-left csjgxx" style="width: 100%;">
+                <el-form-item class="marginTopAndMarginBottom" label-width="130px" label="娴嬭瘎鏈烘瀯鍚嶇О"
+                              style="width: 98%">
+                  <el-input v-model="dataForm.testAgencyInfo.agencyName" placeholder="璇疯緭鍏ュ崟浣嶅悕绉�"></el-input>
+                </el-form-item>
+                <el-form-item class="marginTopAndMarginBottom3" label-width="130px" label="鍦板潃" style="width: 98%">
+                  <el-input v-model="dataForm.testAgencyInfo.site" placeholder="璇疯緭鍏ヨ仈绯讳汉"></el-input>
+                </el-form-item>
+                <el-form-item class="marginTopAndMarginBottom2" label-width="130px" label="涓氬姟鑱旂郴" style="width: 49%">
+                  <el-input v-model="dataForm.testAgencyInfo.businContact" placeholder="璇疯緭鍏ヨ缁嗗湴鍧�"></el-input>
+                </el-form-item>
+                <el-form-item class="marginTopAndMarginBottom2" label-width="130px" label="涓氬姟鎶曡瘔" style="width: 49%">
+                  <el-input v-model="dataForm.testAgencyInfo.businComplaint" placeholder="璇疯緭鍏ヨ缁嗗湴鍧�"></el-input>
+                </el-form-item>
+                <el-form-item class="marginTopAndMarginBottom2" label-width="130px" label="瀹為獙瀹よ仈绯讳汉"
+                              style="width: 49%">
+                  <el-input v-model="dataForm.testAgencyInfo.laborContact" placeholder="璇疯緭鍏ヨ缁嗗湴鍧�"></el-input>
+                </el-form-item>
+                <el-form-item class="marginTopAndMarginBottom2" label-width="130px" label="瀹為獙瀹よ仈绯荤數璇�"
+                              style="width: 49%">
+                  <el-input v-model="dataForm.testAgencyInfo.labContactNum" placeholder="璇疯緭鍏ヨ缁嗗湴鍧�"></el-input>
+                </el-form-item>
+                <el-form-item class="marginTopAndMarginBottom2" label-width="130px" label="閭斂缂栫爜" style="width: 49%">
+                  <el-input v-model="dataForm.testAgencyInfo.postalCode" placeholder="璇疯緭鍏ヨ缁嗗湴鍧�"></el-input>
+                </el-form-item>
+                <el-form-item class="marginTopAndMarginBottom2" label-width="130px" label="浼犵湡" style="width: 49%">
+                  <el-input v-model="dataForm.testAgencyInfo.fax" placeholder="璇疯緭鍏ヨ缁嗗湴鍧�"></el-input>
+                </el-form-item>
+                <el-form-item class="marginTopAndMarginBottom2" label-width="130px" label="鍦板潃" style="width: 98%">
+                  <el-input v-model="dataForm.testAgencyInfo.site" placeholder="璇疯緭鍏ヨ缁嗗湴鍧�"></el-input>
+                </el-form-item>
+                <el-form-item class="marginTopAndMarginBottom2" label-width="130px" label="涓氬姟鎶曡瘔" style="width: 98%">
+                  <el-input v-model="dataForm.testAgencyInfo.businComplaint" placeholder="璇疯緭鍏ヨ缁嗗湴鍧�"></el-input>
+                </el-form-item>
+              </div>
+            </div>
+            <div class="el-flex">
+              <div class="DWidth DAlign DHold">
+                鎵挎墭鏂圭瀛�:
+              </div>
+              <div class="" style="width: 100%;">
+                <div class="el-flex" style="height: 40px">
+                  <div style="width: 60%">
+                    <zt-select v-model="dataForm.softwareTestOrder.contractSign" url="/sys/userEx/getUsersList" placeholder="鎵挎墭鏂逛汉鍛�"/>
+<!--                    <span>{{ dataForm.contractSign }}</span>-->
+                  </div>
+                  <div class="el-flex" style="margin-left: 10%">
+<!--                    {{ dataForm.softwareTestOrder.contractSignDate | filterTime('YYYY骞碝M鏈圖D鏃�') }}-->
+                    <el-date-picker
+                      v-model="dataForm.softwareTestOrder.contractSignDate"
+                      type="date"
+                      placeholder="閫夋嫨鏃ユ湡">
+                    </el-date-picker>
+                  </div>
+                </div>
+              </div>
+            </div>
+          </div>
+        </div>
+        <div class="el-flex el-border-bottom">
+          <div class="DPadding3 DAlign DHold">
+            璇存槑
+          </div>
+          <div class="el-border-left">
+            <div>
+              <span>
+                1銆佽嫢鏃犵壒娈婅鏄庯紝瑙嗗悓瀹㈡埛纭鏈腑蹇冮噰鐢ㄧ殑鎶�鏈柟娉曘�佽瘉涔︾被鍨嬨�佸饱绾︽椂闄愬拰鏀惰垂鏍囧噯锛堝鎴疯嫢鏈夌壒娈婅姹傦紝璇蜂簨鍏堟彁鍑哄苟缁忓弻鏂瑰崗鍟嗙‘璁わ紝骞跺湪濮旀墭鍗曠壒娈婅姹傛爮涓敞鏄庯紝鎴栬�呴檮椤佃鏄庯級锛屽悓鏃舵娴嬫椿鍔ㄤ粎瀵规潵鏍疯礋璐c��
+              </span>
+            </div>
+            <div>
+              <span>
+                2銆佸鎵樺崟浣滀负鍙屾柟鍗忚鍜屽鎴锋彁鍙栫墿鍝佺殑鍑瘉锛岃瀹㈡埛璇︾粏濉啓鏍稿骞跺Ε鍠勪繚瀛樸��
+              </span>
+            </div>
+          </div>
+        </div>
+        <div class="el-flex order-sc" style="height: 60px">
+<!--          <div class="DPadding3 DAlign DHold">-->
+<!--            濮旀墭鍗曚笂浼�-->
+<!--          </div>-->
+            <el-form-item class="marginTopAndMarginBottom" style="width: 100%">
+              <config-uploader :lineHeight="true" busi-type="test_order" model-name="dataForm" :dataForm="dataForm"
+                               v-model="dataForm.files"/>
+            </el-form-item>
+        </div>
+      </div>
+
     </el-form>
+    <template v-slot:footer>
+      <el-button v-if="dataForm.disabled" type="primary" @click="print()">鎵撳嵃</el-button>
+    </template>
   </zt-dialog>
 </template>
 
 <script>
-  export default {
-    data() {
-      return {
-        dataForm: {
-          id: '',
-          projectId: ''
-        }
+  import Cookies from 'js-cookie'
+  import qs from 'qs'
+export default {
+  data() {
+    return {
+      // inputName:'',
+      eventIndex:'',
+      editingCell:null,
+      dataForm: {
+        id: null,
+        projectId: null,
+        softwareTestOrder: {
+          code:'',
+          optEnviron:'',
+          programLang:'',
+          testBasis:'',
+          testType1:'',
+          testType2:'',
+          testStandard:'',
+          startDate:'',
+          endDate:'',
+          testVenue:'',
+          otherRequire:'',
+          testDate:'',
+          deliveryDate:'',
+          testCost:'',
+          articleNature:'',
+          sampleStatus:'',
+          entrustSign:'',
+          entrustSignDate:'',
+          contractSign:'',
+          contractSignDate:'',
+          otherBasis:'otherBasis',
+          otherStandard:'otherStandard',
+          requireOther:'requireOther',
+          otherNature:'otherNature',
+        },
+        project: {
+          code: '',
+          creator: '',
+          criticalLevel: '',
+          developUnitAddress: '',
+          developUnitContWay: '',
+          developUnitContact: '',
+          developUnitName: '',
+          entrustUnitAddress: '',
+          entrustUnitContWay: '',
+          entrustUnitContact: '',
+          entrustUnitName: '',
+          softwareIdentity: '',
+          isContract: '',
+          projectLeader: '',
+          projectReviewer: '',
+          projectTesters: '',
+          secretClass: '',
+          softwareName: '',
+          softwareType: '',
+          tenantId: '',
+          testLevel: '',
+        },
+        testAgencyInfo: {
+          agencyName:'',
+          site:'',
+          businContact:'',
+          businComplaint:'',
+          laborContact:'',
+          labContactNum:'',
+          postalCode:'',
+          fax:''
+        },
+        deliverableList: [],
+        measuredList: [],
       }
+    }
+  },
+  methods: {
+    // getDictLabel(event,name){
+    //   if(name.indexOf("鍏朵粬")!=-1){
+    //     console.log(name,'瀛楀吀鍚嶅瓧q34567')
+    //     this.eventIndex = event
+    //     this.inputName='q14eeff'
+    //   }
+    // },
+    getChangeInputData(data,ogn){
+      // console.log(ogn)
+      this.$set(this.dataForm.softwareTestOrder, ogn, data);
+      console.log(this.dataForm.softwareTestOrder[ogn]);
+      // console.log(this.dataForm.softwareTestOrder[ogn])
     },
-    methods: {
-      // 鑾峰彇淇℃伅
-      async getInfo() {
-        let res = await this.$http.get(`/project/SoftwareTestOrder/${this.dataForm.id}`)
+    handleCellClick(row, column) {
+      this.editingCell = {row, column}
+      this.$nextTick(() => {
+        if(this.$refs.editInput){
+          this.$refs.editInput.focus()
+        }
+      })
+      console.log(this.editingCell, 'this.editingCell')
+    },
+
+    init(id,row){
+      this.dataForm.id = row.id
+      this.dataForm.projectId = row.projectId
+      // this.dataForm.disabled
+      this.getInfo()
+      console.log(this.dataForm.id,this.dataForm.projectId,'params params')
+    },
+    // 鑾峰彇淇℃伅
+    async getInfo() {
+      let params = {
+        orderId: this.dataForm.id,
+        projectId: this.dataForm.projectId
+      }
+      console.log(this.dataForm, "this.dataForm")
+      let res = await this.$http.get(`/project/SoftwareTestOrder/getDto`, {params: params})
+      if (res.data) {
         this.dataForm = {
           ...this.dataForm,
           ...res.data
         }
-        console.log(this.dataForm,"this.dataForm")
-      },
-      // 琛ㄥ崟鎻愪氦
-      async formSubmit() {
-        let res = await this.$http[!this.dataForm.id ? 'post' : 'put']('/project/SoftwareTestOrder/', this.dataForm)
-        if (res.success) {
-          await this.$tip.success()
-          this.$refs.dialog.close()
-          this.$emit('refreshDataList')
+        if(this.dataForm.softwareTestOrder){
+          if(this.dataForm.softwareTestOrder.testType1){
+            this.dataForm.softwareTestOrder.testType1=this.dataForm.softwareTestOrder.testType1.split(',')
+            console.log(this.dataForm.softwareTestOrder.testType1)
+          }
+          if(this.dataForm.softwareTestOrder.testType2){
+            this.dataForm.softwareTestOrder.testType2=this.dataForm.softwareTestOrder.testType2.split(',')
+            console.log(this.dataForm.softwareTestOrder.testType2)
+          }
+        }
+        if(this.dataForm.project === null){
+          this.dataForm.project={}
+        }
+        if(this.dataForm.softwareTestOrder === null){
+          this.dataForm.softwareTestOrder={}
+        }
+        if(this.dataForm.testAgencyInfo === null){
+          this.dataForm.testAgencyInfo={}
+        }
+      }
+      // console.log(this.dataForm, "this.dataForm")
+      console.log(this.dataForm,"getInfo this.dataForm")
+    },
+    async print(){
+      var params = qs.stringify({
+        token: Cookies.get('token'),
+        id:this.dataForm.id
+      })
+      let apiURL = `/project/SoftwareTestOrder/exportWord/`
+      window.location.href = `${window.SITE_CONFIG['apiURL']}${apiURL}?${params}`
+    },
+    // 琛ㄥ崟鎻愪氦
+    async formSubmit() {
+      console.log(this.dataForm, 'formSubmit this.dataForm')
+      if(this.dataForm.softwareTestOrder.testType1){
+        this.dataForm.softwareTestOrder.testType1=this.dataForm.softwareTestOrder.testType1.join(',')
+      }
+      if(this.dataForm.softwareTestOrder.testType2){
+        this.dataForm.softwareTestOrder.testType2=this.dataForm.softwareTestOrder.testType2.join(',')
+      }
+      console.log(this.dataForm.softwareTestOrder.testType1)
+      let res = await this.$http[!this.dataForm.id ? 'post' : 'put']('/project/SoftwareTestOrder/', this.dataForm)
+      if (res.success) {
+        await this.$tip.success()
+        this.$refs.dialog.close()
+        this.$emit('refreshDataList')
+      }else{
+        if(this.dataForm.softwareTestOrder.testType1){
+          this.dataForm.softwareTestOrder.testType1=this.dataForm.softwareTestOrder.testType1.split(',')
+        }
+        if(this.dataForm.softwareTestOrder.testType2){
+          this.dataForm.softwareTestOrder.testType2=this.dataForm.softwareTestOrder.testType2.split(',')
         }
       }
     }
   }
+}
 </script>
+<style>
+.weiTuoDanAuto {
+  width: 70%;
+//border: 1px solid; margin: 0 auto;
+}
+
+.weiTuoDanAuto .el-radio {
+  padding: 5px;
+  margin-right: 10px;
+}
+
+.zt .weiTuoDanAuto .el-form-item.el-form-item--default {
+  margin-right: 0;
+}
+
+.el-flex {
+  display: flex;
+  align-items: center;
+}
+
+.DWidth {
+  width: 100px;
+}
+
+.DWidth-Unt {
+  width: 100px;
+}
+
+.DPadding1 {
+  padding: 6px;
+}
+
+.DPadding2 {
+  padding: 7px;
+}
+
+.DPadding3 {
+  padding: 4px;
+}
+
+.DAlign {
+  text-align: center;
+}
+
+.el-border-left {
+  border-left: 1px solid rgba(0, 0, 0, .2);
+}
+
+.DOldForm {
+  width: 100%;
+}
+
+.el-border-top-and-bottom {
+  border-top: 1px solid rgba(0, 0, 0, .2);
+  border-bottom: 1px solid rgba(0, 0, 0, .2);
+}
+
+.DOldForm > .el-form-item > .el-form-item__content {
+  width: calc(100% - 120px);
+}
+.startDate > .el-form-item > .el-form-item__content {
+  width: 95%;
+}
+.endDate > .el-form-item > .el-form-item__content {
+  width: 95%;
+}
+.testCost > .el-form-item > .el-form-item__content {
+  width: 100%;
+}
+.testVenue > .el-form-item > .el-form-item__content {
+  width: 100%;
+}
+.el-border-bottom {
+  border-bottom: 1px solid rgba(0, 0, 0, .2);
+}
+
+.zt .el-table.el-software th {
+  background: transparent;
+}
+
+.zt .el-table.el-software th > .cell {
+  font-weight: 500;
+}
+
+.DHold {
+  font-weight: 600;
+}
+
+.zt .el-table.el-software {
+  font-size: 14px;
+}
+
+.weiTuoDanAuto .marginTopAndMarginBottom {
+  margin-top: 10px !important;
+  margin-bottom: 0 !important;
+}
+
+.weiTuoDanAuto .marginTopAndMarginBottom2 {
+  margin-top: -10px !important;
+  margin-bottom: 10px !important;
+}
+.weiTuoDanAuto .marginTopAndMarginBottom3 {
+  margin-top: 0 !important;
+  margin-bottom: 10px !important;
+}
+.csjgxx > .el-form-item > .el-form-item__content {
+  width: calc(100% - 130px);
+}
+.order-sc > .el-form-item > .el-form-item__content {
+  width:100%;
+}
+.test-type-line-height>.el-form-item>.el-form-item__content{
+  line-height: 30px;
+}
+.requireOther.el-input{
+  position: absolute;
+}
+</style>

--
Gitblit v1.9.1