JX.Li 10 ヶ月 前
コミット
8d1490d0d9

+ 128 - 0
src/components/ConstructionDetails/indexGY.vue

@@ -76,6 +76,134 @@
                 </el-collapse-item>
               </el-collapse>
             </el-checkbox-group>
+            <el-checkbox-group v-if="enginClassification=='架空管线' || enginClassification=='每日施工日志'" v-model="checkList">
+              <el-collapse
+                class="rmOldPie"
+                v-for="(e,idx) in currentCollapses"
+                :key="idx"
+              >
+                <el-collapse-item :name="idx">
+                  <template slot="title">
+                    <div style="display: flex;width: 100%;height: 100%;">
+                      <el-checkbox :label="e.id" @change="handleCheckedCitiesChange">
+                        <h2 style="margin-left: 1%;font-weight: 700;">{{ e.updateTime }}</h2>
+                      </el-checkbox>
+                      <h2 :style="'margin-left: 20%;font-weight: 700;'+ (e.state == '1'? 'color: #1ab394':'') ">  {{e.state=='0'?"该施工信息审核未通过":e.state=='1'?"该施工信息审核通过":""}}</h2>
+                    </div>
+                  </template>
+                  <div class="personInfo">
+                    <span>施工人:{{ userNames[idx].nickName }}</span>
+                    <span>施工人电话:{{ userNames[idx].phonenumber }}</span>
+                  </div>
+                  <hr>
+                  <el-form :model="e">
+                    <el-form-item
+                      :prop="e.remark"
+                      :class="'labelWidth'"
+                      label="施工内容"
+                      label-width="95px"
+                    >
+                      <div class="block" style="display: inline-block; margin-right: 20px;">
+                        <el-input v-model="e.remark" placeholder="请输入施工内容" style="width: 100%" maxlength="100"
+                                  type="textarea" :readonly="['review','read-only'].includes(status)"></el-input>
+                      </div>
+                    </el-form-item>
+                  </el-form>
+                  <div style="display: flex;width: 100%;height: 100%;">
+                    <h3 style="width: 95px;font-weight: 600;text-align: left;text-indent: 25px;">图片</h3>
+                    <ObsImageUpload
+                      :class=" (status == 'read-only' || status == 'review' )? 'obsImageUploads' : '' "
+                      ref="obsImageUpload"
+                      :limit="11"
+                      :fileType="['png', 'jpg', 'jpeg']"
+                      @input="getUrl(arguments,idx)"
+                      :value="e.zEngiineeringPhotoBoList"
+                      :disabled="['review','read-only'].includes(status)"
+                    ></ObsImageUpload>
+                  </div>
+                  <!--  用料明细 -->
+                  <div v-if="['除锈刷油','全貌照片'].includes(activeNames)"
+                       v-for="(i,index) in e.zEngineeringMaterialBo || [] "
+                       :key="index"
+                  >
+                    <el-form :model="nodeInfo" class="nodeForm materialForm">
+                      <el-form-item
+                        :prop="i.materialQuality"
+                        :class="'labelWidth'"
+                        :label="'材质'"
+                        label-width="95px"
+                      >
+                        <el-select v-model="i.materialQuality" placeholder="请选择材质" style="width: 100%"
+                                   @change="getEnginSpecificationsList(i, index,idx)" :disabled="['review','read-only'].includes(status)">
+                          <el-option
+                            v-for="e in materialQualityList"
+                            :key="e.id"
+                            :label="e.name"
+                            :value="e.id"
+                          ></el-option>
+                        </el-select>
+                      </el-form-item>
+                      <el-form-item
+                        :prop="i.specifications"
+                        :class="'labelWidth'"
+                        label="规格"
+                        label-width="95px"
+
+                      >
+                        <el-select v-model="i.specifications" placeholder="请选择规格" style="width: 100%"
+                                   :disabled="['review','read-only'].includes(status)" @change="$forceUpdate">
+                          <el-option
+                            v-for="e in corrosionLevelListAll.filter(o => o.materId == i.materialQuality)"
+                            :key="e.id"
+                            :label="e.name"
+                            :value="e.id"
+                          ></el-option>
+                        </el-select>
+                      </el-form-item>
+                      <!--                    <el-form-item-->
+                      <!--                      :prop="i.remark + ''"-->
+                      <!--                      :class="'labelWidth'"-->
+                      <!--                      label="施工内容"-->
+                      <!--                      label-width="95px"-->
+                      <!--                    >-->
+                      <!--                      <div class="block" style="display: inline-block; margin-right: 20px;">-->
+                      <!--                        <el-input v-model="i.remark" placeholder="请输入施工内容" style="width: 100%" maxlength="100"-->
+                      <!--                                  type="textarea" :disabled="status == 'read-only'"></el-input>-->
+                      <!--                      </div>-->
+                      <!--                    </el-form-item>-->
+
+                      <el-form-item
+                        :prop="i.number + ''"
+                        :class="'labelWidth'"
+                        label="米数"
+                        label-width="95px"
+                      >
+                        <div class="block" style="display: inline-block; margin-right: 20px;">
+                          <el-input v-model="i.number" placeholder="请输入米数" style="width: 100%"
+                                    oninput="value=value.match(/\d+(\.\d{0,1})?/) ? value.match(/\d+(\.\d{0,1})?/)[0] : ''"
+                                    max="999999999" :disabled="['review','read-only'].includes(status)"></el-input>
+                        </div>
+                      </el-form-item>
+                      <!--                    <el-form-item-->
+                      <!--                      :prop="i.remark + ''"-->
+                      <!--                      label="描述"-->
+                      <!--                    >-->
+                      <!--                      <div class="block" style="display: inline-block; margin-right: 20px;">-->
+                      <!--                        <el-input v-model="i.remark" placeholder="请输入描述" style="width: 100%" maxlength="100"-->
+                      <!--                                  :disabled="status == 'read-only'"></el-input>-->
+                      <!--                      </div>-->
+                      <!--                    </el-form-item>-->
+                    </el-form>
+                  </div>
+                  <div style="display: flex;  justify-content: flex-end; width: 100%;height: 100%;"
+                       v-if="status == 'put'">
+                    <el-button plain type="danger" @click=" handleDelete(e)"
+                               v-hasPermi="['zdsz:engineeringCivilNode:remove']" style="width: 94px;">删除
+                    </el-button>
+                  </div>
+                </el-collapse-item>
+              </el-collapse>
+            </el-checkbox-group>
             <el-checkbox-group v-if="enginClassification=='室内管线'" v-model="checkList">
               <el-collapse
                 class="rmOldPie"

