perf: 优化钉钉企业微信提交

This commit is contained in:
ibuler 2021-05-19 16:44:39 +08:00 committed by Jiangjie.Bai
parent 8bd77fa6c9
commit fa6831b743
4 changed files with 26 additions and 14 deletions

View File

@ -16,6 +16,7 @@
import GenericCreateUpdateForm from '@/layout/components/GenericCreateUpdateForm' import GenericCreateUpdateForm from '@/layout/components/GenericCreateUpdateForm'
import UserPassword from '@/components/FormFields/UserPassword' import UserPassword from '@/components/FormFields/UserPassword'
import { IBox } from '@/components' import { IBox } from '@/components'
import rules from '@/components/DataForm/rules'
export default { export default {
name: 'PasswordUpdate', name: 'PasswordUpdate',
@ -42,8 +43,8 @@ export default {
}, },
new_password: { new_password: {
label: this.$t('users.NewPassword'), label: this.$t('users.NewPassword'),
component: UserPassword, rules: [rules.RequiredChange],
rules: [] component: UserPassword
}, },
new_password_again: { new_password_again: {
label: this.$t('users.ConfirmPassword'), label: this.$t('users.ConfirmPassword'),

View File

@ -7,6 +7,7 @@
:fields-meta="fieldsMeta" :fields-meta="fieldsMeta"
:more-buttons="moreButtons" :more-buttons="moreButtons"
:has-detail-in-msg="false" :has-detail-in-msg="false"
:clean-form-value="cleanFormValue"
/> />
</IBox> </IBox>
</template> </template>
@ -56,6 +57,13 @@ export default {
methods: { methods: {
getMethod() { getMethod() {
return 'put' return 'put'
},
// secret
cleanFormValue(data) {
if (!data['DINGTALK_APPSECRET']) {
delete data['DINGTALK_APPSECRET']
}
return data
} }
} }
} }

View File

@ -3,7 +3,7 @@
<GenericCreateUpdateForm <GenericCreateUpdateForm
:fields="fields" :fields="fields"
:url="url" :url="url"
:perform-submit="performSubmit" :clean-form-value="cleanFormValue"
:get-method="getMethod" :get-method="getMethod"
:fields-meta="fieldsMeta" :fields-meta="fieldsMeta"
:more-buttons="moreButtons" :more-buttons="moreButtons"
@ -94,18 +94,13 @@ export default {
getMethod() { getMethod() {
return 'put' return 'put'
}, },
performSubmit(validValues) { // secret
Object.keys(validValues).forEach( cleanFormValue(data) {
function(key) { if (!data['EMAIL_HOST_PASSWORD']) {
if (validValues[key] === null) { delete data['EMAIL_HOST_PASSWORD']
delete validValues[key]
} }
return data
} }
)
return this.$axios['put'](`/api/v1/settings/setting/?category=email`, validValues)
}
} }
} }

View File

@ -7,6 +7,7 @@
:fields-meta="fieldsMeta" :fields-meta="fieldsMeta"
:more-buttons="moreButtons" :more-buttons="moreButtons"
:has-detail-in-msg="false" :has-detail-in-msg="false"
:clean-form-value="cleanFormValue"
/> />
</IBox> </IBox>
</template> </template>
@ -56,6 +57,13 @@ export default {
methods: { methods: {
getMethod() { getMethod() {
return 'put' return 'put'
},
// secret
cleanFormValue(data) {
if (!data['WECOM_SECRET']) {
delete data['WECOM_SECRET']
}
return data
} }
} }
} }