| | |
| | | :close-on-click-modal="false" |
| | | > |
| | | <el-form :model="state.form" size="default" ref="superRef" :rules="state.formRules" label-width="150px" > |
| | | <el-form-item v-if="state.isAdmin" label="企业:" prop="companyId"> |
| | | <el-select v-model="state.form.companyId" placeholder="请选择" clearable> |
| | | <el-option |
| | | v-for="item in state.companyList" |
| | | :key="item.id" |
| | | :label="item.name" |
| | | :value="item.id"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="模板名称:" prop="templateName"> |
| | | <el-input v-model.trim="state.form.templateName" :disabled="state.title =='查看'" placeholder="模板名称"></el-input> |
| | | </el-form-item> |
| | |
| | | companyId: null |
| | | }, |
| | | formRules:{ |
| | | companyId: [{ required: true, message: '请选择企业', trigger: 'blur' }], |
| | | templateName: [{ required: true, message: '请输入模板名称', trigger: 'blur' }], |
| | | industryType: [{ required: true, message: '请选择行业类型', trigger: 'blur' }], |
| | | filePath: [{ required: true, validator: checkFiles, trigger: 'blur' }] |
| | | }, |
| | | isAdmin: false, |
| | | companyList: [], |
| | | uploadUrl: import.meta.env.VITE_APP_BASE_API + '/system/common/uploadFile', |
| | | header: { |
| | | Authorization: getToken() |
| | |
| | | |
| | | }); |
| | | |
| | | const openDialog = async (type, value,companyId) => { |
| | | const openDialog = async (type, value,companyId, isAdmin, companyList) => { |
| | | state.isAdmin = isAdmin |
| | | if(isAdmin){ |
| | | state.companyList = companyList |
| | | } |
| | | state.title = type === 'add' ? '新增' : type ==='edit' ? '编辑' : '查看' |
| | | state.form.companyId = companyId |
| | | if(state.title == '编辑'||state.title == '查看'){ |
| | |
| | | const res = await getCompany(queryParams) |
| | | if (res.code == 200) { |
| | | data.companyList = res.data.list?res.data.list:[] |
| | | data.queryParams.companyId = data.companyList[0].id |
| | | // data.queryParams.companyId = data.companyList[0].id |
| | | } else { |
| | | ElMessage.warning(res.message) |
| | | } |
| | |
| | | } |
| | | |
| | | const openDialog = (type, value) => { |
| | | dialogRef.value.openDialog(type, value, data.queryParams.companyId); |
| | | dialogRef.value.openDialog(type, value, data.queryParams.companyId, data.isAdmin, data.companyList); |
| | | } |
| | | |
| | | /** 重置新增的表单以及其他数据 */ |
| | |
| | | :close-on-click-modal="false" |
| | | > |
| | | <el-form :model="state.form" size="default" ref="superRef" :rules="state.formRules" label-width="150px" > |
| | | <el-form-item v-if="state.isAdmin" label="企业:" prop="companyId"> |
| | | <el-select v-model="state.form.companyId" placeholder="请选择" clearable> |
| | | <el-option |
| | | v-for="item in state.companyList" |
| | | :key="item.id" |
| | | :label="item.name" |
| | | :value="item.id"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="信息平台名称:" prop="platformName"> |
| | | <el-input v-model.trim="state.form.platformName" :disabled="state.title =='查看'" placeholder="信息平台名称"></el-input> |
| | | </el-form-item> |
| | |
| | | companyId: null |
| | | }, |
| | | formRules:{ |
| | | companyId: [{ required: true, message: '请选择企业', trigger: 'blur' }], |
| | | platformName: [{ required: true, message: '请输入信息平台名称', trigger: 'blur' }], |
| | | buildDate: [{ required: true, message: '请选择平台创建时间', trigger: 'blur' }] |
| | | } |
| | | }, |
| | | isAdmin: false, |
| | | companyList: [] |
| | | }) |
| | | onMounted(() => { |
| | | |
| | | }); |
| | | |
| | | const openDialog = async (type, value,companyId) => { |
| | | const openDialog = async (type, value,companyId, isAdmin, companyList) => { |
| | | state.isAdmin = isAdmin |
| | | if(isAdmin){ |
| | | state.companyList = companyList |
| | | } |
| | | state.title = type === 'add' ? '新增' : type ==='edit' ? '编辑' : '查看' |
| | | state.form.companyId = companyId |
| | | if(state.title == '编辑'||state.title == '查看'){ |
| | |
| | | const res = await getCompany(queryParams) |
| | | if (res.code == 200) { |
| | | data.companyList = res.data.list?res.data.list:[] |
| | | data.queryParams.companyId = data.companyList[0].id |
| | | // data.queryParams.companyId = data.companyList[0].id |
| | | } else { |
| | | ElMessage.warning(res.message) |
| | | } |
| | | } |
| | | |
| | | const openDialog = (type, value) => { |
| | | dialogRef.value.openDialog(type, value, data.queryParams.companyId); |
| | | dialogRef.value.openDialog(type, value, data.queryParams.companyId, data.isAdmin, data.companyList ); |
| | | } |
| | | |
| | | /** 重置新增的表单以及其他数据 */ |
| | |
| | | :close-on-press-escape="false" |
| | | :close-on-click-modal="false" |
| | | > |
| | | <el-form :model="state.form" size="default" ref="superRef" :rules="state.formRules" label-width="150px" > |
| | | <el-form :model="state.form" size="default" ref="superRef" :rules="state.formRules" label-width="150px"> |
| | | <el-form-item v-if="state.isAdmin" label="企业:" prop="companyId"> |
| | | <el-select v-model="state.form.companyId" placeholder="请选择" clearable @change="getDeptList()"> |
| | | <el-option |
| | | v-for="item in state.companyList" |
| | | :key="item.id" |
| | | :label="item.name" |
| | | :value="item.id"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="部门名称:" prop="deptName"> |
| | | <el-input v-model.trim="state.form.deptName" :disabled="state.title =='查看'" placeholder="部门名称"></el-input> |
| | | </el-form-item> |
| | |
| | | <el-option |
| | | v-for="item in state.userList" |
| | | :key="item.id" |
| | | :label="item.name" |
| | | :label="item.username" |
| | | :value="item.id" |
| | | /> |
| | | </el-select> |
| | |
| | | delCaluseIds: [], |
| | | companyId: null |
| | | }, |
| | | isAdmin: false, |
| | | companyList: [], |
| | | userList: [], |
| | | departList: [], |
| | | sysClauseList: [], |
| | | oldClauseList: [], |
| | | formRules:{ |
| | | companyId: [{ required: true, message: '请选择企业', trigger: 'blur' }], |
| | | deptName: [{ required: true, message: '请输入部门名称', trigger: 'blur' }], |
| | | leaderUserId: [{ required: true, message: '请选择负责人', trigger: 'blur' }], |
| | | parentId: [{ required: true, message: '请选择负责部门', trigger: 'blur' }], |
| | |
| | | }); |
| | | const disabled = ref(false); |
| | | const userInfo = ref() |
| | | const openDialog = async (type, value, companyId) => { |
| | | const openDialog = async (type, value, companyId, isAdmin, companyList) => { |
| | | state.isAdmin = isAdmin |
| | | if(isAdmin){ |
| | | state.companyList = companyList |
| | | } |
| | | await getUserList() |
| | | await getDepartList(companyId) |
| | | await getSysClauseList() |
| | |
| | | } |
| | | }; |
| | | |
| | | const getDeptList = async ()=>{ |
| | | await getDepartList(state.form.companyId) |
| | | } |
| | | |
| | | const getDepartList = async (companyId)=> { |
| | | const params = { |
| | | pageNum: 1, |
| | |
| | | const res = await getCompany(queryParams) |
| | | if (res.code == 200) { |
| | | data.companyList = res.data.list?res.data.list:[] |
| | | data.queryParams.companyId = data.companyList[0].id |
| | | } else { |
| | | ElMessage.warning(res.message) |
| | | } |
| | | } |
| | | |
| | | const openDialog = (type, value) => { |
| | | dialogRef.value.openDialog(type, value, data.queryParams.companyId); |
| | | dialogRef.value.openDialog(type, value, data.queryParams.companyId, data.isAdmin, data.companyList ); |
| | | } |
| | | const openDutyDialog = (value) =>{ |
| | | dutyDialogRef.value.openDialog(value); |
| | |
| | | const download = async (val) => { |
| | | const templatePath = '/dutyFile.docx' |
| | | const data = await getDeptDetail(val.deptId) |
| | | console.log(data) |
| | | try { |
| | | generateWordDocument(templatePath, data, `${data.deptName}职责表.docx`); |
| | | } catch (error){ |
| | |
| | | } |
| | | |
| | | const confirmEdit = async ()=>{ |
| | | if(data.form.list.length == 0){ |
| | | data.isEdit = !data.isEdit |
| | | await getList() |
| | | return |
| | | } |
| | | loading.value = true |
| | | const res = await saveDistribution(data.form) |
| | | if(res.code == 200){ |
| | |
| | | ElMessage.warning(res.message) |
| | | } |
| | | loading.value = false |
| | | await getList() |
| | | data.isEdit = !data.isEdit |
| | | } |
| | | |
| | |
| | | :close-on-click-modal="false" |
| | | > |
| | | <el-form :model="state.form" size="default" ref="superRef" :rules="state.formRules" label-width="150px" > |
| | | <el-form-item v-if="state.isAdmin" label="企业:" prop="companyId"> |
| | | <el-select v-model="state.form.companyId" placeholder="请选择" clearable> |
| | | <el-option |
| | | v-for="item in state.companyList" |
| | | :key="item.id" |
| | | :label="item.name" |
| | | :value="item.id"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="员工情况介绍:" prop="companyRoster"> |
| | | <editor v-model="state.form.companyRoster" :min-height="300"/> |
| | | </el-form-item> |
| | |
| | | companyId: null, |
| | | companyRoster: '', |
| | | }, |
| | | companyList: [], |
| | | isView: false, |
| | | formRules:{ |
| | | companyRoster: [{ required: true, message: '员工情况介绍', trigger: 'blur' }], |
| | | companyId: [{ required: true, message: '请选择企业', trigger: 'blur' }], |
| | | companyRoster: [{ required: true, message: '员工情况介绍', trigger: 'blur' }] |
| | | }, |
| | | isAdmin: false, |
| | | }) |
| | |
| | | |
| | | const disabled = ref(false); |
| | | const userInfo = ref() |
| | | const openDialog = async (type, value, companyId) => { |
| | | const openDialog = async (type, value, companyId, isAdmin, companyList) => { |
| | | state.isAdmin = isAdmin |
| | | if(isAdmin){ |
| | | state.companyList = companyList |
| | | } |
| | | state.title = type === 'add' ? '新增' : type ==='edit' ? '编辑' : '查看' |
| | | state.form.companyId = companyId |
| | | if(type == 'view'){ |
| | |
| | | const res = await getCompany(queryParams) |
| | | if (res.code == 200) { |
| | | data.companyList = res.data.list?res.data.list:[] |
| | | data.queryParams.companyId = data.companyList[0].id |
| | | // data.queryParams.companyId = data.companyList[0].id |
| | | } else { |
| | | ElMessage.warning(res.message) |
| | | } |
| | | } |
| | | |
| | | const openDialog = (type, value) => { |
| | | dialogRef.value.openDialog(type, value,data.queryParams.companyId); |
| | | dialogRef.value.openDialog(type, value,data.queryParams.companyId, data.isAdmin, data.companyList); |
| | | } |
| | | |
| | | /** 重置新增的表单以及其他数据 */ |
| | |
| | | <el-form-item label="用户名:" prop="username" v-if="state.title !== '修改密码'"> |
| | | <el-input v-model.trim="state.form.username" :disabled="state.title =='编辑' || state.title =='查看'" placeholder="请输入用户名" ></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="名称:" prop="name" v-if="state.title !== '修改密码'"> |
| | | <el-input v-model.trim="state.form.name" :disabled="disabled" placeholder="请输入公司、部门或者车间岗位名"></el-input> |
| | | <el-form-item label="姓名:" prop="name" v-if="state.title !== '修改密码'"> |
| | | <el-input v-model.trim="state.form.name" :disabled="disabled" placeholder="请输入姓名"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="性别:" prop="sex" v-if="state.title !== '修改密码'"> |
| | | <el-radio-group v-model="state.form.sex" :disabled="disabled"> |
| | |
| | | post: '' |
| | | }, |
| | | formRules:{ |
| | | name: [{ required: true, message: '请输入公司、部门或者车间岗位名称', trigger: 'blur' }], |
| | | name: [{ required: true, message: '请输入姓名', trigger: 'blur' }], |
| | | companyName: [{ required: true, message: '请选择所在企业', trigger: 'blur' }], |
| | | deptId: [{ required: true, message: '请选择部门', trigger: 'blur' }], |
| | | username: [{ required: true, trigger: "blur", validator: validateUsername }], |
| | | password: [{ required: true, validator: validatePwd, trigger: 'blur' }], |
| | | confirmPassword: [{ required: true, validator: equalToPassword, trigger: 'blur' }], |
| | | phone: [{ required: true, validator: validateUserPhone, trigger: 'blur' }], |
| | | // phone: [{ required: true, validator: validateUserPhone, trigger: 'blur' }], |
| | | userType: [{ required: true, message: '请选择用户类型', trigger: 'blur' }], |
| | | idCard: [{ required: true, message: '请输入身份证号', trigger: 'blur' }], |
| | | // idCard: [{ required: true, message: '请输入身份证号', trigger: 'blur' }], |
| | | entryTime: [{ required: true, message: '请选择入职时间', trigger: 'blur' }], |
| | | duty: [{ required: true, message: '请输入职务', trigger: 'blur' }], |
| | | post: [{ required: true, message: '请输入专业', trigger: 'blur' }], |
| | | // post: [{ required: true, message: '请输入专业', trigger: 'blur' }] |
| | | }, |
| | | companyList: [], |
| | | userList: [ |
| | |
| | | <!-- 表格数据 --> |
| | | <el-table v-loading="loading" :data="dataList" :border="true"> |
| | | <el-table-column label="序号" type="index" align="center" width="80" /> |
| | | <el-table-column label="姓名" prop="username" align="center" /> |
| | | <el-table-column label="用户名" prop="username" align="center" /> |
| | | <el-table-column label="姓名" prop="name" align="center" /> |
| | | <el-table-column label="身份证号" prop="idCard" align="center" /> |
| | | <el-table-column label="入职时间" prop="entryTime" align="center"/> |
| | | <el-table-column label="部门" prop="deptName" align="center"/> |
| | |
| | | const res = await getCompany(queryParams) |
| | | if (res.code == 200) { |
| | | data.companyList = res.data.list?res.data.list:[] |
| | | data.queryParams.companyId = data.companyList[0].id |
| | | // data.queryParams.companyId = data.companyList[0].id |
| | | } else { |
| | | ElMessage.warning(res.message) |
| | | } |