diff --git a/src/views/biz/weibingju/prescription/components/PrescriptionDetailDialog.vue b/src/views/biz/weibingju/prescription/components/PrescriptionDetailDialog.vue
index b6842b2..acf0d01 100644
--- a/src/views/biz/weibingju/prescription/components/PrescriptionDetailDialog.vue
+++ b/src/views/biz/weibingju/prescription/components/PrescriptionDetailDialog.vue
@@ -28,7 +28,6 @@
:disabled="isViewMode">
-
新增员工
@@ -36,6 +35,13 @@
+
+
+
+ 领导
+ 普通员工
+
+
@@ -239,7 +245,7 @@ import { ElMessage } from 'element-plus'
import type { FormInstance, FormRules } from 'element-plus'
import { prescriptionApi } from '@/api'
-import { medicinalApi } from '@/api/modules/biz/weibingju/medicinal'
+import { medicinalApi } from '@/api/modules/biz/WeiBingJu/medicinal'
// 接口定义
interface Employee {
@@ -247,6 +253,7 @@ interface Employee {
name: string;
birthday?: string;
height?: number;
+ type?: number;
}
interface Relative {
id: string | number;
@@ -294,6 +301,7 @@ const isEdit = computed(() => props.isEdit)
// 表单数据
const formData = ref({
personType: 1,
+ type: undefined as number | undefined,
employeeId: undefined as string | number | undefined,
newEmployeeName: '',
relatedEmployeeId: undefined as string | number | undefined,
@@ -313,6 +321,17 @@ const formData = ref({
// 表单校验规则
const formRules: FormRules = {
personType: [{ required: true, message: '请选择人员类型', trigger: 'change' }],
+ type: [{
+ required: true,
+ validator: (rule, value, callback) => {
+ if (formData.value.personType === 1 && !formData.value.type) {
+ callback(new Error('请选择员工性质'))
+ } else {
+ callback()
+ }
+ },
+ trigger: 'change'
+ }],
employeeInfo: [{
required: true,
validator: (rule, value, callback) => {
@@ -440,7 +459,7 @@ const loadRelatives = async (employeeId: number | string) => {
showRelativeSelect.value = false
ElMessage.info('该员工为本地新增,暂无家属数据,请手动输入家属姓名')
} else {
- const res: any = await prescriptionApi.getPersonList({ type: 2, employeeId })
+ const res: any = await prescriptionApi.getPersonList({ type: 2, employeeId: Number(employeeId) })
relativeOptions.value = (res && res.data) ? res.data : []
showRelativeSelect.value = relativeOptions.value.length > 0
}
@@ -489,6 +508,7 @@ const handleEmployeeChange = (selectedId: string | number | undefined) => {
if (selectedEmployee) {
formData.value.birthday = selectedEmployee.birthday
formData.value.height = selectedEmployee.height
+ formData.value.type = selectedEmployee.type
}
}
}
@@ -497,6 +517,7 @@ const handleEmployeeClear = () => {
formData.value.newEmployeeName = ''
formData.value.birthday = undefined
formData.value.height = undefined
+ formData.value.type = undefined
}
}
const handleRelatedEmployeeChange = (selectedId: string | number | undefined) => {
@@ -712,6 +733,7 @@ const handleVisibleChange = (value: boolean) => {
const resetForm = () => {
formData.value = {
personType: 1,
+ type: undefined,
employeeId: undefined,
newEmployeeName: '',
relatedEmployeeId: undefined,
@@ -751,6 +773,7 @@ const handleSubmit = async () => {
const personObj: any = {}
const isPatientEmployee = formData.value.personType === 1
personObj.isEmployee = isPatientEmployee
+ personObj.type = isPatientEmployee ? formData.value.type : undefined
if (isPatientEmployee) {
if (formData.value.employeeId) {
@@ -876,6 +899,7 @@ watch(() => props.visible, async (newVal) => {
formData.value.employeeId = person.id ?? undefined
formData.value.birthday = person.birthday ?? undefined
formData.value.height = person.height ?? undefined
+ formData.value.type = person.type ?? undefined
} else {
formData.value.relatedEmployeeId = person.employeeId ?? undefined
formData.value.relativeId = person.id ?? undefined
diff --git a/src/views/biz/weibingju/prescription/index.vue b/src/views/biz/weibingju/prescription/index.vue
index 8441564..fd48fa6 100644
--- a/src/views/biz/weibingju/prescription/index.vue
+++ b/src/views/biz/weibingju/prescription/index.vue
@@ -11,7 +11,11 @@
- 公司员工
+
+ 公司员工
+ 领导
+ 普通员工
+
员工家属,所属员工:{{ scope.row.employeeName || "未知" }}
diff --git a/src/views/biz/weibingju/statistics/index.vue b/src/views/biz/weibingju/statistics/index.vue
index 6bb8145..1f851bd 100644
--- a/src/views/biz/weibingju/statistics/index.vue
+++ b/src/views/biz/weibingju/statistics/index.vue
@@ -1,5 +1,5 @@
-