From 6cd32111579f0de8e3908bc985ee493197dc80cb Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期五, 17 十一月 2023 16:29:48 +0800
Subject: [PATCH] 整合代码
---
Source/UBCS-WEB/src/views/system/PasswordManagement/passwords.vue | 584 ++++++++++++++++++++++++++++++---------------------------
1 files changed, 307 insertions(+), 277 deletions(-)
diff --git a/Source/UBCS-WEB/src/views/system/PasswordManagement/passwords.vue b/Source/UBCS-WEB/src/views/system/PasswordManagement/passwords.vue
index 4326828..60c4488 100644
--- a/Source/UBCS-WEB/src/views/system/PasswordManagement/passwords.vue
+++ b/Source/UBCS-WEB/src/views/system/PasswordManagement/passwords.vue
@@ -6,6 +6,7 @@
type="text"
size="small"
icon="el-icon-edit"
+ v-if="permissionList.editBtn"
@click="handleEdit(row, index)"
>
缂栬緫
@@ -14,6 +15,7 @@
type="text"
size="small"
icon="el-icon-delete"
+ v-if="permissionList.delBtn"
@click="handleDel(row, index)"
>
鍒犻櫎
@@ -36,88 +38,15 @@
getremove,
combination
} from "@/api/system/passwords";
+import {mapGetters} from "vuex";
export default {
name: "passwords.vue",
data() {
- // 鏈�灏忛暱搴︽鍒欑粦瀹氬��
- let validatePass=""
- //鏈�澶ч暱搴︽鍒欑粦瀹氬��
- let validatePass1=""
- //杩囨湡鏃堕棿姝e垯缁戝畾鍊�
- let validatePass2=""
- //鎻愰啋鏃堕棿姝e垯缁戝畾鍊�
- let validatePass3=""
- //閿佸畾娆℃暟姝e垯缁戝畾鍊�
- let validatePass4=""
- //閿佸畾鏃堕棿姝e垯缁戝畾鍊�
- let validatePass5=""
- //鏈�灏忛暱搴︾粦瀹歷alue
- let values=""
- //鏈�澶ч暱搴︾粦瀹歷alue
- let values1=""
- //鏈�灏忛暱搴︽鍒欐柟娉�
- validatePass = (rule, value,callback) => {
- values=value*1
- if(value == ""){
- callback(new Error('璇疯緭鍏ュ瘑鐮佹渶灏忛暱搴�'));
- // }else if(values >= values1*1){
- // callback(new Error('瀵嗙爜鏈�灏忛暱搴︿笉鑳藉ぇ浜庡瘑鐮佹渶澶ч暱搴�'));
- }else if(/[^\d]/g.test(value)){
- callback(new Error('瀵嗙爜鏈�灏忛暱搴︾殑杈撳叆绫诲瀷鍙兘涓烘暟瀛楃被鍨�'));
- }else {
- callback();
- }
- };
- //鏈�澶ч暱搴︽鍒欐柟娉�
- validatePass1= (rule, value,callback) =>{
- values1=value*1
- if(value == ""){
- callback(new Error('璇疯緭鍏ュ瘑鐮佹渶澶ч暱搴�'));
- }else if(values1 <= values){
- callback(new Error('瀵嗙爜鏈�澶ч暱搴︿笉鑳藉皬浜庡瘑鐮佹渶澶ч暱搴�'));
- }else if(/[^\d]/g.test(value)){
- callback(new Error('瀵嗙爜鏈�澶ч暱搴︾殑杈撳叆绫诲瀷鍙兘涓烘暟瀛楃被鍨�'));
- }else {
- callback();
- }
- };
- validatePass2 = (rule, value,callback) => {
- if(value == ""){
- callback(new Error('璇疯緭鍏ヨ繃鏈熸椂闂�'));
- }else if(/[^\d]/g.test(value)){
- callback(new Error('杩囨湡鏃堕棿鐨勮緭鍏ョ被鍨嬪彧鑳戒负鏁板瓧绫诲瀷'));
- }else {
- callback();
- }
- };
- validatePass3 = (rule, value,callback) => {
- if(value == ""){
- callback(new Error('璇疯緭鍏ヨ繃鏈熸椂闂�'));
- }else if(/[^\d]/g.test(value)){
- callback(new Error('杩囨湡鏃堕棿鐨勮緭鍏ョ被鍨嬪彧鑳戒负鏁板瓧绫诲瀷'));
- }else {
- callback();
- }
- };
- validatePass4 = (rule, value,callback) => {
- if(value == ""){
- callback(new Error('璇疯緭鍏ラ攣瀹氭鏁�'));
- }else if(/[^\d]/g.test(value)){
- callback(new Error('閿佸畾娆℃暟鐨勮緭鍏ョ被鍨嬪彧鑳戒负鏁板瓧绫诲瀷'));
- }else {
- callback();
- }
- };
- validatePass5 = (rule, value,callback) => {
- if(value == ""){
- callback(new Error('璇疯緭鍏ラ攣瀹氭椂闂�'));
- }else if(/[^\d]/g.test(value)){
- callback(new Error('閿佸畾鏃堕棿鐨勮緭鍏ョ被鍨嬪彧鑳戒负鏁板瓧绫诲瀷'));
- }else {
- callback();
- }
- };
return {
+ //鏈�灏忛暱搴︾粦瀹歷alue
+ values:"",
+ //鏈�澶ч暱搴︾粦瀹歷alue
+ values1:"",
form:{},
page: {
pageSize: 10,
@@ -125,181 +54,7 @@
total: 100
},
data: [],
- option: {
- headerAlign: 'center',
- align: 'center',
- columnBtn:false,
- border: true,
- index: true,
- rowKey:'id',
- editBtn:false,
- height:700,
- delBtn:false,
- column: [
- {
- label: '绛栫暐鍚嶇О',
- prop: 'strategyName',
- align: 'left',
- span:24,
- labelWidth: "11%",
- rules: [{
- required: true,
- message: "璇疯緭鍏ョ瓥鐣ュ悕绉�",
- trigger: "blur"
- }]
- },
- {
- label: '瀵嗙爜鏈�灏忛暱搴�',
- prop: 'minPwdLen',
- span:12,
- labelWidth:"22%",
- rules: [{
- required: true,
- validator:validatePass,
- trigger: 'blur'
- }]
- },
- {
- label: '瀵嗙爜鏈�澶ч暱搴�',
- prop: 'maxPwdLen',
- span:12,
- labelWidth:"25%",
- rules: [{
- required: true,
- validator:validatePass1,
- trigger: 'change'
- }]
- },
- {
- label: '缁勫悎鏂规硶',
- prop: 'combinationNames',
- labelWidth: 91,
- display:false,
- },
- {
- label: '缁勫悎鏂规硶',
- prop: 'combinationIds',
- type: "checkbox",
- span:12,
- labelWidth:"22%",
- id:5,
- hide:true,
- change: this.handleCheckboxChange,
- rules: [{
- required: true,
- message: "璇烽�夋嫨缁勫悎鏂规硶",
- trigger: "blur"
- }],
- dicUrl: '/api/ubcs-system/combination/select',
- dicMethod: 'get',
- props: {
- value: "ID",
- label: "NAME",
- },
- },
- {
- label: '蹇呭~绉嶇被',
- prop: 'requiredType',
- type: 'select',
- span:12,
- labelWidth:"25%",
- change:this.handleSelectChange,
- rules: [{
- required: true,
- message: "璇烽�夋嫨蹇呭~绉嶇被",
- trigger: "blur"
- }],
- dicData:[{
- label:'1绉�',
- value:1,
- disabled:false
- },
- {
- label:'2绉�',
- value:2,
- disabled:false
- },
- {
- label:'3绉�',
- value:3,
- disabled:false
- },
- {
- label:'4绉�',
- value:4,
- disabled:false
- }
- ]
-
- },
- {
- label: '杩囨湡鏃堕棿(澶�)',
- prop:'expirationTime',
- span:12,
- labelWidth:"22%",
- rules: [{
- required: true,
- validator:validatePass2,
- trigger: 'blur'
- }]
- },
- {
- label: '鎻愰啋鏃堕棿(澶�)',
- prop:'reminderTime',
- span:12,
- labelWidth:"25%",
- rules: [{
- required: true,
- validator:validatePass3,
- trigger: 'blur'
- }]
- },
- {
- label: '閿佸畾娆℃暟(娆�)',
- prop:'lockingNum',
- span:12,
- labelWidth:"22%",
- rules: [{
- required: true,
- validator:validatePass4,
- trigger: 'blur'
- }]
- },
- {
- label: '閿佸畾鏃堕棿(鍒嗛挓)',
- prop:'lockingTime',
- span:12,
- labelWidth:"25%",
- rules: [{
- required: true,
- validator:validatePass5,
- trigger: 'blur'
- }]
- },
- {
- label: '鎻忚堪',
- prop:'desc',
- type: 'textarea',
- span:12,
- labelWidth:"22%",
- rows: 5,
- },
- {
- label: '鏄惁涓洪粯璁ょ瓥鐣�',
- prop: 'isDefault',
- type: 'switch',
- labelWidth: 132,
- dicData:[{
- label:'鍚�',
- value:0
- },{
- label:'鏄�',
- value:1
- }]
- }
- ],
- },
//娣诲姞瀛樻斁澶氶�夌殑鍙橀噺,鐢ㄤ簬涓嬫媺鑿滃崟鐨勭鐢ㄦ晥鏋滃拰蹇呭~绉嶇被鏄惁澶т簬缁勫悎鏂瑰紡鐒跺悗鎻愮ず鐢ㄦ埛閲嶆柊閫夋嫨
checkboxlength:"",
//杩欎釜鏄笅鎷夎彍鍗曠殑鏁版嵁鍙橀噺
@@ -316,54 +71,332 @@
}
},
+ computed:{
+ ...mapGetters(["permission"]),
+ permissionList() {
+ return {
+ addBtn: this.vaildData(this.permission.password.password_add, false),
+ //viewBtn: this.vaildData(this.permission.password.user_view, false),
+ delBtn: this.vaildData(this.permission.password.password_delete, false),
+ editBtn: this.vaildData(this.permission.password.password_edit, false),
+ };
+ },
+ platformPermissionList() {
+ return {
+ addBtn: this.vaildData(this.permission.password.password_add, false),
+ //viewBtn: this.vaildData(this.permission.password.user_view, false),
+ delBtn: this.vaildData(this.permission.password.password_delete, false),
+ editBtn: this.vaildData(this.permission.password.password_edit, false),
+ };
+ },
+ option(){
+ return{
+ headerAlign: 'center',
+ align: 'center',
+ columnBtn:false,
+ border: true,
+ index: true,
+ rowKey:'id',
+ addBtn:this.permissionList.addBtn,
+ editBtn:false,
+ height:700,
+ delBtn:false,
+ column: [
+ {
+ label: '绛栫暐鍚嶇О',
+ prop: 'strategyName',
+ align: 'left',
+ span:24,
+ labelWidth: "11%",
+ rules: [{
+ required: true,
+ message: "璇疯緭鍏ョ瓥鐣ュ悕绉�",
+ trigger: "blur"
+ }]
+ },
+ {
+ label: '瀵嗙爜鏈�灏忛暱搴�',
+ prop: 'minPwdLen',
+ span:12,
+ labelWidth:"22%",
+ rules: [{
+ required: true,
+ validator:(rule, value,callback)=>{
+ this.values=value*1
+ if(value == ""){
+ callback(new Error('璇疯緭鍏ュ瘑鐮佹渶灏忛暱搴�'));
+ }else if(/[^\d]/g.test(value)){
+ callback(new Error('瀵嗙爜鏈�灏忛暱搴︾殑杈撳叆绫诲瀷鍙兘涓烘暟瀛楃被鍨�'));
+ }else if(this.values >= this.values1 && this.values1 != 0){
+ callback(new Error('瀵嗙爜鏈�灏忛暱搴︿笉鑳藉ぇ浜庡瘑鐮佹渶澶ч暱搴�'))
+ }else {
+ callback();
+ }
+ },
+ trigger: 'blur'
+ }]
+ },
+ {
+ label: '瀵嗙爜鏈�澶ч暱搴�',
+ prop: 'maxPwdLen',
+ span:12,
+ labelWidth:"25%",
+ rules: [{
+ required: true,
+ validator:(rule, value,callback) =>{
+ this.values1=value*1
+ if(value == ""){
+ callback(new Error('璇疯緭鍏ュ瘑鐮佹渶澶ч暱搴�'));
+ }else if(this.values1 <= this.values){
+ callback(new Error('瀵嗙爜鏈�澶ч暱搴︿笉鑳藉皬浜庡瘑鐮佹渶澶ч暱搴�'));
+ }else if(/[^\d]/g.test(value)){
+ callback(new Error('瀵嗙爜鏈�澶ч暱搴︾殑杈撳叆绫诲瀷鍙兘涓烘暟瀛楃被鍨�'));
+ }else {
+ callback();
+ }
+ },
+ trigger: 'change'
+ }]
+ },
+ {
+ label: '缁勫悎鏂规硶',
+ prop: 'combinationNames',
+ labelWidth: 91,
+ display:false,
+
+ },
+ {
+ label: '缁勫悎鏂规硶',
+ prop: 'combinationIds',
+ type: "checkbox",
+ span:12,
+ labelWidth:"22%",
+ id:5,
+ hide:true,
+ change: this.handleCheckboxChange,
+ rules: [{
+ required: true,
+ message: "璇烽�夋嫨缁勫悎鏂规硶",
+ trigger: "blur"
+ }],
+ dicUrl: '/api/ubcs-system/combination/select',
+ dicMethod: 'get',
+ props: {
+ value: "ID",
+ label: "NAME",
+ },
+ },
+ {
+ label: '蹇呭~绉嶇被',
+ prop: 'requiredType',
+ type: 'select',
+ span:12,
+ labelWidth:"25%",
+ change:this.handleSelectChange,
+ rules: [{
+ required: true,
+ message: "璇烽�夋嫨蹇呭~绉嶇被",
+ trigger: "blur"
+ }],
+ dicData:[{
+ label:'1绉�',
+ value:1,
+ disabled:false
+ },
+ {
+ label:'2绉�',
+ value:2,
+ disabled:false
+ },
+ {
+ label:'3绉�',
+ value:3,
+ disabled:false
+ },
+ {
+ label:'4绉�',
+ value:4,
+ disabled:false
+ }
+ ]
+
+ },
+ {
+ label: '杩囨湡鏃堕棿(澶�)',
+ prop:'expirationTime',
+ span:12,
+ labelWidth:"22%",
+ rules: [{
+ required: true,
+ validator: (rule, value,callback) => {
+ if(value == ""){
+ callback(new Error('璇疯緭鍏ヨ繃鏈熸椂闂�'));
+ }else if(/[^\d]/g.test(value)){
+ callback(new Error('杩囨湡鏃堕棿鐨勮緭鍏ョ被鍨嬪彧鑳戒负鏁板瓧绫诲瀷'));
+ }else {
+ callback();
+ }
+ },
+ trigger: 'blur'
+ }]
+ },
+ {
+ label: '鎻愰啋鏃堕棿(澶�)',
+ prop:'reminderTime',
+ span:12,
+ labelWidth:"25%",
+ rules: [{
+ required: true,
+ validator:(rule, value,callback) => {
+ if(value == ""){
+ callback(new Error('璇疯緭鍏ヨ繃鏈熸椂闂�'));
+ }else if(/[^\d]/g.test(value)){
+ callback(new Error('杩囨湡鏃堕棿鐨勮緭鍏ョ被鍨嬪彧鑳戒负鏁板瓧绫诲瀷'));
+ }else {
+ callback();
+ }
+ },
+ trigger: 'blur'
+ }]
+ },
+ {
+ label: '閿佸畾娆℃暟(娆�)',
+ prop:'lockingNum',
+ span:12,
+ labelWidth:"22%",
+ rules: [{
+ required: true,
+ validator:(rule, value,callback) => {
+ if(value == ""){
+ callback(new Error('璇疯緭鍏ラ攣瀹氭鏁�'));
+ }else if(/[^\d]/g.test(value)){
+ callback(new Error('閿佸畾娆℃暟鐨勮緭鍏ョ被鍨嬪彧鑳戒负鏁板瓧绫诲瀷'));
+ }else {
+ callback();
+ }
+ },
+ trigger: 'blur'
+ }]
+ },
+ {
+ label: '閿佸畾鏃堕棿(鍒嗛挓)',
+ prop:'lockingTime',
+ span:12,
+ labelWidth:"25%",
+ rules: [{
+ required: true,
+ validator:(rule, value,callback) => {
+ if(value == ""){
+ callback(new Error('璇疯緭鍏ラ攣瀹氭椂闂�'));
+ }else if(/[^\d]/g.test(value)){
+ callback(new Error('閿佸畾鏃堕棿鐨勮緭鍏ョ被鍨嬪彧鑳戒负鏁板瓧绫诲瀷'));
+ }else {
+ callback();
+ }
+ },
+ trigger: 'blur'
+ }]
+ },
+ {
+ label: '鎻忚堪',
+ prop:'desc',
+ type: 'textarea',
+ span:12,
+ labelWidth:"22%",
+ rows: 5,
+ },
+ {
+ label: '鏄惁涓洪粯璁ょ瓥鐣�',
+ prop: 'isDefault',
+ type: 'switch',
+ labelWidth: 132,
+ dicData:[{
+ label:'鍚�',
+ value:0
+ },{
+ label:'鏄�',
+ value:1
+ }]
+ }
+ ],
+ }
+ }
+ },
created() {
this.onLoad()
- combination().then(res=>{
- // console.log("111",res)
- })
},
methods:{
handleSelectChange(val){
this.selectlength=val
- // if(val.value >= this.checkboxlength.value.length && this.checkboxlength.value.length > 0){
- // console.log("澶т簬")
- // }
},
handleCheckboxChange(val) {
- console.log("val",val);
const arr = this.option.column[5];
this.checkboxlength = val.value;
- console.log("this.checkboxlength",this.checkboxlength);
this.checkboxedit = this.checkboxlength.toString().split(",");
- if (val.value != undefined && val.value != null) {
- if (this.checkboxlist == val.value) {
+ if (val.value !== undefined && val.value !== null) {
+ if (this.checkboxlist === val.value) {
+ return;
} else {
this.checkboxlist = val.value;
if (
- this.selectlength.value >= val.value.length &&
+ this.selectlength.value > val.value.length &&
val.value.length > 0
) {
- this.showMessage("蹇呭~绉嶇被涓嶈兘澶т簬缁勫悎鏂规硶锛岃閲嶆柊閫夋嫨锛�");
+ this.showWarningMessage();
} else if (
- this.selectlength.value >= this.checkboxedit.length &&
+ this.selectlength.value > this.checkboxedit.length &&
this.checkboxedit.length > 0
) {
- this.showMessage("蹇呭~绉嶇被涓嶈兘澶т簬缁勫悎鏂规硶锛岃閲嶆柊閫夋嫨锛�");
+ this.showWarningMessage();
}
}
}
- const disabledCount = Math.min(this.checkboxedit.length, 4);
- for (let i = 0; i < arr.dicData.length; i++) {
- arr.dicData[i].disabled = i >= disabledCount;
+
+ if (val.value !== undefined && val.value !== null) {
+ if (val.value.length === 1) {
+ this.setDisabled(arr, [0]);
+ } else if (val.value.length === 2) {
+ this.setDisabled(arr, [0, 1]);
+ } else if (val.value.length === 3) {
+ this.setDisabled(arr, [0, 1, 2]);
+ } else if (val.value.length === 4) {
+ this.setDisabled(arr, [0, 1, 2, 3]);
+ } else if (val.value.length === 0) {
+ this.setDisabled(arr, [-1]);
+ }
+ } else if (this.checkboxNumber.length !== 0) {
+ this.setDisabled(arr, [0, 1, 2, 3]);
}
- if (this.editFlag == true) {
- const disabledCount = Math.min(this.checkboxedit.length, 4);
- for (let i = 0; i < arr.dicData.length; i++) {
- arr.dicData[i].disabled = i >= disabledCount;
+
+ if (this.editFlag) {
+ if (this.checkboxedit.length === 1) {
+ this.setDisabled(arr, [0]);
+ } else if (this.checkboxedit.length === 2) {
+ this.setDisabled(arr, [0, 1]);
+ } else if (this.checkboxedit.length === 3) {
+ this.setDisabled(arr, [0, 1, 2]);
+ } else if (this.checkboxedit.length === 4) {
+ this.setDisabled(arr, [0, 1, 2, 3]);
+ } else if (this.checkboxedit.length === 0) {
+ this.setDisabled(arr, [-1]);
}
}
},
+
+ setDisabled(arr, indices) {
+ arr.dicData.forEach((item, index) => {
+ item.disabled = !indices.includes(index);
+ });
+ },
+
+ showWarningMessage() {
+ this.$message({
+ message: '蹇呭~绉嶇被涓嶈兘澶т簬缁勫悎鏂规硶锛岃閲嶆柊閫夋嫨锛�',
+ type: 'warning',
+ showClose: true,
+ });
+ },
rowDel(row){
this.$confirm("纭畾灏嗛�夋嫨鏁版嵁鍒犻櫎?", {
confirmButtonText: "纭畾",
@@ -408,12 +441,9 @@
handleEdit(row){
this.$refs.crud.rowEdit(row,row.$index);
this.editFlag=true;
- // const arr=this.option.column[5];
this.checkboxNumber=row.combinationIds.split(",")
this.selectNumber=row.requiredType
- // console.log(this.checkboxNumber, this.selectNumber)
- // 鎵撳紑缂栬緫棣栧厛鍒ゆ柇锛岀粍鍚堟柟娉曟槸鍚﹀皬浜庡繀濉绫伙紝濡傛灉灏忎簬缁欎簣鎻愰啋淇敼
- if(this.checkboxNumber.length<=this.selectNumber){
+ if(this.checkboxNumber.length < this.selectNumber){
this.$message({
type:"warning",
message:"蹇呭~绉嶇被涓嶈兘澶т簬缁勫悎鏂规硶锛岃閲嶆柊閫夋嫨锛�"
--
Gitblit v1.10.0