+ 140 - 46
src/components/EnginNodeInfo/indexGY.vue

@@ -9,7 +9,8 @@
     <!-- 节点表单 庭院 -->
     <el-form ref="fangxianForm" v-if="flag=='gy_out'" :model="nodeInfo" :rules="nodeRules" label-width="200px">
       <h2 style="margin-left: 16%;font-weight: 800;">{{ name }}</h2>
-      <el-form-item label="施工时间" prop="constructTime" v-if="'调压柜' != name && '阀井'!==name&& '顶管材料米数'!==name&& '管道施工记录'!==name">
+      <el-form-item label="施工时间" prop="constructTime"
+                    v-if="'调压柜' != name && '阀井'!==name&& '顶管材料米数'!==name&& '管道施工记录'!==name">
         <el-date-picker
           :disabled="formType"
           v-model="nodeInfo.constructTime"
@@ -106,7 +107,8 @@
         <el-button @click="addMaterial()">新增用料信息</el-button>
       </div>
       <el-row v-for="(item, index) in zEngineeringMaterialBo"
-              v-if="['焊接、防腐','架空管线','下管','沟下连头','顶管材料米数'].includes(name)" :key="index" style="left: 10.5%;"
+              v-if="['焊接、防腐','架空管线','下管','沟下连头','顶管材料米数'].includes(name)" :key="index"
+              style="left: 10.5%;"
               :class="'rowStructure'">
         <el-col :span="7">
           <el-form-item
@@ -172,33 +174,33 @@
           删除
         </el-button>
       </el-row>
