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, 299 insertions(+), 66 deletions(-)
diff --git a/web/src/views/modules/project/Project-AddOrUpdate.vue b/web/src/views/modules/project/Project-AddOrUpdate.vue
index 529c85e..01607af 100644
--- a/web/src/views/modules/project/Project-AddOrUpdate.vue
+++ b/web/src/views/modules/project/Project-AddOrUpdate.vue
@@ -1,63 +1,141 @@
<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">
- <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="testLevel" rules="required">
- <zt-dict v-model="dataForm.testLevel" dict="test_level"></zt-dict>
- </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>
- <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>
+ <!-- <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 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 class="marginTopAndMarginBottom" 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 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 class="marginTopAndMarginBottom" 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 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 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">
+ <zt-dict v-model="dataForm.secretClass" dict="secret_class"></zt-dict>
+ </zt-form-item>
+ <!-- <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>
+ <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>
+ </div>
+ </div>
+ </div>
+ </div>
+ <div class="el-flex ">
+ <div class="DWidth DAlign DHold">
+ 椤圭洰璐d换浜�
+ </div>
+ <div class="DSTOld-1-Form">
+ <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="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>
+ </div>
</el-form>
</zt-dialog>
</template>
@@ -76,38 +154,193 @@
developUnitAddress: '',
developUnitContact: '',
developUnitContWay: '',
+ softwareType: '',
softwareName: '',
code: '',
- identity: '',
+ softwareIdentity: '',
secretClass: '',
criticalLevel: '',
testLevel: '',
- softwareType: '',
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() {
+ 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%;
+ }
+
+ .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 rgba(0, 0, 0, .2);
+ width: 100%;
+ }
+
+ .el-border-left {
+ border-left: 1px solid rgba(0, 0, 0, .2);
+ }
+
+ .DOldForm {
+ width: 100%;
+ }
+
+ .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