| | |
| | | <template> |
| | | <zt-dialog ref="dialog" @confirm="formSubmit"> |
| | | <el-form :model="dataForm" ref="dataForm" :disabled="dataForm.disabled" label-width="120px"> |
| | | <zt-form-item label="项目ID" prop="projectId" rules="required"> |
| | | <el-input v-model="dataForm.projectId"></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="auditor" rules="required"> |
| | | <el-input v-model="dataForm.auditor"></el-input> |
| | | </zt-form-item> |
| | | <zt-form-item label="审核人ID" prop="auditorId" rules="required"> |
| | | <el-input v-model="dataForm.auditorId"></el-input> |
| | | </zt-form-item> |
| | | <zt-form-item label="审核时间" prop="auditorDate" rules="required"> |
| | | <el-input v-model="dataForm.auditorDate"></el-input> |
| | | </zt-form-item> |
| | | <zt-form-item label="年份" prop="year" rules="required"> |
| | | <el-input v-model="dataForm.year"></el-input> |
| | | </zt-form-item> |
| | | <el-form :model="dataForm" :inline="true" ref="dataForm" style="padding-top: 0" :disabled="dataForm.disabled" |
| | | label-width="120px" class="configAuditFormAuto"> |
| | | <div> |
| | | <el-form-item label-width="60px" label="编号:" style="width:100%;margin-bottom: -5px"> |
| | | <span>{{dataForm.circulatOrder.code || '编号自动生成'}}</span> |
| | | </el-form-item> |
| | | </div> |
| | | <div style="border: 1px solid rgba(0,0,0,.2);width: 99%"> |
| | | <div style="border-bottom: 1px solid rgba(0,0,0,.2);" class="configAuditContentWidth"> |
| | | <el-form-item class="marginTopAndMarginBottom" label="项目名称" style="width: 48%"> |
| | | <el-input v-model="dataForm.testAgencyInfo.agencyName" placeholder="项目名称"></el-input> |
| | | </el-form-item> |
| | | <el-form-item class="marginTopAndMarginBottom" label="项目标识" style="width: 48%"> |
| | | <el-input v-model="dataForm.project.softwareIdentity" placeholder="项目标识"></el-input> |
| | | </el-form-item> |
| | | </div> |
| | | <div style="border-bottom: 1px solid rgba(0,0,0,.2);"> |
| | | <div> |
| | | <div style="text-align: center;font-weight: 600;border-bottom:1px solid rgba(0,0,0,.2);height: 40px;line-height: 40px;font-size: 18px">审核内容</div> |
| | | <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> |
| | | <div class="table-container"> |
| | | <el-table ref="tableConfigAuditList" class="el-software el-margin-top-bot" border |
| | | :data="dataForm.technicalList" |
| | | 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="infoName" min-width="180" label="技术资料名称"> |
| | | <template v-slot="{ row }"> |
| | | <el-input v-model="row.name" placeholder="技术资料名称"></el-input> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="identify" align="center" width="150" label="标识"> |
| | | <template v-slot="{ row }"> |
| | | <el-input v-model="row.version" placeholder="标识"></el-input> |
| | | </template> |
| | | </el-table-column> |
| | | <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 }"> |
| | | <table-uploader busi-type="circulat_order" model-name="row" :dataForm="row" |
| | | v-model="row.files"/> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | </div> |
| | | </div> |
| | | <div> |
| | | <div style="text-align: center;font-weight: 600;height: 40px;line-height: 40px;font-size: 18px">发现的问题</div> |
| | | <div class="table-container"> |
| | | <el-table ref="tableConfigAuditList" class="el-software el-margin-top-bot" border |
| | | :data="dataForm.technicalList" |
| | | 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="infoName" min-width="180" label="技术资料名称"> |
| | | <template v-slot="{ row }"> |
| | | <el-input v-model="row.name" placeholder="技术资料名称"></el-input> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="identify" align="center" width="150" label="标识"> |
| | | <template v-slot="{ row }"> |
| | | <el-input v-model="row.version" placeholder="标识"></el-input> |
| | | </template> |
| | | </el-table-column> |
| | | <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 }"> |
| | | <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="addConfigAuditRow()"> |
| | | <!-- 放置固定的图标 --> |
| | | <i class="el-icon-plus"></i> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="el-flexConfigAuditDialog"> |
| | | <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.calibratDetector}} |
| | | </el-form-item> |
| | | </div> |
| | | <div style="width: 52px;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.detectDate}}--> |
| | | {{ dataForm.circulatOrder.detectDate | filterTime('YYYY年MM月DD日') }} |
| | | </el-form-item> |
| | | </div> |
| | | </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> |
| | | import qs from "qs"; |
| | | import Cookies from "js-cookie"; |
| | | |
| | | export default { |
| | | data() { |
| | | return { |
| | | // dataForm: { |
| | | // id: '', |
| | | // configAuditReport:{ |
| | | // code: '', |
| | | // auditor: '', |
| | | // auditorDate: '', |
| | | // }, |
| | | // project: { |
| | | // softwareIdentity: '', |
| | | // softwareName: '' |
| | | // }, |
| | | // problemList:[], |
| | | // contentList:[] |
| | | // }, |
| | | dataForm: { |
| | | id: '', |
| | | configAuditReport:{ |
| | | code: '', |
| | | auditor: '', |
| | | auditorId: '', |
| | | auditorDate: '', |
| | | circulatOrder: { |
| | | code: '1', |
| | | itemAccept: '', |
| | | itemRequire: '', |
| | | itemOther: '', |
| | | acceptSituation: '', |
| | | acceptDate: '', |
| | | calibratDetector: '', |
| | | detectDate: '', |
| | | detectSituation: '', |
| | | warehouse: '', |
| | | warehouseDate: '', |
| | | warehouseSituation: '', |
| | | itemIssuer: '', |
| | | issueDate: '', |
| | | issueSituation: '', |
| | | remark: '', |
| | | virusLibraryVersion:'', |
| | | itemAcceptor:'' |
| | | }, |
| | | project: { |
| | | softwareIdentity: '', |
| | | softwareName: '' |
| | | } |
| | | softwareName: '', |
| | | }, |
| | | testAgencyInfo: { |
| | | agencyName: '', |
| | | }, |
| | | technicalList: [], |
| | | flowInfoDto: {} |
| | | } |
| | | } |
| | | }, |
| | | methods: { |
| | | indexFormat(index) { |
| | | return index += 1 |
| | | }, |
| | | init(id, row) { |
| | | if (id) { |
| | | this.dataForm.id = id |
| | | } else { |
| | | this.dataForm.id = row.id |
| | | } |
| | | if (row.projectId) { |
| | | this.dataForm.projectId = row.projectId |
| | | } |
| | | this.getInfo() |
| | | console.log(this.dataForm.id, this.dataForm.projectId, 'params params') |
| | | }, |
| | | // 获取信息 |
| | | async getInfo() { |
| | | let res = await this.$http.get(`/configAuditReport/ConfigAuditReport/${this.dataForm.id}`) |
| | | let params = { |
| | | reportId: this.dataForm.id, |
| | | projectId: this.dataForm.projectId |
| | | } |
| | | let res = await this.$http.get(`/configAuditReport/ConfigAuditReport/getDto`, {params: params}) |
| | | this.dataForm = { |
| | | ...this.dataForm, |
| | | ...res.data |
| | | } |
| | | if(this.dataForm.configAuditReport === null){ |
| | | this.dataForm.contractReview={} |
| | | } |
| | | console.log(this.dataForm, "getInfo this.dataForm") |
| | | }, |
| | | addConfigAuditRow() { |
| | | this.dataForm.technicalList.push({}) |
| | | this.$nextTick(() => { |
| | | const tableBody = this.$refs.tableConfigAuditList.$el.querySelector('.el-table__body-wrapper') |
| | | tableBody.scrollTop = tableBody.scrollHeight; |
| | | }) |
| | | }, |
| | | async print(){ |
| | | var params = qs.stringify({ |
| | | token: Cookies.get('token'), |
| | | id:this.dataForm.id |
| | | }) |
| | | let apiURL = `/configAuditReport/ConfigAuditReport/exportReport` |
| | | window.location.href = `${window.SITE_CONFIG['apiURL']}${apiURL}?${params}` |
| | | }, |
| | | // 表单提交 |
| | | async formSubmit() { |
| | |
| | | } |
| | | } |
| | | </script> |
| | | <style> |
| | | .el-flexConfigAuditDialog{ |
| | | display: flex; |
| | | align-items: center |
| | | } |
| | | .configAuditContentWidth > .el-form-item > .el-form-item__content { |
| | | width: calc(100% - 120px); |
| | | } |
| | | .configAuditFormAuto .marginTopAndMarginBottom { |
| | | margin-top: 0 !important; |
| | | margin-bottom: 0 !important; |
| | | } |
| | | |
| | | .configAuditFormAuto .marginTopAndMarginBottom2 { |
| | | margin-top: -10px !important; |
| | | margin-bottom: 10px !important; |
| | | } |
| | | |
| | | .configAuditFormAuto .marginTopAndMarginBottom3 { |
| | | margin-top: 0 !important; |
| | | margin-bottom: 10px !important; |
| | | } |
| | | |
| | | .acceptDate > .el-form-item > .el-form-item__content { |
| | | line-height: 80px; |
| | | } |
| | | |
| | | .configAuditFormAuto .el-radio { |
| | | margin-right: 10px; |
| | | } |
| | | </style> |