From 7e9a217f6d3610d612328112ee538481f7db089b Mon Sep 17 00:00:00 2001 From: riku <risaku@163.com> Date: 星期二, 19 十二月 2023 09:14:09 +0800 Subject: [PATCH] Merge branch 'master' into feature-001 --- src/views/fytz/user/components/CompUserInfo.vue | 202 ++++++++++++++++++++----------------------------- 1 files changed, 83 insertions(+), 119 deletions(-) diff --git a/src/views/fytz/user/components/CompUserInfo.vue b/src/views/fytz/user/components/CompUserInfo.vue index 1194b4a..c0340d7 100644 --- a/src/views/fytz/user/components/CompUserInfo.vue +++ b/src/views/fytz/user/components/CompUserInfo.vue @@ -3,9 +3,6 @@ :form-info="_formInfo" :rules="rules" :reset="active" - :useCancel="create" - :useReset="!create" - :clearAftSubmit="create" v-model:is-edit="_edit" @submit="submit" @cancel="cancel" @@ -36,12 +33,13 @@ </el-col> <el-col :span="6" v-if="!create"> <el-row justify="end"> - <el-button type="danger" @click="onResetPw" :loading="pwLoading">閲嶇疆瀵嗙爜</el-button> + <el-button type="danger" @click="onResetPw" :loading="pwLoading" + >閲嶇疆瀵嗙爜</el-button + > </el-row> </el-col> </el-form-item> <FYOptionUserType - prop="_usertype" :allOption="false" :initValue="false" v-model:value="formObj._usertype" @@ -56,25 +54,32 @@ </el-form-item> --> <el-form-item label="鏄惁鍙敤" prop="isenable"> <el-switch v-model="formObj.isenable" /> - <span style="margin-left: 16px">{{ formObj.isenable ? '鍙敤' : '涓嶅彲鐢�' }}</span> + <span style="margin-left: 16px">{{ + formObj.isenable ? '鍙敤' : '涓嶅彲鐢�' + }}</span> </el-form-item> <el-form-item label="宸ュ彿" prop="workno"> <el-input clearable v-model="formObj.workno" placeholder="宸ュ彿" /> </el-form-item> <el-form-item label="鎵嬫満" prop="telephone"> - <el-input clearable type="tel" v-model="formObj.telephone" placeholder="鎵嬫満" /> + <el-input + clearable + type="tel" + v-model="formObj.telephone" + placeholder="鎵嬫満" + /> </el-form-item> - <FYOptionLocation - v-if="create" - prop="_locations" - :allOption="false" - :level="4" - :checkStrictly="false" - :initValue="false" - v-model:value="formObj._locations" - ></FYOptionLocation> + <!-- <el-form-item label="鐪�/甯�/鍖�/闀�" prop="_locations"> + <el-cascader + v-model="formObj._locations" + :options="locations" + placeholder="鐪�/甯�/鍖�/闀�" + :props="locationsProps" + style="width: 280px" + :disabled="!create" + /> + </el-form-item> --> <FYOptionScene - prop="_scenetype" :allOption="false" :type="1" :initValue="false" @@ -88,7 +93,6 @@ import { defineProps, defineEmits, reactive, ref, watch } from 'vue'; import { getSceneName } from '@/enum/scene'; import userApi from '@/api/fytz/userApi'; -import { useMessageBoxTip } from '@/composables/messageBox'; const props = defineProps({ //鍩烘湰淇℃伅 @@ -96,32 +100,36 @@ isEdit: Boolean, create: { type: Boolean, - default: false + default: false, }, active: { type: Boolean, - default: false - } + default: false, + }, }); const emit = defineEmits(['onSubmit', 'onCancel', 'update:isEdit']); -const _formInfo = ref({ isenable: true }); +const _formInfo = ref(); const _edit = ref(false); +const locations = enumLocation(false); +const locationsProps = reactive({ + checkStrictly: true, +}); const rules = reactive({ acountname: [ { required: true, message: '璐︽埛鍚嶄笉鑳戒负绌�', - trigger: 'blur' - } + trigger: 'blur', + }, ], realname: [ { required: true, message: '鐢ㄦ埛鏄电О涓嶈兘涓虹┖', - trigger: 'blur' - } + trigger: 'blur', + }, ], // password: [ // { @@ -134,30 +142,30 @@ { required: true, message: '鐢ㄦ埛绫诲瀷涓嶈兘涓虹┖', - trigger: 'change' - } + trigger: 'change', + }, ], _locations: [ { required: props.create, message: '鐪�/甯�/鍖�/闀囦笉鑳戒负绌�', - trigger: 'change' - } + trigger: 'change', + }, ], _scenetype: [ { required: true, message: '鍦烘櫙绫诲瀷涓嶈兘涓虹┖', - trigger: 'change' - } - ] + trigger: 'change', + }, + ], }); // 鐢ㄦ埛鍩烘湰淇℃伅鏍煎紡鍖� function parseUserInfo(s) { s._usertype = { label: s.usertype, - value: s.usertypeid + '' + value: s.usertypeid + '', }; s._scenetype = getSceneName(s.extension2, 1); @@ -167,17 +175,48 @@ return s; } -function parseUserInfoReverse(formObj) { +function createUser(formObj, func) { + return userApi + .createUser(formObj.value) + .then(() => { + emit('onSubmit', formObj); + }) + .finally(() => { + func(); + }); +} + +function updateUser(formObj, func) { + return userApi + .updateUserInfo(formObj.value) + .then(() => { + emit('onSubmit', formObj); + }) + .finally(() => { + func(); + }); +} + +function submit(formObj, func) { // 琛屾斂鍖哄垝淇℃伅濉厖 const a = formObj.value._locations; - formObj.value.provincecode = a.pCode; - formObj.value.provincename = a.pName; - formObj.value.citycode = a.cCode; - formObj.value.cityname = a.cName; - formObj.value.districtcode = a.dCode; - formObj.value.extension1 = a.dName; - formObj.value.towncode = a.tCode; - formObj.value.townname = a.tName; + if (a[0]) { + formObj.value.provincecode = a[0][0]; + formObj.value.provincename = a[0][1]; + } + if (a[1]) { + formObj.value.citycode = a[1][0]; + formObj.value.cityname = a[1][1]; + } + if (a[2]) { + formObj.value.districtcode = a[2][0]; + formObj.value.extension1 = a[2][1]; + } + if (a[3]) { + formObj.value.towncode = a[3][0]; + formObj.value.townname = a[3][1]; + } + // 鐢ㄦ埛绫诲瀷淇℃伅濉厖 const b = formObj.value._usertype; formObj.value.usertypeid = b.value; @@ -187,57 +226,7 @@ const c = formObj.value._scenetype; formObj.value.extension2 = c.value; - return formObj; -} - -function createUser(formObj, success, fail) { - const params = { - userInfo: formObj.value, - baseInfo: { - biProvinceCode: formObj.value.provincecode, - biProvinceName: formObj.value.provincename, - biCityCode: formObj.value.citycode, - biCityName: formObj.value.cityname, - biDistrictCode: formObj.value.districtcode, - biDistrictName: formObj.value.extension1, - biTownCode: formObj.value.towncode, - biTownName: formObj.value.townname - // biAreaCode - // biArea - // biManagementCompanyId - // biManagementCompany - // biContact - // biTelephone - // biAddress - } - }; - return userApi - .createUser(params) - .then(() => { - emit('onSubmit', params); - success(); - }) - .catch((err) => { - fail(err); - }); -} - -function updateUser(formObj, success, fail) { - return userApi - .updateUserInfo(formObj.value) - .then(() => { - emit('onSubmit', formObj); - if (success) success(); - }) - .catch((err) => { - if (fail) fail(err); - }); -} - -function submit(formObj, success, fail) { - parseUserInfoReverse(formObj); - - return props.create ? createUser(formObj, success, fail) : updateUser(formObj, success, fail); + return props.create ? createUser(formObj, func) : updateUser(formObj, func); } function cancel() { @@ -251,34 +240,9 @@ } ); -// watch( -// () => props.create, -// (nValue) => { -// if (nValue) { - -// } -// }, -// {immediate:true} -// ); - watch(_edit, (nValue) => { emit('update:isEdit', nValue); }); -// 閲嶇疆瀵嗙爜 - const pwLoading = ref(false); - -function onResetPw() { - useMessageBoxTip({ - confirmMsg: '鏄惁閲嶇疆璇ュ満鏅瘑鐮侊紵', - confirmTitle: '閲嶇疆瀵嗙爜', - onConfirm: async () => { - pwLoading.value = true; - return userApi.resetPassword(props.formInfo.guid).finally(() => { - pwLoading.value = false; - }); - } - }); -} </script> -- Gitblit v1.9.3