bug修复
This commit is contained in:
parent
338a313da1
commit
7a3a12285b
@ -424,8 +424,10 @@
|
||||
</el-row>
|
||||
</el-col>
|
||||
<el-col :span="24" class="el-card pt-6">
|
||||
<el-form-item label="" prop="field139">
|
||||
<el-button type="primary" :disabled="isDisabled" size="medium" @click="create"> 创建 </el-button>
|
||||
<el-form-item label="" prop="field139">
|
||||
<el-button v-if="isEdit" type="primary" size="medium" @click="create"> 修改 </el-button>
|
||||
<el-button v-else type="primary" :disabled="isDisabled" size="medium" @click="create"> 创建 </el-button>
|
||||
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-form>
|
||||
@ -450,7 +452,7 @@ const { removeTab } = useMultipleTabs()
|
||||
const router = useRouter()
|
||||
const route = useRoute()
|
||||
let isDisabled=ref(false)
|
||||
|
||||
let isEdit=ref(false)
|
||||
defineProps({
|
||||
dictData: {
|
||||
type: Object as PropType<Record<string, any[]>>,
|
||||
@ -461,9 +463,8 @@ const emit = defineEmits(['success', 'close'])
|
||||
const formRef = shallowRef<FormInstance>()
|
||||
const popupRef = shallowRef<InstanceType<typeof Popup>>()
|
||||
const mode = ref()
|
||||
if(route.query.read){
|
||||
isDisabled=true
|
||||
}
|
||||
isDisabled=route.query.read
|
||||
isEdit=route.query.edit
|
||||
// 弹窗标题
|
||||
// const popupTitle = computed(() => {
|
||||
// return mode.value == 'edit' ? '编辑公司' : '新增公司'
|
||||
@ -747,18 +748,10 @@ defineExpose({
|
||||
getDetail
|
||||
})
|
||||
</script>
|
||||
<style scoped>
|
||||
.avatar-uploader .avatar {
|
||||
width: 178px;
|
||||
height: 178px;
|
||||
display: block;
|
||||
}
|
||||
</style>
|
||||
|
||||
<style>
|
||||
.avatar-uploader .el-upload {
|
||||
width: 170px;
|
||||
height: 108px;
|
||||
width: 10vw;
|
||||
height: 6.3vw;
|
||||
background-color: #fff;
|
||||
border: 1px dashed var(--el-border-color);
|
||||
border-radius: 6px;
|
||||
|
@ -139,7 +139,9 @@
|
||||
:to="{
|
||||
path: getRoutePath('company/add:edit'),
|
||||
query: {
|
||||
id: row.id
|
||||
id: row.id,
|
||||
edit:true
|
||||
|
||||
}
|
||||
}"
|
||||
>
|
||||
|
@ -187,7 +187,7 @@
|
||||
:data="{ cid: 1 }"
|
||||
action="https://worker-task.lihaink.cn/api/upload/image"
|
||||
:show-file-list="false"
|
||||
:on-success="handleAvatarSuccess"
|
||||
:on-success="handleAvatarSuccessIdA"
|
||||
:before-upload="beforeAvatarUpload"
|
||||
>
|
||||
<img
|
||||
@ -205,7 +205,7 @@
|
||||
:data="{ cid: 1 }"
|
||||
action="https://worker-task.lihaink.cn/api/upload/image"
|
||||
:show-file-list="false"
|
||||
:on-success="handleAvatarSuccessB"
|
||||
:on-success="handleAvatarSuccessIdB"
|
||||
:before-upload="beforeAvatarUpload"
|
||||
>
|
||||
<img
|
||||
@ -227,8 +227,7 @@
|
||||
:data="{ cid: 1 }"
|
||||
action="https://worker-task.lihaink.cn/api/upload/image"
|
||||
:show-file-list="false"
|
||||
:on-success="handleAvatarSuccess_two"
|
||||
:before-upload="beforeAvatarUpload_two"
|
||||
:on-success="handleAvatarSuccessCarA"
|
||||
>
|
||||
<img
|
||||
v-if="formData.qualification.car_card"
|
||||
@ -240,17 +239,17 @@
|
||||
</el-icon>
|
||||
</el-upload>
|
||||
<el-upload
|
||||
v-model="formData.qualification.car_cardb"
|
||||
v-model="formData.qualification.car_card_b"
|
||||
class="avatar-uploader"
|
||||
:data="{ cid: 1 }"
|
||||
action="https://worker-task.lihaink.cn/api/upload/image"
|
||||
:show-file-list="false"
|
||||
:on-success="handleAvatarSuccess_twoB"
|
||||
:on-success="handleAvatarSuccessCarB"
|
||||
:before-upload="beforeAvatarUpload_two"
|
||||
>
|
||||
<img
|
||||
v-if="formData.qualification.car_cardb"
|
||||
:src="formData.qualification.car_cardb"
|
||||
v-if="formData.qualification.car_card_b"
|
||||
:src="formData.qualification.car_card_b"
|
||||
class="avatar"
|
||||
/>
|
||||
<el-icon v-else class="avatar-uploader-icon">
|
||||
@ -267,7 +266,7 @@
|
||||
:data="{ cid: 1 }"
|
||||
action="https://worker-task.lihaink.cn/api/upload/image"
|
||||
:show-file-list="false"
|
||||
:on-success="handleAvatarSuccess_three"
|
||||
:on-success="handleAvatarSuccessBankA"
|
||||
:before-upload="beforeAvatarUpload_three"
|
||||
>
|
||||
<img
|
||||
@ -280,17 +279,17 @@
|
||||
</el-icon>
|
||||
</el-upload>
|
||||
<el-upload
|
||||
v-model="formData.qualification.car_card_b"
|
||||
v-model="formData.qualification.bank_account_b"
|
||||
class="avatar-uploader"
|
||||
:data="{ cid: 1 }"
|
||||
action="https://worker-task.lihaink.cn/api/upload/image"
|
||||
:show-file-list="false"
|
||||
:on-success="handleAvatarSuccess_threeB"
|
||||
:on-success="handleAvatarSuccessBankB"
|
||||
:before-upload="beforeAvatarUpload_three"
|
||||
>
|
||||
<img
|
||||
v-if="formData.qualification.car_card_b"
|
||||
:src="formData.qualification.car_card_b"
|
||||
v-if="formData.qualification.bank_account_b"
|
||||
:src="formData.qualification.bank_account_b"
|
||||
class="avatar"
|
||||
/>
|
||||
<el-icon v-else class="avatar-uploader-icon">
|
||||
@ -373,14 +372,13 @@
|
||||
v-model="formData.contract"
|
||||
placeholder="请选择合同"
|
||||
clearable
|
||||
@change="street_change"
|
||||
:style="{ width: '100%' }"
|
||||
>
|
||||
<el-option
|
||||
v-for="(item, index) in datas.contract"
|
||||
:key="index"
|
||||
:label="item.street_name"
|
||||
:value="item.street_code"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
@ -511,13 +509,11 @@ const formData = reactive({
|
||||
is_contract: 0,
|
||||
role_id: '',
|
||||
avatar: '',
|
||||
password: '',
|
||||
password_confirm: '',
|
||||
disable: 0,
|
||||
multipoint_login: 1,
|
||||
root: 0
|
||||
})
|
||||
const datas = reactive({
|
||||
// 字典信息
|
||||
const datas:any = reactive({
|
||||
provinceOptions: [],
|
||||
cityOptions: [],
|
||||
areaOptions: [],
|
||||
@ -532,20 +528,36 @@ const getcontract_type = async () => {
|
||||
}
|
||||
// 获取合同
|
||||
const getcontract=async ()=>{
|
||||
const data=await dictDataLists({ type_id: formData.contract_type })
|
||||
// console.log(data)
|
||||
// console.log(formData.contract_type)
|
||||
|
||||
const data=await dictDataLists({ type_id: 9 })
|
||||
datas['contract'] = data['lists']
|
||||
}
|
||||
// const passwordConfirmValidator = (rule: object, value: string, callback: any) => {
|
||||
// if (formData.password) {
|
||||
// if (!value) callback(new Error('请再次输入密码'))
|
||||
// if (value !== formData.password) callback(new Error('两次输入密码不一致!'))
|
||||
// }
|
||||
// callback()
|
||||
// }
|
||||
getcontract_type()
|
||||
getcontract()
|
||||
// 手机号校验
|
||||
const ValidatorPhone = (rule: object, value: string, callback: any) => {
|
||||
let rg= /^(?:(?:\+|00)86)?1[3-9]\d{9}$/
|
||||
rg.test(formData.phone)?callback():callback(new Error('请输入正确的手机号'))
|
||||
}
|
||||
// 身份证校验
|
||||
const ValidatorId = (rule: object, value: string, callback: any) => {
|
||||
let rg= /^[1-9]\d{5}(?:18|19|20)\d{2}(?:0[1-9]|10|11|12)(?:0[1-9]|[1-2]\d|30|31)\d{3}[\dXx]$/
|
||||
rg.test(formData.id_card)?callback():callback(new Error('请输入正确的身份证号码'))
|
||||
}
|
||||
const Validatorcard = (rule: object, value: string, callback: any) => {
|
||||
formData.qualification.car_card?callback():callback(new Error('请输入驾驶证正面'))
|
||||
}
|
||||
const ValidatorcardB = (rule: object, value: string, callback: any) => {
|
||||
formData.qualification.car_card_b?callback():callback(new Error('请输入驾驶证反面'))
|
||||
|
||||
}
|
||||
const ValidatorBankcard = (rule: object, value: string, callback: any) => {
|
||||
formData.qualification.bank_account?callback():callback(new Error('请输入银行卡正面'))
|
||||
|
||||
}
|
||||
const ValidatorBankcardB = (rule: object, value: string, callback: any) => {
|
||||
formData.qualification.bank_account_b?callback():callback(new Error('请输入银行卡反面'))
|
||||
|
||||
}
|
||||
const formRules = reactive({
|
||||
account: [
|
||||
{
|
||||
@ -557,16 +569,17 @@ const formRules = reactive({
|
||||
id_card:[
|
||||
{
|
||||
required: true,
|
||||
message: '请输入身份证账号',
|
||||
trigger: ['blur']
|
||||
trigger: ['blur'],
|
||||
validator:ValidatorId
|
||||
|
||||
}
|
||||
|
||||
],
|
||||
phone:[
|
||||
{
|
||||
required: true,
|
||||
message: '请输入电话号码',
|
||||
trigger: ['blur']
|
||||
trigger: ['blur'],
|
||||
validator:ValidatorPhone
|
||||
}
|
||||
|
||||
],
|
||||
@ -585,6 +598,33 @@ const formRules = reactive({
|
||||
trigger: ['blur']
|
||||
}
|
||||
],
|
||||
car_card:[
|
||||
{
|
||||
required: true,
|
||||
trigger: ['change'],
|
||||
validator:Validatorcard
|
||||
}
|
||||
],
|
||||
car_card_b:[
|
||||
{
|
||||
required: true,
|
||||
trigger: ['blur'],
|
||||
validator:ValidatorcardB
|
||||
}
|
||||
],
|
||||
bank_account:[
|
||||
{
|
||||
required: true,
|
||||
trigger: ['change'],
|
||||
validator:ValidatorBankcard
|
||||
}
|
||||
],bank_account_b:[
|
||||
{
|
||||
required: true,
|
||||
trigger: ['change'],
|
||||
validator:ValidatorBankcardB
|
||||
}
|
||||
],
|
||||
role_id: [
|
||||
{
|
||||
|
||||
@ -592,25 +632,7 @@ const formRules = reactive({
|
||||
message: '请选择角色',
|
||||
trigger: ['blur']
|
||||
}
|
||||
],
|
||||
password: [
|
||||
{
|
||||
required: true,
|
||||
message: '请输入密码',
|
||||
trigger: ['blur']
|
||||
}
|
||||
] as any[],
|
||||
password_confirm: [
|
||||
{
|
||||
required: true,
|
||||
message: '请输入确认密码',
|
||||
trigger: ['blur']
|
||||
},
|
||||
// {
|
||||
// validator: passwordConfirmValidator,
|
||||
// trigger: 'blur'
|
||||
// }
|
||||
] as any[]
|
||||
]
|
||||
})
|
||||
|
||||
|
||||
@ -635,9 +657,8 @@ const { optionsData } = useDictOptions<{
|
||||
|
||||
const handleSubmit = async () => {
|
||||
await formRef.value?.validate()
|
||||
console.log(formData)
|
||||
return
|
||||
mode.value == 'edit' ? await adminEdit(formData) : await adminAdd(formData)
|
||||
mode.value == 'edit' ? await adminEdit(formData) : await adminAdd(formData).then(res=>console.log(res))
|
||||
popupRef.value?.close()
|
||||
emit('success')
|
||||
}
|
||||
@ -646,30 +667,27 @@ const open = (type = 'add') => {
|
||||
mode.value = type
|
||||
popupRef.value?.open()
|
||||
}
|
||||
|
||||
const handleAvatarSuccess: UploadProps['onSuccess'] = (response, uploadFile) => {
|
||||
// 图片上传成功返回的url
|
||||
const handleAvatarSuccessIdA: UploadProps['onSuccess'] = (response, uploadFile) => {
|
||||
formData.qualification.id_card = response.data.uri
|
||||
}
|
||||
const handleAvatarSuccessB: UploadProps['onSuccess'] = (response, uploadFile) => {
|
||||
const handleAvatarSuccessIdB: UploadProps['onSuccess'] = (response, uploadFile) => {
|
||||
formData.qualification.id_card_b = response.data.uri
|
||||
}
|
||||
const beforeAvatarUpload: UploadProps['beforeUpload'] = (rawFile) => {
|
||||
return true
|
||||
}
|
||||
const handleAvatarSuccess_two: UploadProps['onSuccess'] = (response, uploadFile) => {
|
||||
const handleAvatarSuccessCarA: UploadProps['onSuccess'] = (response, uploadFile) => {
|
||||
formData.qualification.car_card = response.data.uri
|
||||
}
|
||||
const handleAvatarSuccess_twoB: UploadProps['onSuccess'] = (response, uploadFile) => {
|
||||
const handleAvatarSuccessCarB: UploadProps['onSuccess'] = (response, uploadFile) => {
|
||||
formData.qualification.car_card_b = response.data.uri
|
||||
}
|
||||
const beforeAvatarUpload_two: UploadProps['beforeUpload'] = (rawFile) => {
|
||||
return true
|
||||
}
|
||||
const handleAvatarSuccess_three: UploadProps['onSuccess'] = (response, uploadFile) => {
|
||||
const handleAvatarSuccessBankA: UploadProps['onSuccess'] = (response, uploadFile) => {
|
||||
formData.qualification.bank_account = response.data.uri
|
||||
}
|
||||
const handleAvatarSuccess_threeB: UploadProps['onSuccess'] = (response, uploadFile) => {
|
||||
formData.qualification.car_card_b = response.data.uri
|
||||
const handleAvatarSuccessBankB: UploadProps['onSuccess'] = (response, uploadFile) => {
|
||||
formData.qualification.bank_account_b = response.data.uri
|
||||
}
|
||||
const handleAvatarSuccess_four: UploadProps['onSuccess'] = (response, uploadFile) => {
|
||||
formData.file = response.data.uri
|
||||
@ -715,7 +733,7 @@ const setFormData = async (row: any) => {
|
||||
const data = await adminDetail({
|
||||
id: row.id
|
||||
})
|
||||
console.log(row)
|
||||
|
||||
for (const key in formData) {
|
||||
if (data[key] != null && data[key] != undefined) {
|
||||
//@ts-ignore
|
||||
@ -734,19 +752,11 @@ defineExpose({
|
||||
setFormData
|
||||
})
|
||||
</script>
|
||||
<style scoped>
|
||||
|
||||
.avatar-uploader .avatar {
|
||||
width: 178px;
|
||||
height: 178px;
|
||||
display: block;
|
||||
}
|
||||
</style>
|
||||
|
||||
<style>
|
||||
.avatar-uploader .el-upload {
|
||||
width: 170px;
|
||||
height: 108px;
|
||||
width: 10vw;
|
||||
height: 6.3vw;
|
||||
background-color: #fff;
|
||||
border: 1px dashed var(--el-border-color);
|
||||
border-radius: 6px;
|
||||
|
@ -154,7 +154,6 @@ const handleAdd = async () => {
|
||||
}
|
||||
|
||||
const handleEdit = async (data: any) => {
|
||||
|
||||
showEdit.value = true
|
||||
await nextTick()
|
||||
editRef.value?.open('edit')
|
||||
|
Loading…
x
Reference in New Issue
Block a user