采购·入库接口调用 up by dh

This commit is contained in:
duhe
2025-03-20 16:33:12 +08:00
parent 814bfff8b5
commit 8838533b6a
3 changed files with 109 additions and 46 deletions

View File

@@ -590,7 +590,6 @@
import { import {
getPurchaseinventoryList, getPurchaseinventoryList,
addPurchaseinventory, addPurchaseinventory,
getPurchaseinventoryOne,
getInit, getInit,
deptTreeSelect, deptTreeSelect,
locationTreeSelect, locationTreeSelect,
@@ -614,7 +613,34 @@ const {
"purchase_type" "purchase_type"
); );
const purchaseinventoryList = ref([]); const purchaseinventoryList = ref([
{
"id": "2",
"busNo": "bs002",
"totalQuantity": 500,
"itemQuantity": 10,
"itemName": null,
"totalVolume": null,
"unitCode": "盒",
"unitCode_dictText": "",
"detailJson": "测试设备的数据",
"practitionerName": "雯雯",
"supplierName": "长春市有限公司测试器材",
"purposeTypeEnum": 0,
"purposeLocationName": "器材A库",
"purposeLocationStoreName": "器材A库A货位",
"applyTime": "2025-03-12T15:00:00.000+08:00",
"lotNumber": "bt002",
"traceNo": "zsm002",
"invoiceNo": "fp002",
"startTime": null,
"endTime": null,
"price": 7,
"totalPrice": 70,
"sellPrice": null,
"minSellPrice": null
}
]);
const open = ref(false); const open = ref(false);
const loading = ref(true); const loading = ref(true);
const showSearch = ref(true); const showSearch = ref(true);
@@ -647,6 +673,10 @@ const props = defineProps({
type: String, type: String,
required: true, required: true,
}, },
item: {
type: Object,
required: false,
},
}); });
const data = reactive({ const data = reactive({
@@ -694,6 +724,24 @@ const data = reactive({
ybType: [{ required: true, message: "医保类别不能为空", trigger: "blur" }], ybType: [{ required: true, message: "医保类别不能为空", trigger: "blur" }],
price: [{ required: true, message: "基础价格不能为空", trigger: "blur" }], price: [{ required: true, message: "基础价格不能为空", trigger: "blur" }],
}, },
tableRules: {
itemId: [{ required: true, message: '项目不能为空', trigger: 'blur' }],
itemQuantity: [{ required: true, message: '采购数量不能为空', trigger: 'blur' }],
unitCode: [{ required: true, message: '计量单位不能为空', trigger: 'blur' }],
supplierId: [{ required: true, message: '供应商不能为空', trigger: 'blur' }],
purposeTypeEnum: [{ required: true, message: '仓库类型不能为空', trigger: 'blur' }],
purposeLocationId: [{ required: true, message: '仓库不能为空', trigger: 'blur' }],
purposeLocationStoreId: [{ required: true, message: '货位不能为空', trigger: 'blur' }],
practitionerId: [{ required: true, message: '经手人不能为空', trigger: 'blur' }],
lotNumber: [{ required: true, message: '产品批号不能为空', trigger: 'blur' }],
traceNo: [{ required: true, message: '药品追溯码不能为空', trigger: 'blur' }],
startTime: [{ required: true, message: '生产日期不能为空', trigger: 'blur' }],
endTime: [{ required: true, message: '有效期至不能为空', trigger: 'blur' }],
price: [{ required: true, message: '采购单价不能为空', trigger: 'blur' }],
totalPrice: [{ required: true, message: '合计金额不能为空', trigger: 'blur' }],
sellPrice: [{ required: true, message: '售价不能为空', trigger: 'blur' }],
minSellPrice: [{ required: true, message: '拆零售价不能为空', trigger: 'blur' }],
},
}); });
const { queryParams, form, receiptHeaderForm, rules } = toRefs(data); const { queryParams, form, receiptHeaderForm, rules } = toRefs(data);
@@ -729,18 +777,23 @@ const addNewRow = () => {
sellPrice: "", sellPrice: "",
minSellPrice: "", minSellPrice: "",
isEditing: true, // 标记当前行是否正在编辑 isEditing: true, // 标记当前行是否正在编辑
error: false, // 新增 error 字段
}; };
purchaseinventoryList.value.push(newRow); purchaseinventoryList.value.push(newRow);
data.isAdding = true; // 设置标志位为 true表示有未保存的 data.isAdding = true; // 设置标志位为 true表示有未保存的
}; };
const handleBlur = (row, index) => { const handleBlur = (row, index) => {
if (receiptHeaderForm.value.medicationType === "1") {
row.itemTable = "med_medication_definition";
} else {
row.itemTable = "adm_device_definition";
}
console.log(row, "rowhandleBlurhandleBlurhandleBlurhandleBlurhandleBlur"); console.log(row, "rowhandleBlurhandleBlurhandleBlurhandleBlurhandleBlur");
if ( if (
row.itemTable && row.itemTable &&
row.unitCode && row.unitCode &&
row.purposeLocationStoreId && row.purposeLocationStoreId &&
row.approverId &&
row.itemQuantity && row.itemQuantity &&
row.price row.price
) { ) {
@@ -754,11 +807,11 @@ const saveRow = (row, index) => {
// 例如:调用 API 保存数据 // 例如:调用 API 保存数据
// 保存成功后,将标志位设置为 false // 保存成功后,将标志位设置为 false
// data.isAdding = false; // data.isAdding = false;
if (receiptHeaderForm.value.medicationType === "1") { // if (receiptHeaderForm.value.medicationType === "1") {
row.itemTable = "med_medication_definition"; // row.itemTable = "med_medication_definition";
} else { // } else {
row.itemTable = "adm_device_definition"; // row.itemTable = "adm_device_definition";
} // }
row.practitionerId = receiptHeaderForm.value.practitionerId; row.practitionerId = receiptHeaderForm.value.practitionerId;
row.occurrenceTime = receiptHeaderForm.value.occurrenceTime; row.occurrenceTime = receiptHeaderForm.value.occurrenceTime;
row.supplierId = receiptHeaderForm.value.supplierId; row.supplierId = receiptHeaderForm.value.supplierId;
@@ -857,6 +910,7 @@ function reset() {
purposeTypeEnum: undefined, purposeTypeEnum: undefined,
}; };
proxy.resetForm("receiptHeaderRef"); proxy.resetForm("receiptHeaderRef");
purchaseinventoryList.value = [];
} }
// 显示弹框 // 显示弹框
function show() { function show() {
@@ -873,6 +927,22 @@ function show() {
// } // }
getList(); getList();
} }
// 显示弹框
function edit() {
reset();
supplierListOptions.value = props.supplierListOptions;
itemTypeOptions.value = props.itemTypeOptions;
practitionerListOptions.value = props.practitionerListOptions;
// receiptHeaderForm.value.busNo = props.busNoAdd;
form.value = props.item;
receiptHeaderForm.value = props.item;
// receiptHeaderForm.value.busNo = props.item.supplyBusNo;
purchaseinventoryList.value.push(props.item);
console.log(purchaseinventoryList.value,"purchaseinventoryList.value");
console.log(receiptHeaderForm.value,"receiptHeaderForm.value");
loading.value = false;
visible.value = true;
}
/** 取消按钮 */ /** 取消按钮 */
function cancel() { function cancel() {
open.value = false; open.value = false;
@@ -893,17 +963,6 @@ function handleUpdate(row) {
title.value = "编辑"; title.value = "编辑";
} }
/** 详细按钮操作 */
function handleView(row) {
reset();
title.value = "查看";
open.value = true;
getPurchaseinventoryOne(row.id).then((response) => {
console.log(response, "responsebbbb", row.id);
form.value = response.data;
});
}
/** 删除按钮操作 */ /** 删除按钮操作 */
function handleDelete(row) { function handleDelete(row) {
const delId = row.id || ids.value; const delId = row.id || ids.value;
@@ -921,6 +980,7 @@ function handleDelete(row) {
defineExpose({ defineExpose({
show, show,
edit
}); });
</script> </script>
<style scoped> <style scoped>

View File

@@ -10,11 +10,12 @@ export function getPurchaseinventoryList(query) {
}) })
} }
// 查询服务管理详细 // 入库单据详情
export function getPurchaseinventoryOne(id) { export function getpurchaseInventoryDetail(busNo) {
return request({ return request({
url: '/basic-service/healthcare/healthcare-service-detail/' + parseStrEmpty(id), url: '/inventory-manage/purchase/inventory-receipt',
method: 'get' method: 'get',
params: { busNo } // 确保参数正确传递
}) })
} }

View File

@@ -222,6 +222,7 @@
:itemTypeOptions="itemTypeOptions" :itemTypeOptions="itemTypeOptions"
:supplierListOptions="supplierListOptions" :supplierListOptions="supplierListOptions"
:busNoAdd="busNoAdd" :busNoAdd="busNoAdd"
:item="currentData"
@new-item-added="getList" @new-item-added="getList"
/> />
</div> </div>
@@ -231,7 +232,7 @@
import { import {
getPurchaseinventoryList, getPurchaseinventoryList,
addPurchaseinventory, addPurchaseinventory,
getPurchaseinventoryOne, getpurchaseInventoryDetail,
getInit, getInit,
deptTreeSelect, deptTreeSelect,
locationTreeSelect, locationTreeSelect,
@@ -278,7 +279,8 @@ const itemTypeOptions = ref(undefined); // 入库项目类型
const practitionerListOptions = ref(undefined); // 查询经手人列表 const practitionerListOptions = ref(undefined); // 查询经手人列表
const supplierListOptions = ref(undefined); // 供应商列表 const supplierListOptions = ref(undefined); // 供应商列表
const supplyStatusOptions = ref(undefined); // 审批状态 const supplyStatusOptions = ref(undefined); // 审批状态
// 使用 ref 定义当前编辑的采购
const currentData = ref({});
// 是否停用 // 是否停用
const statusFlagOptions = ref(undefined); const statusFlagOptions = ref(undefined);
@@ -401,19 +403,19 @@ function cancel() {
open.value = false; open.value = false;
reset(); reset();
} }
/** 新增按钮操作 */
function handleAdd() {
reset();
open.value = true;
title.value = "新增";
}
/** 修改按钮操作 */ /** 修改按钮操作 */
function handleUpdate(row) { function handleUpdate(row) {
reset(); console.log(typeof(row.supplyBusNo), "row",row);
form.value = JSON.parse(JSON.stringify(row)); getpurchaseInventoryDetail(row.supplyBusNo).then((response) => {
form.value.fwTypeCode = form.value.typeCode;
open.value = true; currentData.value = response.data;
title.value = "编辑"; console.log(response, "response采购入库编辑按钮", currentData.value);
nextTick(() => {
proxy.$refs["inventoryReceiptRef"].edit();
});
getList();
});
} }
// /** 提交按钮 */ // /** 提交按钮 */
// function submitForm() { // function submitForm() {
@@ -469,16 +471,16 @@ function getName() {
return acc; return acc;
}, ""); }, "");
} }
/** 详细按钮操作 */ // /** 详细按钮操作 */
function handleView(row) { // function handleView(row) {
reset(); // reset();
title.value = "查看"; // title.value = "查看";
open.value = true; // open.value = true;
getPurchaseinventoryOne(row.id).then((response) => { // getPurchaseinventoryOne(row.id).then((response) => {
console.log(response, "responsebbbb", row.id); // console.log(response, "responsebbbb", row.id);
form.value = response.data; // form.value = response.data;
}); // });
} // }
/** 删除按钮操作 */ /** 删除按钮操作 */
function handleDelete(row) { function handleDelete(row) {