更新
This commit is contained in:
@ -18,40 +18,25 @@
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { ref, computed, reactive, getCurrentInstance } from 'vue'
|
||||
import * as rule from "@/utils/rules.js";
|
||||
import { ref, reactive, getCurrentInstance } from 'vue'
|
||||
import { qcckPost } from "@/api/qcckApi.js";
|
||||
import FormMessage from '@/components/aboutTable/FormMessage.vue'
|
||||
|
||||
const { proxy } = getCurrentInstance()
|
||||
const { D_BAXX_GWLX } = proxy.$dict("D_BAXX_GWLX")
|
||||
|
||||
const title = ref('新增培训人员')
|
||||
const loading = ref(false)
|
||||
const disabled = ref(false)
|
||||
const FormRef = ref(null)
|
||||
|
||||
const props = defineProps({
|
||||
modelValue: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
},
|
||||
dic: {
|
||||
type: Object,
|
||||
default: () => ({})
|
||||
}
|
||||
})
|
||||
|
||||
const emits = defineEmits(['update:modelValue', 'refresh'])
|
||||
|
||||
const dialogVisible = computed({
|
||||
get() {
|
||||
return props.modelValue
|
||||
},
|
||||
set(val) {
|
||||
emits('update:modelValue', val)
|
||||
}
|
||||
})
|
||||
|
||||
const formData = ref({})
|
||||
const dialogVisible = ref(false)
|
||||
const emits = defineEmits(['refresh'])
|
||||
const formList = reactive([
|
||||
[
|
||||
{ label: "姓名", prop: "xm", type: "input" },
|
||||
@ -74,80 +59,34 @@ const formList = reactive([
|
||||
{ label: "无犯罪记录证明", prop: "wfzzmjl", type: "upload", limit: 1 },
|
||||
]
|
||||
])
|
||||
|
||||
const rules = {
|
||||
ryzpzm: [{ required: true, message: "请上传身份证正面", trigger: "change" }],
|
||||
ryzpfm: [{ required: true, message: "请上传身份证反面", trigger: "change" }],
|
||||
tjbg: [{ required: true, message: "请上传体检报告", trigger: "change" }],
|
||||
wfzzmjl: [{ required: true, message: "请上传无犯罪记录证明", trigger: "change" }],
|
||||
xm: [{ required: true, message: "请输入姓名", trigger: "change" }],
|
||||
zjhm: [
|
||||
{ required: true, message: "请输入证件号码", trigger: "change" },
|
||||
{
|
||||
validator: (rule, value, callback) => {
|
||||
if (!value) {
|
||||
callback()
|
||||
} else {
|
||||
const reg = /^(\d{15}|\d{17}[\dXx])$/;
|
||||
if (!reg.test(value)) {
|
||||
callback(new Error("请输入正确的身份证号码"))
|
||||
} else {
|
||||
callback()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
lxdh: [
|
||||
{ required: true, message: "请输入联系电话", trigger: "change" },
|
||||
{
|
||||
validator: (rule, value, callback) => {
|
||||
if (!value) {
|
||||
callback()
|
||||
} else {
|
||||
const reg = /^1[34578]\d{9}$/
|
||||
if (!reg.test(value)) {
|
||||
callback(new Error("请输入正确的手机号"))
|
||||
} else {
|
||||
callback()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
...rule.phoneRule({ validator: true,message: "请输入联系电话",require: true }, "lxdh"), // 是否必填 是否进行校验`
|
||||
...rule.identityCardRule({ validator: true,message: "请输入身份证号" ,require: true}, "zjhm"), // 是否必填 是否进行校验
|
||||
jzdz: [{ required: true, message: "请输入居住地址", trigger: "change" }],
|
||||
rzsj: [{ required: true, message: "请选择入职时间", trigger: "change" }],
|
||||
pxgs: [{ required: true, message: "请选择所属保安公司", trigger: "change" }],
|
||||
gw: [{ required: true, message: "请输入岗位", trigger: "change" }],
|
||||
}
|
||||
|
||||
const formData = ref({})
|
||||
|
||||
const close = () => {
|
||||
FormRef.value?.reset()
|
||||
dialogVisible.value = false
|
||||
dialogVisible.value = false;
|
||||
}
|
||||
|
||||
const open = (row = {}, type = 'add') => {
|
||||
disabled.value = false
|
||||
dialogVisible.value = true
|
||||
|
||||
const fieldsToSplit = ['ryzpzm', 'ryzpfm', 'tjbg', 'wfzzmjl'];
|
||||
fieldsToSplit.forEach(field => {
|
||||
row[field] = typeof row[field] === 'string'
|
||||
? row[field].split(',')
|
||||
: row[field];
|
||||
row[field] = typeof row[field] === 'string' ? row[field].split(',') : row[field];
|
||||
});
|
||||
|
||||
formData.value = { ...row }
|
||||
if (type === 'add') {
|
||||
title.value = '新增申请人员'
|
||||
} else if (type === 'upload') {
|
||||
title.value = '上传资料'
|
||||
} else {
|
||||
disabled.value = true
|
||||
title.value = '查看详情'
|
||||
}
|
||||
title.value = type === 'add' ? '新增申请人员' : (type === 'upload' ? '上传资料' : '查看详情')
|
||||
disabled.value = title.value === '查看详情' ? true : false;
|
||||
dialogVisible.value = true;
|
||||
}
|
||||
|
||||
// 新增、编辑
|
||||
@ -155,15 +94,9 @@ const save = () => {
|
||||
FormRef.value.submit(() => {
|
||||
loading.value = true;
|
||||
const url = !formData.value?.id ? `/mosty-base/baxx/basq/add` : `/mosty-base/baxx/basq/edit`;
|
||||
|
||||
const params = { ...formData.value }
|
||||
const fieldsToSplit = ['ryzpzm', 'ryzpfm', 'tjbg', 'wfzzmjl'];
|
||||
fieldsToSplit.forEach(field => {
|
||||
params[field] = params[field]
|
||||
? params[field].join(',')
|
||||
: '';
|
||||
});
|
||||
|
||||
fieldsToSplit.forEach(field => { params[field] = params[field] ? params[field].join(',') : ''; });
|
||||
qcckPost(params, url).then(() => {
|
||||
loading.value = false;
|
||||
proxy.$message.success("保存成功");
|
||||
|
||||
Reference in New Issue
Block a user