diff --git a/src/api/erp/bdorderprequote/index.ts b/src/api/erp/bdorderprequote/index.ts new file mode 100644 index 000000000..5b241c2a1 --- /dev/null +++ b/src/api/erp/bdorderprequote/index.ts @@ -0,0 +1,61 @@ +import request from '@/config/axios' + +// erp商务预报价 VO +export interface BdOrderPreQuoteVO { + orderId: string // 报价单ID + sypplierId: number // 供应商id + orderStatusId: number // 工单状态 + fpTime: Date // 分配时间 + pickOrderTime: Date // 接单时间 + startPriceTime: Date // 开始报价时间 + needEndTime: Date // 最晚报价时间 + endPriceTime: Date // 结束报价时间 + closeOrderTime: Date // 关单时间 + cancelRemark: string // 取消工单原因 + priceUserRemark: string // 报价者备注 + dispUserId: number // 派单者id + pickUserId: number // 接单者id + priceUserId: number // 报价者id + address: string // 地址 + expedited: number // 加急 +} + +// erp商务预报价 API +export const BdOrderPreQuoteApi = { + // 查询erp商务预报价分页 + getBdOrderPreQuotePage: async (params: any) => { + return await request.get({ url: `/erp/bd-order-pre-quote/page`, params }) + }, + + // 查询erp商务预报价详情 + getBdOrderPreQuote: async (id: number) => { + return await request.get({ url: `/erp/bd-order-pre-quote/get?id=` + id }) + }, + + // 新增erp商务预报价 + createBdOrderPreQuote: async (data: BdOrderPreQuoteVO) => { + return await request.post({ url: `/erp/bd-order-pre-quote/create`, data }) + }, + + // 修改erp商务预报价 + updateBdOrderPreQuote: async (data: BdOrderPreQuoteVO) => { + return await request.put({ url: `/erp/bd-order-pre-quote/update`, data }) + }, + + // 删除erp商务预报价 + deleteBdOrderPreQuote: async (id: number) => { + return await request.delete({ url: `/erp/bd-order-pre-quote/delete?id=` + id }) + }, + + // 导出erp商务预报价 Excel + exportBdOrderPreQuote: async (params) => { + return await request.download({ url: `/erp/bd-order-pre-quote/export-excel`, params }) + }, + +// ==================== 子表(Erp单据文件) ==================== + + // 获得Erp单据文件列表 + getOrderFileListByOrderId: async (orderId) => { + return await request.get({ url: `/erp/bd-order-pre-quote/order-file/list-by-order-id?orderId=` + orderId }) + } +} \ No newline at end of file diff --git a/src/api/erp/warehouse/index.ts b/src/api/erp/warehouse/index.ts new file mode 100644 index 000000000..0d4307c83 --- /dev/null +++ b/src/api/erp/warehouse/index.ts @@ -0,0 +1,98 @@ +import request from '@/config/axios' + +// ERP 仓库 VO +export interface WarehouseVO { + id: number // 仓库编号 + name: string // 仓库名称 + address: string // 仓库地址 + sort: number // 排序 + remark: string // 备注 + principal: string // 负责人 + warehousePrice: number // 仓储费,单位:元 + truckagePrice: number // 搬运费,单位:元 + status: number // 开启状态 + defaultStatus: boolean // 是否默认 +} + +export interface WarehouseLocationVO { + id: number // 仓库编号 + name: string // 仓库名称 + sort: number // 排序 + warehouseId: number //仓库编号 + remark: string // 备注 + principal: string // 负责人 + warehousePrice: number // 仓储费,单位:元 + truckagePrice: number // 搬运费,单位:元 + status: number // 开启状态 + defaultStatus: boolean // 是否默认 +} + +// ERP 仓库 API +export const WarehouseApi = { + // 查询ERP 仓库分页 + getWarehousePage: async (params: any) => { + return await request.get({ url: `/erp/warehouse/page`, params }) + }, + + // 查询ERP 仓库详情 + getWarehouse: async (id: number) => { + return await request.get({ url: `/erp/warehouse/get?id=` + id }) + }, + + // 新增ERP 仓库 + createWarehouse: async (data: WarehouseVO) => { + return await request.post({ url: `/erp/warehouse/create`, data }) + }, + + // 修改ERP 仓库 + updateWarehouse: async (data: WarehouseVO) => { + return await request.put({ url: `/erp/warehouse/update`, data }) + }, + +// 修改仓库默认状态 +updateWarehouseDefaultStatus: async (id: number, defaultStatus: boolean) => { + return await request.put({ + url: `/erp/warehouse/update-default-status`, + params: { + id, + defaultStatus + } + }) +}, + + // 删除ERP 仓库 + deleteWarehouse: async (id: number) => { + return await request.delete({ url: `/erp/warehouse/delete?id=` + id }) + }, + + // 导出ERP 仓库 Excel + exportWarehouse: async (params) => { + return await request.download({ url: `/erp/warehouse/export-excel`, params }) + }, + +// ==================== 子表(ERP 仓库货位) ==================== + + // 获得ERP 仓库货位分页 + getWarehouseLocationPage: async (params) => { + return await request.get({ url: `/erp/warehouse/warehouse-location/page`, params }) + }, + // 新增ERP 仓库货位 + createWarehouseLocation: async (data) => { + return await request.post({ url: `/erp/warehouse/warehouse-location/create`, data }) + }, + + // 修改ERP 仓库货位 + updateWarehouseLocation: async (data) => { + return await request.put({ url: `/erp/warehouse/warehouse-location/update`, data }) + }, + + // 删除ERP 仓库货位 + deleteWarehouseLocation: async (id: number) => { + return await request.delete({ url: `/erp/warehouse/warehouse-location/delete?id=` + id }) + }, + + // 获得ERP 仓库货位 + getWarehouseLocation: async (id: number) => { + return await request.get({ url: `/erp/warehouse/warehouse-location/get?id=` + id }) + } +} \ No newline at end of file diff --git a/src/views/erp/bdorderprequote/BdOrderPreQuoteForm.vue b/src/views/erp/bdorderprequote/BdOrderPreQuoteForm.vue new file mode 100644 index 000000000..d3b061c96 --- /dev/null +++ b/src/views/erp/bdorderprequote/BdOrderPreQuoteForm.vue @@ -0,0 +1,219 @@ + + \ No newline at end of file diff --git a/src/views/erp/bdorderprequote/components/OrderFileForm.vue b/src/views/erp/bdorderprequote/components/OrderFileForm.vue new file mode 100644 index 000000000..2be0b247f --- /dev/null +++ b/src/views/erp/bdorderprequote/components/OrderFileForm.vue @@ -0,0 +1,105 @@ + + \ No newline at end of file diff --git a/src/views/erp/bdorderprequote/components/OrderFileList.vue b/src/views/erp/bdorderprequote/components/OrderFileList.vue new file mode 100644 index 000000000..416672c0c --- /dev/null +++ b/src/views/erp/bdorderprequote/components/OrderFileList.vue @@ -0,0 +1,56 @@ + + \ No newline at end of file diff --git a/src/views/erp/bdorderprequote/index.vue b/src/views/erp/bdorderprequote/index.vue new file mode 100644 index 000000000..137f960fe --- /dev/null +++ b/src/views/erp/bdorderprequote/index.vue @@ -0,0 +1,317 @@ + + + \ No newline at end of file diff --git a/src/views/erp/product/category/productcategoryproperties/ProductCategoryPropertiesForm.vue b/src/views/erp/product/category/productcategoryproperties/ProductCategoryPropertiesForm.vue new file mode 100644 index 000000000..e51fe1e13 --- /dev/null +++ b/src/views/erp/product/category/productcategoryproperties/ProductCategoryPropertiesForm.vue @@ -0,0 +1,152 @@ + + \ No newline at end of file diff --git a/src/views/erp/product/category/productcategoryproperties/index.vue b/src/views/erp/product/category/productcategoryproperties/index.vue new file mode 100644 index 000000000..a76a2cb5b --- /dev/null +++ b/src/views/erp/product/category/productcategoryproperties/index.vue @@ -0,0 +1,271 @@ + + + \ No newline at end of file diff --git a/src/views/erp/product/product/ProductForm.vue b/src/views/erp/product/product/ProductForm.vue index 75be903b8..8429627d3 100644 --- a/src/views/erp/product/product/ProductForm.vue +++ b/src/views/erp/product/product/ProductForm.vue @@ -57,6 +57,19 @@ + + + + + {{ dict.label }} + + + + @@ -153,21 +166,24 @@ const formData = ref({ barCode: undefined, categoryId: undefined, unitId: undefined, - status: undefined, + status: 0, standard: undefined, remark: undefined, expiryDay: undefined, weight: undefined, purchasePrice: undefined, salePrice: undefined, - minPrice: undefined + minPrice: undefined, + ifQr:undefined }) const formRules = reactive({ name: [{ required: true, message: '产品名称不能为空', trigger: 'blur' }], barCode: [{ required: true, message: '产品条码不能为空', trigger: 'blur' }], categoryId: [{ required: true, message: '产品分类编号不能为空', trigger: 'blur' }], unitId: [{ required: true, message: '单位编号不能为空', trigger: 'blur' }], - status: [{ required: true, message: '产品状态不能为空', trigger: 'blur' }] + status: [{ required: true, message: '产品状态不能为空', trigger: 'blur' }], + ifQr: [{ required: true, message: '一物一码不能为空', trigger: 'blur' }] + }) const formRef = ref() // 表单 Ref const categoryList = ref([]) // 产品分类列表 @@ -235,7 +251,8 @@ const resetForm = () => { weight: undefined, purchasePrice: undefined, salePrice: undefined, - minPrice: undefined + minPrice: undefined, + ifQr:undefined } formRef.value?.resetFields() } diff --git a/src/views/erp/product/product/index.vue b/src/views/erp/product/product/index.vue index 4eeba1eae..16b0bfee7 100644 --- a/src/views/erp/product/product/index.vue +++ b/src/views/erp/product/product/index.vue @@ -86,6 +86,11 @@ + + + + + + + diff --git a/src/views/erp/purchase/order/components/PurchaseOrderItemForm.vue b/src/views/erp/purchase/order/components/PurchaseOrderItemForm.vue index 70a243319..265193e95 100644 --- a/src/views/erp/purchase/order/components/PurchaseOrderItemForm.vue +++ b/src/views/erp/purchase/order/components/PurchaseOrderItemForm.vue @@ -66,11 +66,7 @@ + \ No newline at end of file diff --git a/src/views/erp/warehouse/components/WarehouseLocationForm.vue b/src/views/erp/warehouse/components/WarehouseLocationForm.vue new file mode 100644 index 000000000..cb151fced --- /dev/null +++ b/src/views/erp/warehouse/components/WarehouseLocationForm.vue @@ -0,0 +1,125 @@ + + \ No newline at end of file diff --git a/src/views/erp/warehouse/components/WarehouseLocationList.vue b/src/views/erp/warehouse/components/WarehouseLocationList.vue new file mode 100644 index 000000000..53b1b7a0a --- /dev/null +++ b/src/views/erp/warehouse/components/WarehouseLocationList.vue @@ -0,0 +1,135 @@ + + \ No newline at end of file diff --git a/src/views/erp/warehouse/index.vue b/src/views/erp/warehouse/index.vue new file mode 100644 index 000000000..4d642b554 --- /dev/null +++ b/src/views/erp/warehouse/index.vue @@ -0,0 +1,275 @@ + + + \ No newline at end of file