wente
2023-11-09 06583bd642f460e5ccb5bdb3049d71f9fa23b28c
web/src/views/modules/project/Project-AddOrUpdate.vue
@@ -1,64 +1,175 @@
<template>
  <zt-dialog ref="dialog" column="2" @confirm="formSubmit">
    <el-form :model="dataForm" ref="dataForm" :disabled="dataForm.disabled" label-width="160px">
      <zt-form-item label="委托单位名称" prop="entrustUnitName" rules="required">
                        <el-input v-model="dataForm.entrustUnitName"></el-input>
                </zt-form-item>
      <zt-form-item label="委托单位地址" prop="entrustUnitAddress" rules="required">
                        <el-input v-model="dataForm.entrustUnitAddress"></el-input>
                </zt-form-item>
      <zt-form-item label="委托单位联系人" prop="entrustUnitContact" rules="required">
                        <el-input v-model="dataForm.entrustUnitContact"></el-input>
                </zt-form-item>
      <zt-form-item label="委托单位联系方式" prop="entrustUnitContWay" rules="required">
                        <el-input v-model="dataForm.entrustUnitContWay"></el-input>
                </zt-form-item>
      <zt-form-item label="开发单位名称" prop="developUnitName" rules="required">
                        <el-input v-model="dataForm.developUnitName"></el-input>
                </zt-form-item>
      <zt-form-item label="开发单位地址" prop="developUnitAddress" rules="required">
                        <el-input v-model="dataForm.developUnitAddress"></el-input>
                </zt-form-item>
      <zt-form-item label="开发单位联系人" prop="developUnitContact" rules="required">
                        <el-input v-model="dataForm.developUnitContact"></el-input>
                </zt-form-item>
      <zt-form-item label="开发单位联系方式" prop="developUnitContWay" rules="required">
                        <el-input v-model="dataForm.developUnitContWay"></el-input>
                </zt-form-item>
      <zt-form-item label="软件名称" prop="softwareName" rules="required">
                        <el-input v-model="dataForm.softwareName"></el-input>
                </zt-form-item>
      <zt-form-item label="项目编号" prop="code" rules="required">