-<!--      <el-row v-for="(item, index) in zEngineeringMaterialBo" v-if="['阀井'].includes(name)" :key="index"-->
-<!--              style="left: 10.5%;" :class="'rowStructure'">-->
-<!--        <el-col :span="7">-->
-<!--          <el-form-item-->
-<!--            :prop="'zEngineeringMaterialBo.' + index + '.remark'"-->
-<!--            label-width="50px"-->
-<!--            label="型号"-->
-<!--          >-->
-<!--            <div class="block" style="display: inline-block; margin-right: 20px;">-->
-<!--              <el-input v-model="item.remark" placeholder="请输入型号" style="width: 100%"-->
-<!--                        :disabled="status == 'read-only'"/>-->
-<!--            </div>-->
-<!--          </el-form-item>-->
-<!--        </el-col>-->
-<!--        <el-col :span="7">-->
-<!--          <el-form-item-->
-<!--            :prop="'zEngineeringMaterialBo.' + index + '.number'"-->
-<!--            label-width="50px"-->
-<!--          >-->
-<!--            <div class="block" style="display: inline-block; margin-right: 20px;"></div>-->
-<!--          </el-form-item>-->
-<!--        </el-col>-->
+      <!--      <el-row v-for="(item, index) in zEngineeringMaterialBo" v-if="['阀井'].includes(name)" :key="index"-->
+      <!--              style="left: 10.5%;" :class="'rowStructure'">-->
+      <!--        <el-col :span="7">-->
+      <!--          <el-form-item-->
+      <!--            :prop="'zEngineeringMaterialBo.' + index + '.remark'"-->
+      <!--            label-width="50px"-->
+      <!--            label="型号"-->
+      <!--          >-->
+      <!--            <div class="block" style="display: inline-block; margin-right: 20px;">-->
+      <!--              <el-input v-model="item.remark" placeholder="请输入型号" style="width: 100%"-->
+      <!--                        :disabled="status == 'read-only'"/>-->
+      <!--            </div>-->
+      <!--          </el-form-item>-->
+      <!--        </el-col>-->
+      <!--        <el-col :span="7">-->
+      <!--          <el-form-item-->
+      <!--            :prop="'zEngineeringMaterialBo.' + index + '.number'"-->
+      <!--            label-width="50px"-->
+      <!--          >-->
+      <!--            <div class="block" style="display: inline-block; margin-right: 20px;"></div>-->
+      <!--          </el-form-item>-->
+      <!--        </el-col>-->
 
-<!--        <el-button v-if="zEngineeringMaterialBo.length > 0" @click="removezEngineeringMaterialBo(index)">-->
-<!--          删除-->
-<!--        </el-button>-->
-<!--      </el-row>-->
+      <!--        <el-button v-if="zEngineeringMaterialBo.length > 0" @click="removezEngineeringMaterialBo(index)">-->
+      <!--          删除-->
+      <!--        </el-button>-->
+      <!--      </el-row>-->
       <hr style="position: relative;left: 10%;">
     </el-form>
     <el-form ref="fangxianForm" v-if="flag=='gy_inner'" :model="nodeInfo" :rules="nodeRules" label-width="200px">
@@ -316,6 +318,98 @@
       </el-form-item>
       <hr style="position: relative;left: 10%;">
     </el-form>
+    <el-form ref="fangxianForm" v-if="flag=='gy_jkgx' || flag=='gy_log_every_day'" :model="nodeInfo" :rules="nodeRules"
+             label-width="200px">
+      <h2 style="margin-left: 16%;font-weight: 800;">{{ name }}</h2>
+      <el-form-item
+        :prop="nodeInfo.remark"
+        :class="'labelWidth'"
+        label="施工内容"
+        label-width="200px"
+      >
+        <div class="block" style="display: inline-block; margin-right: 20px;">
+          <el-input v-model="nodeInfo.remark" placeholder="请输入施工内容" style="width: 100%" maxlength="100"
+                    type="textarea"></el-input>
+        </div>
+      </el-form-item>
+      <el-form-item label="照片" prop="zEngiineeringPhotoBoList" class="obsImage">
+        <ObsImageUpload ref="obsImageUpload" :limit="9999" :fileType="['png', 'jpg', 'jpeg']"
+                        :value="nodeInfo.zEngiineeringPhotoBoList"
+                        @input="getUrl"></ObsImageUpload>
+      </el-form-item>
+      <div style="width: 25%;position: relative;left: 15.5%;top: -8px;"
+           v-if="['焊接、防腐','架空管线','下管','沟下连头','顶管材料米数'].includes(name)">
+        <el-button @click="addMaterial()">新增用料信息</el-button>
+      </div>
+      <el-row v-for="(item, index) in zEngineeringMaterialBo"
+              v-if="['除锈刷油','全貌照片'].includes(name)" :key="index" style="left: 10.5%;"
+              :class="'rowStructure'">
+        <el-col :span="7">
+          <el-form-item
+            :prop="'zEngineeringMaterialBo.' + index + '.materialQuality'"
+            label-width="50px"
+            label="材质"
+
+          >
+            <el-select v-model="item.materialQuality" placeholder="请选择材质" style="width: 100%"
+                       @change="getEnginSpecificationsList(item, index)" filterable
+                       @blur="selectBlur(arguments,index,'materialQuality')">
+              <el-option
+                v-for="e in materialQualityList"
+                :key="e.id"
+                :label="e.name"
+                :value="e.id"
+              ></el-option>
+            </el-select>
+          </el-form-item>
+        </el-col>
+        <el-col :span="7">
+          <el-form-item
+            :prop="'zEngineeringMaterialBo.' + index + '.specifications'"
+            label-width="50px"
+            label="规格"
+
+          >
+            <el-select v-model="item.specifications" placeholder="请选择规格" style="width: 100%" filterable
+                       @blur="selectBlur(arguments,index,'specifications')">
+              <el-option
+                v-for="e in specificationsList"
+                :key="e.id"
+                :label="e.name"
+                :value="e.id"
+              ></el-option>
+            </el-select>
+          </el-form-item>
+        </el-col>
+        <el-col :span="7">
+          <el-form-item
+            :prop="'zEngineeringMaterialBo.' + index + '.number'"
+            label-width="50px"
+            label="米数"
+          >
+            <div class="block" style="display: inline-block; margin-right: 20px;">
+              <el-input v-model="item.number" placeholder="请输入米数" style="width: 100%"
+                        oninput="value=value.match(/\d+(\.\d{0,1})?/) ? value.match(/\d+(\.\d{0,1})?/)[0] : ''"
+                        :disabled="status == 'read-only'">
+                <template slot="append">米</template>
+              </el-input>
+            </div>
+          </el-form-item>
+        </el-col>
+        <el-col :span="7">
+          <el-form-item
+            :prop="'zEngineeringMaterialBo.' + index + '.number'"
+            label-width="50px"
+          >
+            <div class="block" style="display: inline-block; margin-right: 20px;"></div>
+          </el-form-item>
+        </el-col>
+        <el-button v-if="zEngineeringMaterialBo.length > 0" @click="removezEngineeringMaterialBo(index)">
+          删除
+        </el-button>
+      </el-row>
+      <hr style="position: relative;left: 10%;">
+    </el-form>
   </div>
 </template>
 
