bug修改

This commit is contained in:
zhaoxiao
2021-10-13 11:30:57 +08:00
parent 02898fd216
commit 896ad36e6a
6 changed files with 85 additions and 46 deletions
+31 -6
View File
@@ -53,6 +53,8 @@
<script>
import { putAction } from '@/api/manage'
import { getRSAPublicKey } from '@api/login'
import { JSEncrypt } from 'jsencrypt'
export default {
name: 'UserPassword',
@@ -72,12 +74,13 @@ export default {
rules: [
{ required: true, message: '请输入新密码!' },
{
//原正则,3种组合时不会提示 /^(?=.*[a-zA-Z])(?=.*\d)(?=.*[~!@#$%^&*()_+`\-={}:";'<>?,./]).{8,}$/
//原正则,3种组合时不会提示 /^(?=.*[a-zA-Z])(?=.*\d)(?=.*[~!@#$%^&*()_+`\-={}:";'<>?,./]).{8,}$/
pattern: /^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[~!@#$%^&*()_+`\-={}:";'<>?,./]).{8,30}$/,
message: '密码由8位及以上数字、大小写字母和特殊符号组成!'
},
{ validator: this.validateToNextPassword }
]
],
validateTrigger: 'blur'
},
confirmpassword: {
rules: [
@@ -86,8 +89,9 @@ export default {
pattern: /^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[~!@#$%^&*()_+`\-={}:";'<>?,./]).{8,30}$/,
message: '密码由8位及以上数字、大小写字母和特殊符号组成!'
},
{ validator: this.validateToNextPassword }
]
{ validator: this.handlePasswordCheck }
],
validateTrigger: 'blur'
}
},
confirmDirty: false,
@@ -102,7 +106,8 @@ export default {
form: this.$form.createForm(this),
url: 'sys/user/updatePassword',
username: ''
username: '',
rsaPublicKey: '' // 公钥
}
},
methods: {
@@ -112,10 +117,16 @@ export default {
return
} else {
this.username = uname
this.getPublicKey()
this.form.resetFields()
this.visible = true
}
},
getPublicKey() {
getRSAPublicKey().then(res => {
this.rsaPublicKey = res.result
})
},
handleCancel() {
this.close()
},
@@ -131,7 +142,14 @@ export default {
this.form.validateFields((err, values) => {
if (!err) {
that.confirmLoading = true
let params = Object.assign({ username: this.username }, values)
let params = {}
params.username = this.username
params.rsaPublicKey = this.rsaPublicKey
let encrypt = new JSEncrypt()
encrypt.setPublicKey(params.rsaPublicKey)
params.oldpassword = encrypt.encrypt(values.oldpassword)
params.password = encrypt.encrypt(values.password)
params.confirmpassword = encrypt.encrypt(values.confirmpassword)
console.log('修改密码提交数据', params)
putAction(this.url, params).then((res) => {
if (res.success) {
@@ -154,6 +172,13 @@ export default {
}
callback()
},
handlePasswordCheck(rule, value, callback) {
let password = this.form.getFieldValue('password')
if (value && password && value.trim() !== password.trim()) {
callback(new Error('两次密码不一致'))
}
callback()
},
compareToFirstPassword(rule, value, callback) {
const form = this.form
if (value && value !== form.getFieldValue('password')) {
@@ -41,7 +41,7 @@
<a-form-item label="公司电话" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-input placeholder="请输入公司电话"
v-decorator="['companyPhone', validatorRules.companyPhone]"
:maxLength='16'
:maxLength='15'
@change="e => e.target.value = (e.target.value.replace(/[^0-9-]/g, '')).trim()"></a-input>
</a-form-item>
</a-col>
@@ -92,13 +92,14 @@
</template>
<span slot="action" class="action-span-cell" slot-scope="text, record">
<template v-if="record.showOperate">
<a @click="goFilesMaintenance(record)" v-has="'workingGroupProject:fileMaintenance'">文件维护</a>
<a @click="goConferenceMaintenance(record)" v-has="'workingGroupProject:meetingMaintenance'">会议维护</a>
<a @click="copyWorkGroup(record.id)" v-has="'workingGroupProject:copy'" v-if="record.canOperate">复制</a>
<a @click="handleEdit(record)" v-has="'workingGroupProject:edit'" v-if="record.canOperate">编辑</a>
<a @click="handleDelete(record.id)" v-has="'workingGroupProject:delete'" v-if="record.canOperate">删除</a>
</template>
<a @click="goFilesMaintenance(record)" v-has="'workingGroupProject:fileMaintenance'">文件维护</a>
<a @click="goConferenceMaintenance(record)" v-has="'workingGroupProject:meetingMaintenance'">会议维护</a>
<a @click="copyWorkGroup(record.id)" v-has="'workingGroupProject:copy'"
v-if="record.checkoutOperation === 1">复制</a>
<a @click="handleEdit(record)" v-has="'workingGroupProject:edit'"
v-if="record.checkoutOperation === 1">编辑</a>
<a @click="handleDelete(record.id)" v-has="'workingGroupProject:delete'"
v-if="record.checkoutOperation === 1">删除</a>
</span>
</a-table>
</div>
@@ -212,36 +213,36 @@ export default {
}
}).finally(() => {
this.loading = false
// 判断登录用户是否为负责人B
if (this.dataSource.length > 0) {
for (let index = 0; index < this.dataSource.length; index++) {
this.checkWorkingGroupPrincipal(index).then((res) => {
res.showOperate = true
this.$set(this.dataSource, index, res)
})
}
}
// 判断登录用户是否为负责人B 2021-10-13:修改为后端在列表字段返回checkoutOperation字段控制,1--可操作,2--不可操作
// if (this.dataSource.length > 0) {
// for (let index = 0; index < this.dataSource.length; index++) {
// this.checkWorkingGroupPrincipal(index).then((res) => {
// res.showOperate = true
// this.$set(this.dataSource, index, res)
// })
// }
// }
})
},
/**
* 判断登录用户是否为负责人B
*/
checkWorkingGroupPrincipal(index) {
let item = this.dataSource[index]
// (负责人B不可操作)
return new Promise(resolve => {
checkoutWorkingGroupPrincipal({ id: item.id }).then(res => {
// 不可操作则置否
if (res.success) {
item.canOperate = true
} else {
item.canOperate = false
}
}).finally(() => {
resolve(item)
})
})
},
// checkWorkingGroupPrincipal(index) {
// let item = this.dataSource[index]
// // (负责人B不可操作)
// return new Promise(resolve => {
// checkoutWorkingGroupPrincipal({ id: item.id }).then(res => {
// // 不可操作则置否
// if (res.success) {
// item.canOperate = true
// } else {
// item.canOperate = false
// }
// }).finally(() => {
// resolve(item)
// })
// })
// },
/**
* 文件维护
* @param record
@@ -252,7 +253,7 @@ export default {
path: '/projectManagement/WorkingGroupProjectDataMaintenance',
query: {
workingGroupId: record.id,
canOperate: record.canOperate
canOperate: record.checkoutOperation === 1
}
})
},
@@ -266,7 +267,7 @@ export default {
query: {
workingGroupProject: record.workingGroupProject,
workingGroupProjectId: record.id,
canOperate: record.canOperate
canOperate: record.checkoutOperation === 1
}
})
},
@@ -295,7 +296,7 @@ export default {
query: {
workingGroupProject: record.workingGroupProject,
workingGroupProjectId: record.id,
canOperate: record.canOperate
canOperate: record.checkoutOperation === 1
}
})
},
@@ -307,7 +308,7 @@ export default {
year: new Date().getFullYear().toString()
}
this.loadData(1)
},
}
}
}
</script>
@@ -15,7 +15,7 @@
<a-form-item label="来款项目" :labelCol="remarksLabelCol" :wrapperCol="remarksWrapperCol">
<a-input placeholder="请输入来款项目"
v-decorator="['chargeProject',validatorRules.chargeProject]"
:maxLength='100'
:maxLength='50'
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input>
</a-form-item>
</a-col>
@@ -185,6 +185,8 @@ import CompanySelect from '@comp/company/CompanySelect'
import SelectPrincipal from '@comp/company/SelectPrincipal'
import SelectContacts from '@comp/company/SelectContacts'
import { addZero } from '../../../utils/util'
import Vue from 'vue'
import { USER_INFO } from '../../../store/mutation-types'
export default {
name: 'GeneralProjectModule',
@@ -344,6 +346,7 @@ export default {
companyName: record.chargeCompanyTemporaryName
}
}
// 是否存在从收入合同传入的签订联系人id
console.log(record, this.signedContactId)
record.contactsId = this.signedContactId || record.contactsTemporaryId || undefined
@@ -361,6 +364,13 @@ export default {
id: this.model.mailContactsTemporaryId,
name: this.model.mailContactsTemporaryName
}
} else {
// 新增默认运行年份为当年
this.model.year = new Date().getFullYear().toString()
// 新增默认负责人为当前用户
this.model.principalId = Vue.ls.get(USER_INFO).id
// 新增默认来款方式为无
this.model.chargeWay = 1
}
this.chargeWayType = record.chargeWay
this.visible = true
+4 -1
View File
@@ -581,7 +581,7 @@ export default {
callback()
}
if (!passwordReg(value)) {
callback('密码长度至少8位,并包括数字、小写字母、大写字母和特殊符号4类')
callback('密码由8位及以上数字、大小写字母和特殊符号组成!')
}
if (value && this.confirmDirty) {
form.validateFields(['confirm'], {force: true})
@@ -590,6 +590,9 @@ export default {
},
compareToFirstPassword(rule, value, callback) {
const form = this.form
if (value && !passwordReg(value)) {
callback('密码由8位及以上数字、大小写字母和特殊符号组成!')
}
if (value && value !== form.getFieldValue('password')) {
callback('两次输入的密码不一样!')
} else {