采购入库 单据审批画面 目录管理画面重新调试 up by dh

This commit is contained in:
duhe
2025-03-24 19:48:43 +08:00
parent bb68ba8989
commit 9f4ea53d31
9 changed files with 284 additions and 302 deletions

View File

@@ -71,4 +71,22 @@ export function startDevice(ids) {
method: 'put',
data: ids
})
}
}
// 查询部门树形数据
export function deptTreeSelect(queryParams) {
return request({
url: '/base-data-manage/organization/organization',
method: 'get',
param: queryParams
})
}
// 查询地点树形数据
export function locationTreeSelect(queryParams) {
return request({
url: '/base-data-manage/cabinet-location/cabinet-location',
method: 'get',
param: queryParams
})
}

View File

@@ -24,7 +24,7 @@
<el-input v-model="form.name" placeholder="请输入器材名称" />
</el-form-item>
</el-col>
<el-col :span="8">
<!-- <el-col :span="8">
<el-form-item
label="拼音码(器材名称)"
prop="pyStr"
@@ -32,29 +32,74 @@
>
<el-input v-model="form.pyStr" placeholder="" />
</el-form-item>
</el-col> -->
<el-col :span="8">
<el-form-item label="地点" prop="locationId">
<el-tree-select
v-model="form.locationId"
:data="locationOptions"
:props="{ value: 'id', label: 'name', children: 'children' }"
value-key="id"
placeholder="请选择地点"
check-strictly
/>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="24">
<el-col :span="8">
<!-- <el-col :span="8">
<el-form-item label="器材五笔拼音" prop="wbStr">
<el-input v-model="form.wbStr" placeholder="" />
</el-form-item>
</el-col>
</el-col> -->
<el-col :span="8">
<el-form-item label="器材分类" prop="categoryEnum">
<el-input v-model="form.categoryEnum" placeholder="" />
<el-tree-select
v-model="form.categoryEnum"
:data="deviceCategories"
:props="{ value: 'value', label: 'info', children: 'children' }"
value-key="value"
placeholder=""
check-strictly
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="器材种类" prop="typeCode">
<el-input v-model="form.typeCode" placeholder="" />
<el-select v-model="form.typeCode" placeholder="请选择">
<el-option
v-for="dict in device_type_code"
:key="dict.value"
:label="dict.label"
:value="dict.value"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="提供部门" prop="orgId">
<el-tree-select
v-model="form.orgId"
:data="deptOptions"
:props="{ value: 'id', label: 'name', children: 'children' }"
value-key="id"
placeholder="请选择提供部门"
check-strictly
/>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="24">
<el-col :span="8">
<el-form-item label="包装单位" prop="unitCode">
<el-input v-model="form.unitCode" placeholder="" />
<el-select v-model="form.unitCode" placeholder="请选择">
<el-option
v-for="dict in unit_code"
:key="dict.value"
:label="dict.label"
:value="dict.value"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
@@ -64,7 +109,14 @@
</el-col>
<el-col :span="8">
<el-form-item label="最小单位" prop="minUnitCode">
<el-input v-model="form.minUnitCode" placeholder="" />
<el-select v-model="form.minUnitCode" placeholder="请选择">
<el-option
v-for="dict in unit_code"
:key="dict.value"
:label="dict.label"
:value="dict.value"
></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
@@ -93,7 +145,14 @@
<el-row :gutter="24">
<el-col :span="8">
<el-form-item label="销售单位" prop="salesUnitCode">
<el-input v-model="form.salesUnitCode" placeholder="" />
<el-select v-model="form.salesUnitCode" placeholder="请选择">
<el-option
v-for="dict in unit_code"
:key="dict.value"
:label="dict.label"
:value="dict.value"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
@@ -121,19 +180,39 @@
</el-col>
<el-col :span="8">
<el-form-item label="状态" prop="statusEnum">
<el-input v-model="form.statusEnum" placeholder="" />
<el-select v-model="form.statusEnum" placeholder="请选择">
<el-option
v-for="dict in statusFlagOptions"
:key="dict.value"
:label="dict.info"
:value="dict.value"
></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="24">
<el-col :span="8">
<el-form-item label="生产厂家" prop="manufacturerId">
<el-input v-model="form.manufacturerId" placeholder="" />
<el-form-item label="生产厂家" prop="manufacturerText">
<el-input v-model="form.manufacturerText" placeholder="" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="供应商" prop="supplyId">
<el-input v-model="form.supplyId" placeholder="" />
<!-- <el-input v-model="form.supplyId" placeholder="" /> -->
<el-select
v-model="form.supplierId"
placeholder=""
clearable
style="width: 150px"
>
<el-option
v-for="supplier in supplierListOptions"
:key="supplier.value"
:label="supplier.label"
:value="supplier.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
@@ -143,11 +222,11 @@
</el-col>
</el-row>
<el-row :gutter="24">
<el-col :span="8">
<!-- <el-col :span="8">
<el-form-item label="执行科室" prop="ruleId">
<el-input v-model="form.ruleId" placeholder="" />
</el-form-item>
</el-col>
</el-col> -->
<el-col :span="8">
<el-form-item label="器材版本" prop="version">
<el-input v-model="form.version" placeholder="" />
@@ -196,18 +275,25 @@ import {
addDevice,
getDiseaseTreatmentInit,
getDeviceOne,
deptTreeSelect,
locationTreeSelect,
} from "./device";
const router = useRouter();
const { proxy } = getCurrentInstance();
const { sys_normal_disable, sys_user_sex } = proxy.useDict(
"sys_normal_disable",
"sys_user_sex"
const { device_type_code, unit_code } = proxy.useDict(
"device_type_code",
"unit_code"
);
const title = ref("");
const visible = ref(false);
const emits = defineEmits(["submit"]); // 声明自定义事件
const deptOptions = ref(undefined); // 部门树选项
const locationOptions = ref(undefined); // 地点树选项
const deviceCategories = ref([]); // 器材分类
const statusFlagOptions = ref([]); // 状态标记
const supplierListOptions = ref([]); // 供应商列表
const data = reactive({
form: {},
@@ -264,6 +350,8 @@ const data = reactive({
allergenFlag: [
{ required: true, message: "过敏标记不能为空", trigger: "blur" },
],
orgId: [{ required: true, message: "提供部门不能为空", trigger: "blur" }],
locationId: [{ required: true, message: "地点不能为空", trigger: "blur" }],
},
});
@@ -278,6 +366,14 @@ const props = defineProps({
type: String,
required: false,
},
deviceCategories: {
type: Object,
required: false,
},
statusFlagOptions: {
type: Object,
required: false,
},
});
// 显示弹框
@@ -287,9 +383,30 @@ function show() {
// getList();
title.value = "";
title.value = props.title;
console.log(props, "22222", title.value);
deviceCategories.value = props.deviceCategories;
statusFlagOptions.value = props.statusFlagOptions;
console.log(props, "22222", title.value, props.deviceCategories);
getDeptTree();
getLocationTree();
visible.value = true;
}
/** 查询部门下拉树结构 */
function getDeptTree() {
deptTreeSelect().then((response) => {
console.log(response, "response查询部门下拉树结构");
deptOptions.value = response.data.records;
console.log(deptOptions.value, "部门下拉树结构");
});
}
/** 查询地点下拉树结构 */
function getLocationTree() {
locationTreeSelect().then((response) => {
console.log(response, "response查询部门下拉树结构");
locationOptions.value = response.data.records;
console.log(locationOptions.value, "部门下拉树结构");
});
}
// 显示弹框
function edit() {
// queryParams.roleId = props.roleId;
@@ -298,6 +415,10 @@ function edit() {
title.value = "";
title.value = props.title;
form.value = props.item;
deviceCategories.value = props.deviceCategories;
statusFlagOptions.value = props.statusFlagOptions;
getDeptTree();
getLocationTree();
visible.value = true;
}
/** 重置操作表单 */
@@ -330,6 +451,8 @@ function reset() {
version: undefined, // 器材版本
substanceText: undefined, // 主要成分
allergenFlag: undefined, // 过敏标记
orgId: undefined, // 科室ID
locationId: undefined, // 地点ID
};
proxy.resetForm("medicationRef");
}

View File

@@ -33,7 +33,7 @@
v-model="queryParams.searchKey"
placeholder="品名/商品名/英文品名/编码/拼音"
clearable
style="width: 240px"
style="width: 220px"
@keyup.enter="handleQuery"
/>
</el-form-item>
@@ -231,8 +231,8 @@
<el-table-column
label="高值器材标志"
align="center"
key="hvcmFlag"
prop="hvcmFlag"
key="hvcmFlag_enumText"
prop="hvcmFlag_enumText"
:show-overflow-tooltip="true"
/>
@@ -254,8 +254,8 @@
<el-table-column
label="医保标记"
align="center"
key="ybFlag"
prop="ybFlag"
key="ybFlag_enumText"
prop="ybFlag_enumText"
:show-overflow-tooltip="true"
width="110"
/>
@@ -270,8 +270,8 @@
<el-table-column
label="医保对码标记"
align="center"
key="ybMatchFlag"
prop="ybMatchFlag"
key="ybMatchFlag_enumText"
prop="ybMatchFlag_enumText"
:show-overflow-tooltip="true"
/>
<el-table-column
@@ -338,8 +338,8 @@
<el-table-column
label="过敏标记"
align="center"
key="allergenFlag"
prop="allergenFlag"
key="allergenFlag_enumText"
prop="allergenFlag_enumText"
:show-overflow-tooltip="true"
width="90"
/>
@@ -383,6 +383,8 @@
ref="deviceRef"
:title="title"
:item="currentData"
:deviceCategories="deviceCategories"
:statusFlagOptions="statusFlagOptions"
@submit="getList()"
/>
<!-- <device-view-dialog

View File

@@ -269,11 +269,11 @@
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<!-- <el-col :span="12">
<el-form-item label="拼音" prop="pyStr">
<el-input v-model="form.pyStr" maxlength="11" />
</el-form-item>
</el-col>
</el-col> -->
<!-- <el-col :span="12">
<el-form-item label="停用" prop="status">
<el-checkbox v-model="form.status"></el-checkbox>