| | |
| | | import com.alibaba.excel.EasyExcel; |
| | | import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy; |
| | | import com.baomidou.mybatisplus.mapper.EntityWrapper; |
| | | import com.baomidou.mybatisplus.mapper.Wrapper; |
| | | import com.baomidou.mybatisplus.plugins.Page; |
| | | import com.core.annotations.ManagerAuth; |
| | | import com.core.common.Cools; |
| | | import com.core.common.DateUtils; |
| | | import com.core.common.R; |
| | | import com.core.common.SnowflakeIdWorker; |
| | | import com.core.exception.CoolException; |
| | | import com.zy.asrs.entity.*; |
| | | import com.zy.asrs.entity.param.GlobleParameter; |
| | | import com.zy.asrs.entity.result.KeyValueVo; |
| | | import com.zy.asrs.service.*; |
| | | import com.zy.asrs.utils.PlaExcelListener; |
| | | import com.zy.asrs.utils.SaasUtils; |
| | |
| | | private PlaLogService plaLogService; |
| | | @Autowired |
| | | private MatService matService; |
| | | @Autowired |
| | | private SnowflakeIdWorker snowflakeIdWorker; |
| | | |
| | | |
| | | @RequestMapping(value = "/pla/list/auth") |
| | | @ManagerAuth |
| | |
| | | wrapper.ne("status", "全部出库"); |
| | | } |
| | | |
| | | if (!Cools.isEmpty(param.get("batch")) && param.get("batch").toString().contains(",")){ |
| | | String[] batchs = param.get("batch").toString().split(","); |
| | | wrapper.in("batch",batchs); |
| | | param.remove("batch"); |
| | | } |
| | | |
| | | convert(param, wrapper); |
| | | wrapper.orderBy("batch",true).orderBy("package_no" ,true); |
| | |
| | | for (Pla pla : plas){ |
| | | |
| | | if(pla.getStockFreeze() == 0){ |
| | | throw new CoolException("库存已被冻结,请重新选择库存"); |
| | | // throw new CoolException("库存已被冻结,请重新选择库存"); |
| | | System.out.println(pla.getStockFreezeBy() + "," + getUser().getUsername()); |
| | | if(!Cools.eq(pla.getStockFreezeBy(),getUser().getUsername())){ |
| | | throw new CoolException("该库存已被其他用户冻结,请重新选择"); |
| | | } |
| | | } |
| | | |
| | | allOrderWeight += pla.getOrderWeight(); |
| | |
| | | pla.setWeightAnfme(0.0); |
| | | plaService.updateById(pla); |
| | | SaasUtils.insertLog(1,pla.getLocNo(),pla.getBrand(),anfme,getUser().getUsername(), |
| | | null,pla.getBatch(),pla.getPackageNo(),pla.getOwner(),pla.getWorkshop()); |
| | | null,pla.getBatch(),pla.getPackageNo(),pla.getOwner(),pla.getWorkshop(),null); |
| | | }); |
| | | |
| | | return R.ok(); |
| | |
| | | } |
| | | for (Pla pla : plas){ |
| | | if (pla.getStockFreeze() == 0){ |
| | | throw new CoolException("库存已被冻结!"); |
| | | continue; |
| | | // throw new CoolException("库存已被冻结!"); |
| | | } |
| | | pla.setStockFreeze(0); |
| | | pla.setStockFreezeBy(getUser().getUsername()); |
| | |
| | | } |
| | | for (Pla pla : plas){ |
| | | if (pla.getStockFreeze() == 1){ |
| | | throw new CoolException("库位未冻结,无需解冻"); |
| | | continue; |
| | | // throw new CoolException("库位未冻结,无需解冻"); |
| | | } |
| | | if(!Cools.eq(pla.getStockFreezeBy(),getUser().getUsername())){ |
| | | throw new CoolException("无法解冻其他用户冻结的库位"); |
| | |
| | | return R.ok().add(res); |
| | | } |
| | | |
| | | /*************************************** xm-select ***********************************************/ |
| | | |
| | | // xm-select 搜索批号 |
| | | @RequestMapping("/pla/batch/all/get/kv") |
| | | @ManagerAuth |
| | | public R getMatDataKV(@RequestParam(required = false) String condition) { |
| | | Wrapper<Pla> wrapper = new EntityWrapper<Pla>().setSqlSelect("batch") |
| | | .andNew().like("batch", condition) |
| | | .groupBy("batch") |
| | | .orderBy("batch",false); |
| | | List<Pla> plas = plaService.selectPage(new Page<Pla>(1, 30), wrapper).getRecords(); |
| | | List<KeyValueVo> valueVos = new ArrayList<>(); |
| | | for (Pla pla : plas) { |
| | | KeyValueVo vo = new KeyValueVo(); |
| | | vo.setName(pla.getBatch()); |
| | | vo.setValue(pla.getBatch()); |
| | | valueVos.add(vo); |
| | | } |
| | | return R.ok().add(valueVos); |
| | | } |
| | | |
| | | private <T> void convert(Map<String, Object> map, EntityWrapper<T> wrapper){ |
| | | for (Map.Entry<String, Object> entry : map.entrySet()){ |
| | | String val = String.valueOf(entry.getValue()); |
| | |
| | | } |
| | | } |
| | | |
| | | @Synchronized |
| | | private R addPakOUT(PlaQty plaQty,Long userId){ |
| | | ManPakOut manPakOut=new ManPakOut(); |
| | | manPakOut.setWrkNo(plaQty.getOrderNo()+"-"+System.currentTimeMillis()); |
| | | manPakOut.setWrkNo(plaQty.getOrderNo()+"-"+String.valueOf(snowflakeIdWorker.nextId())); |
| | | manPakOut.setWrkSts((long)1); |
| | | manPakOut.setAnfme(plaQty.getOrderWeight()); |
| | | manPakOut.setMaktx(plaQty.getBrand()); |