| | |
| | | import org.springblade.modules.soldr.service.ISoldrService; |
| | | import org.springblade.core.boot.ctrl.BladeController; |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | /** |
| | | * 已出库存数量记录表 控制器 |
| | | * |
| | |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 退回 |
| | | * @param num 数量 |
| | | * @param id 农资id |
| | | * @param type |
| | | * @return |
| | | */ |
| | | @PostMapping("/out") |
| | | public R out(Integer num, Long id, Integer type) { |
| | | //如果等于就修改并删除 |
| | |
| | | else { |
| | | Soldr soldr = new Soldr(); |
| | | soldr.setSid(id); |
| | | //通过农资库存id找到已出库农资表中对应的农资 |
| | | Soldr detail = soldrService.getOne(Condition.getQueryWrapper(soldr)); |
| | | Integer amount1 = detail.getAmount1(); |
| | | soldrecordService.updateSold(amount1 - num, id); |
| | | Double census = detail.getCensus(); |
| | | //统计公斤 |
| | | Integer specsValue1 = detail.getSpecsVal1(); |
| | | double v = 0; |
| | | //克 |
| | | if (specsValue1 == 0) { |
| | | v = num * 0.001; |
| | | } |
| | | //斤 |
| | | else if (specsValue1 == 1) { |
| | | v = num * 0.5; |
| | | } |
| | | //公斤 |
| | | else if (specsValue1 == 2) { |
| | | v = num; |
| | | } |
| | | //吨 |
| | | else if (specsValue1 == 3) { |
| | | v = num * 1000; |
| | | } |
| | | //毫升 |
| | | else if (specsValue1 == 4) { |
| | | //毫升换成升 |
| | | double s = num * 0.001; |
| | | //升换成公斤 |
| | | v = s; |
| | | } |
| | | //升 |
| | | else{ |
| | | v = num; |
| | | } |
| | | //更新已出库农资的数据 |
| | | soldrecordService.updateSold(amount1 - num, id,census-v); |
| | | Stock stock = new Stock(); |
| | | stock.setId(id); |
| | | //根据传过来的sid获取对应的库存表数据 |
| | | Stock detail1 = stockService.getOne(Condition.getQueryWrapper(stock)); |
| | | Integer amount = detail1.getAmount(); |
| | | stock.setAmount(amount + num); |
| | | //更新库存表 |
| | | stockService.Updaet(stock); |
| | | } |
| | | return R.success("退回成功"); |
| | |
| | | soldr.setSid(soldrVOs.getId()); |
| | | Soldr detail = soldrService.getOne(Condition.getQueryWrapper(soldr)); |
| | | Integer amount1 = detail.getAmount1(); |
| | | soldrecordService.updateSold(amount1 - soldrVOs.getNum(), soldrVOs.getId()); |
| | | Double census = detail.getCensus(); |
| | | //统计公斤 |
| | | Integer specsValue1 = detail.getSpecsVal1(); |
| | | double v = 0; |
| | | //克 |
| | | if (specsValue1 == 0) { |
| | | v = soldrVOs.getNum() * 0.001; |
| | | } |
| | | //斤 |
| | | if (specsValue1 == 1) { |
| | | v = soldrVOs.getNum() * 0.5; |
| | | } |
| | | //公斤 |
| | | if (specsValue1 == 2) { |
| | | v = soldrVOs.getNum(); |
| | | } |
| | | //吨 |
| | | if (specsValue1 == 3) { |
| | | v = soldrVOs.getNum() * 1000; |
| | | } |
| | | //毫升 |
| | | if (specsValue1 == 4) { |
| | | //毫升换成升 |
| | | double s = soldrVOs.getNum() * 0.001; |
| | | //升换成公斤 |
| | | v = s; |
| | | } |
| | | //升 |
| | | if (specsValue1 == 5) { |
| | | v = soldrVOs.getNum(); |
| | | } |
| | | soldrecordService.updateSold(amount1 - soldrVOs.getNum(), soldrVOs.getId(),census-v); |
| | | Stock stock = new Stock(); |
| | | stock.setId(soldrVOs.getId()); |
| | | Stock detail1 = stockService.getOne(Condition.getQueryWrapper(stock)); |
| | |
| | | return R.success("退回成功"); |
| | | } |
| | | |
| | | /** |
| | | * 已出农资列表 |
| | | * |
| | | * @return |
| | | */ |
| | | @GetMapping("/selectSol") |
| | | public R selectSol(String farmId) { |
| | | List<SoldrVO> soldrVOS = soldrService.selectSol(farmId); |
| | | for (int i = 0; i < soldrVOS.size(); i++) { |
| | | String specs1 = soldrVOS.get(i).getSpecs1(); |
| | | String dic1 = soldrVOS.get(i).getDic1(); |
| | | String dic2 = soldrVOS.get(i).getDic2(); |
| | | String agrname = soldrVOS.get(i).getAgrname(); |
| | | String s = agrname + specs1 + dic1 + "/" + dic2; |
| | | soldrVOS.get(i).setSpn(s); |
| | | } |
| | | |
| | | return R.data(soldrVOS); |
| | | } |
| | | |
| | | } |