@@ -461,15 +555,15 @@ export default {
           this.nodeInfoBo.zEngineeringInfoBo.zEngineeringMaterialBo = this.zEngineeringMaterialBo
           this.nodeInfoBo.zEngineeringInfoBo.constructAddre = this.nodeInfo.constructAddre
           this.nodeInfoBo.zEngineeringInfoBo.constructTime = this.nodeInfo.constructTime
-          this.nodeInfoBo.zEngineeringInfoBo.boxBrand=this.nodeInfo.boxBrand
-          this.nodeInfoBo.zEngineeringInfoBo.lightning=this.nodeInfo.lightning
-          this.nodeInfoBo.zEngineeringInfoBo.bottomLeg=this.nodeInfo.bottomLeg
-          this.nodeInfoBo.zEngineeringInfoBo.stonePowder=this.nodeInfo.stonePowder
-          this.nodeInfoBo.zEngineeringInfoBo.groundHardening=this.nodeInfo.groundHardening
-          this.nodeInfoBo.zEngineeringInfoBo.cannula=this.nodeInfo.cannula
-          this.nodeInfoBo.zEngineeringInfoBo.wallPlaster=this.nodeInfo.wallPlaster
-          this.nodeInfoBo.zEngineeringInfoBo.protectiveNet=this.nodeInfo.protectiveNet
-          this.nodeInfoBo.zEngineeringInfoBo.starAnise=this.nodeInfo.starAnise
+          this.nodeInfoBo.zEngineeringInfoBo.boxBrand = this.nodeInfo.boxBrand
+          this.nodeInfoBo.zEngineeringInfoBo.lightning = this.nodeInfo.lightning
+          this.nodeInfoBo.zEngineeringInfoBo.bottomLeg = this.nodeInfo.bottomLeg
+          this.nodeInfoBo.zEngineeringInfoBo.stonePowder = this.nodeInfo.stonePowder
+          this.nodeInfoBo.zEngineeringInfoBo.groundHardening = this.nodeInfo.groundHardening
+          this.nodeInfoBo.zEngineeringInfoBo.cannula = this.nodeInfo.cannula
+          this.nodeInfoBo.zEngineeringInfoBo.wallPlaster = this.nodeInfo.wallPlaster
+          this.nodeInfoBo.zEngineeringInfoBo.protectiveNet = this.nodeInfo.protectiveNet
+          this.nodeInfoBo.zEngineeringInfoBo.starAnise = this.nodeInfo.starAnise
           this.nodeInfoBo.zEngineeringInfoBo.remark = this.nodeInfo.remark
           // delete this.nodeInfo.zEngiineeringPhotoBoList
           console.log('即将返回的节点Info', this.nodeInfoBo)
@@ -513,31 +607,31 @@ export default {
       this.nodeInfo.zEngiineeringPhotoBoList = this.$refs.obsImageUpload.fileList ? this.$refs.obsImageUpload.fileList.map(e => e.url) : [];
     },
     getProtectiveNetUrl(url) {
-      this.nodeInfo.protectiveNet = this.$refs.protectiveNet.fileList ? this.$refs.protectiveNet.fileList.map(e=>e.url):[];
+      this.nodeInfo.protectiveNet = this.$refs.protectiveNet.fileList ? this.$refs.protectiveNet.fileList.map(e => e.url) : [];
     },
     getWallPlasterUrl(url) {
-      this.nodeInfo.wallPlaster = this.$refs.wallPlaster.fileList ? this.$refs.wallPlaster.fileList.map(e=>e.url):[];
+      this.nodeInfo.wallPlaster = this.$refs.wallPlaster.fileList ? this.$refs.wallPlaster.fileList.map(e => e.url) : [];
     },
     getStarAniseUrl(url) {
-      this.nodeInfo.starAnise = this.$refs.starAnise.fileList ? this.$refs.starAnise.fileList.map(e=>e.url):[];
+      this.nodeInfo.starAnise = this.$refs.starAnise.fileList ? this.$refs.starAnise.fileList.map(e => e.url) : [];
     },
     getCannulaUrl(url) {
-      this.nodeInfo.cannula = this.$refs.cannula.fileList ? this.$refs.cannula.fileList.map(e=>e.url):[];
+      this.nodeInfo.cannula = this.$refs.cannula.fileList ? this.$refs.cannula.fileList.map(e => e.url) : [];
     },
     getGroundHardeningUrl(url) {
-      this.nodeInfo.groundHardening = this.$refs.groundHardening.fileList ? this.$refs.groundHardening.fileList.map(e=>e.url):[];
+      this.nodeInfo.groundHardening = this.$refs.groundHardening.fileList ? this.$refs.groundHardening.fileList.map(e => e.url) : [];
     },
     getLightningUrl(url) {
-      this.nodeInfo.lightning = this.$refs.lightning.fileList ? this.$refs.lightning.fileList.map(e=>e.url):[];
+      this.nodeInfo.lightning = this.$refs.lightning.fileList ? this.$refs.lightning.fileList.map(e => e.url) : [];
     },
     getboxBrandUrl(url) {
-      this.nodeInfo.boxBrand = this.$refs.boxBrand.fileList ? this.$refs.boxBrand.fileList.map(e=>e.url):[];
+      this.nodeInfo.boxBrand = this.$refs.boxBrand.fileList ? this.$refs.boxBrand.fileList.map(e => e.url) : [];
     },
     getBottomLegUrl(url) {
-      this.nodeInfo.bottomLeg = this.$refs.bottomLeg.fileList ? this.$refs.bottomLeg.fileList.map(e=>e.url):[];
+      this.nodeInfo.bottomLeg = this.$refs.bottomLeg.fileList ? this.$refs.bottomLeg.fileList.map(e => e.url) : [];
     },
     getstonePowderUrl(url) {
-      this.nodeInfo.stonePowder = this.$refs.stonePowder.fileList ? this.$refs.stonePowder.fileList.map(e=>e.url):[];
+      this.nodeInfo.stonePowder = this.$refs.stonePowder.fileList ? this.$refs.stonePowder.fileList.map(e => e.url) : [];
     },
     getUrl1(url) {
       this.nodeInfo.zEngiineeringPhotoBoListOne = this.$refs.obsImageUpload1.fileList ? this.$refs.obsImageUpload1.fileList.map(e => e.url) : [];

+ 12 - 0
src/views/zdsz/engineeringGY/index.vue

@@ -1086,6 +1086,10 @@ export default {
         str = 'gy_out'
       } else if (value == '调压柜') {
         str = 'gy_tyg'
+      } else if (value == '架空管线') {
+        str = 'gy_jkgx'
+      } else if (value == '每日施工日志') {
+        str = 'gy_log_every_day'
       } else {
         return;
       }
@@ -1131,6 +1135,10 @@ export default {
         str = 'gy_out'
       } else if (e.enginClassification == '调压柜') {
         str = 'gy_tyg'
+      }else if (e.enginClassification == '架空管线') {
+        str = 'gy_jkgx'
+      }else if (e.enginClassification == '每日施工日志') {
+        str = 'gy_log_every_day'
       }
       const r = await getDicts(str)
       let dict = []
@@ -1157,6 +1165,10 @@ export default {
         str = 'gy_out'
       } else if (e.enginClassification == '调压柜') {
         str = 'gy_tyg'
+      } else if (e.enginClassification == '架空管线') {
+        str = 'gy_jkgx'
+      } else if (e.enginClassification == '每日施工日志') {
+        str = 'gy_log_every_day'
       }
       const r = await getDicts(str)
       let dict = []