zzw
2023-11-28 7748cd8a79548e94299d24e080c4650924a215da
web/src/views/modules/itemCirculatOrder/ItemCirculatOrder-AddOrUpdate.vue
@@ -1,7 +1,7 @@
<template>
  <zt-dialog ref="dialog" column="2" @confirm="formSubmit">
  <zt-dialog ref="dialog" column="3" @confirm="formSubmit">
    <el-form :model="dataForm" :inline="true" ref="dataForm" style="padding-top: 0" :disabled="dataForm.disabled" label-width="120px" class="circulationFormAuto">
      <div class="">
      <div>
        <el-form-item label-width="60px" label="编号:" style="width:100%;margin-bottom: -5px">
          <span>{{dataForm.circulatOrder.code}}</span>
        </el-form-item>
@@ -24,80 +24,231 @@
            <el-input v-model="dataForm.project.softwareIdentity" placeholder="物品编号"></el-input>
          </el-form-item>
          <el-form-item class="marginTopAndMarginBottom3" label="数 量" style="width: 32%">
            <el-input v-model="dataForm.project.softwareName" placeholder="数量"></el-input>
            <el-input v-model="dataForm.project.isContract" placeholder="数量"></el-input>
          </el-form-item>
        </div>
        <div style="border-bottom: 1px solid rgba(0,0,0,.2);">
          <div style="padding-left:5px;padding-right:5px;">
            <div style="padding: 5px">物品技术资料及数量:</div>
            <div class="table-container">
              <el-table ref="tableSoftwareList" class="el-software el-margin-top-bot" border :data="dataForm.softwareResourcesList"
              <el-table ref="tableCirculatOrderList" class="el-software el-margin-top-bot" border :data="dataForm.technicalList"
                        stripe>
                <el-table-column prop="no" align="center" width="80" label="序号">
                <el-table-column prop="no" align="center" width="60" label="序号">
                  <template slot-scope="scope">
                    <span v-html="indexFormat(scope.$index)"></span>
                  </template>
                </el-table-column>
                <el-table-column prop="infoName" min-width="300" label="技术资料名称">
                <el-table-column prop="infoName" min-width="180" label="技术资料名称">
                  <template v-slot="{ row }">
                    <el-input v-model="row.infoName" placeholder="技术资料名称"></el-input>
                    <el-input v-model="row.name" placeholder="技术资料名称"></el-input>
                  </template>
                </el-table-column>
                <el-table-column prop="identify" align="center" width="180" label="标识">
                <el-table-column prop="identify" align="center" width="150" label="标识">
                  <template v-slot="{ row }">
                    <el-input v-model="row.identify" placeholder="标识"></el-input>
                    <el-input v-model="row.version" placeholder="标识"></el-input>
                  </template>
                </el-table-column>
                <el-table-column prop="version" align="center" width="180" label="版本">
                <el-table-column prop="version" align="center" width="120" label="版本">
                  <template v-slot="{ row }">
                    <el-input v-model="row.version" placeholder="版本"></el-input>
                    <el-input v-model="row.identify" placeholder="版本"></el-input>
                  </template>
                </el-table-column>
                <el-table-column prop="secretClass" label="密级" width="180"  align="center">
                <el-table-column prop="secretClass" label="密级" width="100"  align="center">
                  <template v-slot="{ row }">
                    <el-input v-model="row.secretClass" placeholder="密级"></el-input>
<!--                    <el-input v-model="row.secretClass" placeholder="密级"></el-input>-->
                    <zt-dict v-model="row.secretClass" dict="secret_class"></zt-dict>
                  </template>
                </el-table-column>
                <el-table-column prop="medium" label="介质" width="180"  align="center">
                <el-table-column prop="medium" label="介质" width="100"  align="center">
                  <template v-slot="{ row }">
                    <el-input v-model="row.medium" placeholder="介质"></el-input>
                  </template>
                </el-table-column>
                <el-table-column prop="amount" label="数量" width="180"  align="center">
                <el-table-column prop="amount" label="数量" width="80"  align="center">
                  <template v-slot="{ row }">
                    <el-input v-model="row.amount" placeholder="数量"></el-input>
                  </template>
                </el-table-column>
                <el-table-column prop="remark" label="备注" width="180"  align="center">
                <el-table-column prop="remark" label="备注" width="100"  align="center">
                  <template v-slot="{ row }">
                    <el-input v-model="row.remark" placeholder="备注"></el-input>
                  </template>
                </el-table-column>
                <el-table-column fixed="right" prop="files" label="上传附件" width="300"  align="center">
                  <template v-slot="{ row }">
