jinlin
2024-02-23 1772fc5e211f9e9e0ab4cdc6c29b436aac178c2a
web/src/views/modules/qaAuditReport/QaAuditReport-AddOrUpdate.vue
@@ -10,10 +10,10 @@
      <div style="border: 1px solid rgba(0,0,0,.2);width: 99%">
        <div style="border-bottom: 1px solid rgba(0,0,0,.2);" class="QaAuditContentWidth">
          <el-form-item class="marginTopAndMarginBottom" label="项目名称" style="width: 49%">
            <el-input v-model="dataForm.testAgencyInfo.agencyName" placeholder="请输入项目名称"></el-input>
            <el-input v-model="dataForm.project.softwareName" placeholder="请输入项目名称"></el-input>
          </el-form-item>
          <el-form-item class="marginTopAndMarginBottom" label="项目标识" style="width: 49%">
            <el-input v-model="dataForm.testAgencyInfo.labContactNum" placeholder="请输入项目标识"></el-input>
            <el-input v-model="dataForm.project.softwareIdentity" placeholder="请输入项目标识"></el-input>
          </el-form-item>
        </div>
        <div class="el-flexQaAuditDialog el-border-bottom">
@@ -22,13 +22,13 @@
          </div>
          <div class="el-border-left" style="width: calc(100% - 120px);min-height: 40px">
            <el-form-item style="width: 50%;padding: 0 5px">
              <span>项目负责人:{{dataForm.contractReview.technicalDirector || '项目负责人'}} </span>
              <span>项目负责人:{{dataForm.project.projectLeader || '项目负责人'}} </span>
            </el-form-item>
            <el-form-item style="width: 40%;padding: 0 5px">
              <span>测试人员:{{dataForm.contractReview.technicalDirector || '测试人员'}} </span>
              <span>测试人员:{{dataForm.project.projectTesters || '测试人员'}} </span>
            </el-form-item>
            <el-form-item style="width: 100%;padding: 0 5px">
              <span>配置管理员:{{dataForm.contractReview.technicalDirector || '配置管理员'}} </span>
            <el-form-item style="width: 40%;padding: 0 5px">
              <span>配置人员:{{dataForm.project.projectConfiger || '配置人员'}} </span>
            </el-form-item>
          </div>
        </div>
@@ -37,6 +37,10 @@
            已完成的检查
          </div>
          <div class="el-border-left" style="width: calc(100% - 120px);min-height: 40px">
            <el-form-item class="el-QaTextarea" label-width="20px" style="width: 100%;padding: 5px">
              <el-input type="textarea" :rows="2" placeholder="请输入内容"
                        v-model="dataForm.auditReport.completedCheck"></el-input>
            </el-form-item>
          </div>
        </div>
        <div class=" el-border-bottom">
