From e9b8a4e413fc235fa8ee102845c523b6ecbf2f8a Mon Sep 17 00:00:00 2001 From: jinlin <jinlin> Date: 星期三, 21 二月 2024 15:38:14 +0800 Subject: [PATCH] 修改 --- web/src/views/modules/riskTraceRecord/RiskTraceItem-AddOrUpdate.vue | 426 +++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 408 insertions(+), 18 deletions(-) diff --git a/web/src/views/modules/riskTraceRecord/RiskTraceItem-AddOrUpdate.vue b/web/src/views/modules/riskTraceRecord/RiskTraceItem-AddOrUpdate.vue index e4f9eb3..a868d57 100644 --- a/web/src/views/modules/riskTraceRecord/RiskTraceItem-AddOrUpdate.vue +++ b/web/src/views/modules/riskTraceRecord/RiskTraceItem-AddOrUpdate.vue @@ -1,32 +1,371 @@ <template> <zt-dialog ref="dialog" @confirm="formSubmit"> - <el-form :model="dataForm" ref="dataForm" :disabled="dataForm.disabled" label-width="120px"> - <zt-form-item label="鎺掑簭" prop="sort" rules="required"> - <el-input v-model="dataForm.sort"></el-input> - </zt-form-item> - <zt-form-item label="椋庨櫓鍚嶇О" prop="riskName" rules="required"> - <el-input v-model="dataForm.riskName"></el-input> - </zt-form-item> - <zt-form-item label="椋庨櫓鎻忚堪" prop="riskDesc" rules="required"> - <el-input v-model="dataForm.riskDesc"></el-input> - </zt-form-item> - <zt-form-item label="椋庨櫓绛夌骇" prop="riskLevel" rules="required"> - <el-input v-model="dataForm.riskLevel"></el-input> - </zt-form-item> + <el-form :model="dataForm" ref="dataForm" :disabled="dataForm.disabled" label-width="0px"> + <div style="border: 1px solid rgba(0,0,0,.2);width: 100%"> + <el-table :data="dataForm.riskList" border> + <el-table-column width="60px" label="椋庨櫓鍚嶇О" prop="riskName"></el-table-column> + <el-table-column label="椋庨櫓"> + <el-table-column label="椋庨櫓鎻忚堪" prop="riskDesc"></el-table-column> + <el-table-column width="60px" label="椋庨櫓绛夌骇" prop="riskLevel"></el-table-column> + </el-table-column> + <el-table-column label="椋庨櫓璺熻釜璁板綍(鍙戠敓姒傜巼)"> + <el-table-column label="娴嬭瘯闇�姹傚垎鏋愪笌绛栧垝" prop="testRequire"> + <template v-slot="{ row }"> + <el-input v-model="row.testRequire" placeholder="娴嬭瘯闇�姹傚垎鏋愪笌绛栧垝"></el-input> + </template> + </el-table-column> + <el-table-column label="娴嬭瘯璁捐" prop="testDesign"> + <template v-slot="{ row }"> + <el-input v-model="row.testDesign" placeholder="娴嬭瘯璁捐"></el-input> + </template> + </el-table-column> + <el-table-column label="娴嬭瘯鎵ц" prop="testExecute"> + <template v-slot="{ row }"> + <el-input v-model="row.testExecute" placeholder="娴嬭瘯鎵ц"></el-input> + </template> + </el-table-column> + <el-table-column label="娴嬭瘯鎬荤粨" prop="testSummary"> + <template v-slot="{ row }"> + <el-input v-model="row.testSummary" placeholder="娴嬭瘯鎬荤粨"></el-input> + </template> + </el-table-column> + </el-table-column> + </el-table> + + <div class="el-risk-flex el-border-top-bottom " style="height:90px"> + <div class="riskWidth riskAlign riskHold" style="width: 35%"> + 椋庨櫓璺熻釜浜哄憳/鏃ユ湡锛� + </div> + <div class=" el-border-left" style="width: 20%"> + <el-form-item class="form-margin-top-bottom"> + <el-input v-if="dataForm.isCsry" v-model="dataForm.riskMeasure.requireRiskTrackers" class="risk-form-padding"></el-input> + <span v-else>{{dataForm.riskMeasure.requireRiskTrackers}}</span> + </el-form-item> + <el-form-item class="form-margin-top-bottom"> + <el-date-picker + v-if="dataForm.isCsry" + class="risk-form-padding" + v-model="dataForm.riskMeasure.requireRiskDate" + type="date" + placeholder="閫夋嫨鏃ユ湡"> + </el-date-picker> + <span v-else>{{dataForm.riskMeasure.requireRiskDate}}</span> + </el-form-item> + </div> + <div class=" el-border-left" style="width: 20%"> + <el-form-item class="form-margin-top-bottom"> + <el-input v-if="dataForm.isCsry" v-model="dataForm.riskMeasure.designRiskTrackers" class="risk-form-padding"></el-input> + <span v-else>{{dataForm.riskMeasure.designRiskTrackers}}</span> + </el-form-item> + <el-form-item class="form-margin-top-bottom"> + <el-date-picker + v-if="dataForm.isCsry" + class="risk-form-padding" + v-model="dataForm.riskMeasure.designRiskDate" + type="date" + placeholder="閫夋嫨鏃ユ湡"> + </el-date-picker> + <span v-else>{{dataForm.riskMeasure.designRiskDate}}</span> + </el-form-item> + </div> + <div class=" el-border-left" style="width: 20%"> + <el-form-item class="form-margin-top-bottom"> + <el-input v-if="dataForm.isCsry" v-model="dataForm.riskMeasure.executeRiskTrackers" class="risk-form-padding"></el-input> + <span v-else>{{dataForm.riskMeasure.executeRiskTrackers}}</span> + </el-form-item> + <el-form-item class="form-margin-top-bottom"> + <el-date-picker + v-if="dataForm.isCsry" + class="risk-form-padding" + v-model="dataForm.riskMeasure.executeRiskDate" + type="date" + placeholder="閫夋嫨鏃ユ湡"> + </el-date-picker> + <span v-else>{{dataForm.riskMeasure.executeRiskDate}}</span> + </el-form-item> + </div> + <div class=" el-border-left" style="width: 20%"> + <el-form-item class="form-margin-top-bottom"> + <el-input v-if="dataForm.isCsry" v-model="dataForm.riskMeasure.summaryRiskTrackers" class="risk-form-padding"></el-input> + <span v-else>{{dataForm.riskMeasure.summaryRiskTrackers}}</span> + </el-form-item> + <el-form-item class="form-margin-top-bottom"> + <el-date-picker + v-if="dataForm.isCsry" + class="risk-form-padding" + v-model="dataForm.riskMeasure.summaryRiskDate" + type="date" + placeholder="閫夋嫨鏃ユ湡"> + </el-date-picker> + <span v-else>{{dataForm.riskMeasure.summaryRiskDate}}</span> + </el-form-item> + </div> + </div> + <div class="el-risk-flex el-border-bottom " > + <div class="riskAlign riskHold" style="width: 10%"> + 椋庨櫓鎺柦鎺у埗 + </div> + <div class="el-border-left" style="width: 90%"> + <div class="el-risk-flex el-border-bottom " style="height:40px"> + <div class="riskAlign riskHold" style="width: 26%"> + 閲囧彇鎺柦锛� + </div> + <el-form-item class="form-margin-top-bottom el-border-left" style="width:22.25%" > + <el-input v-if="dataForm.isCsry" v-model="dataForm.riskMeasure.requireMeasure" class="risk-form-padding"></el-input> + <span v-else>{{dataForm.riskMeasure.requireMeasure}}</span> + </el-form-item> + <el-form-item class="form-margin-top-bottom el-border-left" style="width:22.25%"> + <el-input v-if="dataForm.isCsry" v-model="dataForm.riskMeasure.designMeasure" class="risk-form-padding"></el-input> + <span v-else>{{dataForm.riskMeasure.designMeasure}}</span> + </el-form-item> + <el-form-item class="form-margin-top-bottom el-border-left" style="width:22.25%"> + <el-input v-if="dataForm.isCsry" v-model="dataForm.riskMeasure.executeMeasure" class="risk-form-padding"></el-input> + <span v-else>{{dataForm.riskMeasure.executeMeasure}}</span> + </el-form-item> + <el-form-item class="form-margin-top-bottom el-border-left" style="width:22.25%"> + <el-input v-if="dataForm.isCsry" v-model="dataForm.riskMeasure.summaryMeasure" class="risk-form-padding"></el-input> + <span v-else>{{dataForm.riskMeasure.summaryMeasure}}</span> + </el-form-item> + </div> + <div class="el-risk-flex el-border-bottom " style="height:90px"> + <div class="riskAlign riskHold" style="width: 26%"> + 璁板綍浜哄憳/鏃ユ湡锛� + </div> + <div class=" el-border-left" style="width:22.25%"> + <el-form-item class="form-margin-top-bottom"> + <el-input v-if="dataForm.isCsry" v-model="dataForm.riskMeasure.requireRecorder" class="risk-form-padding"></el-input> + <span v-else>{{dataForm.riskMeasure.requireRecorder}}</span> + </el-form-item> + <el-form-item class="form-margin-top-bottom"> + <el-date-picker + v-if="dataForm.isCsry" + class="risk-form-padding" + v-model="dataForm.riskMeasure.requireRecordDate" + type="date" + placeholder="閫夋嫨鏃ユ湡"> + </el-date-picker> + <span v-else>{{dataForm.riskMeasure.requireRecordDate}}</span> + </el-form-item> + </div> + <div class=" el-border-left" style="width:22.25%"> + <el-form-item class="form-margin-top-bottom"> + <el-input v-if="dataForm.isCsry" v-model="dataForm.riskMeasure.designRecorder" class="risk-form-padding"></el-input> + <span v-else>{{dataForm.riskMeasure.designRecorder}}</span> + </el-form-item> + <el-form-item class="form-margin-top-bottom"> + <el-date-picker + v-if="dataForm.isCsry" + class="risk-form-padding" + v-model="dataForm.riskMeasure.designRecordDate" + type="date" + placeholder="閫夋嫨鏃ユ湡"> + </el-date-picker> + <span v-else>{{dataForm.riskMeasure.designRecordDate}}</span> + </el-form-item> + </div> + <div class=" el-border-left" style="width:22.25%"> + <el-form-item class="form-margin-top-bottom"> + <el-input v-if="dataForm.isCsry" v-model="dataForm.riskMeasure.executeRecorder" class="risk-form-padding"></el-input> + <span v-else>{{dataForm.riskMeasure.executeRecorder}}</span> + </el-form-item> + <el-form-item class="form-margin-top-bottom"> + <el-date-picker + v-if="dataForm.isCsry" + class="risk-form-padding" + v-model="dataForm.riskMeasure.executeRecordDate" + type="date" + placeholder="閫夋嫨鏃ユ湡"> + </el-date-picker> + <span v-else>{{dataForm.riskMeasure.executeRecordDate}}</span> + </el-form-item> + </div> + <div class=" el-border-left" style="width:22.25%"> + <el-form-item class="form-margin-top-bottom"> + <el-input v-if="dataForm.isCsry" v-model="dataForm.riskMeasure.summaryRecorder" class="risk-form-padding"></el-input> + <span v-else>{{dataForm.riskMeasure.summaryRecorder}}</span> + </el-form-item> + <el-form-item class="form-margin-top-bottom"> + <el-date-picker + v-if="dataForm.isCsry" + class="risk-form-padding" + v-model="dataForm.riskMeasure.summaryRecordDate" + type="date" + placeholder="閫夋嫨鏃ユ湡"> + </el-date-picker> + <span v-else>{{dataForm.riskMeasure.summaryRecordDate}}</span> + </el-form-item> + </div> + </div> + <div class="el-risk-flex el-border-bottom " style="height:40px"> + <div class="riskAlign riskHold" style="width: 26%"> + 鎺柦鏈夋晥鎬ц瘎浼帮細 + </div> + <el-form-item class="form-margin-top-bottom el-border-left" style="width:22.25%"> + <el-input v-if="dataForm.isBmld" v-model="dataForm.riskMeasure.requireEvaluate" class="risk-form-padding"></el-input> + <span v-else>{{dataForm.riskMeasure.requireEvaluate}}</span> + </el-form-item> + <el-form-item class="form-margin-top-bottom el-border-left" style="width:22.25%"> + <el-input v-if="dataForm.isBmld" v-model="dataForm.riskMeasure.designEvaluate" class="risk-form-padding"></el-input> + <span v-else>{{dataForm.riskMeasure.designEvaluate}}</span> + </el-form-item> + <el-form-item class="form-margin-top-bottom el-border-left" style="width:22.25%"> + <el-input v-if="dataForm.isBmld" v-model="dataForm.riskMeasure.executeEvaluate" class="risk-form-padding"></el-input> + <span v-else>{{dataForm.riskMeasure.executeEvaluate}}</span> + </el-form-item> + <el-form-item class="form-margin-top-bottom el-border-left" style="width:22.25%"> + <el-input v-if="dataForm.isBmld" v-model="dataForm.riskMeasure.summaryEvaluate" class="risk-form-padding"></el-input> + <span v-else>{{dataForm.riskMeasure.summaryEvaluate}}</span> + </el-form-item> + </div> + <div class="el-risk-flex " style="height:90px"> + <div class="riskAlign riskHold" style="width:26%"> + 閮ㄩ棬璐熻矗浜�/鏃ユ湡锛� + </div> + <div class=" el-border-left" style="width:22.25%"> + <el-form-item class="form-margin-top-bottom"> + <el-input v-if="dataForm.isBmld" v-model="dataForm.riskMeasure.requireLeader" class="risk-form-padding"></el-input> + <span v-else>{{dataForm.riskMeasure.requireLeader}}</span> + </el-form-item> + <el-form-item class="form-margin-top-bottom"> + <el-date-picker + v-if="dataForm.isBmld" + class="risk-form-padding" + v-model="dataForm.riskMeasure.requireLeadDate" + type="date" + placeholder="閫夋嫨鏃ユ湡"> + </el-date-picker> + <span v-else>{{dataForm.riskMeasure.requireLeadDate}}</span> + </el-form-item> + </div> + <div class=" el-border-left" style="width:22.25%"> + <el-form-item class="form-margin-top-bottom"> + <el-input v-if="dataForm.isBmld" v-model="dataForm.riskMeasure.designLeader" class="risk-form-padding"></el-input> + <span v-else>{{dataForm.riskMeasure.designLeader}}</span> + </el-form-item> + <el-form-item class="form-margin-top-bottom"> + <el-date-picker + v-if="dataForm.isBmld" + class="risk-form-padding" + v-model="dataForm.riskMeasure.designLeadDate" + type="date" + placeholder="閫夋嫨鏃ユ湡"> + </el-date-picker> + <span v-else>{{dataForm.riskMeasure.designLeadDate}}</span> + </el-form-item> + </div> + <div class=" el-border-left" style="width:22.25%"> + <el-form-item class="form-margin-top-bottom"> + <el-input v-if="dataForm.isBmld" v-model="dataForm.riskMeasure.executeLeader" class="risk-form-padding"></el-input> + <span v-else>{{dataForm.riskMeasure.executeLeader}}</span> + </el-form-item> + <el-form-item class="form-margin-top-bottom"> + <el-date-picker + v-if="dataForm.isBmld" + class="risk-form-padding" + v-model="dataForm.riskMeasure.executeLeadDate" + type="date" + placeholder="閫夋嫨鏃ユ湡"> + </el-date-picker> + <span v-else>{{dataForm.riskMeasure.executeLeadDate}}</span> + </el-form-item> + </div> + <div class=" el-border-left" style="width:22.25%"> + <el-form-item class="form-margin-top-bottom"> + <el-input v-if="dataForm.isBmld" v-model="dataForm.riskMeasure.summaryLeader" class="risk-form-padding"></el-input> + <span v-else>{{dataForm.riskMeasure.summaryLeader}}</span> + </el-form-item> + <el-form-item class="form-margin-top-bottom"> + <el-date-picker + v-if="dataForm.isBmld" + class="risk-form-padding" + v-model="dataForm.riskMeasure.summaryLeadDate" + type="date" + placeholder="閫夋嫨鏃ユ湡"> + </el-date-picker> + <span v-else>{{dataForm.riskMeasure.summaryLeadDate}}</span> + </el-form-item> + </div> + </div> + </div> + </div> + <div class="el-risk-flex"> + <div class="riskAlign riskHold" style="width: 10%"> + 澶囨敞 + </div> + <div class="el-border-left" style="width:90%"> + <div style="padding: 3px"> + <el-form-item> + 椋庨櫓绛夌骇鍒嗕负锛氫弗閲嶃�佷竴鑸�佽交寰�傞闄╁彂鐢熸鐜囦负锛氶珮銆佷腑銆佷綆銆傞闄╁彂鐢熸鐜囦负楂樻椂搴旈噰鍙栨帾鏂斤紝闄嶄綆椋庨櫓鍙戠敓姒傜巼銆傞闄╁彂鐢熸椂搴旈噰鍙栬ˉ鏁戞帾鏂姐�� + </el-form-item> + </div> + </div> + </div> + </div> + <!-- <div class="el-flex risk-sc" style="height: 60px"> + <el-form-item class="marginTopAndMarginBottom" style="width: 100%"> + <config-uploader :lineHeight="true" busi-type="risk_trace_item" model-name="dataForm" :dataForm="dataForm" + v-model="dataForm.files"/> + </el-form-item> + </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: { + disabled:'false', id: '', - sort: '', - riskName: '', - riskDesc: '', - riskLevel: '' + riskMeasure:{ + requireRiskTrackers:'', + requireRiskDate:'', + designRiskTrackers:'', + designRiskDate:'', + executeRiskTrackers:'', + executeRiskDate:'', + summaryRiskTrackers:'', + summaryRiskDate:'', + requireMeasure:'', + designMeasure:'', + executeMeasure:'', + summaryMeasure:'', + requireRecorder:'', + requireRecordDate:'', + designRecorder:'', + designRecordDate:'', + executeRecorder:'', + executeRecordDate:'', + summaryRecorder:'', + summaryRecordDate:'', + requireEvaluate:'', + designEvaluate:'', + executeEvaluate:'', + summaryEvaluate:'', + requireLeader:'', + requireLeadDate:'', + designLeader:'', + designLeadDate:'', + executeLeader:'', + executeLeadDate:'', + summaryLeader:'', + summaryLeadDate:'' + }, + project: { + softwareIdentity: '', + softwareName: '' + }, + riskList:[], + itemList:[], + isCsry:'', + isBmld:'', } } }, @@ -42,6 +381,7 @@ } // this.dataForm.disabled this.getInfo() + this.getMyProjectRole() }, // 鑾峰彇淇℃伅 async getInfo() { @@ -49,14 +389,29 @@ riskId: this.dataForm.id, projectId: this.dataForm.projectId } - let res = await this.$http.get(`/riskTraceRecord/RiskTraceItem/`,{params:params}) + let res = await this.$http.get(`/riskTraceRecord/RiskTraceItem/getDto`,{params:params}) this.dataForm = { ...this.dataForm, ...res.data } }, + async getMyProjectRole() { + let res = await this.$http.get(`/project/Project/myProjectRole/${this.dataForm.projectId}`) + console.log(res.data,"getMyProjectRole") + this.dataForm.isCsry = res.data.csry + this.dataForm.isBmld = res.data.bmld + }, + async print() { + var params = qs.stringify({ + token: Cookies.get('token'), + id: this.dataForm.id + }) + let apiURL = `/riskTraceRecord/RiskTraceItem/exportRiskRecord` + window.location.href = `${window.SITE_CONFIG['apiURL']}${apiURL}?${params}` + }, // 琛ㄥ崟鎻愪氦 async formSubmit() { + console.log(this.dataForm,"formSubmit") let res = await this.$http[!this.dataForm.id ? 'post' : 'put']('/riskTraceRecord/RiskTraceItem/', this.dataForm) if (res.success) { await this.$tip.success() @@ -67,3 +422,38 @@ } } </script> +<style> +.el-risk-flex { + display: flex; + align-items: center; + justify-content: space-around; +} +.direction{ + flex-direction:column; +} + +/*.riskWidth{ + width: 755px; +}*/ + +.riskAlign{ + text-align: center; +} +.riskHold{ + font-weight: 600; +} +.el-border-top-bottom{ + border-top:1px solid rgba(0,0,0,.2); + border-bottom: 1px solid rgba(0,0,0,.2); +} +.risk-form-padding{ + padding: 3px; +} + .form-margin-top-bottom { + margin-top: 0 !important; + margin-bottom: 0 !important; +} +.risk-sc > .el-form-item > .el-form-item__content { + width: 100%; +} +</style> -- Gitblit v1.9.1