diff --git a/ruoyi-admin/src/main/java/com/ruoyi/erp/domain/ErpBom.java b/ruoyi-admin/src/main/java/com/ruoyi/erp/domain/ErpBom.java index add48fb6..bd2c5993 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/erp/domain/ErpBom.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/erp/domain/ErpBom.java @@ -56,6 +56,8 @@ public class ErpBom extends BaseEntity @Excel(name = "描述",sort = 4) private String describe; + private String warehouseDept; + /** 用量 */ @Excel(name = "用量",sort = 8) private Long useNum; @@ -393,6 +395,14 @@ public class ErpBom extends BaseEntity this.removeFileIdStr = removeFileIdStr; } + public String getWarehouseDept() { + return warehouseDept; + } + + public void setWarehouseDept(String warehouseDept) { + this.warehouseDept = warehouseDept; + } + @Override public String toString() { return "ErpBom{" + diff --git a/ruoyi-admin/src/main/java/com/ruoyi/system/domain/SysMakeorderBom.java b/ruoyi-admin/src/main/java/com/ruoyi/system/domain/SysMakeorderBom.java index 4355b094..f1c56077 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/system/domain/SysMakeorderBom.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/system/domain/SysMakeorderBom.java @@ -70,6 +70,8 @@ public class SysMakeorderBom extends BaseEntity @Excel(name = "描述") private String describe; + private String warehouseDept; + /** 用量 */ @Excel(name = "用量") private Long useNum; @@ -249,6 +251,14 @@ public class SysMakeorderBom extends BaseEntity return sortNo; } + public String getWarehouseDept() { + return warehouseDept; + } + + public void setWarehouseDept(String warehouseDept) { + this.warehouseDept = warehouseDept; + } + @Override public String toString() { return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/system/domain/SysSalesOrderChild.java b/ruoyi-admin/src/main/java/com/ruoyi/system/domain/SysSalesOrderChild.java index a452eb01..67a69414 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/system/domain/SysSalesOrderChild.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/system/domain/SysSalesOrderChild.java @@ -64,6 +64,11 @@ public class SysSalesOrderChild extends BaseEntity { @Excel(name = "物料的描述") private String describe; + @Excel(name = "入库部门") + private String warehouseDept; + + + /** 国内税率 */ @Excel(name = "国内税率") private Double countTax; @@ -251,6 +256,14 @@ public class SysSalesOrderChild extends BaseEntity { this.describe = describe; } + public String getWarehouseDept() { + return warehouseDept; + } + + public void setWarehouseDept(String warehouseDept) { + this.warehouseDept = warehouseDept; + } + public Double getCountTax() { return countTax; } @@ -423,6 +436,8 @@ public class SysSalesOrderChild extends BaseEntity { this.bomId = bomId; } + + @Override public String toString() { return Objects.toStringHelper(this) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/warehouse/mapper/WarehouseStorageOrderDetailMapper.java b/ruoyi-admin/src/main/java/com/ruoyi/warehouse/mapper/WarehouseStorageOrderDetailMapper.java index 6d4f9fe6..a95ebfb8 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/warehouse/mapper/WarehouseStorageOrderDetailMapper.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/warehouse/mapper/WarehouseStorageOrderDetailMapper.java @@ -104,4 +104,8 @@ public interface WarehouseStorageOrderDetailMapper * */ int updateWarehouseStorageMakeOrderDetailByObject(WarehouseStorageOrderDetail warehouseStorageOrderDetail); + /* + * 根据入库单号、供应商id、物料号更新对应的物料单详情 + * */ + WarehouseStorageOrderDetail selectWarehouseStorageOrderDetailListByRelatedOrderCode(WarehouseStorageOrderDetail warehouseStorageOrderDetail); } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/warehouse/service/impl/WarehouseStorageOrderServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/warehouse/service/impl/WarehouseStorageOrderServiceImpl.java index ff706eae..25e950ed 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/warehouse/service/impl/WarehouseStorageOrderServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/warehouse/service/impl/WarehouseStorageOrderServiceImpl.java @@ -82,19 +82,37 @@ public class WarehouseStorageOrderServiceImpl implements IWarehouseStorageOrderS return warehouseStorageOrderMapper.selectWarehouseStorageOrderList(warehouseStorageOrder); } - /** - * 新增仓库入库单 - * + /**暂收(采购入库)通知单 * @param warehouseStorageOrder 仓库入库单 * @return 结果 */ + @Transactional @Override public int insertWarehouseStorageOrder(WarehouseStorageOrder warehouseStorageOrder) { - warehouseStorageOrder.setCreateTime(DateUtils.getNowDate()); String loginName = ShiroUtils.getLoginName(); - warehouseStorageOrder.setCreateBy(loginName); - return warehouseStorageOrderMapper.insertWarehouseStorageOrder(warehouseStorageOrder); + warehouseStorageOrder.setUpdateBy(loginName); + warehouseStorageOrder.setUpdateTime(new Date()); + List storageOrderDetailList = warehouseStorageOrder.getWarehouseStorageOrderDetailList(); + + if (StringUtils.isEmpty(storageOrderDetailList)){ + log.warn("入库单详情为空:{}",storageOrderDetailList); + }else { + for (WarehouseStorageOrderDetail warehouseStorageOrderDetail : storageOrderDetailList) { + WarehouseStorageOrderDetail tempStorageOrderDetail = new WarehouseStorageOrderDetail(); + tempStorageOrderDetail.setMaterialNo(warehouseStorageOrderDetail.getMaterialNo()); + tempStorageOrderDetail.setSupplierCode(warehouseStorageOrderDetail.getSupplierCode()); + tempStorageOrderDetail.setWarehouseStorageCode(warehouseStorageOrder.getWarehouseStorageCode()); + WarehouseStorageOrderDetail storageOrderDetailFromData = storageOrderDetailMapper.selectWarehouseStorageOrderByObject(tempStorageOrderDetail); + if (storageOrderDetailFromData == null){ + log.warn("数据库中入库单详情为空:{}",tempStorageOrderDetail); + }else { + storageOrderDetailMapper.insertWarehouseStorageOrderDetail(warehouseStorageOrderDetail); + } + } + } + warehouseStorageOrder.setWarehouseStorageStatus("1"); + return warehouseStorageOrderMapper.updateWarehouseStorageOrder(warehouseStorageOrder); } /** @@ -134,9 +152,6 @@ public class WarehouseStorageOrderServiceImpl implements IWarehouseStorageOrderS return warehouseStorageOrderMapper.updateWarehouseStorageOrder(warehouseStorageOrder); } - - - /** * 修改保存暂收-采购单(采购入库) * diff --git a/ruoyi-admin/src/main/resources/mapper/erp/ErpBomMapper.xml b/ruoyi-admin/src/main/resources/mapper/erp/ErpBomMapper.xml index 074f5d48..869e14a6 100644 --- a/ruoyi-admin/src/main/resources/mapper/erp/ErpBomMapper.xml +++ b/ruoyi-admin/src/main/resources/mapper/erp/ErpBomMapper.xml @@ -20,6 +20,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + @@ -59,6 +60,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + @@ -70,7 +72,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" select id, del_flag, create_by, create_time, update_by, update_time, remark, bom_no, - material_no, material_name, material_type, process_method, unit, brand, `describe`, + material_no, material_name, material_type, process_method, unit, brand, `describe`,warehouseDept, engineer,use_num, loss_rate, parent_id, `level`, sort_no, audit_status, use_status, instance_id,instance_type,submit_instance_id,cancel_instance_id,restore_instance_id, apply_title,apply_user,apply_time from erp_bom @@ -79,7 +81,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" select bom_no, id, create_by, create_time, update_by, update_time, remark, material_no, material_name, material_type, process_method, unit, - brand, `describe`,engineer,use_num, loss_rate, parent_id, `level`, + brand, `describe`,warehouseDept,engineer,use_num, loss_rate, parent_id, `level`, sort_no, audit_status, use_status from erp_bom where bom_no != "" ORDER BY id DESC; select erp.id, erp.del_flag, erp.create_by, erp.create_time, erp.update_by, erp.update_time, erp.remark,erp.bom_no,erp.material_no,erp.material_name, erp.audit_status, erp.use_status, - erp.material_type, erp.process_method,erp.unit, erp.brand, erp.`describe`,erp.engineer, + erp.material_type, erp.process_method,erp.unit, erp.brand, erp.`describe`,erp.warehouseDept,erp.engineer, erp.use_num,erp.loss_rate, erp.parent_id, erp.`level`, erp.sort_no, erp.instance_id, erp.instance_type, processDict.dict_label as instance_type_name, erp.submit_instance_id, erp.cancel_instance_id, erp.restore_instance_id,erp.apply_title,erp.apply_user,erp.apply_time, @@ -409,7 +417,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" select erp.id, erp.del_flag, erp.create_by, erp.create_time, erp.update_by, erp.update_time, erp.remark,erp.bom_no,erp.material_no,erp.material_name, erp.audit_status, erp.use_status, - erp.material_type, erp.process_method,erp.unit, erp.brand, erp.`describe`,erp.engineer, + erp.material_type, erp.process_method,erp.unit, erp.brand, erp.`describe`,erp.warehouseDept,erp.engineer, erp.use_num,erp.loss_rate, erp.parent_id, erp.`level`, erp.sort_no, erp.instance_id, erp.instance_type, processDict.dict_label as instance_type_name, erp.submit_instance_id, erp.cancel_instance_id, erp.restore_instance_id,erp.apply_title,erp.apply_user,erp.apply_time, @@ -482,7 +490,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" @@ -49,6 +53,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and unit = #{unit} and brand = #{brand} and `describe` = #{describe} + and warehouseDept = #{warehouseDept} and use_num = #{useNum} and loss_rate = #{lossRate} and level = #{level} @@ -88,6 +93,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" unit, brand, `describe`, + warehouseDept, use_num, loss_rate, level, @@ -112,6 +118,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{unit}, #{brand}, #{describe}, + #{warehouseDept}, #{useNum}, #{lossRate}, #{level}, @@ -140,6 +147,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" unit = #{unit}, brand = #{brand}, `describe` = #{describe}, + warehouseDept = #{warehouseDept}, use_num = #{useNum}, loss_rate = #{lossRate}, level = #{level}, diff --git a/ruoyi-admin/src/main/resources/mapper/system/SysSalesOrderChildMapper.xml b/ruoyi-admin/src/main/resources/mapper/system/SysSalesOrderChildMapper.xml index 45b29624..958b9309 100644 --- a/ruoyi-admin/src/main/resources/mapper/system/SysSalesOrderChildMapper.xml +++ b/ruoyi-admin/src/main/resources/mapper/system/SysSalesOrderChildMapper.xml @@ -15,6 +15,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + @@ -43,7 +44,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" select a.id, a.quoteId, a.materialId, a.materialCode, a.materialName, a.materialType, a.processMethod, a.brand, a.photoUrl,a.unit, a.`describe`, - a.countTax, a.usdTax, a.materialNum,a.materialSole, a.materialRmb, a.materialNoRmb, a.materialNoUsd, a.materialUsd, a.materialUsdSum, + a.warehouseDept,a.countTax, a.usdTax, a.materialNum,a.materialSole, a.materialRmb, a.materialNoRmb, a.materialNoUsd, a.materialUsd, a.materialUsdSum, a.materialNoUsdSum, a.materialNoRmbSum, a.materialRmbSum,a.delivery_time, a.expiry_day, a.out_bound_quantity, a.un_bound_quantity, a.create_by, a.create_time, a.update_by, a.update_time, a.remark, a.use_status,a.audit_status @@ -87,6 +88,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" unit, photoUrl, `describe`, + warehouseDept, countTax, usdTax, materialNum, @@ -122,6 +124,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{unit}, #{photoUrl}, #{describe}, + #{warehouseDept}, #{countTax}, #{usdTax}, #{materialNum}, @@ -161,6 +164,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" photoUrl = #{photoUrl}, unit = #{unit}, `describe` = #{describe}, + warehouseDept = #{warehouseDept}, countTax = #{countTax}, usdTax = #{usdTax}, materialNum = #{materialNum}, diff --git a/ruoyi-admin/src/main/resources/mapper/warehouse/WarehouseOutOrderDetailMapper.xml b/ruoyi-admin/src/main/resources/mapper/warehouse/WarehouseOutOrderDetailMapper.xml index cb05571e..86072cf3 100644 --- a/ruoyi-admin/src/main/resources/mapper/warehouse/WarehouseOutOrderDetailMapper.xml +++ b/ruoyi-admin/src/main/resources/mapper/warehouse/WarehouseOutOrderDetailMapper.xml @@ -63,7 +63,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" diff --git a/ruoyi-admin/src/main/resources/mapper/warehouse/WarehouseStorageOrderDetailMapper.xml b/ruoyi-admin/src/main/resources/mapper/warehouse/WarehouseStorageOrderDetailMapper.xml index 4736f8de..f635c5c0 100644 --- a/ruoyi-admin/src/main/resources/mapper/warehouse/WarehouseStorageOrderDetailMapper.xml +++ b/ruoyi-admin/src/main/resources/mapper/warehouse/WarehouseStorageOrderDetailMapper.xml @@ -435,5 +435,18 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" update warehouse_storage_order_detail set del_flag = '0' where warehouse_storage_detail_id = #{warehouseStorageDetailId} - + \ No newline at end of file diff --git a/ruoyi-admin/src/main/resources/templates/erp/bom/add.html b/ruoyi-admin/src/main/resources/templates/erp/bom/add.html index 5e259fa8..fe274520 100644 --- a/ruoyi-admin/src/main/resources/templates/erp/bom/add.html +++ b/ruoyi-admin/src/main/resources/templates/erp/bom/add.html @@ -73,8 +73,12 @@ - - +
@@ -109,6 +113,7 @@ var materialTypeDatas = [[${@category.getChildByCode('materialType')}]]; var bomLevelSelectDatas = [[${@dict.getTypeSelect('bomLevel')}]]; var processMethodDatas = [[${@dict.getType('processMethod')}]]; + var warehouseDeptDatas = [[${@dict.getType('warehouseDept')}]]; var loginName = [[${@permission.getPrincipalProperty('loginName')}]]; var userName = [[${@permission.getPrincipalProperty('userName')}]]; $("#form-bom-add").validate({ @@ -364,6 +369,14 @@ return $.table.selectDictLabel(processMethodDatas, value); } }, + { + field: 'warehouseDept', + align: 'center', + title: '入库部门',visible:false, + formatter: function(value, row, index) { + return $.table.selectCategoryLabel(warehouseDeptDatas, value); + } + }, { field: 'remark', align: 'center', @@ -407,6 +420,7 @@ $("input[name='processMethod']").val(data.processMethod); $("#selectUnit").val([data.unit]).trigger("change"); $("input[name='unit']").val(data.unit); + $("input[name='warehouseDept']").val(data.warehouseDept); } @@ -478,6 +492,7 @@ processMethod: rowData.processMethod, unit: rowData.unit, brand: rowData.brand, + warehouseDept: rowData.warehouseDept, level: "1", useNum:'', lossRate:'' diff --git a/ruoyi-admin/src/main/resources/templates/erp/bom/edit.html b/ruoyi-admin/src/main/resources/templates/erp/bom/edit.html index 3ec748b1..ff0b3e14 100644 --- a/ruoyi-admin/src/main/resources/templates/erp/bom/edit.html +++ b/ruoyi-admin/src/main/resources/templates/erp/bom/edit.html @@ -100,6 +100,7 @@ var sysUnitClassDatas = [[${@dict.getType('sys_unit_class')}]]; var materialTypeDatas = [[${@category.getChildByCode('materialType')}]]; var processMethodDatas = [[${@dict.getType('processMethod')}]]; + var warehouseDeptDatas = [[${@dict.getType('warehouseDept')}]]; var bomLevelSelectDatas = [[${@dict.getTypeSelect('bomLevel')}]]; $("#form-bom-edit").validate({ focusCleanup: true}); function selMaterialTb(){ @@ -294,6 +295,14 @@ return $.table.selectDictLabel(processMethodDatas, value); } }, + { + field: 'warehouseDept', + align: 'center', + title: '入库部门',visible:false, + formatter: function(value, row, index) { + return $.table.selectCategoryLabel(warehouseDeptDatas, value); + } + }, { field: 'remark', align: 'center', @@ -366,6 +375,7 @@ brand: rowData.brand, unit: rowData.unit, processMethod: rowData.processMethod, + warehouseDept: rowData.warehouseDept, } }) layer.close(index); diff --git a/ruoyi-admin/src/main/resources/templates/erp/material/select.html b/ruoyi-admin/src/main/resources/templates/erp/material/select.html index 88d95cac..af414705 100644 --- a/ruoyi-admin/src/main/resources/templates/erp/material/select.html +++ b/ruoyi-admin/src/main/resources/templates/erp/material/select.html @@ -99,9 +99,10 @@ field: 'describe', title: '描述' }, + {field:'warehouseDept', title: '仓库部门',}, { field: 'processMethod', - title: '半成品类型', + title: '加工方法', formatter: function(value, row, index) { return $.table.selectDictLabel(processMethodDatas, value); } diff --git a/ruoyi-admin/src/main/resources/templates/system/makeorder/bmps.html b/ruoyi-admin/src/main/resources/templates/system/makeorder/bmps.html index f427b174..9bbd0d72 100644 --- a/ruoyi-admin/src/main/resources/templates/system/makeorder/bmps.html +++ b/ruoyi-admin/src/main/resources/templates/system/makeorder/bmps.html @@ -53,7 +53,7 @@ var sysUnitClassDatas = [[${@dict.getType('sys_unit_class')}]]; var materialTypeDatas = [[${@category.getChildByCode('materialType')}]]; var levelDatas = [[${@dict.getType('bomLevel')}]]; - var processMethodDatas = [[${@dict.getType('processMethod')}]]; + var warehouseDates = [[${@dict.getType('warehouseDate')}]]; // var subTableFormArray = []; @@ -131,6 +131,14 @@ align: 'center', title: '描述' }, + { + field: 'warehouseDept', + align: 'center', + title: '入库部门',visible: false, + formatter: function(value, row, index) { + return $.table.selectDictLabel(warehouseDates, value); + } + }, { field: 'processMethod', align: 'center', @@ -271,6 +279,14 @@ return $.table.selectDictLabel(processMethodDatas, value); } }, + { + field: 'warehouseDept', + align: 'center', + title: '入库部门',visible: false, + formatter: function(value, row, index) { + return $.table.selectDictLabel(warehouseDates, value); + } + }, { field: 'useNum', title: '用量', diff --git a/ruoyi-admin/src/main/resources/templates/system/salesOrder/add.html b/ruoyi-admin/src/main/resources/templates/system/salesOrder/add.html index e201b5cd..c10b1af9 100644 --- a/ruoyi-admin/src/main/resources/templates/system/salesOrder/add.html +++ b/ruoyi-admin/src/main/resources/templates/system/salesOrder/add.html @@ -339,6 +339,9 @@ { title: '描述',field: 'describe',align: 'center'}, {title: '品牌',field: 'brand',align: 'center'}, { title: '单位',field: 'unit',align: 'center', formatter: function(value, row, index) {return $.table.selectDictLabel(sysUnitClassDatas, value);}}, + { title: '入库部门',field: 'warehouseDept',align: 'center', + formatter: function(value, row, index) {} + }, {title: '半成品类型',field: 'processMethod',align: 'center',formatter: function(value, row, index) {return $.table.selectDictLabel(processMethodDatas, value);}}, { title: '对外售价',field: 'materialSole',editable: true}, {title: '国内税率',field: 'countTax',align: 'center',editable: {type: 'text',mode: 'inline',},}, @@ -673,6 +676,7 @@ unit: rowData.unit, processMethod: rowData.processMethod, photoUrl: rowData.photoUrl, + warehouseDept: rowData.warehouseDept, countTax: $("#taxRate_add").val(), usdTax: $("#usdTax_add").val(), materialSole: "", diff --git a/ruoyi-admin/src/main/resources/templates/system/salesOrder/edit.html b/ruoyi-admin/src/main/resources/templates/system/salesOrder/edit.html index 9b0345a8..394c8a70 100644 --- a/ruoyi-admin/src/main/resources/templates/system/salesOrder/edit.html +++ b/ruoyi-admin/src/main/resources/templates/system/salesOrder/edit.html @@ -374,6 +374,9 @@ return $.table.selectDictLabel(processMethodDatas, value); } }, + { title: '入库部门',field: 'warehouseDept',align: 'center', + formatter: function(value, row, index) {} + }, { title: '对外售价',field: 'materialSole', editable: { type: 'text', @@ -654,6 +657,7 @@ describe: rowData.describe, brand: rowData.brand, photoUrl: rowData.photoUrl, + warehouseDept:rowData.warehouseDept, unit: rowData.unit, processMethod: rowData.processMethod, countTax:rmb ,