<!--                    <zt-table-button @click="files(row.id)">上传附件</zt-table-button>-->
                    <table-uploader busi-type="circulat_order" model-name="row" :dataForm="row"
                                    v-model="row.files"/>
                  </template>
                </el-table-column>
              </el-table>
<!--              <div class="icon-container" @click="addSoftwareRow()">-->
<!--                &lt;!&ndash; 放置固定的图标 &ndash;&gt;-->
<!--                <i class="el-icon-plus"></i>-->
<!--              </div>-->
              <div class="icon-container" @click="addCirculatRow()">
                <!-- 放置固定的图标 -->
                <i class="el-icon-plus"></i>
              </div>
            </div>
          </div>
        </div>
        <div class="el-flexCirculationDialog el-border-bottom">
          <div class="DHold">
          <div style="width: 112px;text-align: center;font-weight: 600">
            物品的其它要求
          </div>
          <div style="width: calc(100% - 120px);">
            <div  class="el-border-left">
              <el-form-item label="物品是否需要返还" label-width="150px" style="width:100%;padding-left:5%;margin-bottom:0">
              <el-form-item label="物品是否需要返还" label-width="150px" style="width:100%;padding-left:20px;margin-bottom:0">
                <zt-dict v-model="dataForm.circulatOrder.itemRequire" :radio="true"
                         dict="is_or_not"></zt-dict>
              </el-form-item>
              <el-form-item label="物品的其他要求:" label-width="150px" style="width:100%;padding-left:5%;margin-bottom:0">
              <el-form-item label="物品的其他要求:" label-width="150px" style="width:100%;padding-left:20px;margin-bottom:0">
                <el-input v-model="dataForm.circulatOrder.itemOther"></el-input>
              </el-form-item>
            </div>
          </div>
        </div>
          <div class="circulationContentWidth">
        <div class="el-flexCirculationDialog el-border-bottom">
          <div style="width: 112px;text-align: center;font-weight: 600">
            物品接收人
          </div>
          <div class="el-border-left-right acceptDate" style="width: 20%;;height: 80px;">
            <el-form-item  style="width: 100%;padding-left:20px;margin:0;">
              {{dataForm.circulatOrder.itemAccept}}
            </el-form-item>
          </div>
          <div style="width: 52px;text-align: center;font-weight: 600">
            时间
          </div>
          <div class="el-border-left-right acceptDate" style="width: 20%;height: 80px;">
            <el-form-item  style="width: 100%;padding-left:20px;margin:0;">
              {{dataForm.circulatOrder.acceptDate}}
            </el-form-item>
          </div>
          <div style="width: 84px;text-align: center;font-weight: 600">
            情况说明
          </div>
          <div class="el-border-left " style="width: 35%;height: 80px;">
            <el-form-item label="是否完成病毒查杀" label-width="150px" style="padding-left:20px;margin-bottom:0">
              <zt-dict v-model="dataForm.circulatOrder.acceptSituation" :radio="true" dict="is_or_not"></zt-dict>
            </el-form-item>
            <el-form-item label="病毒库版本:" label-width="150px" style="width:100%;padding-left:20px;margin-bottom:0">
              <el-input v-model="dataForm.circulatOrder.itemOther"></el-input>
            </el-form-item>
          </div>
        </div>
        <div class="el-flexCirculationDialog el-border-bottom">
          <div style="width: 112px;text-align: center;font-weight: 600">
            校准/检测接收人
          </div>
          <div class="el-border-left-right" style="width: 20%;height: 40px;">
            <el-form-item  style="width: 100%;padding-left:20px;margin:0;">
              {{dataForm.circulatOrder.itemAccept}}
            </el-form-item>
          </div>
          <div style="width: 52px;text-align: center;font-weight: 600">
            时间
          </div>
          <div class="el-border-left-right" style="width: 20%;height: 40px;">
            <el-form-item  style="width: 100%;padding-left:20px;margin:0;">
              {{dataForm.circulatOrder.acceptDate}}
            </el-form-item>
          </div>
          <div style="width: 84px;text-align: center;font-weight: 600">
            情况说明
          </div>
          <div class="el-border-left " style="width: 35%;height: 40px;">
            <el-form-item label="是否满足测试要求" label-width="150px" style="padding-left:20px;margin-bottom:0">
              <zt-dict v-model="dataForm.circulatOrder.cscs" :radio="true" dict="is_or_not"></zt-dict>
            </el-form-item>
          </div>
        </div>
        <div class="el-flexCirculationDialog el-border-bottom">
          <div style="width: 112px;text-align: center;font-weight: 600">
            校准检测人
          </div>
          <div class="el-border-left-right" style="width: 20%;height: 40px;">
            <el-form-item  style="width: 100%;padding-left:20px;margin:0;">
              {{dataForm.circulatOrder.calibratDetect}}
            </el-form-item>
          </div>
          <div style="width: 52px;text-align: center;font-weight: 600">
            时间
          </div>
          <div class="el-border-left-right" style="width: 20%;height: 40px;">
            <el-form-item  style="width: 100%;padding-left:20px;margin:0;">
              {{dataForm.circulatOrder.detectDate}}
            </el-form-item>
          </div>
          <div style="width: 84px;text-align: center;font-weight: 600">
            情况说明
          </div>
          <div class="el-border-left " style="width: 35%;height: 40px;">
            <el-form-item label="是否满足测试要求" label-width="150px" style="padding-left:20px;margin-bottom:0">
              <zt-dict v-model="dataForm.circulatOrder.detectSituation" :radio="true" dict="is_or_not"></zt-dict>
            </el-form-item>
          </div>
        </div>
        <div class="el-flexCirculationDialog el-border-bottom">
          <div style="width: 112px;text-align: center;font-weight: 600">
            物品入库人
          </div>
          <div class="el-border-left-right" style="width: 20%;height: 40px;">
            <el-form-item  style="width: 100%;padding-left:20px;margin:0;">
              {{dataForm.circulatOrder.warehouse}}
            </el-form-item>
          </div>
          <div style="width: 52px;text-align: center;font-weight: 600">
            时间
          </div>
          <div class="el-border-left-right" style="width: 20%;height: 40px;">
            <el-form-item  style="width: 100%;padding-left:20px;margin:0;">
              {{dataForm.circulatOrder.warehouseDate}}
            </el-form-item>
          </div>
          <div style="width: 84px;text-align: center;font-weight: 600">
            情况说明
          </div>
          <div class="el-border-left " style="width: 35%;height: 40px;">
            <el-form-item label="是否满足测试要求" label-width="150px" style="padding-left:20px;margin-bottom:0">
              <zt-dict v-model="dataForm.circulatOrder.warehouseSituation" :radio="true" dict="is_or_not"></zt-dict>
            </el-form-item>
          </div>
        </div>
        <div class="el-flexCirculationDialog el-border-bottom">
          <div style="width: 112px;text-align: center;font-weight: 600">
            物品发放人
          </div>
          <div class="el-border-left-right " style="width: 20%;height: 40px;">
            <el-form-item  style="width: 100%;padding-left:20px;margin:0;">
              {{dataForm.circulatOrder.itemIssue}}
            </el-form-item>
          </div>
          <div style="width: 52px;text-align: center;font-weight: 600">
            时间
          </div>
          <div class="el-border-left-right " style="width: 20%;height: 40px;">
            <el-form-item  style="width: 100%;padding-left:20px;margin:0;">
              {{dataForm.circulatOrder.issueDate}}
            </el-form-item>
          </div>
          <div style="width: 84px;text-align: center;font-weight: 600">
            情况说明
          </div>
          <div class="el-border-left " style="width: 35%;height: 40px;">
            <el-form-item label="是否完成样品发放" label-width="150px" style="padding-left:20px;margin-bottom:0">
              <zt-dict v-model="dataForm.circulatOrder.issueSituation" :radio="true" dict="is_or_not"></zt-dict>
            </el-form-item>
          </div>
        </div>
        <div class="el-flexCirculationDialog">
          <div style="width: 112px;text-align: center;font-weight: 600">
            备注
          </div>
          <div class="el-border-left " style="width: 20%;height: 40px">
            <el-form-item  style="width: 100%;padding-left:20px;margin:0;">
              {{dataForm.circulatOrder.itemAccept}}
            </el-form-item>
          </div>
        </div>
