diff --git a/src/main/java/com/dreamchaser/depository_manage/entity/ExcelInfo.java b/src/main/java/com/dreamchaser/depository_manage/entity/ExcelInfo.java index 35285590..5d01bb07 100644 --- a/src/main/java/com/dreamchaser/depository_manage/entity/ExcelInfo.java +++ b/src/main/java/com/dreamchaser/depository_manage/entity/ExcelInfo.java @@ -28,9 +28,15 @@ public class ExcelInfo { private String mname; /** 物料种类id */ - @ExcelProperty(value = "物料种类编码") + @ExcelProperty(value = "物料类型编码") private Long typeId; + /** + * 物料种类名称 + */ + @ExcelProperty(value = "物料类型名称") + private String typeName; + /** 物料状态 */ @ExcelProperty(value = "状态",converter = ExcelStateInfoConverter.class) private Integer state; diff --git a/src/main/java/com/dreamchaser/depository_manage/mapper/MaterialTypeMapper.java b/src/main/java/com/dreamchaser/depository_manage/mapper/MaterialTypeMapper.java index 1d5454ed..6f62df26 100644 --- a/src/main/java/com/dreamchaser/depository_manage/mapper/MaterialTypeMapper.java +++ b/src/main/java/com/dreamchaser/depository_manage/mapper/MaterialTypeMapper.java @@ -35,6 +35,13 @@ public interface MaterialTypeMapper { */ MaterialType findMaterialTypeById(Integer id); + /** + * 根据类型名称查询物料类型 + * @param name + * @return + */ + MaterialType findMaterialTypeByName(String name); + /** * 根据id查询物料类型 * @param oldId 物料类型id diff --git a/src/main/java/com/dreamchaser/depository_manage/mapper/MaterialTypeMapper.xml b/src/main/java/com/dreamchaser/depository_manage/mapper/MaterialTypeMapper.xml index beef38b0..0381fcb1 100644 --- a/src/main/java/com/dreamchaser/depository_manage/mapper/MaterialTypeMapper.xml +++ b/src/main/java/com/dreamchaser/depository_manage/mapper/MaterialTypeMapper.xml @@ -6,9 +6,9 @@ - - - + + + @@ -18,20 +18,20 @@ mt.id, mt.tname, mt.introduce, mt.state,mt.parentId,mt.oldId - + - SELECT - + FROM material_type mt where mt.state != 3 and mt.state != 4 SELECT - + FROM material_type mt WHERE 1 = 1 AND mt.tname LIKE CONCAT('%', #{tname}, '%') @@ -65,7 +65,7 @@ AND mt.introduce LIKE CONCAT('%', #{introduce}, '%') - + and mt.state = #{state} @@ -80,7 +80,7 @@ LIMIT #{begin},#{size} - + SELECT - + FROM material_type mt - WHERE mt.parentId = #{parentId} + WHERE mt.parentId = #{parentId} SELECT - + FROM material_type mt WHERE mt.oldId = #{id} and mt.state != 3 and mt.state != 4 + - + UPDATE material_type @@ -187,9 +192,9 @@ WHERE oldId = #{id} - + - + UPDATE material_type @@ -210,21 +215,21 @@ - + DELETE FROM material_type WHERE oldId = #{id} - - - + + + DELETE FROM material_type WHERE oldId IN #{id} - + - + update material_type @@ -234,7 +239,7 @@ - + update material_type diff --git a/src/main/java/com/dreamchaser/depository_manage/service/MaterialTypeService.java b/src/main/java/com/dreamchaser/depository_manage/service/MaterialTypeService.java index a0d5f0a1..0c83e0f2 100644 --- a/src/main/java/com/dreamchaser/depository_manage/service/MaterialTypeService.java +++ b/src/main/java/com/dreamchaser/depository_manage/service/MaterialTypeService.java @@ -69,6 +69,13 @@ public interface MaterialTypeService { * @return 对应记录 */ MaterialType findMaterialTypeById(Integer id); + + /** + * 根据类型名称查询物料类型 + * @param name + * @return + */ + MaterialType findMaterialTypeByName(String name); /** * 根据OldId查询对应物料类型 * @param OldId diff --git a/src/main/java/com/dreamchaser/depository_manage/service/impl/DepositoryRecordServiceImpl.java b/src/main/java/com/dreamchaser/depository_manage/service/impl/DepositoryRecordServiceImpl.java index 60585175..adb43171 100644 --- a/src/main/java/com/dreamchaser/depository_manage/service/impl/DepositoryRecordServiceImpl.java +++ b/src/main/java/com/dreamchaser/depository_manage/service/impl/DepositoryRecordServiceImpl.java @@ -1040,7 +1040,8 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { restResponse.setStatusInfo(new StatusInfo("出库失败", "当前位置未发现该物料")); return restResponse; } - } else { // 如果是默认库位 + } + else { // 如果是默认库位 Map params = new HashMap<>(); params.put("mid", inventory.getId()); params.put("pid", 0); @@ -1125,7 +1126,8 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { restResponse.setData(""); restResponse.setStatusInfo(new StatusInfo("出库失败", "出库失败,库存不足")); } - } else { + } + else { // 如果是拆单后的出库 // 用于获取对应的拆单记录 @@ -1795,8 +1797,8 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { // 用于获取映射关系 Map paramForPlaceAndMaterial = new HashMap<>(); - paramForPlaceAndMaterial.put("mid", placeById.getId()); - paramForPlaceAndMaterial.put("iid", inventoryById.getId()); + paramForPlaceAndMaterial.put("iid", placeById.getId()); + paramForPlaceAndMaterial.put("mid", inventoryById.getId()); // 获取库存与库存之间的映射 MaterialAndPlace placeAndMaterialByMidAndPid = placeMapper.findPlaceAndMaterialByMidAndPid(paramForPlaceAndMaterial); @@ -1815,7 +1817,8 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { materialMapper.updateInventory(inventoryById); placeMapper.updateMaterialAndPlace(placeAndMaterialByMidAndPid); placeMapper.UpdatePlace(placeById); - } else { + } + else { // 如果是拆单 Map paramForSplitInfo = new HashMap<>(); @@ -1836,7 +1839,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { paramForUpdateSplitInventory.put("quantity", returnQuantity); paramForUpdateSplitInventory.put("mid", inventoryById.getMid()); paramForUpdateSplitInventory.put("unit", unit); - result = splitUnitService.realInInventoryToDepository(returnQuantity, splitInventory, paramForUpdateSplitInventory, splitInfo, placeAndMaterialByMidAndPid, false); + result = splitUnitService.realInInventoryToDepository(returnQuantity, splitInventory, paramForUpdateSplitInventory, splitInfo, placeAndMaterialByMidAndPid, true); if (paramForUpdateSplitInventory.containsKey("applicationInId")) { depositoryRecordMapper.deleteApplicationInRecordById(ObjectFormatUtil.toInteger(paramForUpdateSplitInventory.get("applicationInId"))); } @@ -1931,6 +1934,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { // 修改当前已经出库的数量 applicationOutMinById.setTrueOut((int) ((trueOut * 100) + applicationOutMinById.getTrueOut())); if (applicationOutMinById.getQuantity() - applicationOutMinById.getTrueOut() > 0) { + applicationOutMinById.setPlaceId(placeId); // 如果当前子订单中的物料并未完全出库 depositoryRecordMapper.updateApplicationOutRecordMin(applicationOutMinById); } else { diff --git a/src/main/java/com/dreamchaser/depository_manage/service/impl/ExcelServiceImpl.java b/src/main/java/com/dreamchaser/depository_manage/service/impl/ExcelServiceImpl.java index edb4236e..1f802f4d 100644 --- a/src/main/java/com/dreamchaser/depository_manage/service/impl/ExcelServiceImpl.java +++ b/src/main/java/com/dreamchaser/depository_manage/service/impl/ExcelServiceImpl.java @@ -112,7 +112,14 @@ public class ExcelServiceImpl implements ExcelService { param.put("unit", excelVo.getUnit()); param.put("version", excelVo.getVersion()); param.put("texture", excelVo.getTexture()); - param.put("materialTypeId", excelVo.getTypeId()); + Long typeId = excelVo.getTypeId(); + if (typeId != null) { + param.put("materialTypeId", typeId); + }else{ + String typeName = excelVo.getTypeName(); + MaterialType materialTypeByName = materialTypeService.findMaterialTypeByName(typeName); + param.put("materialTypeId", materialTypeByName.getOldId()); + } param.put("id", excelVo.getId()); param.put("brand", excelVo.getBrand()); param.put("price", excelVo.getPrice() == null ? "0" : excelVo.getPrice()); @@ -517,8 +524,8 @@ public class ExcelServiceImpl implements ExcelService { // 定义部门id Integer adminorgId = record.getAdminorgId(); - if (adminorgId != null ) { - Administration company = LinkInterfaceUtil.getCompany(adminorgId, userToken); + if (adminorgId != null) { + Administration company = LinkInterfaceUtil.getCompany(adminorgId, userToken); // 设置部门名称 excelInfoByWrite.setAdminorgName(company.getName()); } else { diff --git a/src/main/java/com/dreamchaser/depository_manage/service/impl/MaterialTypeServiceImpl.java b/src/main/java/com/dreamchaser/depository_manage/service/impl/MaterialTypeServiceImpl.java index 18882007..84db8b33 100644 --- a/src/main/java/com/dreamchaser/depository_manage/service/impl/MaterialTypeServiceImpl.java +++ b/src/main/java/com/dreamchaser/depository_manage/service/impl/MaterialTypeServiceImpl.java @@ -159,6 +159,16 @@ public class MaterialTypeServiceImpl implements MaterialTypeService { return materialTypeMapper.findMaterialTypeById(id); } + /** + * 根据类型名称查询物料类型 + * @param name + * @return + */ + @Override + public MaterialType findMaterialTypeByName(String name) { + return null; + } + @Override public MaterialType findMaterialTypeByOldId(Long OldId) { return materialTypeMapper.findMaterialTypeByOldId(OldId); diff --git a/src/main/resources/static/upload/materialImport.xlsx b/src/main/resources/static/upload/materialImport.xlsx index 55db4817..0f24780c 100644 Binary files a/src/main/resources/static/upload/materialImport.xlsx and b/src/main/resources/static/upload/materialImport.xlsx differ diff --git a/src/main/resources/templates/pages/application/form-step-look_minRecordOut.html b/src/main/resources/templates/pages/application/form-step-look_minRecordOut.html index df70e1a0..2950572c 100644 --- a/src/main/resources/templates/pages/application/form-step-look_minRecordOut.html +++ b/src/main/resources/templates/pages/application/form-step-look_minRecordOut.html @@ -196,6 +196,7 @@ $("#editInfo").show(); $("#quantity").attr("readonly", "readonly"); $("#quantity").val(quantity); + flagForForm = false; // $("#unit").empty(); // $("#unit").append(new Option(unit, "-1")) }; diff --git a/src/main/resources/templates/pages/scanQrCode/ScanBarOrQrCodeOut.html b/src/main/resources/templates/pages/scanQrCode/ScanBarOrQrCodeOut.html index f0ef0977..8745969c 100644 --- a/src/main/resources/templates/pages/scanQrCode/ScanBarOrQrCodeOut.html +++ b/src/main/resources/templates/pages/scanQrCode/ScanBarOrQrCodeOut.html @@ -63,26 +63,31 @@ } else { wxScan = wxScan.parent.wx; } - wxScan.scanQRCode({ - desc: 'scanQRCode desc', - needResult: 1, // 默认为0,扫描结果由企业微信处理,1则直接返回扫描结果, - scanType: ["barCode", "qrCode"], // 可以指定扫二维码还是条形码(一维码),默认二者都有 - success: function (res) { - // 回调 - var result = res.resultStr;//当needResult为1时返回处理结果 - var req = {}; - req.qrCode = result; - outboundLogic(req); - - }, - error: function (res) { - if (res.errMsg.indexOf('function_not_exist') > 0) { - alert('版本过低请升级') - } - - } - - }); + // wxScan.scanQRCode({ + // desc: 'scanQRCode desc', + // needResult: 1, // 默认为0,扫描结果由企业微信处理,1则直接返回扫描结果, + // scanType: ["barCode", "qrCode"], // 可以指定扫二维码还是条形码(一维码),默认二者都有 + // success: function (res) { + // // 回调 + // var result = res.resultStr;//当needResult为1时返回处理结果 + // var req = {}; + // req.qrCode = result; + // outboundLogic(req); + // + // }, + // error: function (res) { + // if (res.errMsg.indexOf('function_not_exist') > 0) { + // alert('版本过低请升级') + // } + // + // } + // + // }); + + var result = "1638361349087338496";//当needResult为1时返回处理结果 + var req = {}; + req.qrCode = result; + outboundLogic(req); }); diff --git a/src/test/java/com/dreamchaser/depository_manage/TestForOther.java b/src/test/java/com/dreamchaser/depository_manage/TestForOther.java index f6e00811..616a0d96 100644 --- a/src/test/java/com/dreamchaser/depository_manage/TestForOther.java +++ b/src/test/java/com/dreamchaser/depository_manage/TestForOther.java @@ -69,12 +69,11 @@ public class TestForOther { @Test public void run() { -// ApprovalInfo_Details approvalInfo = new ApprovalInfo_Details(); -// ApprovalInfo_Details_Approver approver = new ApprovalInfo_Details_Approver(); -// approver.setUserId("PangFuZhen"); -// approvalInfo.setApprover(approver); - ApplicationOutRecordP applicationOutRecordPById = depositoryRecordService.findApplicationOutRecordPById(8); - // depositoryRecordService.reviewByQyWxApprovalOut("5",approvalInfo,"7a0ab47a150869808b24d2f4dbe1bb74","2","202303280016", false,2); + ApprovalInfo_Details approvalInfo = new ApprovalInfo_Details(); + ApprovalInfo_Details_Approver approver = new ApprovalInfo_Details_Approver(); + approver.setUserId("PangFuZhen"); + approvalInfo.setApprover(approver); + depositoryRecordService.reviewByQyWxApprovalOut("1",approvalInfo,"0f2162ca5229a3e68468c6e9ab957542","2","202303290021", false,2); // depositoryRecordService.reviewByQyWxApprovalIn("[1]",approvalInfo,"460f46eaefb46bb0c171029f62e2cea6","2","202303220009"); // UserByPort userByPort = LinkInterfaceUtil.FindUserById(78, null); // List s = excelService.writeExcelForPrint(2, 4,userByPort); diff --git a/target/classes/com/dreamchaser/depository_manage/mapper/MaterialTypeMapper.xml b/target/classes/com/dreamchaser/depository_manage/mapper/MaterialTypeMapper.xml index beef38b0..0381fcb1 100644 --- a/target/classes/com/dreamchaser/depository_manage/mapper/MaterialTypeMapper.xml +++ b/target/classes/com/dreamchaser/depository_manage/mapper/MaterialTypeMapper.xml @@ -6,9 +6,9 @@ - - - + + + @@ -18,20 +18,20 @@ mt.id, mt.tname, mt.introduce, mt.state,mt.parentId,mt.oldId - + - SELECT - + FROM material_type mt where mt.state != 3 and mt.state != 4 SELECT - + FROM material_type mt WHERE 1 = 1 AND mt.tname LIKE CONCAT('%', #{tname}, '%') @@ -65,7 +65,7 @@ AND mt.introduce LIKE CONCAT('%', #{introduce}, '%') - + and mt.state = #{state} @@ -80,7 +80,7 @@ LIMIT #{begin},#{size} - + SELECT - + FROM material_type mt - WHERE mt.parentId = #{parentId} + WHERE mt.parentId = #{parentId} SELECT - + FROM material_type mt WHERE mt.oldId = #{id} and mt.state != 3 and mt.state != 4 + - + UPDATE material_type @@ -187,9 +192,9 @@ WHERE oldId = #{id} - + - + UPDATE material_type @@ -210,21 +215,21 @@ - + DELETE FROM material_type WHERE oldId = #{id} - - - + + + DELETE FROM material_type WHERE oldId IN #{id} - + - + update material_type @@ -234,7 +239,7 @@ - + update material_type diff --git a/target/classes/static/upload/materialImport.xlsx b/target/classes/static/upload/materialImport.xlsx index 55db4817..0f24780c 100644 Binary files a/target/classes/static/upload/materialImport.xlsx and b/target/classes/static/upload/materialImport.xlsx differ diff --git a/target/classes/templates/pages/application/form-step-look_minRecordOut.html b/target/classes/templates/pages/application/form-step-look_minRecordOut.html index df70e1a0..2950572c 100644 --- a/target/classes/templates/pages/application/form-step-look_minRecordOut.html +++ b/target/classes/templates/pages/application/form-step-look_minRecordOut.html @@ -196,6 +196,7 @@ $("#editInfo").show(); $("#quantity").attr("readonly", "readonly"); $("#quantity").val(quantity); + flagForForm = false; // $("#unit").empty(); // $("#unit").append(new Option(unit, "-1")) }; diff --git a/target/classes/templates/pages/scanQrCode/ScanBarOrQrCodeOut.html b/target/classes/templates/pages/scanQrCode/ScanBarOrQrCodeOut.html index f0ef0977..8745969c 100644 --- a/target/classes/templates/pages/scanQrCode/ScanBarOrQrCodeOut.html +++ b/target/classes/templates/pages/scanQrCode/ScanBarOrQrCodeOut.html @@ -63,26 +63,31 @@ } else { wxScan = wxScan.parent.wx; } - wxScan.scanQRCode({ - desc: 'scanQRCode desc', - needResult: 1, // 默认为0,扫描结果由企业微信处理,1则直接返回扫描结果, - scanType: ["barCode", "qrCode"], // 可以指定扫二维码还是条形码(一维码),默认二者都有 - success: function (res) { - // 回调 - var result = res.resultStr;//当needResult为1时返回处理结果 - var req = {}; - req.qrCode = result; - outboundLogic(req); - - }, - error: function (res) { - if (res.errMsg.indexOf('function_not_exist') > 0) { - alert('版本过低请升级') - } - - } - - }); + // wxScan.scanQRCode({ + // desc: 'scanQRCode desc', + // needResult: 1, // 默认为0,扫描结果由企业微信处理,1则直接返回扫描结果, + // scanType: ["barCode", "qrCode"], // 可以指定扫二维码还是条形码(一维码),默认二者都有 + // success: function (res) { + // // 回调 + // var result = res.resultStr;//当needResult为1时返回处理结果 + // var req = {}; + // req.qrCode = result; + // outboundLogic(req); + // + // }, + // error: function (res) { + // if (res.errMsg.indexOf('function_not_exist') > 0) { + // alert('版本过低请升级') + // } + // + // } + // + // }); + + var result = "1638361349087338496";//当needResult为1时返回处理结果 + var req = {}; + req.qrCode = result; + outboundLogic(req); });