diff --git a/ruoyi-admin/src/main/java/com/ruoyi/pda/controller/PdaController.java b/ruoyi-admin/src/main/java/com/ruoyi/pda/controller/PdaController.java index 402083d..50b0afa 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/pda/controller/PdaController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/pda/controller/PdaController.java @@ -15,13 +15,16 @@ import com.ruoyi.pda.service.PdaService; import com.ruoyi.stock.stock.domain.BasStock; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.scheduling.annotation.Async; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.stereotype.Controller; +import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; +import java.util.HashMap; import java.util.List; @Controller @@ -204,6 +207,7 @@ public class PdaController extends BaseController { /** * 立库出库信息校验 + * * @param trayCodeMakeSure * @return */ @@ -212,7 +216,7 @@ public class PdaController extends BaseController { public AjaxResult verifyMaterial(@RequestBody TrayCodeMakeSure trayCodeMakeSure) { String trayCode = trayCodeMakeSure.getTrayCode(); List mydoJobDetailList = trayCodeMakeSure.getMydoJobDetailList(); - for (MydoJobDetail m : mydoJobDetailList ) { + for (MydoJobDetail m : mydoJobDetailList) { Integer count = pdaService.selectByTrayCodeAndProduct(trayCode, m.getProductId()); if (count == 0) { return AjaxResult.error(m.getProductId() + ",物料不是出库物料"); @@ -222,6 +226,34 @@ public class PdaController extends BaseController { return AjaxResult.success(); } + /** + * 平库出库确认 + * @param trayCodeMakeSure + * @return + */ + @RequestMapping("/completeOutPk") + @ResponseBody + @Async + @Transactional(rollbackFor = Exception.class) + public AjaxResult completeOutPk(@RequestBody TrayCodeMakeSure trayCodeMakeSure) { + try { + String trayCode = trayCodeMakeSure.getTrayCode(); + List mydoJobDetailList = trayCodeMakeSure.getMydoJobDetailList(); + for (MydoJobDetail m : mydoJobDetailList) { + HashMap map = new HashMap<>(); + map.put("v_tray_code", trayCode); + map.put("v_out_stockout_detail_id", m.getStockinDetailId()); + map.put("v_quantity", m.getOutQuantity()); + pdaService.completeOutPk(map); + if (!map.get("v_result").equals("10")) { + return AjaxResult.error(map.get("v_result_msg").toString()); + } + } + return AjaxResult.success(); + } catch (Exception e) { + throw new RuntimeException(e.getMessage()); + } + } } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/pda/mapper/PdaMapper.java b/ruoyi-admin/src/main/java/com/ruoyi/pda/mapper/PdaMapper.java index 3782b73..6b9b3ca 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/pda/mapper/PdaMapper.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/pda/mapper/PdaMapper.java @@ -46,4 +46,6 @@ public interface PdaMapper { void completeInPk(HashMap map); Integer selectByTrayCodeAndProduct(@Param("trayCode") String trayCode, @Param("productId") String productId); + + void completeOutPk(HashMap map); } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/pda/service/PdaService.java b/ruoyi-admin/src/main/java/com/ruoyi/pda/service/PdaService.java index 6e4719c..3a513c4 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/pda/service/PdaService.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/pda/service/PdaService.java @@ -8,6 +8,7 @@ import com.ruoyi.pda.domain.TrayCodeMakeSure; import com.ruoyi.pda.domain.TrayCodeMsg; import com.ruoyi.stock.stock.domain.BasStock; +import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Objects; @@ -63,4 +64,6 @@ public interface PdaService { AjaxResult selectBasStockHc(String trayCode); Integer selectByTrayCodeAndProduct(String trayCode, String productId); + + void completeOutPk(HashMap map); } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/pda/service/PdaServiceImp.java b/ruoyi-admin/src/main/java/com/ruoyi/pda/service/PdaServiceImp.java index 9d88383..2cc5715 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/pda/service/PdaServiceImp.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/pda/service/PdaServiceImp.java @@ -331,4 +331,9 @@ public class PdaServiceImp implements PdaService { public Integer selectByTrayCodeAndProduct(String trayCode, String productId) { return pdaMapper.selectByTrayCodeAndProduct(trayCode,productId); } + + @Override + public void completeOutPk(HashMap map) { + pdaMapper.completeOutPk(map); + } } diff --git a/ruoyi-admin/src/main/resources/mapper/mapper/pda/PdaMapper.xml b/ruoyi-admin/src/main/resources/mapper/mapper/pda/PdaMapper.xml index 7621c7a..9629cca 100644 --- a/ruoyi-admin/src/main/resources/mapper/mapper/pda/PdaMapper.xml +++ b/ruoyi-admin/src/main/resources/mapper/mapper/pda/PdaMapper.xml @@ -168,7 +168,13 @@ where job_id in (select job_id from mydo_job where tray_code = #{trayCode} and in_or_out > 20) and product_id = #{productId} - +