| | |
| | | import com.baomidou.mybatisplus.mapper.EntityWrapper; |
| | | 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.service.*; |
| | | import com.zy.asrs.utils.MatUtils; |
| | | import com.zy.asrs.utils.OrderInAndOutUtil; |
| | | import com.zy.asrs.utils.TimeCalculatorUtils; |
| | | import com.zy.common.model.DetlDto; |
| | | import com.zy.common.utils.NodeUtils; |
| | | import lombok.extern.slf4j.Slf4j; |
| | |
| | | viewStockUseBeanDigitalTwin.setIdleLoc(Integer.toUnsignedLong(selectCountLocMastO)); |
| | | List<ViewInOutBean> list = reportQueryMapper.getViewInOutAll(new ViewInOutBean()); |
| | | Date date = new Date(); |
| | | String format = new SimpleDateFormat("yyyy-MM-dd").format(date); |
| | | String format = new SimpleDateFormat(DateUtils.yyyyMMdd_F).format(date); |
| | | viewStockUseBeanDigitalTwin.setNowData(format); |
| | | for (ViewInOutBean view : list) { |
| | | if (view.getYmd().equals(format)) { |
| | |
| | | return viewStockUseBeanDigitalTwin; |
| | | } |
| | | |
| | | @Override |
| | | @Transactional |
| | | public DigitalTwinRecentOrderParam digitalTwinRecentOrder(DigitalTwinRecentOrderParam param) { |
| | | Date date = new Date(); |
| | | if (Cools.isEmpty(param.getStartDate()) || !TimeCalculatorUtils.isValidDateFormat(param.getStartDate(), DateUtils.yyyyMMdd) || TimeCalculatorUtils.isFutureDate(param.getStartDate(), DateUtils.yyyyMMdd)) { |
| | | param.setMemo("开始日期异常 :"+param.getStartDate()); |
| | | String timeFrontSevenYesterday = new SimpleDateFormat(DateUtils.yyyyMMdd).format(TimeCalculatorUtils.timeFrontSevenYesterday6(date));//七天前 |
| | | param.setStartDate(timeFrontSevenYesterday); |
| | | String format = new SimpleDateFormat(DateUtils.yyyyMMdd).format(date);//当天 |
| | | param.setEndDate(format); |
| | | param.setMemo(param.getMemo()+";初始化日期为 :"+param.getStartDate()+"===>" + param.getEndDate()); |
| | | } else if (Cools.isEmpty(param.getEndDate()) || !TimeCalculatorUtils.isValidDateFormat(param.getEndDate(), DateUtils.yyyyMMdd)) { |
| | | param.setMemo("结束日期异常 :"+param.getEndDate()); |
| | | String format = new SimpleDateFormat(DateUtils.yyyyMMdd).format(date);//当天 |
| | | param.setEndDate(format); |
| | | param.setMemo(param.getMemo()+";初始化日期为 :"+param.getStartDate()+"===>" + param.getEndDate()); |
| | | } |
| | | List<ViewOrderParam> asrOrderView = reportQueryMapper.getAsrOrderView(param.getStartDate(), param.getEndDate()); |
| | | List<DigitalTwinRecentOrderParam.DataCode> dataCodes = new ArrayList<>(); |
| | | for (ViewOrderParam view : asrOrderView) { |
| | | DigitalTwinRecentOrderParam.DataCode dataCode = new DigitalTwinRecentOrderParam.DataCode(); |
| | | dataCode.setOrderDate(view.getYmd()); |
| | | dataCode.setOrderNum(view.getQty()); |
| | | dataCodes.add(dataCode); |
| | | } |
| | | param.setDataCodeList(dataCodes); |
| | | return param; |
| | | } |
| | | |
| | | @Override |
| | | @Transactional |
| | | public DigitalTwinRecentIdleLocParam digitalTwinRecentIdleLoc(DigitalTwinRecentIdleLocParam param) { |
| | | Date date = new Date(); |
| | | if (Cools.isEmpty(param.getStartDate()) || !TimeCalculatorUtils.isValidDateFormat(param.getStartDate(), DateUtils.yyyyMMdd) || TimeCalculatorUtils.isFutureDate(param.getStartDate(), DateUtils.yyyyMMdd)) { |
| | | param.setMemo("开始日期异常 :"+param.getStartDate()); |
| | | String timeFrontSevenYesterday = new SimpleDateFormat(DateUtils.yyyyMMdd).format(TimeCalculatorUtils.timeFrontSevenYesterday6(date));//七天前 |
| | | param.setStartDate(timeFrontSevenYesterday); |
| | | String format = new SimpleDateFormat(DateUtils.yyyyMMdd).format(date);//当天 |
| | | param.setEndDate(format); |
| | | param.setMemo(param.getMemo()+";初始化日期为 :"+param.getStartDate()+"===>" + param.getEndDate()); |
| | | } else if (Cools.isEmpty(param.getEndDate()) || !TimeCalculatorUtils.isValidDateFormat(param.getEndDate(), DateUtils.yyyyMMdd)) { |
| | | param.setMemo("结束日期异常 :"+param.getEndDate()); |
| | | String format = new SimpleDateFormat(DateUtils.yyyyMMdd).format(date);//当天 |
| | | param.setEndDate(format); |
| | | param.setMemo(param.getMemo()+";初始化日期为 :"+param.getStartDate()+"===>" + param.getEndDate()); |
| | | } |
| | | // List<ViewLocDailyLogParam> asrLocDailyLogO = reportQueryMapper.getAsrLocDailyLogO(param.getAreaId(), param.getStartDate(), param.getEndDate()); |
| | | List<ViewLocDailyLogParam> asrLocDailyLogO = reportQueryMapper.getAsrLocDailyLog2(param.getAreaId(), param.getStartDate(), param.getEndDate()); |
| | | List<DigitalTwinRecentIdleLocParam.DataCode> dataCodes = new ArrayList<>(); |
| | | for (ViewLocDailyLogParam view : asrLocDailyLogO) { |
| | | DigitalTwinRecentIdleLocParam.DataCode dataCode = new DigitalTwinRecentIdleLocParam.DataCode(); |
| | | dataCode.setLocDate(view.getYmd()); |
| | | dataCode.setIdleNum(view.getQty()); |
| | | dataCode.setAreaId(view.getArea()); |
| | | dataCodes.add(dataCode); |
| | | } |
| | | param.setDataCodeList(dataCodes); |
| | | return param; |
| | | } |
| | | |
| | | @Override |
| | | @Transactional |
| | | public DigitalTwinRecentInAndOutBoundParam digitalTwinRecentInAndOutBound(DigitalTwinRecentInAndOutBoundParam param) { |
| | | Date date = new Date(); |
| | | if (Cools.isEmpty(param.getStartDate()) || !TimeCalculatorUtils.isValidDateFormat(param.getStartDate(), DateUtils.yyyyMMdd) || TimeCalculatorUtils.isFutureDate(param.getStartDate(), DateUtils.yyyyMMdd)) { |
| | | param.setMemo("开始日期异常 :"+param.getStartDate()); |
| | | String timeFrontSevenYesterday = new SimpleDateFormat(DateUtils.yyyyMMdd).format(TimeCalculatorUtils.timeFrontSevenYesterday6(date));//七天前 |
| | | param.setStartDate(timeFrontSevenYesterday); |
| | | String format = new SimpleDateFormat(DateUtils.yyyyMMdd).format(date);//当天 |
| | | param.setEndDate(format); |
| | | param.setMemo(param.getMemo()+";初始化日期为 :"+param.getStartDate()+"===>" + param.getEndDate()); |
| | | } else if (Cools.isEmpty(param.getEndDate()) || !TimeCalculatorUtils.isValidDateFormat(param.getEndDate(), DateUtils.yyyyMMdd)) { |
| | | param.setMemo("结束日期异常 :"+param.getEndDate()); |
| | | String format = new SimpleDateFormat(DateUtils.yyyyMMdd).format(date);//当天 |
| | | param.setEndDate(format); |
| | | param.setMemo(param.getMemo()+";初始化日期为 :"+param.getStartDate()+"===>" + param.getEndDate()); |
| | | } |
| | | ViewInOutBean viewInOutBean = new ViewInOutBean(); |
| | | viewInOutBean.setBegin_date(param.getStartDate()); |
| | | viewInOutBean.setEnd_date(param.getEndDate()); |
| | | List<ViewInOutBean> list = reportQueryMapper.getViewInOutAll(viewInOutBean); |
| | | List<DigitalTwinRecentInAndOutBoundParam.DataCode> dataCodes = new ArrayList<>(); |
| | | for (ViewInOutBean view : list) { |
| | | DigitalTwinRecentInAndOutBoundParam.DataCode dataCode = new DigitalTwinRecentInAndOutBoundParam.DataCode(); |
| | | dataCode.setBoundDate(view.getYmd()); |
| | | dataCode.setOutBoundNum(view.getRet_qty()); |
| | | dataCode.setInBoundNum(view.getSto_qty()); |
| | | dataCodes.add(dataCode); |
| | | } |
| | | param.setDataCodeList(dataCodes); |
| | | return param; |
| | | } |
| | | |
| | | @Override |
| | | @Transactional |
| | | public DigitalTwinRecentDetainMatParam digitalTwinRecentDetainMat(DigitalTwinRecentDetainMatParam param) { |
| | | List<VwLocDetlSummaryParam> vwLocDetlSummaryParam = reportQueryMapper.getVwLocDetlSummaryParam(param.getAreaId(), param.getOverDayNum(), param.getPageIndex(), param.getPageSize()); |
| | | |
| | | List<DigitalTwinRecentDetainMatParam.DataCode> dataCodes = new ArrayList<>(); |
| | | for (VwLocDetlSummaryParam view : vwLocDetlSummaryParam) { |
| | | DigitalTwinRecentDetainMatParam.DataCode dataCode = new DigitalTwinRecentDetainMatParam.DataCode(view); |
| | | dataCodes.add(dataCode); |
| | | } |
| | | param.setDataCodeList(dataCodes); |
| | | return param; |
| | | } |
| | | |
| | | @Override |
| | | @Transactional |
| | | public DigitalTwinEquipmentParam digitalTwinEquipment(DigitalTwinEquipmentParam param) { |
| | | DigitalTwinEquipmentParam.DataCode dataCode = new DigitalTwinEquipmentParam.DataCode(); |
| | | dataCode.setEquipmentId(""+param.getAreaId()); |
| | | dataCode.setEquipmentName(param.getAreaId()+dataCode.getEquipmentName()); |
| | | dataCode.setBelongAreaId(""+param.getAreaId()); |
| | | dataCode.setBelongAreaName(""+param.getAreaId()); |
| | | param.getDataCodeList().add(dataCode); |
| | | return param; |
| | | } |
| | | |
| | | @Override |
| | | @Transactional |
| | | public DigitalTwinWarehouseDetailParam digitalTwinWarehouseDetail(DigitalTwinWarehouseDetailParam param) { |
| | | List<LocMast> locMastList = locMastService.selectList(new EntityWrapper<>()); |
| | | for (LocMast locMast : locMastList) { |
| | | List<LocDetl> locDetlList = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("loc_no", locMast.getLocNo())); |
| | | DigitalTwinWarehouseDetailParam.DataCode dataCode = new DigitalTwinWarehouseDetailParam.DataCode(locMast,locDetlList); |
| | | param.getDataCodeList().add(dataCode); |
| | | } |
| | | return param; |
| | | } |
| | | |
| | | } |