@@ -46,22 +50,46 @@
          <div>
            <div class="table-container">
              <el-table ref="tableConfigItemList" class="el-software el-margin-top-bot"
                        style="width: 99%;margin-left: 5px" border :data="dataForm.reviewItemList"
                        style="width: 99%;margin-left: 5px" border :data="dataForm.incongruentList"
                        stripe>
                <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="item" min-width="400" label="评审项">
                <el-table-column prop="oddNum" min-width="350" label="不符合项单号">
                  <template v-slot="{ row }">
                    <el-input v-model="row.item" placeholder="评审项"></el-input>
                    <el-input v-model="row.oddNum" placeholder="不符合项单号"></el-input>
                  </template>
                </el-table-column>
                <el-table-column prop="result" width="220" align="center" label="评审结果">
                <el-table-column prop="notTrueDescribe" width="220" align="center" label="不符合项描述">
                  <template v-slot="{ row }">
                    <zt-dict v-model="row.result" placeholder="评审结果" dict="tristate1" :radio="true"
                             clearable></zt-dict>
                    <el-input v-model="row.notTrueDescribe" placeholder="不符合项描述"></el-input>
                  </template>
                </el-table-column>
                <el-table-column prop="workProcess" width="100" align="center" label="所属工作产品/过程">
                  <template v-slot="{ row }">
                    <el-input v-model="row.workProcess" placeholder="所属工作产品/过程"></el-input>
                  </template>
                </el-table-column>
                <el-table-column prop="discoveryPhase" width="80" align="center" label="发现阶段">
                  <template v-slot="{ row }">
                    <el-input v-model="row.discoveryPhase" placeholder="发现阶段"></el-input>
                  </template>
                </el-table-column>
                <el-table-column prop="chargePerson" width="80" align="center" label="责任人">
                  <template v-slot="{ row }">
                    <el-input v-model="row.chargePerson" placeholder="责任人"></el-input>
                  </template>
                </el-table-column>
                <el-table-column prop="status" width="80" align="center" label="状态">
                  <template v-slot="{ row }">
                    <el-input v-model="row.status" placeholder="状态"></el-input>
                  </template>
                </el-table-column>
                <el-table-column prop="remark" width="100" align="center" label="备注">
                  <template v-slot="{ row }">
                    <el-input v-model="row.remark" placeholder="备注"></el-input>
                  </template>
                </el-table-column>
              </el-table>
@@ -73,32 +101,34 @@
            QA总结
          </div>
          <div class="el-border-bottom">
              <el-form-item class="el-QaTextarea" label-width="20px" style="width: 100%;padding: 5px">
                <el-input type="textarea" :rows="2" placeholder="请输入内容"
                          v-model="dataForm.contractReview.reviewRecord"></el-input>
              </el-form-item>
              <el-form-item label="检查人(签字):" label-width="160px" style="width: 48%;padding: 5px;">
                <el-input v-model="dataForm.contractReview.technicalDirector"></el-input>
              </el-form-item>
              <el-form-item  style="width: 48%;padding: 5px;">
                {{ dataForm.contractReview.reviewDate | filterTime('YYYY年MM月DD日') }}
              </el-form-item>
            <el-form-item class="el-QaTextarea" label-width="20px" style="width: 100%;padding: 5px">
              <el-input v-if="stepMarker=='qashbg_first'" type="textarea" :rows="2" placeholder="请输入内容"
                        v-model="dataForm.auditReport.qaSummary"></el-input>
              <span v-else>{{ dataForm.auditReport.qaSummary}}</span>
            </el-form-item>
            <el-form-item label="检查人(签字):" label-width="160px" style="width: 48%;padding: 5px;">
              {{ dataForm.auditReport.checker }}
            </el-form-item>
            <el-form-item style="width: 48%;padding: 5px;">
              {{ dataForm.auditReport.checkDate | filterTime('YYYY年MM月DD日') }}
            </el-form-item>
          </div>
          <div>
            <el-form-item label="质量监督员意见:" class="el-QaTextarea1" label-width="160px" style="width: 100%;padding: 5px">
              <el-input type="textarea" :rows="2" placeholder="请输入内容"
                        v-model="dataForm.contractReview.technicalDirector"></el-input>
              <el-input v-if="stepMarker=='qashbg_zljd'" type="textarea" :rows="2" placeholder="请输入内容"
                        v-model="dataForm.auditReport.supervisorOpinion"></el-input>
              <span v-else>{{ dataForm.auditReport.supervisorOpinion}}</span>
            </el-form-item>
            <el-form-item label="质量监督员(签字):" label-width="160px" style="width: 48%;padding: 5px;">
              <el-input v-model="dataForm.contractReview.technicalDirector"></el-input>
              {{ dataForm.auditReport.supervisorSign }}
            </el-form-item>
            <el-form-item  style="width: 48%;padding: 5px;">
              {{ dataForm.contractReview.reviewDate | filterTime('YYYY年MM月DD日') }}
            <el-form-item style="width: 48%;padding: 5px;">
              {{ dataForm.auditReport.superviseDate | filterTime('YYYY年MM月DD日') }}
            </el-form-item>
          </div>
        </div>
      </div>
      <div class="el-flex review-sc" style="height: 60px">
      <div class="el-flex qa-sc" style="height: 60px">
        <el-form-item class="marginTopAndMarginBottom" style="width: 100%">
          <config-uploader :lineHeight="true" busi-type="qa_audit_report" model-name="dataForm" :dataForm="dataForm"
                           v-model="dataForm.files"/>