<!--          <div class="circulationContentWidth">
            <el-form-item class="marginTopAndMarginBottom" label="物品接收人" style="width: 32%">
              <el-input v-model="dataForm.circulatOrder.itemAccept" placeholder="物品接收人"></el-input>
            </el-form-item>
@@ -105,7 +256,10 @@
              <el-input v-model="dataForm.circulatOrder.acceptDate" placeholder="时间"></el-input>
            </el-form-item>
            <el-form-item class="marginTopAndMarginBottom" label="情况说明" style="width: 32%">
              <el-input v-model="dataForm.circulatOrder.acceptSituation" placeholder="情况说明"></el-input>
              <span>是否完成病毒查杀:
               <zt-dict v-model="dataForm.circulatOrder.acceptSituation" :radio="true" dict="is_or_not"></zt-dict>
              </span>
              <span>病毒库版本:<el-input v-model="dataForm.circulatOrder.acceptSituation" placeholder="病毒库版本"></el-input></span>
            </el-form-item>
            <el-form-item class="marginTopAndMarginBottom3" label="校准检测人" style="width: 32%">
              <el-input v-model="dataForm.circulatOrder.calibratDetect" placeholder="校准检测人"></el-input>
@@ -114,7 +268,8 @@
              <el-input v-model="dataForm.circulatOrder.detectDate" placeholder="时间"></el-input>
            </el-form-item>
            <el-form-item class="marginTopAndMarginBottom3" label="情况说明" style="width: 32%">
              <el-input v-model="dataForm.circulatOrder.detectSituation" placeholder="情况说明"></el-input>
