From 1772fc5e211f9e9e0ab4cdc6c29b436aac178c2a Mon Sep 17 00:00:00 2001 From: jinlin <jinlin> Date: 星期五, 23 二月 2024 12:19:55 +0800 Subject: [PATCH] 修改 --- web/src/views/modules/project/Project-AddOrUpdate.vue | 346 +++++++++++++++++++++++++++++++++------------------------ 1 files changed, 201 insertions(+), 145 deletions(-) diff --git a/web/src/views/modules/project/Project-AddOrUpdate.vue b/web/src/views/modules/project/Project-AddOrUpdate.vue index 90218e6..01607af 100644 --- a/web/src/views/modules/project/Project-AddOrUpdate.vue +++ b/web/src/views/modules/project/Project-AddOrUpdate.vue @@ -1,23 +1,28 @@ <template> <zt-dialog ref="dialog" column="2" @confirm="formSubmit"> -<!-- <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%" readonly> - <el-input v-model="dataForm.code"></el-input> - </zt-form-item> - </div> + <!-- <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-form-item label-width="80px" label="椤圭洰缂栧彿" prop="code" style="width: 99%;margin-bottom:-5px" readonly> + <span>{{dataForm.code}}</span> + </el-form-item> + </div> + <div style="border: 1px solid rgba(0,0,0,.2)"> <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"> + <zt-form-item class="marginTopAndMarginBottom" 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="entrustUnitContact" style="width: 49%" rules="required"> + <zt-form-item class="marginTopAndMarginBottom" label="鑱旂郴浜�" prop="entrustUnitContact" style="width: 49%" + rules="required"> <el-input v-model="dataForm.entrustUnitContact" placeholder="璇疯緭鍏ヨ仈绯讳汉"></el-input> </zt-form-item> @@ -37,11 +42,13 @@ </div> <div class="DSTOld-1-Form"> <!-- 鍗曚綅鍚嶇О --> - <zt-form-item label="鍗曚綅鍚嶇О" prop="developUnitName" style="width: 49%" rules="required"> + <zt-form-item class="marginTopAndMarginBottom" 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"> + <zt-form-item class="marginTopAndMarginBottom" label="鑱旂郴浜�" prop="developUnitContact" style="width: 49%" + rules="required"> <el-input v-model="dataForm.developUnitContact" placeholder="璇疯緭鍏ヨ仈绯讳汉"></el-input> </zt-form-item> <!-- 璇︾粏鍦板潃 --> @@ -60,12 +67,14 @@ </div> <div class="DSTOld-1-Form"> <!-- 鍗曚綅鍚嶇О --> - <zt-form-item label="杞欢鍚嶇О" prop="softwareName" style="width: 49%" rules="required"> + <zt-form-item class="marginTopAndMarginBottom" label="杞欢鍚嶇О" prop="softwareName" style="width: 49%" + rules="required"> <el-input v-model="dataForm.softwareName" 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 class="marginTopAndMarginBottom" label="杞欢鏍囪瘑" prop="softwareIdentity" style="width: 49%" + rules="required"> + <el-input v-model="dataForm.softwareIdentity" placeholder="璇疯緭鍏ヨ蒋浠舵爣璇�"></el-input> </zt-form-item> <!-- 璇︾粏鍦板潃 --> <zt-form-item label="瀵嗙骇" prop="secretClass" style="width: 49%" rules="required"> @@ -78,12 +87,12 @@ <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> - <div class="el-flex" style="height: 40px;border-top:1px solid"> + <div class="el-flex" style="height: 40px;border-top:1px solid rgba(0,0,0,.2)"> <div class="DWidth DAlign DHold"> 杞欢绫诲瀷 </div> <div style="width: calc(100% - 120px);"> - <zt-dict v-model="dataForm.softwareType" :radio="true" dict="software_type" clearable></zt-dict> + <zt-dict v-model="dataForm.softwareType" :radio="true" dict="software_type" clearable></zt-dict> </div> </div> </div> @@ -93,79 +102,41 @@ 椤圭洰璐d换浜� </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 class="marginTopAndMarginBottom" label-width="120px" label="鎵�灞為儴闂�" prop="bizDeptId" + style="width: 48%" rules="required"> + <zt-select @input="changeDept" v-model="dataForm.bizDeptId" :datas="bizDeptList" placeholder="鎵�灞為儴闂�"/> </zt-form-item> - <!-- 鑱旂郴浜� --> - <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-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-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> + <!-- 椤圭洰璐熻矗浜� --> + <zt-form-item class="marginTopAndMarginBottom" label-width="120px" label="椤圭洰璐熻矗浜�" prop="projectLeader" + style="width: 48%" rules="required"> + <zt-select v-model="dataForm.projectLeader" :datas="projectLeaderList" placeholder="椤圭洰璐熻矗浜�"/> + </zt-form-item> + <!-- 椤圭洰娴嬭瘯浜哄憳 --> + <zt-form-item class="marginTopAndMarginBottom" label-width="120px" label="椤圭洰娴嬭瘯浜哄憳" prop="projectTesters" + style="width: 48%" rules="required"> + <!-- <el-input v-model="dataForm.projectTesters" placeholder="璇疯緭鍏ラ」鐩祴璇曚汉鍛�"></el-input>--> + <zt-select v-model="dataForm.projectTesters" :datas="projectTestersList" :multiple="true" + :clearable="true" placeholder="椤圭洰娴嬭瘯浜哄憳"/> + </zt-form-item> + <!-- 椤圭洰瀹℃牳浜� --> + <zt-form-item label-width="120px" label="椤圭洰瀹℃牳浜�" prop="projectReviewer" style="width: 48%" rules="required"> + <!-- <el-input v-model="dataForm.projectReviewer" placeholder="璇疯緭鍏ラ」鐩鏍镐汉"></el-input>--> + <zt-select v-model="dataForm.projectReviewer" :datas="projectReviewerList" :multiple="true" + :clearable="true" placeholder="椤圭洰瀹℃牳浜�"/> + </zt-form-item> + <zt-form-item label-width="120px" label="椤圭洰閰嶇疆浜�" prop="projectConfiger" style="width: 48%" rules="required"> + <!-- <el-input v-model="dataForm.projectReviewer" placeholder="璇疯緭鍏ラ」鐩鏍镐汉"></el-input>--> + <zt-select v-model="dataForm.projectConfiger" :datas="projectConfigerList" :multiple="true" + :clearable="true" placeholder="椤圭洰閰嶇疆浜�"/> + </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>--> + </div> + </el-form> </zt-dialog> </template> @@ -186,105 +157,190 @@ softwareType: '', softwareName: '', code: '', - identity: '', + softwareIdentity: '', secretClass: '', criticalLevel: '', testLevel: '', projectLeader: '', projectTesters: '', projectReviewer: '', + projectConfiger: '', + bizDeptId: '', isContract: '', - } + }, + projectLeaderList: [], + projectTestersList: [], + projectReviewerList: [], + projectConfigerList: [], + bizDeptList: [], + bizDeptIdList: [], } }, methods: { + init() { + this.getInfo() + this.getbizDept() + }, // 鑾峰彇淇℃伅 async getInfo() { - let res = await this.$http.get(`/project/Project//${this.dataForm.id}`) + console.log(this.dataForm.id, "async getInfo()") + if (this.dataForm.id == undefined) { + return + } + let res = await this.$http.get(`/project/Project/${this.dataForm.id}`) if (res.success) { this.dataForm = { ...this.dataForm, ...res.data } + await this.getUserList() } - + console.log(this.dataForm, "async getInfo() dataForm") + }, + changeDept(selected) { + console.log(selected, 'selected') + this.dataForm.projectLeader = '' + this.dataForm.projectTesters = [] + this.dataForm.projectReviewer = [] + this.dataForm.projectConfiger = [] + this.getUserList() + }, + async getUserList() { + let res = await this.$http.get(`/project/Project/getUsersLists?deptId=${this.dataForm.bizDeptId}`) + if (res.success) { + this.projectLeaderList = res.data.zrr + this.projectTestersList = res.data.csry + this.projectReviewerList = res.data.shry + this.projectConfigerList = res.data.pzry + } + console.log(this.dataForm, 'this.dataForm') + }, + async getbizDept() { + let res = await this.$http.get(`/sys/dept/getList`) + if (res.success) { + this.bizDeptList = res.data; + } + console.log(this.bizDeptList, "getbizDept") }, // 琛ㄥ崟鎻愪氦 async formSubmit() { - let res = await this.$http[!this.dataForm.id ? 'post' : 'put']('/project/Project//', this.dataForm) + if (this.dataForm.secretClass > localStorage.getItem('userSecretClass')) { + this.$alert("褰撳墠椤圭洰璁剧疆鐨勫瘑绾ч珮浜庡綋鍓嶇敤鎴风殑瀵嗙骇锛岃閲嶆柊璁剧疆") + return + } + if (this.dataForm && this.dataForm.projectTesters instanceof Array) { + this.dataForm.projectTesters = this.dataForm.projectTesters.join(',') + } + if (this.dataForm && this.dataForm.projectReviewer instanceof Array) { + this.dataForm.projectReviewer = this.dataForm.projectReviewer.join(',') + } + if (this.dataForm && this.dataForm.projectConfiger instanceof Array) { + this.dataForm.projectConfiger = this.dataForm.projectConfiger.join(',') + } + 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() this.$emit('refreshDataList') + } else { + if (this.dataForm && this.dataForm.projectTesters instanceof Array) { + this.dataForm.projectTesters = this.dataForm.projectTesters.split(',') + console.log(this.dataForm.projectTesters) + } + if (this.dataForm && this.dataForm.projectReviewer instanceof Array) { + this.dataForm.projectReviewer = this.dataForm.projectReviewer.split(',') + console.log(this.dataForm.projectReviewer) + } + if (this.dataForm && this.dataForm.projectConfiger instanceof Array) { + this.dataForm.projectConfiger = this.dataForm.projectConfiger.split(',') + console.log(this.dataForm.projectConfiger) + } } } } } </script> <style> -.projectAuto { - width: 70%; - border: 1px solid; -} + .projectAuto { + width: 70%; + } -.el-flex { - display: flex; - align-items: center; -} + .el-flex { + display: flex; + align-items: center; + } -.DWidth { - width: 100px; -} + .DWidth { + width: 100px; + } -.DWidth-Unt { - width: 100px; -} + .DWidth-Unt { + width: 100px; + } -.DAlign { - text-align: center; -} + .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, + .DSTOld-1-Form { + border-left: 1px solid rgba(0, 0, 0, .2); + 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; -} + .el-border-left { + border-left: 1px solid rgba(0, 0, 0, .2); + } -.zt .el-table.el-software th { - background: transparent; -} + .DOldForm { + width: 100%; + } -.zt .el-table.el-software th > .cell { - font-weight: 500; -} -.DHold{ - font-weight: 600; -} -.zt .el-table.el-software{ - font-size: 14px; -} + .el-border-top-and-bottom { + border-top: 1px solid rgba(0, 0, 0, .2); + border-bottom: 1px solid rgba(0, 0, 0, .2); + } + + .DSTOld-1-Form { + border-left: 1px solid rgba(0, 0, 0, .2); + 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 rgba(0, 0, 0, .2); + } + + .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; + } + + .projectAuto .marginTopAndMarginBottom { + margin-top: 10px !important; + margin-bottom: 0 !important; + } + + .projectAuto .marginTopAndMarginBottom2 { + margin-top: -10px !important; + margin-bottom: 10px !important; + } </style> -- Gitblit v1.9.1