@@ -133,49 +163,13 @@
          id: '',
          project: {
            softwareIdentity: '',
            softwarName: '',
            softwareName: '',
            projectLeader: '',
            projectTesters: ''
            projectTesters: '',
            projectConfiger: ''
          },
          contractReview: {
            code: '',
            orderCode: '',
            reviewType: '',
            reviewRecord: '',
            specialRequire: '',
            subcontract: '',
            reviewConclusion: '',
            technicalDirector: '',
            reviewDate: '',
            reviewPanelMember: '',
          },
          incongruentList: [],
          testAgencyInfo: {
            agencyName: '',
            labContactNum: ''
          },
          incongruentList: []
        }
        // dataForm: {
        //   id: '',
        //   files:'',
        //   contractReview: {
        //     code: '',
        //     orderCode: '',
        //     reviewType: '',
        //     reviewRecord: '',
        //     specialRequire: '',
        //     subcontract: '',
        //     reviewConclusion: '',
        //     technicalDirector: '',
        //     reviewDate: '',
        //     reviewPanelMember: '',
        //   },
        //   testAgencyInfo: {
        //     agencyName: '',
        //     labContactNum: ''
        //   },
        //   reviewItemList: []
        // }
      }
    },
    methods: {
@@ -204,7 +198,19 @@
      indexFormat(index) {
        return index += 1
      },
      async getNameById() {
        let params = {
          projectLeaderId: this.dataForm.project.projectLeader,
          projectTestersId: this.dataForm.project.projectTesters,
          projectConfigerId: this.dataForm.project.projectConfiger
        }
        let res = await this.$http.get(`/qaAuditReport/QaAuditReport/getNameById`, {params: params})
        if (res.success) {
          this.dataForm.project.projectLeader = res.data.projectLeaderName
          this.dataForm.project.projectTesters = res.data.projectTestersName
          this.dataForm.project.projectConfiger = res.data.projectConfigerName
        }
      },
      addCirculatRow() {
        this.dataForm.technicalList.push({})
        this.$nextTick(() => {
@@ -223,6 +229,7 @@
          ...this.dataForm,
          ...res.data
        }
        this.getNameById()
        if (this.dataForm.project === null) {
          this.dataForm.project = {}
        }
@@ -261,20 +268,29 @@
  }
</script>
<style>
.el-flexQaAuditDialog{
  display: flex;
  align-items: center;
}
.QaFormWidth{
  width: 120px;
}
.QaAuditContentWidth > .el-form-item > .el-form-item__content {
  width: calc(100% - 120px);
}
.el-form-item.el-QaTextarea > .el-form-item__content {
  width: 100%;
}
.el-form-item.el-QaTextarea1 > .el-form-item__content {
  width: calc(100% - 160px);
}
  .el-flexQaAuditDialog {
    display: flex;
    align-items: center;
  }
  .QaFormWidth {
    width: 120px;
  }
  .QaAuditContentWidth > .el-form-item > .el-form-item__content {
    width: calc(100% - 120px);
  }
  .el-form-item.el-QaTextarea > .el-form-item__content {
    width: 100%;
  }
  .el-form-item.el-QaTextarea1 > .el-form-item__content {
    width: calc(100% - 160px);
  }
</style>
<style>
  .qa-sc > .el-form-item > .el-form-item__content {
    width: 100%;
  }
</style>