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 | 365 ++++++++++++++++++++++++++++++----------------------
1 files changed, 210 insertions(+), 155 deletions(-)
diff --git a/web/src/views/modules/project/Project-AddOrUpdate.vue b/web/src/views/modules/project/Project-AddOrUpdate.vue
index ffc6944..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%" rules="required">
- <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="software" style="width: 49%" rules="required">
- <el-input v-model="dataForm.software" placeholder="璇疯緭鍏ヨ蒋浠跺悕绉�"></el-input>
+ <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,16 +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);">
- <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>
+ <zt-dict v-model="dataForm.softwareType" :radio="true" dict="software_type" clearable></zt-dict>
</div>
</div>
</div>
@@ -97,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>
@@ -187,105 +154,193 @@
developUnitAddress: '',
developUnitContact: '',
developUnitContWay: '',
- checkList:[0,1],
- software: '',
+ softwareType: '',
+ softwareName: '',
code: '',
- identity: '',
+ softwareIdentity: '',
secretClass: '',
criticalLevel: '',
testLevel: '',
projectLeader: '',
projectTesters: '',
projectReviewer: '',
- isContract: ''
- }
+ 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}`)
- this.dataForm = {
- ...this.dataForm,
- ...res.data
+ 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