feat: 完成成品入库单。

This commit is contained in:
c
2026-03-10 18:07:30 +08:00
parent 55bfbaeb38
commit d9d0f272b0
4 changed files with 450 additions and 86 deletions

View File

@@ -180,6 +180,21 @@ export default {
formName: "Form Name",
formMark: "Form Mark",
storeName: "Store",
storeId: "Store",
storeNo: "Store No",
formStatus: "Status",
productType: "Model",
productSn: "SN",
macAddress: "MAC Address",
serialNumber: "Serial Number",
softwareVersion: "Software Version",
algorithmVersion: "Algorithm Version",
algorithmFlag: "Algorithm Flag",
activationStatus: "Activation Status",
productionDate: "Production Date",
remark: "Remark",
createDate: "Create Date",
keyAccountId: "Customer",
},
},
purchase: {
@@ -318,6 +333,7 @@ export default {
viewLossRate: "View Loss Rate",
shortageFilterButton: "Shortage Data",
unfilterButton: "All Data",
outstock: "Outstock",
approve: "Approve",
reject: "Reject",
productionReturn: "Return",
@@ -449,7 +465,29 @@ export default {
},
production_return: {},
finishedproductreceipt: {
select_storeId: "Please select store",
input_formName: "Please enter form name",
input_formMark: "Please enter form remark",
input_formCode: "Please enter form code",
input_productType: "Please enter model",
input_productSn: "Please enter SN",
input_macAddress: "Please enter MAC address",
input_serialNumber: "Please enter serial number",
input_softwareVersion: "Please enter software version",
input_algorithmVersion: "Please enter algorithm version",
input_algorithmFlag: "Please enter algorithm flag",
input_activationStatus: "Please select activation status",
input_productionDate: "Please enter production date",
input_remark: "Please enter remark",
delete_message: "Delete Receipt",
only_pending_outstocking_can_outstock: "Only pending outstock and outstocking receipts can be shipped",
get_outstock_data_failed: "Failed to get outstock data",
select_key_account: "Please select customer",
select_devices: "Please select devices to ship",
outstock_confirm: "Confirm to ship?",
outstock_success: "Outstock success",
outstock_fail: "Outstock failed",
input_outstock_mark: "Please enter outstock remark",
},
},
purchase: {
@@ -556,6 +594,10 @@ export default {
finishedproductreceipt: {
add: "Add Receipt",
edit: "Edit Receipt",
showItem: "Product Details",
baseTitle: "Receipt Basic Info",
tableTitle: "Product Details",
outstockDialog: "Product Outstock",
},
finishedproductshipment: {
add: "Add Shipment",
@@ -854,5 +896,14 @@ export default {
approving: "Approving",
returned: "Returned",
},
finished_product_receipt_status: {
pending_outstock: "Pending Outstock",
outstocking: "Outstocking",
completed: "Completed",
},
activation_status: {
activated: "Activated",
not_activated: "Not Activated",
},
},
};

View File

@@ -204,18 +204,20 @@ export default {
formMark: "单据备注",
storeName: "仓库",
storeId: "仓库",
storeNo: "仓库编号",
formStatus: "单据状态",
productType: "型号",
productSn: "SN号",
mac: "MAC地址",
serialNum: "序列号",
softVersion: "软件版本",
alVersion: "算法版本",
alNum: "算法标志",
alTxt: "激活状态",
manufacturingDate: "时间",
mark: "备注",
macAddress: "MAC地址",
serialNumber: "序列号",
softwareVersion: "软件版本",
algorithmVersion: "算法版本",
algorithmFlag: "算法标志",
activationStatus: "激活状态",
productionDate: "生产日期",
remark: "备注",
createDate: "创建时间",
keyAccountId: "客户",
},
},
purchase: {
@@ -400,6 +402,7 @@ export default {
viewLossRate: "查看损耗率",
shortageFilterButton: "缺料数据",
unfilterButton: "全部数据",
outstock: "出货",
approve: "审核",
reject: "反审",
productionReturn: "退料",
@@ -598,14 +601,14 @@ export default {
input_formCode: "请输入单据编号",
input_productType: "请输入型号",
input_productSn: "请输入SN号",
input_mac: "请输入MAC地址",
input_serialNum: "请输入序列号",
input_softVersion: "请输入软件版本",
input_alVersion: "请输入算法版本",
input_alNum: "请输入算法标志",
input_alTxt: "请输入激活状态",
input_manufacturingDate: "请输入时间",
input_mark: "请输入备注",
input_macAddress: "请输入MAC地址",
input_serialNumber: "请输入序列号",
input_softwareVersion: "请输入软件版本",
input_algorithmVersion: "请输入算法版本",
input_algorithmFlag: "请输入算法标志",
input_activationStatus: "请选择激活状态",
input_productionDate: "请输入生产日期",
input_remark: "请输入备注",
approve_confirm: "是否审核通过",
approve_success: "审核成功",
approve_fail: "审核失败",
@@ -622,6 +625,14 @@ export default {
import_success: "导入成功",
import_fail: "导入失败",
delete_message: "删除成品入库单",
only_pending_outstocking_can_outstock: "只有待出货和出货中状态的入库单才能出货",
get_outstock_data_failed: "获取出货数据失败",
select_key_account: "请选择客户",
select_devices: "请选择要出货的设备",
outstock_confirm: "确认出货吗?",
outstock_success: "出货成功",
outstock_fail: "出货失败",
input_outstock_mark: "请输入出货备注",
},
finishedproductshipment: {
select_storeId: "请选择仓库",
@@ -849,6 +860,7 @@ export default {
showItem: "成品明细",
baseTitle: "成品入库单基本信息",
tableTitle: "成品明细",
outstockDialog: "成品出货",
},
finishedproductshipment: {
add: "添加成品出货单",
@@ -1167,6 +1179,15 @@ export default {
approving: "审批中",
returned: "已退料",
},
finished_product_receipt_status: {
pending_outstock: "待出货",
outstocking: "出货中",
completed: "已完成",
},
activation_status: {
activated: "已激活",
not_activated: "未激活",
},
},
_status: {
in_progress: "入库中",

View File

@@ -39,6 +39,36 @@ export const useStatus = () => {
8: "_base_info.form_status.returned",
};
const finishedProductReceiptStatusKeyMap: Record<number, string> = {
1: "_base_info.finished_product_receipt_status.pending_outstock",
3: "_base_info.finished_product_receipt_status.outstocking",
4: "_base_info.finished_product_receipt_status.completed",
};
const getFinishedProductReceiptStatusLabel = (code: number | null): string => {
if (code === null || code === undefined) return "";
const key = finishedProductReceiptStatusKeyMap[code];
return key ? t(key) : t(unknown);
};
const activationStatusKeyMap: Record<boolean, string> = {
true: "_base_info.activation_status.activated",
false: "_base_info.activation_status.not_activated",
};
const getActivationStatusLabel = (status: boolean | null): string => {
if (status === null || status === undefined) return "";
const key = activationStatusKeyMap[status];
return key ? t(key) : t(unknown);
};
const getActivationStatusTxtLabel = (status: string | null): string => {
if (status === null || status === undefined) return "";
if (status === "已激活" || status === "Activated") return t("_base_info.activation_status.activated");
if (status === "未激活" || status === "Not Activated") return t("_base_info.activation_status.not_activated");
return status;
};
const getFormStatusLabel = (code: number | null): string => {
if (code === null || code === undefined) return "";
const key = formStatusKeyMap[code];
@@ -76,6 +106,11 @@ export const useStatus = () => {
getProductionPlanStatusLabel,
formStatusKeyMap,
getFormStatusLabel,
finishedProductReceiptStatusKeyMap,
getFinishedProductReceiptStatusLabel,
activationStatusKeyMap,
getActivationStatusLabel,
getActivationStatusTxtLabel,
purchasePlanItemStatusKeyMap,
getPurchasePlanItemStatusLabel,
purchasePlanStatusKeyMap,