&lt;!&ndash;              <el-input v-model="dataForm.circulatOrder.detectSituation" placeholder="情况说明"></el-input>&ndash;&gt;
              <zt-dict v-model="dataForm.circulatOrder.detectSituation" :radio="true" dict="is_or_not"></zt-dict>
            </el-form-item>
            <el-form-item class="marginTopAndMarginBottom2" label="物品入库人" style="width: 32%">
              <el-input v-model="dataForm.circulatOrder.warehouse" placeholder="物品入库人"></el-input>
@@ -123,7 +278,8 @@
              <el-input v-model="dataForm.circulatOrder.warehouseDate" placeholder="时间"></el-input>
            </el-form-item>
            <el-form-item class="marginTopAndMarginBottom2" label="情况说明" style="width: 32%">
              <el-input v-model="dataForm.circulatOrder.warehouseSituation" placeholder="情况说明"></el-input>
&lt;!&ndash;              <el-input v-model="dataForm.circulatOrder.warehouseSituation" placeholder="情况说明"></el-input>&ndash;&gt;
              <zt-dict v-model="dataForm.circulatOrder.warehouseSituation" :radio="true" dict="is_or_not"></zt-dict>
            </el-form-item>
            <el-form-item class="marginTopAndMarginBottom2" label="物品发放人" style="width: 32%">
              <el-input v-model="dataForm.circulatOrder.itemIssue" placeholder="物品发放人"></el-input>
@@ -132,12 +288,13 @@
              <el-input v-model="dataForm.circulatOrder.issueDate" placeholder="时间"></el-input>
            </el-form-item>
            <el-form-item class="marginTopAndMarginBottom2" label="情况说明" style="width: 32%">
              <el-input v-model="dataForm.circulatOrder.issueSituation" placeholder="情况说明"></el-input>
&lt;!&ndash;              <el-input v-model="dataForm.circulatOrder.issueSituation" placeholder="情况说明"></el-input>&ndash;&gt;
              <zt-dict v-model="dataForm.circulatOrder.issueSituation" :radio="true" dict="is_or_not"></zt-dict>
            </el-form-item>
            <el-form-item  class="marginTopAndMarginBottom2 lastChild" label="备注" style="width: 100%">
              <el-input v-model="dataForm.circulatOrder.remark" placeholder="备注"></el-input>
            </el-form-item>
          </div>
          </div>-->
      </div>
    </el-form>
  </zt-dialog>
@@ -179,12 +336,22 @@
      }
    },
    methods: {
      indexFormat(index){
        return index += 1
      },
      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')
      },
      addCirculatRow(){
        this.dataForm.technicalList.push({})
        this.$nextTick(()=>{
          const tableBody=this.$refs.tableCirculatOrderList.$el.querySelector('.el-table__body-wrapper')
          tableBody.scrollTop = tableBody.scrollHeight;
        })
      },
      // 获取信息
      async getInfo() {
@@ -197,16 +364,18 @@
          ...this.dataForm,
          ...res.data
        }
        console.log(this.dataForm,"this.dataForm")
        console.log(this.dataForm,"getInfo this.dataForm")
      },
      // 表单提交
      async formSubmit() {
        console.log(this.dataForm,"this.dataForm11111")
        let res = await this.$http[!this.dataForm.id ? 'post' : 'put']('/itemCirculatOrder/ItemCirculatOrder/', this.dataForm)
        if (res.success) {
          await this.$tip.success()
          this.$refs.dialog.close()
          this.$emit('refreshDataList')
        }
      }
    }
  }
@@ -235,4 +404,10 @@
  margin-top: 0 !important;
  margin-bottom: 10px !important;
}
.acceptDate> .el-form-item > .el-form-item__content {
  line-height: 80px;
}
.circulationFormAuto .el-radio {
  margin-right: 10px;
}
</style>