<!--    <div class="fa-card-a fa-box-a" style="height: calc(100vh - 130px)">-->
      <el-form ref="dataForm" style="padding: 0" :inline="true" :disabled="dataForm.disabled" :model="dataForm" label-width="120px" class="projectAuto">
        <div class="DManageForm el-border-bottom">
          <zt-form-item label-width="60px" label="项目编号" prop="code" style="width: 99%" rules="required">
                        <el-input v-model="dataForm.code"></el-input>
                </zt-form-item>
      <zt-form-item label="项目标识" prop="identity" rules="required">
                        <el-input v-model="dataForm.identity"></el-input>
        </div>
        <div class="el-flex el-border-bottom">
          <div class="DWidth DAlign DHold">
            委托单位
          </div>
          <div class="DSTOld-1-Form">
            <!-- 单位名称 -->
            <zt-form-item label="单位名称" prop="entrustUnitName" style="width: 49%" rules="required">
              <el-input v-model="dataForm.entrustUnitName" placeholder="请输入单位名称"></el-input>
                </zt-form-item>
      <zt-form-item label="密级" prop="secretClass" rules="required">
            <!-- 联系人 -->
            <zt-form-item label="联系人" prop="entrustUnitContact" style="width: 49%" rules="required">
              <el-input v-model="dataForm.entrustUnitContact" placeholder="请输入联系人"></el-input>
            </zt-form-item>
            <!-- 详细地址 -->
            <zt-form-item label="详细地址" prop="entrustUnitAddress" style="width: 49%" rules="required">
              <el-input v-model="dataForm.entrustUnitAddress" placeholder="请输入详细地址"></el-input>
            </zt-form-item>
            <!-- 联系方式 -->
            <zt-form-item label="联系方式" prop="entrustUnitContWay" style="width: 49%" rules="required">
              <el-input v-model="dataForm.entrustUnitContWay" placeholder="请输入联系方式"></el-input>
            </zt-form-item>
          </div>
        </div>
        <div class="el-flex el-border-bottom">
          <div class="DWidth DAlign DHold">
            开发单位
          </div>
          <div class="DSTOld-1-Form">
            <!-- 单位名称 -->
            <zt-form-item label="单位名称" prop="developUnitName" style="width: 49%" rules="required">
              <el-input v-model="dataForm.developUnitName" placeholder="请输入单位名称"></el-input>
            </zt-form-item>
            <!-- 联系人 -->
            <zt-form-item label="联系人" prop="developUnitContact" style="width: 49%" rules="required">
              <el-input v-model="dataForm.developUnitContact" placeholder="请输入联系人"></el-input>
            </zt-form-item>
            <!-- 详细地址 -->
            <zt-form-item label="详细地址" prop="developUnitAddress" style="width: 49%" rules="required">
              <el-input v-model="dataForm.developUnitAddress" placeholder="请输入详细地址"></el-input>
            </zt-form-item>
            <!-- 联系方式 -->
            <zt-form-item label="联系方式" prop="developUnitContWay" style="width: 49%" rules="required">
              <el-input v-model="dataForm.developUnitContWay" placeholder="请输入联系方式"></el-input>
            </zt-form-item>
          </div>
        </div>
        <div class="el-flex el-border-bottom">
          <div class="DWidth-Unt DAlign DHold">
            被测件信息
          </div>
          <div class="DSTOld-1-Form">
            <!-- 单位名称 -->
            <zt-form-item label="软件名称" prop="software" style="width: 49%" rules="required">
              <el-input v-model="dataForm.software" placeholder="请输入软件名称"></el-input>
            </zt-form-item>
            <!-- 联系人 -->
            <zt-form-item label="软件标识" prop="identity" style="width: 49%" rules="required">
              <el-input v-model="dataForm.identity" placeholder="请输入软件标识"></el-input>
            </zt-form-item>
            <!-- 详细地址 -->
            <zt-form-item label="密级" prop="secretClass" style="width: 49%" rules="required">
                        <zt-dict v-model="dataForm.secretClass" dict="secret_class"></zt-dict>
                </zt-form-item>
      <zt-form-item label="关键等级" prop="criticalLevel" rules="required">
            <!--          <zt-form-item label="保密级别" prop="secretClass"  style="width: 25%">-->
            <!--            <zt-dict v-model="dataForm.secretClass" dict="secret_class" placeholder="保密级别" style="width:200px"></zt-dict>-->
            <!--          </zt-form-item>-->
            <!-- 联系方式 -->
            <zt-form-item label="关键等级" prop="criticalLevel" style="width: 49%" rules="required">
                        <zt-dict v-model="dataForm.criticalLevel" dict="critical_level"></zt-dict>
                </zt-form-item>
      <zt-form-item label="测试级别" prop="testLevel" rules="required">
                        <zt-dict v-model="dataForm.testLevel" dict="test_level"></zt-dict>
            <div class="el-flex" style="height: 40px;border-top:1px solid">
              <div class="DWidth DAlign DHold">
                软件类型
              </div>
              <div style="width: calc(100% - 120px);">
                <el-checkbox-group v-model="dataForm.checkList">
                  <el-checkbox :label="0">通用应用软件</el-checkbox>
                  <el-checkbox :label="1">行业应用软件</el-checkbox>
                  <el-checkbox :label="2">嵌入式软件</el-checkbox>
                </el-checkbox-group>
              </div>
            </div>
          </div>
        </div>
        <div class="el-flex ">
          <div class="DWidth DAlign DHold">
            项目责任人
          </div>
          <div class="DSTOld-1-Form">
            <!-- 单位名称 -->
            <zt-form-item label-width="120px" label="项目负责人" prop="projectLeader" style="width: 48%" rules="required">
              <el-input v-model="dataForm.projectLeader" placeholder="请输入单位名称"></el-input>
                </zt-form-item>
      <zt-form-item label="软件类型" prop="softwareType" rules="required">
                        <zt-dict v-model="dataForm.softwareType" dict="software_type"></zt-dict>
            <!-- 联系人 -->
            <zt-form-item label-width="120px" label="项目测试人员" prop="projectTesters" style="width: 48%" rules="required">
              <el-input v-model="dataForm.projectTesters" placeholder="请输入联系人"></el-input>
                </zt-form-item>
      <zt-form-item label="项目负责人" prop="projectLeader" rules="required">
                        <el-input v-model="dataForm.projectLeader"></el-input>
            <!-- 详细地址 -->
            <zt-form-item label-width="120px" label="项目审核人" prop="projectReviewer" style="width: 48%" rules="required">
              <el-input v-model="dataForm.projectReviewer" placeholder="请输入详细地址"></el-input>
                </zt-form-item>
      <zt-form-item label="项目测试人员" prop="projectTesters" rules="required">
                        <el-input v-model="dataForm.projectTesters"></el-input>
                </zt-form-item>
      <zt-form-item label="项目审核人员" prop="projectReviewer" rules="required">
                        <el-input v-model="dataForm.projectReviewer"></el-input>
                </zt-form-item>
      <zt-form-item label="是否签署合同" prop="isContract" rules="required">
            <!-- 联系方式 -->
            <zt-form-item label-width="120px" label="是否签署合同" prop="isContract" style="width: 48%" rules="required">
                        <zt-dict v-model="dataForm.isContract" dict="is_or_not"></zt-dict>
                </zt-form-item>
          </div>
        </div>
    </el-form>
