| New file |
| | |
| | | package com.zy.asrs.controller; |
| | | |
| | | import com.alibaba.fastjson.JSONObject; |
| | | 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.BaseRes; |
| | | import com.core.common.Cools; |
| | | import com.core.common.DateUtils; |
| | | import com.core.common.R; |
| | | import com.zy.asrs.entity.DocType; |
| | | import com.zy.asrs.entity.OrderPakout; |
| | | import com.zy.asrs.entity.OrderReport; |
| | | import com.zy.asrs.service.DocTypeService; |
| | | import com.zy.asrs.service.OrderDetlReportService; |
| | | import com.zy.asrs.service.OrderReportService; |
| | | import com.zy.common.web.BaseController; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import java.util.*; |
| | | |
| | | @RestController |
| | | @RequestMapping(value = "/report") |
| | | public class OrderReportController extends BaseController { |
| | | |
| | | @Autowired |
| | | private OrderReportService orderReportService; |
| | | @Autowired |
| | | private OrderDetlReportService orderDetlReportService; |
| | | |
| | | @Autowired |
| | | private DocTypeService docTypeService; |
| | | |
| | | |
| | | @RequestMapping(value = "/order/head/page/auth") |
| | | @ManagerAuth |
| | | public R head(@RequestParam(defaultValue = "1") Integer curr, |
| | | @RequestParam(defaultValue = "10") Integer limit, |
| | | @RequestParam(required = false) String orderByField, |
| | | @RequestParam(required = false) String orderByType, |
| | | @RequestParam Map<String, Object> param) { |
| | | EntityWrapper<OrderReport> wrapper = new EntityWrapper<>(); |
| | | excludeTrash(param); |
| | | convert(param, wrapper); |
| | | if (!Cools.isEmpty(orderByField)) { |
| | | wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType)); |
| | | } else { |
| | | wrapper.orderBy("settle").orderBy("create_time", false); |
| | | } |
| | | wrapper.eq("status", 1); |
| | | return R.ok(orderReportService.selectPage(new Page<>(curr, limit), wrapper)); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | 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()); |
| | | if (val.contains(RANGE_TIME_LINK)) { |
| | | String[] dates = val.split(RANGE_TIME_LINK); |
| | | wrapper.ge(entry.getKey(), DateUtils.convert(dates[0])); |
| | | wrapper.le(entry.getKey(), DateUtils.convert(dates[1])); |
| | | } else { |
| | | wrapper.like(entry.getKey(), val); |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | } |
| New file |
| | |
| | | package com.zy.asrs.mapper; |
| | | |
| | | import com.baomidou.mybatisplus.mapper.BaseMapper; |
| | | import com.zy.asrs.entity.OrderReport; |
| | | import com.zy.asrs.entity.OrderReportLog; |
| | | import org.apache.ibatis.annotations.Mapper; |
| | | import org.springframework.stereotype.Repository; |
| | | |
| | | @Mapper |
| | | @Repository |
| | | public interface OrderReportLogMapper extends BaseMapper<OrderReportLog> { |
| | | |
| | | |
| | | } |
| New file |
| | |
| | | package com.zy.asrs.service; |
| | | |
| | | import com.baomidou.mybatisplus.service.IService; |
| | | import com.zy.asrs.entity.OrderReport; |
| | | import com.zy.asrs.entity.OrderReportLog; |
| | | |
| | | public interface OrderReportLogService extends IService<OrderReportLog> { |
| | | |
| | | |
| | | } |
| New file |
| | |
| | | package com.zy.asrs.service.impl; |
| | | |
| | | import com.baomidou.mybatisplus.service.impl.ServiceImpl; |
| | | import com.zy.asrs.entity.OrderReport; |
| | | import com.zy.asrs.entity.OrderReportLog; |
| | | import com.zy.asrs.mapper.OrderReportLogMapper; |
| | | import com.zy.asrs.mapper.OrderReportMapper; |
| | | import com.zy.asrs.service.OrderReportLogService; |
| | | import com.zy.asrs.service.OrderReportService; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | @Slf4j |
| | | @Service("orderReportLogService") |
| | | public class OrderReportLogServiceImpl extends ServiceImpl<OrderReportLogMapper, OrderReportLog> implements OrderReportLogService { |
| | | |
| | | |
| | | } |
| | |
| | | package com.zy.asrs.task; |
| | | |
| | | import com.baomidou.mybatisplus.mapper.EntityWrapper; |
| | | import com.core.common.Cools; |
| | | import com.zy.asrs.entity.BasCrnp; |
| | | import com.zy.asrs.entity.WrkMast; |
| | | import com.zy.asrs.service.AutoMoveService; |
| | | import com.zy.asrs.service.BasCrnpService; |
| | | import com.zy.asrs.service.WorkService; |
| | | import com.zy.asrs.service.WrkMastService; |
| | | import com.zy.asrs.task.handler.AutoLocMoveHandler; |
| | | import com.zy.common.properties.SlaveWmsParameterProperties; |
| | | import com.zy.system.entity.Config; |
| | | import com.zy.system.service.ConfigService; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.scheduling.annotation.Scheduled; |
| | | import org.springframework.stereotype.Component; |
| | | |
| | | @Slf4j |
| | |
| | | @Autowired |
| | | private AutoMoveService autoMoveService; |
| | | |
| | | //定时出库 经典双伸 |
| | | |
| | | |
| | | //定时出库 |
| | | @Scheduled(cron = "0/3 * * * * ? ") |
| | | public void locToLoc11() { |
| | | if (slaveWmsParameterProperties.isAutoLocMoveUnilateralBoolean()) { |
| | | Config config = configService.selectConfigByCode("AutoLocMoveUnilateral"); |
| | | if (Cools.isEmpty(config) || config.getValue().equals("false")) { |
| | | return; |
| | | } |
| | | int crnCount = basCrnpService.selectCount(new EntityWrapper<>()); |
| | | for (int crnNo = 1; crnNo < crnCount; crnNo++) { |
| | | WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("io_type", 11).eq("crn_no", crnNo)); |
| | | WrkMast wrkMast1 = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("io_type", 111).eq("crn_no", crnNo)); |
| | | if (Cools.isEmpty(wrkMast) && Cools.isEmpty(wrkMast1)) { |
| | | autoLocMoveHandler.start(crnNo, 11); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | //定时入库 |
| | | @Scheduled(cron = "0/3 * * * * ? ") |
| | | public void locToLoc111() { |
| | | if (slaveWmsParameterProperties.isAutoLocMoveUnilateralBoolean()) { |
| | | Config config = configService.selectConfigByCode("AutoLocMoveUnilateral"); |
| | | if (Cools.isEmpty(config) || config.getValue().equals("false")) { |
| | | return; |
| | | } |
| | | int crnCount = basCrnpService.selectCount(new EntityWrapper<>()); |
| | | for (int crnNo = 1; crnNo < crnCount; crnNo++) { |
| | | BasCrnp basCrnp = basCrnpService.selectById(crnNo); |
| | | if (basCrnp == null) { |
| | | continue; |
| | | } |
| | | WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("io_type", 111).eq("crn_no", crnNo)); |
| | | WrkMast wrkMast1 = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("io_type", 11).eq("crn_no", crnNo)); |
| | | if (Cools.isEmpty(wrkMast) && Cools.isEmpty(wrkMast1)) { |
| | | autoLocMoveHandler.start(crnNo, 111); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | |
| | | locMastEnd = locNo; |
| | | } |
| | | } |
| | | // if (Cools.isEmpty(locMastStart) || Cools.isEmpty(locMastEnd)){ |
| | | |
| | | ReturnT<String> result = locMoveAllHandler.start(locMastStart, locMastEnd, basCrnp.getCrnNo()); |
| | | if (!result.isSuccess()) { |
| | |
| | | package com.zy.asrs.task; |
| | | |
| | | import com.baomidou.mybatisplus.mapper.EntityWrapper; |
| | | import com.core.common.Cools; |
| | | import com.zy.asrs.entity.*; |
| | | import com.zy.asrs.service.*; |
| | | import com.zy.asrs.task.core.ReturnT; |
| | | import com.zy.asrs.task.handler.OrderSyncHandler; |
| | | import com.zy.common.entity.Parameter; |
| | | import com.zy.common.utils.Synchro; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.scheduling.annotation.Async; |
| | | import org.springframework.scheduling.annotation.Scheduled; |
| | | import org.springframework.stereotype.Component; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * Created by vincent on 2020/7/7 |
| | |
| | | private OrderDetlReportService orderDetlReportService; |
| | | @Autowired |
| | | private OrderDetlReportLogService orderDetlReportLogService; |
| | | @Autowired |
| | | private OrderReportService orderReportService; |
| | | @Autowired |
| | | private OrderReportLogService orderReportLogService; |
| | | |
| | | @Scheduled(cron = "0 0 1 * * ? ") |
| | | public void clearApiLog() { |
| | |
| | | } |
| | | } |
| | | |
| | | /* @Scheduled(cron = "0/30 * * * * ? ") |
| | | public void clearReportLog() { |
| | | try { |
| | | List<OrderDetlReport> orderDetls = orderDetlReportService.selectList(new EntityWrapper<OrderDetlReport>()); |
| | | for (OrderDetlReport orderDetl : orderDetls) { |
| | | OrderPakin order = orderService.selectByNo(orderDetl.getOrderNo()); |
| | | if (order == null) { |
| | | OrderDetlReportLog orderDetlReportLog = new OrderDetlReportLog(); |
| | | orderDetlReportLog.sync(orderDetl); |
| | | orderDetlReportLog.setId(null); |
| | | orderDetlReportLogService.insert(orderDetlReportLog); |
| | | orderDetlReportService.deleteById(orderDetl.getId()); |
| | | } |
| | | } |
| | | } catch (Exception e) { |
| | | log.error("上报日志删除", e); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 订单状态4至6,并且写入上报表 |
| | | */ |
| | | @Scheduled(cron = "0/5 * * * * ? ") |
| | | @Async("orderThreadPool") |
| | | public void completeAndReport() { |
| | | public void completeOrderPakin() { |
| | | String erpReport = Parameter.get().getErpReport(); |
| | | if (!Cools.isEmpty(erpReport) && erpReport.equals("true")) { |
| | | List<OrderPakin> orders = orderService.selectComplete(); |
| | | List<OrderPakin> orders = orderPakinService.selectComplete(); |
| | | for (OrderPakin order : orders) { |
| | | ReturnT<String> result = orderSyncHandler.start(order); |
| | | if (!result.isSuccess()) { |
| | |
| | | } |
| | | } |
| | | } |
| | | }*/ |
| | | } |
| | | |
| | | /** |
| | | * 订单状态4至6,并且写入上报表 |
| | | */ |
| | | @Scheduled(cron = "0/5 * * * * ? ") |
| | | @Async("orderThreadPool") |
| | | public void completeOrderPakout() { |
| | | String erpReport = Parameter.get().getErpReport(); |
| | | if (!Cools.isEmpty(erpReport) && erpReport.equals("true")) { |
| | | List<OrderPakout> orders = orderPakoutService.selectComplete(); |
| | | for (OrderPakout order : orders) { |
| | | ReturnT<String> result = orderSyncHandler.start(order); |
| | | if (!result.isSuccess()) { |
| | | log.error("单据[orderNo={}]上报erp失败", order.getOrderNo()); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | //@Scheduled(cron = "0 0 3 * * ? ") |
| | | @Scheduled(cron = "0/5 * * * * ? ") |
| | | public void clearReportLog() { |
| | | try { |
| | | List<OrderReport> orderReports = orderReportService.selectList(new EntityWrapper<OrderReport>().eq("status", 1).eq("settle", 4)); |
| | | for (OrderReport orderReport : orderReports) { |
| | | List<OrderDetlReportLog> orderId = orderDetlReportLogService.selectList(new EntityWrapper<OrderDetlReportLog>().eq("order_id", orderReport.getId())); |
| | | for (OrderDetlReportLog orderDetl : orderId) { |
| | | OrderDetlReportLog orderDetlReportLog = new OrderDetlReportLog(); |
| | | orderDetlReportLog.sync(orderDetl); |
| | | orderDetlReportLog.setId(null); |
| | | orderDetlReportLogService.insert(orderDetlReportLog); |
| | | orderDetlReportService.deleteById(orderDetl.getId()); |
| | | } |
| | | OrderReportLog reportLog = new OrderReportLog(); |
| | | Synchro.Copy(orderReport, reportLog); |
| | | orderReportLogService.insert(reportLog); |
| | | orderReportService.deleteById(orderReport.getId()); |
| | | } |
| | | } catch (Exception e) { |
| | | log.error("上报日志删除", e); |
| | | } |
| | | } |
| | | } |
| | |
| | | @Autowired |
| | | private OverYearLogHandler overYearLogHandler; |
| | | |
| | | @Scheduled(cron = "0/3 * * * * ? ") |
| | | @Scheduled(cron = "0 0 2 * * ? ") |
| | | private void execute() { |
| | | ReturnT<String> returnT = overYearLogHandler.start(); |
| | | if (!returnT.isSuccess()) { |
| | |
| | | package com.zy.asrs.task; |
| | | |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.mapper.EntityWrapper; |
| | | import com.core.common.Cools; |
| | | import com.core.exception.CoolException; |
| | | import com.zy.asrs.entity.LocMast; |
| | | import com.zy.asrs.entity.WrkMast; |
| | | import com.zy.asrs.entity.param.ShuttleMoveTask; |
| | | import com.zy.asrs.entity.param.ShuttleOutTask; |
| | | import com.zy.asrs.entity.param.ShuttleTask; |
| | | import com.zy.asrs.service.WrkMastService; |
| | | import com.zy.asrs.service.impl.LocMastServiceImpl; |
| | | import com.zy.asrs.task.core.ReturnT; |
| | | import com.zy.asrs.task.handler.WorkMastHandler; |
| | | import com.zy.common.utils.HttpHandler; |
| | | import com.zy.system.entity.Config; |
| | | import com.zy.system.service.ConfigService; |
| | | import org.slf4j.Logger; |
| | | import org.slf4j.LoggerFactory; |
| | |
| | | } |
| | | } |
| | | |
| | | @Scheduled(cron = "0/3 * * * * ? ") //入库任务下发 |
| | | private void ShuttleInTaskSend() { |
| | | procesMode(); |
| | | List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>() |
| | | .eq("wrk_sts", 2).in("io_type", 1, 10, 53, 54, 57).eq("crn_no", 7)); |
| | | if (Cools.isEmpty(wrkMasts)) { |
| | | return; |
| | | } |
| | | |
| | | try { |
| | | for (WrkMast wrkMast : wrkMasts) { |
| | | if (wrkMast.getStaNo() == 1031) { |
| | | Config config = configService.selectConfigByCode("2.5F_Mode"); |
| | | if (Cools.isEmpty(config) || config.getValue().equals("false")) { |
| | | return; |
| | | } |
| | | if (config.getValue().equalsIgnoreCase("1")) { |
| | | log.info("模式不对2"); |
| | | return; |
| | | } |
| | | } |
| | | LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", wrkMast.getLocNo())); |
| | | if (locMast == null) { |
| | | throw new CoolException("下发四向车wcs任务失败"); |
| | | } |
| | | |
| | | String loc; |
| | | if ((locMast.getRow1() - 4) >= 10) { |
| | | loc = (locMast.getRow1() - 4) + locMast.getLocNo().substring(2); |
| | | } else { |
| | | loc = "0" + (locMast.getRow1() - 4) + locMast.getLocNo().substring(2); |
| | | } |
| | | //String loc = (locMast.getRow1() - 4) + "-" + locMast.getBay1() + "-" + locMast.getLev1(); |
| | | ShuttleTask param = new ShuttleTask(); |
| | | param.setTaskNo(wrkMast.getWrkNo().toString()); |
| | | param.setLocNo(loc); |
| | | param.setTaskNo2(Cools.isEmpty(wrkMast.getPltType()) ? null : wrkMast.getPltType().toString()); |
| | | param.setSourceStaNo(wrkMast.getSourceStaNo()); |
| | | param.setStaNo(wrkMast.getStaNo()); |
| | | param.setBarcode(wrkMast.getBarcode()); |
| | | //param.setPriority("11"); |
| | | String response = new HttpHandler.Builder() |
| | | .setUri(shuttleWcsUrl) |
| | | .setPath("/openapi/createInTask") |
| | | .setJson(JSON.toJSONString(param)) |
| | | .build() |
| | | .doPost(); |
| | | JSONObject jsonObject = JSON.parseObject(response); |
| | | Integer code = jsonObject.getInteger("code"); |
| | | if (code.equals(200)) { |
| | | wrkMast.setWrkSts(105L); |
| | | wrkMast.setModiTime(new Date()); |
| | | if (!wrkMastService.updateById(wrkMast)) { |
| | | log.error("工作档[workNo={}]标记待处理失败", wrkMast.getWrkNo()); |
| | | } |
| | | } |
| | | } |
| | | } catch (Exception e) { |
| | | throw new CoolException("下发四向车wcs任务失败"); |
| | | } |
| | | |
| | | } |
| | | |
| | | @Scheduled(cron = "0/3 * * * * ? ") //出库库任务下发 |
| | | private void ShuttleOutTaskSend() { |
| | | procesMode(); |
| | | List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>() |
| | | .in("io_type", 101, 110, 103, 104, 107) |
| | | .eq("wrk_sts", 11).eq("crn_no", 7)); |
| | | if (Cools.isEmpty(wrkMasts)) { |
| | | return; |
| | | } |
| | | try { |
| | | for (WrkMast wrkMast : wrkMasts) { |
| | | if (wrkMast.getStaNo() == 1031) { |
| | | Config config = configService.selectConfigByCode("2.5F_Mode"); |
| | | if (Cools.isEmpty(config) || config.getValue().equals("false")) { |
| | | return; |
| | | } |
| | | if (config.getValue().equalsIgnoreCase("2")) { |
| | | log.info("模式不对2"); |
| | | return; |
| | | } |
| | | } |
| | | LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", wrkMast.getSourceLocNo())); |
| | | if (locMast == null) { |
| | | throw new CoolException("下发四向车wcs任务失败"); |
| | | } |
| | | String loc; |
| | | if ((locMast.getRow1() - 4) >= 10) { |
| | | loc = (locMast.getRow1() - 4) + locMast.getLocNo().substring(2); |
| | | } else { |
| | | loc = "0" + (locMast.getRow1() - 4) + locMast.getLocNo().substring(2); |
| | | } |
| | | //String loc = (locMast.getRow1() - 4) + "-" + locMast.getBay1() + "-" + locMast.getLev1(); |
| | | ShuttleOutTask param = new ShuttleOutTask(); |
| | | param.setTaskNo(wrkMast.getWrkNo().toString()); |
| | | param.setSourceLocNo(loc); |
| | | param.setStaNo(wrkMast.getStaNo()); |
| | | //param.setPriority("11"); |
| | | String response = new HttpHandler.Builder() |
| | | .setUri(shuttleWcsUrl) |
| | | .setPath("/openapi/createOutTask") |
| | | .setJson(JSON.toJSONString(param)) |
| | | .build() |
| | | .doPost(); |
| | | JSONObject jsonObject = JSON.parseObject(response); |
| | | Integer code = jsonObject.getInteger("code"); |
| | | if (code.equals(200)) { |
| | | wrkMast.setWrkSts(105L); |
| | | wrkMast.setModiTime(new Date()); |
| | | if (!wrkMastService.updateById(wrkMast)) { |
| | | log.error("工作档[workNo={}]标记待处理失败", wrkMast.getWrkNo()); |
| | | } |
| | | } |
| | | } |
| | | } catch (Exception e) { |
| | | throw new CoolException("下发四向车wcs任务失败"); |
| | | } |
| | | |
| | | } |
| | | |
| | | // @Scheduled(cron = "0/3 * * * * ? ") //移库任务下发 |
| | | private void ShuttleMoveTaskSend() { |
| | | List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("wrk_sts", 11).eq("io_type", 11)); |
| | | if (wrkMasts.isEmpty()) { |
| | | return; |
| | | } |
| | | try { |
| | | for (WrkMast wrkMast : wrkMasts) { |
| | | LocMast destLoc = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", wrkMast.getLocNo())); |
| | | LocMast originLoc = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", wrkMast.getSourceLocNo())); |
| | | if (originLoc == null || destLoc == null) { |
| | | throw new CoolException("下发四向车wcs任务失败"); |
| | | } |
| | | String originLoc1 = (originLoc.getRow1() - 16) + "-" + originLoc.getBay1() + "-" + originLoc.getLev1(); |
| | | String destLoc1 = (destLoc.getRow1() - 16) + "-" + destLoc.getBay1() + "-" + destLoc.getLev1(); |
| | | ShuttleMoveTask param = new ShuttleMoveTask(); |
| | | param.setTaskNo(wrkMast.getWrkNo().toString()); |
| | | param.setOriginLoc(originLoc1); |
| | | param.setDestLoc(destLoc1); |
| | | param.setRecord(true); |
| | | param.setPriority("11"); |
| | | String response = new HttpHandler.Builder() |
| | | .setUri(shuttleWcsUrl) |
| | | .setPath("/openapi/createLadenMoveTakeTask") |
| | | .setJson(JSON.toJSONString(param)) |
| | | .build() |
| | | .doPost(); |
| | | JSONObject jsonObject = JSON.parseObject(response); |
| | | Integer code = jsonObject.getInteger("code"); |
| | | if (code.equals(200)) { |
| | | wrkMast.setWrkSts(105L); |
| | | if (!wrkMastService.updateById(wrkMast)) { |
| | | log.error("工作档[workNo={}]标记待处理失败", wrkMast.getWrkNo()); |
| | | } |
| | | } |
| | | } |
| | | } catch (Exception e) { |
| | | throw new CoolException("下发四向车wcs任务失败"); |
| | | } |
| | | |
| | | } |
| | | |
| | | //@Scheduled(cron = "0/3 * * * * ? ") //移库任务下发 |
| | | public void switchMode() { |
| | | procesMode(); |
| | | } |
| | | |
| | | //1:从四向库到堆垛机库 |
| | | //2:从堆垛机库到四向库 |
| | | private void procesMode() { |
| | | Config config = configService.selectConfigByCode("2.5F_Mode"); |
| | | if (Cools.isEmpty(config) || config.getValue().equals("false")) { |
| | | return; |
| | | } |
| | | List<WrkMast> wrkMastList1 = wrkMastService.selectList(new EntityWrapper<WrkMast>() |
| | | .in("io_type", 1, 10).eq("crn_no", 1).eq("sta_no", 1131)); |
| | | List<WrkMast> wrkMastList2 = wrkMastService.selectList(new EntityWrapper<WrkMast>() |
| | | .in("io_type", 101, 110).eq("crn_no", 7).eq("sta_no", 1031)); |
| | | if (wrkMastList1.isEmpty() && wrkMastList2.isEmpty()) { |
| | | List<WrkMast> wrkMastList3 = wrkMastService.selectList(new EntityWrapper<WrkMast>() |
| | | .in("io_type", 101, 110).eq("crn_no", 1).eq("sta_no", 1135)); |
| | | List<WrkMast> wrkMastList4 = wrkMastService.selectList(new EntityWrapper<WrkMast>() |
| | | .in("io_type", 1, 10).eq("crn_no", 7).eq("sta_no", 1032)); |
| | | if (!wrkMastList3.isEmpty() || !wrkMastList4.isEmpty()) { |
| | | if (!config.getValue().equalsIgnoreCase("2")) { |
| | | log.info("存在调拨任务去四向库,切换模式"); |
| | | config.setValue("2"); |
| | | configService.updateById(config); |
| | | } |
| | | } else { |
| | | if (!config.getValue().equalsIgnoreCase("0")) { |
| | | log.info("不存在任务"); |
| | | config.setValue("0"); |
| | | configService.updateById(config); |
| | | } |
| | | } |
| | | } else { |
| | | List<WrkMast> wrkMastList3 = wrkMastService.selectList(new EntityWrapper<WrkMast>() |
| | | .in("io_type", 101, 110).eq("crn_no", 1).eq("sta_no", 1135)); |
| | | List<WrkMast> wrkMastList4 = wrkMastService.selectList(new EntityWrapper<WrkMast>() |
| | | .in("io_type", 1, 10).eq("crn_no", 7).eq("sta_no", 1032)); |
| | | if (wrkMastList3.isEmpty() && wrkMastList4.isEmpty()) { |
| | | if (!config.getValue().equalsIgnoreCase("1")) { |
| | | log.info("存在调拨任务去duiduo,切换模式"); |
| | | config.setValue("1"); |
| | | configService.updateById(config); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | |
| | | @Autowired |
| | | private WorkService workService; |
| | | |
| | | @Transactional(isolation = Isolation.REPEATABLE_READ) |
| | | public ReturnT<String> start(Integer crnNo, Integer ioType) { |
| | | try { |
| | | //11 穿梭移单边 |
| | | if (ioType == 11) { |
| | | for (int bay = 1; bay < 27; bay++) { |
| | | for (int lev = 1; lev < 6; lev++) { |
| | | List<LocMast> locMasts = locMastService.selectLocMastShuttleMoveUnilateral(bay, lev, crnNo); |
| | | if (!Cools.isEmpty(locMasts) && locMasts.size() < 4) { |
| | | for (LocMast locMast : locMasts) { |
| | | LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_no", locMast.getLocNo())); |
| | | // StartupDto startupDto = commonService.getLocNo(crnNo == 1 ? 6 : 5, ioType, crnNo == 1 ? 917 : 918, locDetl.getMatnr(), locDetl.getBatch(),locDetl.getBrand(), null); |
| | | StartupDto startupDto = commonService.getLocNo(ioType, crnNo == 1 ? 917 : 918, locDetl.getMatnr(), locDetl.getBatch(), locDetl.getBrand(), null, false); |
| | | workService.locMove(locMast.getLocNo(), startupDto.getLocNo(), 9527L); |
| | | } |
| | | return SUCCESS; |
| | | } |
| | | } |
| | | } |
| | | } else {//11 单边移穿梭 |
| | | List<Map<String, Object>> list = locDetlService.selectLocDetlUnilateralMoveShuttleMap(crnNo);//111 单边移穿梭 |
| | | for (Map<String, Object> map : list) { |
| | | String matnr = map.getOrDefault("matnr", "").toString();//物料号 |
| | | String batch = map.getOrDefault("batch", "").toString();//批号 |
| | | String grade = map.getOrDefault("brand", "").toString();//等级 |
| | | int count = Integer.parseInt(map.get("count").toString());//单边库数量 |
| | | if (count < 4) { |
| | | continue; |
| | | } |
| | | |
| | | List<LocDetl> locDetlList = locDetlService.selectLocDetlUnilateralMoveShuttle(matnr, batch, grade, crnNo); |
| | | for (LocDetl locDetl : locDetlList) { |
| | | // StartupDto startupDto = commonService.getLocNo(crnNo == 1 ? 4 : 3, ioType, crnNo == 1 ? 901 : 932, locDetl.getMatnr(), locDetl.getBatch(), locDetl.getBrand(), null); |
| | | StartupDto startupDto = commonService.getLocNo(ioType, crnNo == 1 ? 901 : 932, locDetl.getMatnr(), locDetl.getBatch(), locDetl.getBrand(), null, false); |
| | | workService.locMove(locDetl.getLocNo(), startupDto.getLocNo(), 9527L); |
| | | } |
| | | } |
| | | return SUCCESS; |
| | | } |
| | | } catch (Exception e) { |
| | | log.error("自动移库出错,堆垛机号{},工作类型{}", crnNo, ioType); |
| | | } |
| | | return SUCCESS; |
| | | } |
| | | |
| | | } |
| | |
| | | List<OrderDetlPakin> orderDetlPakouts = orderDetlPakinService.selectList(new EntityWrapper<OrderDetlPakin>() |
| | | .eq("order_no", order.getOrderNo())); |
| | | moveBothPakin(order, orderDetlPakouts); |
| | | List<OrderDetlReport> orderNo = orderDetlReportService.selectList(new EntityWrapper<OrderDetlReport>().eq("order_no", order.getOrderNo())); |
| | | for (OrderDetlReport orderDetlReport : orderNo) { |
| | | OrderDetlReportLog log = new OrderDetlReportLog(); |
| | | log.sync(orderDetlReport); |
| | | orderDetlReportLogService.insert(log); |
| | | orderDetlReportService.deleteById(orderDetlReport); |
| | | } |
| | | |
| | | log.info("已完成单据移动至历史表成功 =====>" + order); |
| | | } |
| | | return SUCCESS; |
| | |
| | | List<OrderDetlPakout> orderDetlPakouts = orderDetlPakoutService.selectList(new EntityWrapper<OrderDetlPakout>() |
| | | .eq("order_no", order.getOrderNo())); |
| | | moveBothPakout(order, orderDetlPakouts); |
| | | List<OrderDetlReport> orderNo = orderDetlReportService.selectList(new EntityWrapper<OrderDetlReport>().eq("order_no", order.getOrderNo())); |
| | | for (OrderDetlReport orderDetlReport : orderNo) { |
| | | OrderDetlReportLog log = new OrderDetlReportLog(); |
| | | log.sync(orderDetlReport); |
| | | orderDetlReportLogService.insert(log); |
| | | orderDetlReportService.deleteById(orderDetlReport); |
| | | } |
| | | log.info("已完成单据移动至历史表成功 =====>" + order); |
| | | } |
| | | return SUCCESS; |
| | |
| | | package com.zy.asrs.task.handler; |
| | | |
| | | import com.zy.asrs.entity.OrderPakin; |
| | | import com.zy.asrs.entity.OrderPakout; |
| | | import com.zy.asrs.service.*; |
| | | import com.zy.asrs.task.AbstractHandler; |
| | | import com.zy.asrs.task.core.ReturnT; |
| | |
| | | return SUCCESS; |
| | | } |
| | | |
| | | @Transactional |
| | | public ReturnT<String> start(OrderPakout order) { |
| | | |
| | | return SUCCESS; |
| | | } |
| | | } |
| | |
| | | |
| | | import com.zy.asrs.task.AbstractHandler; |
| | | import com.zy.asrs.task.core.ReturnT; |
| | | import com.zy.system.timer.LoadingConfigTimer; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.jdbc.core.JdbcTemplate; |
| | | import org.springframework.stereotype.Service; |
| | |
| | | @Autowired |
| | | private JdbcTemplate jdbcTemplate; |
| | | |
| | | @Autowired |
| | | private LoadingConfigTimer loadingConfigTimer; |
| | | |
| | | @Transactional |
| | | public ReturnT<String> start() { |
| | | Integer logDeleteDays = loadingConfigTimer.getLogDeleteDays(); |
| | | if (logDeleteDays == -1) { |
| | | return SUCCESS; |
| | | } |
| | | try { |
| | | // 删除半年以上的历史档 |
| | | jdbcTemplate.update("delete from asr_wrk_detl_log where dateadd(day,360,appe_time) <= getdate();"); |
| | | jdbcTemplate.update("delete from asr_wrk_mast_log where dateadd(day,360,appe_time) <= getdate();"); |
| | | jdbcTemplate.update("delete from cust_wait_pakin_log where dateadd(day,360,appe_time) <= getdate();"); |
| | | jdbcTemplate.update("delete from asr_wrk_detl_log where dateadd(day," + logDeleteDays + ",appe_time) <= getdate();"); |
| | | jdbcTemplate.update("delete from asr_wrk_mast_log where dateadd(day," + logDeleteDays + ",appe_time) <= getdate();"); |
| | | jdbcTemplate.update("delete from cust_wait_pakin_log where dateadd(day," + logDeleteDays + ",appe_time) <= getdate();"); |
| | | |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | |
| | | LocMast locMast = locMastService.selectById(wrkMast.getLocNo()); |
| | | try { |
| | | if (null == locMast) { |
| | | // exceptionHandle("工作档[workNo={0}]库位号错误[locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo()); |
| | | TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); |
| | | return FAIL.setMsg("工作档[workNo=" + wrkMast.getWrkNo() + "]库位号错误[locNo=" + wrkMast.getLocNo() + "]"); |
| | | } |
| | |
| | | } |
| | | try { |
| | | if (!Cools.isEmpty(orderDetlPakout)) { |
| | | if (!orderDetlPakinService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), |
| | | orderDetlPakout.getBatch(), wrkDetl.getAnfme())) { |
| | | if (!orderDetlPakinService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), orderDetlPakout.getBatch(), wrkDetl.getAnfme())) { |
| | | // exceptionHandle("全板入库 ===>> 更新订单完成数量失败;[workNo={0}],[locNo={1}]", |
| | | // wrkMast.getWrkNo(), wrkMast.getLocNo()); |
| | | TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); |
| | |
| | | } |
| | | try { |
| | | if (!Cools.isEmpty(orderDetlPakout)) { |
| | | if (!orderDetlPakoutService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), |
| | | orderDetlPakout.getBatch(), wrkDetl.getAnfme())) { |
| | | if (!orderDetlPakoutService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), orderDetlPakout.getBatch(), wrkDetl.getAnfme())) { |
| | | // exceptionHandle("拣料入库 ===>> 更新订单完成数量失败;[workNo={0}],[locNo={1}]", |
| | | // wrkMast.getWrkNo(), wrkMast.getLocNo()); |
| | | TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); |
| | |
| | | } |
| | | try { |
| | | if (!Cools.isEmpty(orderDetlPakout)) { |
| | | if (!orderDetlPakinService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), |
| | | orderDetlPakout.getBatch(), wrkDetl.getAnfme())) { |
| | | if (!orderDetlPakinService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), orderDetlPakout.getBatch(), wrkDetl.getAnfme())) { |
| | | // exceptionHandle("全板入库 ===>> 更新订单完成数量失败;[workNo={0}],[locNo={1}]", |
| | | // wrkMast.getWrkNo(), wrkMast.getLocNo()); |
| | | TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); |
| | |
| | | break; |
| | | } |
| | | |
| | | // 更新入库站点的入库暂存数 |
| | | // int sourceStaNo = wrkMast.getSourceStaNo() == null ? 0 : wrkMast.getSourceStaNo(); |
| | | // if (sourceSite.get(sourceStaNo) != null) { |
| | | // BasDevpMapper basDevpMapper = SpringUtils.getBean(BasDevpMapper.class); |
| | | // BasDevp basDevp = basDevpMapper.selectById(sourceSite.get(sourceStaNo)); |
| | | // basDevp.setInQty(basDevp.getInQty() -1); |
| | | // basDevpMapper.updateById(basDevp); |
| | | // } |
| | | |
| | | // 修改工作主档状态 |
| | | wrkMast.setWrkSts(5L); |
| | |
| | | // 全板出库 |
| | | case 101: |
| | | List<WrkDetl> wrkDetls101 = wrkDetlService.selectList(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo())); |
| | | if (wrkMast.getStaNo() == 1135) { |
| | | //那需要生成一条四项库的入库任务 |
| | | workService.toSxk(wrkMast, wrkDetls101, (short) 1); |
| | | } else if (wrkMast.getStaNo() == 1031) { |
| | | //那需要生成一条四项库的入库任务 |
| | | workService.toCrn(wrkMast, wrkDetls101, (short) 1); |
| | | } else { |
| | | // 出库确认信号位 |
| | | // if (Cools.isEmpty(wrkMast.getInvWh()) || wrkMast.getInvWh().equals("N")) { |
| | | // return SUCCESS; |
| | | // } |
| | | // 根据工作号,查询工作明细档 |
| | | if (wrkDetls101.isEmpty()) { |
| | | // exceptionHandle("全板出库 ===>> 工作明细档为空;[workNo={0}]", wrkMast.getWrkNo()); |
| | | TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); |
| | | return FAIL.setMsg("全板出库 ===>> 工作明细档为空; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]"); |
| | | |
| | | |
| | | if (wrkDetls101.isEmpty()) { |
| | | TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); |
| | | return FAIL.setMsg("全板出库 ===>> 工作明细档为空; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]"); |
| | | } |
| | | for (WrkDetl wrkDetl : wrkDetls101) { |
| | | // 更新订单完成数量 |
| | | OrderDetlPakout orderDetlPakout = orderDetlPakoutService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch()); |
| | | if (orderDetlPakout == null) { |
| | | orderDetlPakout = orderDetlPakoutService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), null); |
| | | } |
| | | for (WrkDetl wrkDetl : wrkDetls101) { |
| | | // 更新订单完成数量 |
| | | OrderDetlPakout orderDetlPakout = orderDetlPakoutService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch()); |
| | | if (orderDetlPakout == null) { |
| | | orderDetlPakout = orderDetlPakoutService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), null); |
| | | } |
| | | try { |
| | | if (!Cools.isEmpty(orderDetlPakout)) { |
| | | if (!orderDetlPakoutService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), |
| | | orderDetlPakout.getBatch(), wrkDetl.getAnfme())) { |
| | | // exceptionHandle("全板出库 ===>> 更新订单完成数量失败;[workNo={0}],[locNo={1}]", |
| | | // wrkMast.getWrkNo(), wrkMast.getLocNo()); |
| | | TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); |
| | | return FAIL.setMsg("全板出库 ===>> 更新订单完成数量失败; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]"); |
| | | } |
| | | try { |
| | | if (!Cools.isEmpty(orderDetlPakout)) { |
| | | if (!orderDetlPakoutService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), orderDetlPakout.getBatch(), wrkDetl.getAnfme())) { |
| | | TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); |
| | | return FAIL.setMsg("全板出库 ===>> 更新订单完成数量失败; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]"); |
| | | } |
| | | } catch (Exception ignore) { |
| | | } |
| | | } catch (Exception ignore) { |
| | | } |
| | | // 删除工作档源库位的库存明细 |
| | | if (!locDetlService.delete(new EntityWrapper<LocDetl>().eq("loc_no", wrkMast.getSourceLocNo()))) { |
| | | // exceptionHandle("全板出库 ===>> 删除库存明细失败;[workNo={0}],[sourceLocNo={1}]", wrkMast.getWrkNo(), wrkMast.getSourceLocNo()); |
| | | } |
| | | // 删除工作档源库位的库存明细 |
| | | if (!locDetlService.delete(new EntityWrapper<LocDetl>().eq("loc_no", wrkMast.getSourceLocNo()))) { |
| | | TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); |
| | | return FAIL.setMsg("全板出库 ===>> 删除库存明细失败; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]"); |
| | | } |
| | | // 修改源库位状态 R ===>> O |
| | | if (locMast.getLocSts().equals("R")) { |
| | | locMast.setLocSts("O"); |
| | | locMast.setBarcode(""); |
| | | locMast.setModiTime(now); |
| | | locMast.setIoTime(now); |
| | | if (!locMastService.updateById(locMast)) { |
| | | TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); |
| | | return FAIL.setMsg("全板出库 ===>> 删除库存明细失败; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]"); |
| | | } |
| | | // 修改源库位状态 R ===>> O |
| | | if (locMast.getLocSts().equals("R")) { |
| | | locMast.setLocSts("O"); |
| | | locMast.setBarcode(""); |
| | | locMast.setModiTime(now); |
| | | locMast.setIoTime(now); |
| | | if (!locMastService.updateById(locMast)) { |
| | | // exceptionHandle("全板出库 ===>> 修改源库位状态失败;[workNo={0}],[sourceLocNo={1}]", wrkMast.getWrkNo(), wrkMast.getSourceLocNo()); |
| | | TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); |
| | | return FAIL.setMsg("全板出库 ===>> 修改源库位状态失败; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]"); |
| | | } |
| | | return FAIL.setMsg("全板出库 ===>> 修改源库位状态失败; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]"); |
| | | } |
| | | } |
| | | break; |
| | |
| | | locMast.setModiTime(now); |
| | | locMast.setIoTime(now); |
| | | if (!locMastService.updateById(locMast)) { |
| | | // exceptionHandle("空板出库 ===>> 修改源库位状态失败;[workNo={0}],[sourceLocNo={1}]", wrkMast.getWrkNo(), wrkMast.getSourceLocNo()); |
| | | TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); |
| | | return FAIL.setMsg("空板出库 ===>> 修改源库位状态失败; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]"); |
| | | } |
| | |
| | | wrkMast.setWrkSts(15L); |
| | | wrkMast.setModiTime(now); |
| | | if (!wrkMastService.updateById(wrkMast)) { |
| | | // exceptionHandle("更新出库完成状态失败;[workNo={0}]", wrkMast.getWrkNo()); |
| | | TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); |
| | | return FAIL.setMsg("更新出库完成状态失败; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]"); |
| | | } |
| | |
| | | * token数量限制 |
| | | */ |
| | | private Integer tokenNumber = 1; |
| | | /** |
| | | * 删除天数 |
| | | */ |
| | | private Integer logDeleteDays = 360; |
| | | |
| | | |
| | | |
| | | @Autowired |
| | |
| | | public void timer() { |
| | | tokenExpire = configService.getVal("tokenExpire", Integer.class, tokenExpire); |
| | | tokenNumber = configService.getVal("tokenNumber", Integer.class, tokenNumber); |
| | | logDeleteDays = configService.getVal("logDeleteDays", Integer.class, logDeleteDays); |
| | | |
| | | } |
| | | |
| | |
| | | // ,{field: 'locSts', align: 'center',title: ''} |
| | | // ,{field: 'sheetNo', align: 'center',title: ''} |
| | | ,{field: 'crnNo', align: 'center',title: '堆垛机号', hide:false} |
| | | ,{field: 'locType1$', align: 'center',title: '高低类型', hide:false} |
| | | ,{field: 'row1', align: 'center',title: '排', sort:true, hide:false} |
| | | ,{field: 'bay1', align: 'center',title: '列', sort:true, hide:false} |
| | | ,{field: 'lev1', align: 'center',title: '层', sort:true, hide:false} |
| | |
| | | // ,{field: 'barcode', align: 'center',title: ''} |
| | | // ,{field: 'PdcType', align: 'center',title: ''} |
| | | // ,{field: 'ctnNo', align: 'center',title: ''} |
| | | ,{field: 'locType1$', align: 'center',title: '高低类型', hide:true} |
| | | |
| | | ,{field: 'locType2$', align: 'center',title: '宽窄类型', hide:true} |
| | | ,{field: 'locType3$', align: 'center',title: '轻重类型', hide:true} |
| | | |
| | |
| | | url: baseUrl+"/docType/list/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | data: { |
| | | pakin: 1, |
| | | limit: 9999 |
| | | }, |
| | | method: 'POST', |
| | |
| | | // 渲染表格 |
| | | var insTb = table.render({ |
| | | elem: '#order', |
| | | url: baseUrl+'/order/head/page/auth', |
| | | url: baseUrl+'/pakin/order/head/page/auth', |
| | | headers: {token: localStorage.getItem('token')}, |
| | | page: true, |
| | | cellMinWidth: 100, |
| | |
| | | table.render({ |
| | | elem: '#lookSSXMTable', |
| | | headers: {token: localStorage.getItem('token')}, |
| | | url: baseUrl+'/orderDetl/list/auth', |
| | | url: baseUrl+'/pakin/orderDetl/list/auth', |
| | | where: { |
| | | order_id: data.id |
| | | }, |
| | |
| | | // 监听行工具事件 |
| | | table.on('tool(lookSSXMTable)', function(obj) { |
| | | $.ajax({ |
| | | url: baseUrl+"/orderDetl/getPrintDetl/" + obj.data.id, |
| | | url: baseUrl+"/pakin/orderDetl/getPrintDetl/" + obj.data.id, |
| | | headers: {'token': localStorage.getItem('token'),'Content-Type' :'application/json'}, |
| | | method: 'GET', |
| | | async: false, |
| | |
| | | } |
| | | layer.load(2); |
| | | $.ajax({ |
| | | url: baseUrl+"/order/form/" + (isExpAdd?"add":"modify") + "/auth", |
| | | url: baseUrl+"/pakin/order/form/" + (isExpAdd?"add":"modify") + "/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | data: JSON.stringify({ |
| | | orderId: Number(data.field.id), |
| | |
| | | }; |
| | | if (!isExpAdd) { |
| | | $.ajax({ |
| | | url: baseUrl+"/order/detl/all/auth?orderId=" + expTpe.id, |
| | | url: baseUrl+"/pakin/order/detl/all/auth?orderId=" + expTpe.id, |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | method: 'GET', |
| | | async: false, |
| | |
| | | layer.close(i); |
| | | layer.load(2); |
| | | $.ajax({ |
| | | url: baseUrl+"/order/delete/auth", |
| | | url: baseUrl+"/pakin/order/delete/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | data: { |
| | | orderId: orderId |
| | |
| | | console.log(orderId); |
| | | console.log(settle); |
| | | $.ajax({ |
| | | url: baseUrl+"/order/update/auth", |
| | | url: baseUrl+"/pakin/order/update/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | data: { |
| | | id: orderId, |
| | |
| | | function showWrkTrace(orderId) { |
| | | let loadIndex = layer.msg('请求中...', {icon: 16, shade: 0.01, time: false}); |
| | | $.ajax({ |
| | | url: baseUrl+"/order/wrk/trace/auth", |
| | | url: baseUrl+"/pakin/order/wrk/trace/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | data: { |
| | | orderId: orderId |
| | |
| | | url: baseUrl+"/docType/list/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | data: { |
| | | pakout: 1, |
| | | limit: 9999 |
| | | }, |
| | | method: 'POST', |
| | |
| | | // 渲染表格 |
| | | var insTb = table.render({ |
| | | elem: '#order', |
| | | url: baseUrl+'/order/head/page/auth', |
| | | url: baseUrl+'/pakout/order/head/page/auth', |
| | | headers: {token: localStorage.getItem('token')}, |
| | | page: true, |
| | | cellMinWidth: 100, |
| | |
| | | table.render({ |
| | | elem: '#lookSSXMTable', |
| | | headers: {token: localStorage.getItem('token')}, |
| | | url: baseUrl+'/orderDetl/list/auth', |
| | | url: baseUrl+'/pakout/orderDetl/list/auth', |
| | | where: { |
| | | order_id: data.id |
| | | }, |
| | |
| | | // 监听行工具事件 |
| | | table.on('tool(lookSSXMTable)', function(obj) { |
| | | $.ajax({ |
| | | url: baseUrl+"/orderDetl/getPrintDetl/" + obj.data.id, |
| | | url: baseUrl+"/pakout/orderDetl/getPrintDetl/" + obj.data.id, |
| | | headers: {'token': localStorage.getItem('token'),'Content-Type' :'application/json'}, |
| | | method: 'GET', |
| | | async: false, |
| | |
| | | } |
| | | layer.load(2); |
| | | $.ajax({ |
| | | url: baseUrl+"/order/form/" + (isExpAdd?"add":"modify") + "/auth", |
| | | url: baseUrl+"/pakout/order/form/" + (isExpAdd?"add":"modify") + "/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | data: JSON.stringify({ |
| | | orderId: Number(data.field.id), |
| | |
| | | }; |
| | | if (!isExpAdd) { |
| | | $.ajax({ |
| | | url: baseUrl+"/order/detl/all/auth?orderId=" + expTpe.id, |
| | | url: baseUrl+"/pakout/order/detl/all/auth?orderId=" + expTpe.id, |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | method: 'GET', |
| | | async: false, |
| | |
| | | layer.close(i); |
| | | layer.load(2); |
| | | $.ajax({ |
| | | url: baseUrl+"/order/delete/auth", |
| | | url: baseUrl+"/pakout/order/delete/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | data: { |
| | | orderId: orderId |
| | |
| | | console.log(orderId); |
| | | console.log(settle); |
| | | $.ajax({ |
| | | url: baseUrl+"/order/update/auth", |
| | | url: baseUrl+"/pakout/order/update/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | data: { |
| | | id: orderId, |
| | |
| | | function showWrkTrace(orderId) { |
| | | let loadIndex = layer.msg('请求中...', {icon: 16, shade: 0.01, time: false}); |
| | | $.ajax({ |
| | | url: baseUrl+"/order/wrk/trace/auth", |
| | | url: baseUrl+"/pakout/order/wrk/trace/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | data: { |
| | | orderId: orderId |
| | |
| | | insTb2 = table.render({ |
| | | elem: '#orderDetlTable', |
| | | headers: {token: localStorage.getItem('token')}, |
| | | url: baseUrl+'/orderDetl/pakout/list/auth', |
| | | url: baseUrl+'/pakout/orderDetl/pakout/list/auth', |
| | | page: true, |
| | | limit: 15, |
| | | limits: [15, 30, 50, 100, 200, 500], |
| | |
| | | // 渲染表格 |
| | | var insTb = table.render({ |
| | | elem: '#order', |
| | | url: baseUrl+'/order/head/page/auth', |
| | | url: baseUrl+'/report/order/head/page/auth', |
| | | headers: {token: localStorage.getItem('token')}, |
| | | page: true, |
| | | cellMinWidth: 100, |
| | |
| | | <script type="text/javascript" src="../../static/js/echarts/echarts.min.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/order/orderPakout.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/order/orderPakout.js?v=1" charset="utf-8"></script> |
| | | |
| | | <script type="text/template" id="docTypeTpl"> |
| | | <option value="">选择类型</option> |
| | |
| | | <div class="layui-input-inline"> |
| | | <select name="settle"> |
| | | <option value="">选择状态</option> |
| | | <option value="1">待处理</option> |
| | | <option value="2">作业中</option> |
| | | <option value="4">已完成</option> |
| | | <option value="4">待上报</option> |
| | | <option value="5">上报失败</option> |
| | | <option value="6">上报完成</option> |
| | | </select> |
| | | </div> |
| | |
| | | <div id="box" style="display: block"></div> |
| | | <!-- 表格操作列 --> |
| | | <script type="text/html" id="operate"> |
| | | {{# if (d.settle == 0 || d.settle == 1) { }} |
| | | <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="edit">修改</a> |
| | | <a class="layui-btn layui-btn-danger layui-btn-xs btn-delete" lay-event="del">删除</a> |
| | | {{# } }} |
| | | {{# if (d.settle == 2) { }} |
| | | <a class="layui-btn layui-btn-primary layui-border-blue layui-btn-xs btn-complete" lay-event="complete">完结</a> |
| | | {{# if (d.settle == 5 ) { }} |
| | | <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="edit">重新上报</a> |
| | | |
| | | {{# } }} |
| | | </script> |
| | | <!-- 表格操作列 --> |
| | |
| | | <script type="text/javascript" src="../../static/js/echarts/echarts.min.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/order/orderPakin.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/orderReport/orderReport.js" charset="utf-8"></script> |
| | | |
| | | <script type="text/template" id="docTypeTpl"> |
| | | <option value="">选择类型</option> |