<!--    </div>-->
<!--    <el-form :model="dataForm" ref="dataForm" :disabled="dataForm.disabled" label-width="120px">-->
<!--      <zt-form-item label="委托单位名称" prop="entrustUnitName" rules="required">-->
<!--                        <el-input v-model="dataForm.entrustUnitName"></el-input>-->
<!--                </zt-form-item>-->
<!--      <zt-form-item label="委托单位地址" prop="entrustUnitAddress" rules="required">-->
<!--                        <el-input v-model="dataForm.entrustUnitAddress"></el-input>-->
<!--                </zt-form-item>-->
<!--      <zt-form-item label="委托单位联系人" prop="entrustUnitContact" rules="required">-->
<!--                        <el-input v-model="dataForm.entrustUnitContact"></el-input>-->
<!--                </zt-form-item>-->
<!--      <zt-form-item label="委托单位联系方式" prop="entrustUnitContWay" rules="required">-->
<!--                        <el-input v-model="dataForm.entrustUnitContWay"></el-input>-->
<!--                </zt-form-item>-->
<!--      <zt-form-item label="开发单位名称" prop="developUnitName" rules="required">-->
<!--                        <el-input v-model="dataForm.developUnitName"></el-input>-->
<!--                </zt-form-item>-->
<!--      <zt-form-item label="开发单位地址" prop="developUnitAddress" rules="required">-->
<!--                        <el-input v-model="dataForm.developUnitAddress"></el-input>-->
<!--                </zt-form-item>-->
<!--      <zt-form-item label="开发单位联系人" prop="developUnitContact" rules="required">-->
<!--                        <el-input v-model="dataForm.developUnitContact"></el-input>-->
<!--                </zt-form-item>-->
<!--      <zt-form-item label="开发单位联系方式" prop="developUnitContWay" rules="required">-->
<!--                        <el-input v-model="dataForm.developUnitContWay"></el-input>-->
<!--                </zt-form-item>-->
<!--      <zt-form-item label="软件名称" prop="software" rules="required">-->
<!--                        <el-input v-model="dataForm.software"></el-input>-->
<!--                </zt-form-item>-->
<!--      <zt-form-item label="项目编号" prop="code" rules="required">-->
<!--                        <el-input v-model="dataForm.code"></el-input>-->
<!--                </zt-form-item>-->
<!--      <zt-form-item label="项目标识" prop="identity" rules="required">-->
<!--                        <el-input v-model="dataForm.identity"></el-input>-->
<!--                </zt-form-item>-->
<!--      <zt-form-item label="密级" prop="secretClass" rules="required">-->
<!--                        <zt-dict v-model="dataForm.secretClass" dict="secret_class"></zt-dict>-->
<!--                </zt-form-item>-->
<!--      <zt-form-item label="关键等级" prop="criticalLevel" rules="required">-->
<!--                        <zt-dict v-model="dataForm.criticalLevel" dict="critical_level"></zt-dict>-->
<!--                </zt-form-item>-->
<!--      <zt-form-item label="项目负责人" prop="projectLeader" rules="required">-->
<!--                        <el-input v-model="dataForm.projectLeader"></el-input>-->
<!--                </zt-form-item>-->
<!--      <zt-form-item label="项目测试人员" prop="projectTesters" rules="required">-->
<!--                        <el-input v-model="dataForm.projectTesters"></el-input>-->
<!--                </zt-form-item>-->
<!--      <zt-form-item label="项目审核人员" prop="projectReviewer" rules="required">-->
<!--                        <el-input v-model="dataForm.projectReviewer"></el-input>-->
<!--                </zt-form-item>-->
<!--      <zt-form-item label="是否签署合同" prop="isContract" rules="required">-->
<!--                        <zt-dict v-model="dataForm.isContract" dict="is_or_not"></zt-dict>-->
<!--                </zt-form-item>-->
<!--    </el-form>-->
  </zt-dialog>
</template>
@@ -76,13 +187,13 @@
          developUnitAddress: '',
          developUnitContact: '',
          developUnitContWay: '',
          softwareName: '',
          checkList:[0,1],
          software: '',
          code: '',
          identity: '',
          secretClass: '',
          criticalLevel: '',
          testLevel: '',
          softwareType: '',
          projectLeader: '',
          projectTesters: '',
          projectReviewer: '',
@@ -93,7 +204,7 @@
    methods: {
      // 获取信息
      async getInfo() {
        let res = await this.$http.get(`/project/Project/${this.dataForm.id}`)
        let res = await this.$http.get(`/project/Project//${this.dataForm.id}`)
        this.dataForm = {
          ...this.dataForm,
          ...res.data
@@ -101,7 +212,7 @@
      },
      // 表单提交
      async formSubmit() {
        let res = await this.$http[!this.dataForm.id ? 'post' : 'put']('/project/Project/', this.dataForm)
        let res = await this.$http[!this.dataForm.id ? 'post' : 'put']('/project/Project//', this.dataForm)
        if (res.success) {
          await this.$tip.success()
          this.$refs.dialog.close()
@@ -111,3 +222,70 @@
    }
  }
</script>
<style>
.projectAuto {
  width: 70%;
  border: 1px solid;
}
.el-flex {
  display: flex;
  align-items: center;
}
.DWidth {
  width: 100px;
}
.DWidth-Unt {
  width: 100px;
}
.DAlign {
  text-align: center;
}
.DSTOld-1-Form,
.DSTOld-1-Form{
  border-left: 1px solid;
  width: 100%;
}
.el-border-left{
  border-left: 1px solid;
}
.DOldForm {
  width: 100%;
}
.el-border-top-and-bottom{
  border-top: 1px solid;
  border-bottom: 1px solid;
}
.DSTOld-1-Form {
  border-left: 1px solid;
  width: 100%;
}
.DSTOld-1-Form > .el-form-item>.el-form-item__content {
  width: calc(100% - 120px);
}
.DManageForm > .el-form-item>.el-form-item__content {
  width: calc(100% - 120px);
}
.el-border-bottom {
  border-bottom: 1px solid;
}
.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;
}
</style>