| | |
| | | import zy.cloud.wms.common.service.erp.entity.*; |
| | | import zy.cloud.wms.common.utils.VersionUtils; |
| | | import zy.cloud.wms.manager.entity.*; |
| | | import zy.cloud.wms.manager.mapper.MatCodeMapper; |
| | | import zy.cloud.wms.manager.mapper.TagMapper; |
| | | import zy.cloud.wms.manager.service.*; |
| | | import zy.cloud.wms.manager.utils.HttpHandler; |
| | |
| | | public static final String GET_BASIS = "cM/basis/getBasis"; |
| | | public static final String UPLOAD_BILL = "cM/basis/uploadBill"; |
| | | public static final String UPLOAD_STOCK = "cM/basis/uploadStock"; |
| | | public static final String GET_STOCK = "cM/ptype/GetStock"; |
| | | public static final String OVER_BILL = "cM/basis/OverBill"; |
| | | public static final String UPLOAD_CANCEL_RESULT = "cM/basis/cancelOrders"; |
| | | |
| | |
| | | private NodeService nodeService; |
| | | @Autowired |
| | | private DocLogService docLogService; |
| | | @Autowired |
| | | private RequestLogService requestLogService; |
| | | @Autowired |
| | | private MatCodeMapper matCodeMapper; |
| | | |
| | | |
| | | /** |
| | | * 商品下载 |
| | |
| | | .build() |
| | | .doPost(); |
| | | if (!Cools.isEmpty(response)) { |
| | | log.info(response); |
| | | Date now = new Date(); |
| | | Result result = JSON.parseObject(response, Result.class); |
| | | if (result.getCode() != 1) { |
| | | return; |
| | | } |
| | | List<GetBasisResult> list = JSON.parseArray(result.getData(), GetBasisResult.class); |
| | | Tag first = null; |
| | | for (GetBasisResult data : list) { |
| | | Mat mat = matService.selectByMatnr(data.getUserCode()); |
| | | String modifyDate = data.getModifyDate(); |
| | | Date updateTime = null; |
| | | if (!Cools.isEmpty(modifyDate)) { |
| | | updateTime = DateUtils.convert(data.getModifyDate()); |
| | | } |
| | | |
| | | // 分类 |
| | | Tag second = tagService.selectOne(new EntityWrapper<Tag>().eq("name", data.getYjfl()).eq("level", 2)); |
| | | if (second == null) { |
| | | if (first == null) { |
| | | first = tagService.selectOne(new EntityWrapper<Tag>().eq("level", 1)); |
| | | if (first == null) { |
| | | throw new CoolException("全部分类出错"); |
| | | } |
| | | } |
| | | NodeUtils nodeUtils = new NodeUtils(); |
| | | nodeUtils.executePath(first.getId()); |
| | | second = new Tag( |
| | | null, // 编号 |
| | | data.getYjfl(), // 名称 |
| | | first.getId(), // 父级 |
| | | first.getName(), // 父级名称 |
| | | nodeUtils.path.toString(), // 关联路径 |
| | | nodeUtils.pathName.toString(), // 关联路径名 |
| | | 0, // 类型 |
| | | null, // 负责人 |
| | | null, // 图片 |
| | | null, // 简要描述 |
| | | null, // 数量 |
| | | 2, // 等级 |
| | | null, // 排序 |
| | | 1, // 状态 |
| | | now, // 添加时间 |
| | | null, // 添加人员 |
| | | now, // 修改时间 |
| | | null, // 修改人员 |
| | | null // 备注 |
| | | ); |
| | | if (tagMapper.insert(second) == 0) { |
| | | throw new CoolException("插入分类失败"); |
| | | } |
| | | } |
| | | |
| | | Tag third = tagService.selectOne(new EntityWrapper<Tag>().eq("level", 3).eq("name", data.getEjfl()).eq("parent_name", data.getYjfl())); |
| | | if (third == null) { |
| | | NodeUtils nodeUtils = new NodeUtils(); |
| | | nodeUtils.executePath(second.getId()); |
| | | third = new Tag( |
| | | null, // 编号 |
| | | data.getEjfl(), // 名称 |
| | | second.getId(), // 父级 |
| | | second.getName(), // 父级名称 |
| | | nodeUtils.path.toString(), // 关联路径 |
| | | nodeUtils.pathName.toString(), // 关联路径名 |
| | | 0, // 类型 |
| | | null, // 负责人 |
| | | null, // 图片 |
| | | null, // 简要描述 |
| | | null, // 数量 |
| | | 3, // 等级 |
| | | null, // 排序 |
| | | 1, // 状态 |
| | | now, // 添加时间 |
| | | null, // 添加人员 |
| | | now, // 修改时间 |
| | | null, // 修改人员 |
| | | null // 备注 |
| | | ); |
| | | if (tagMapper.insert(third) == 0) { |
| | | throw new CoolException("插入分类失败"); |
| | | } |
| | | } |
| | | |
| | | if (null == mat) { |
| | | // 平仓 |
| | | mat = new Mat( |
| | | String.valueOf(data.getRec()), // 编号 |
| | | null, // 所属区域 |
| | | third.getId(), // 所属归类 |
| | | data.getUserCode(), // 商品编号 |
| | | data.getFullName(), // 商品名称 |
| | | null, // 名称 |
| | | data.getStandard(), // 规格 |
| | | null, // 型号 |
| | | null, // 批号 |
| | | data.getUnit3(), // 单位 |
| | | data.getBarcode(), // 条码 |
| | | null, // 单据类型 |
| | | null, // 单据编号 |
| | | null, // 客户名称 |
| | | null, // 品项数 |
| | | null, // 库存余量 |
| | | null, // 重量 |
| | | 1, // |
| | | null, // 添加人员 |
| | | now, // 添加时间 |
| | | null, // 修改人员 |
| | | updateTime, // 修改时间 |
| | | null // 备注 |
| | | ); |
| | | |
| | | matService.insert(mat); |
| | | // 立库 |
| | | |
| | | } else { |
| | | // 平仓 |
| | | mat.setUuid(String.valueOf(data.getRec())); |
| | | mat.setMatnr(data.getUserCode()); |
| | | mat.setMaktx(data.getFullName()); |
| | | mat.setSpecs(data.getStandard()); |
| | | mat.setUpdateTime(updateTime); |
| | | mat.setBarcode(data.getBarcode()); |
| | | mat.setUnit(data.getUnit3()); |
| | | matService.updateById(mat); |
| | | // 立库 |
| | | |
| | | } |
| | | log.info("====>> 更新物料:{}", data.getUserCode()); |
| | | } |
| | | |
| | | } |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | throw new RuntimeException(e.getMessage()); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 商品下载 |
| | | */ |
| | | @Scheduled(cron = "0 */2 * * * ? ") |
| | | public void updateMatExecute(){ |
| | | try { |
| | | Map<String, Object> param = new HashMap<>(); |
| | | param.put("Flag", 6); |
| | | String response = new HttpHandler.Builder() |
| | | .setUri(URI) |
| | | .setPath(GET_BASIS) |
| | | .setJson(JSON.toJSONString(param)) |
| | | .build() |
| | | .doPost(); |
| | | if (!Cools.isEmpty(response)) { |
| | | log.info("商品数据更新:"); |
| | | log.info(response); |
| | | Date now = new Date(); |
| | | Result result = JSON.parseObject(response, Result.class); |
| | |
| | | updateTime, // 修改时间 |
| | | null // 备注 |
| | | ); |
| | | matService.insert(mat); |
| | | if (matService.insert(mat)) { |
| | | MatCode matCode = mat.beMatCode(); |
| | | matCodeMapper.insert(matCode); |
| | | } |
| | | |
| | | } else { |
| | | mat.setUuid(String.valueOf(data.getRec())); |
| | | mat.setMatnr(data.getUserCode()); |
| | |
| | | mat.setUpdateTime(updateTime); |
| | | mat.setBarcode(data.getBarcode()); |
| | | mat.setUnit(data.getUnit3()); |
| | | matService.updateById(mat); |
| | | } |
| | | log.info("====>> 更新物料:{}", data.getUserCode()); |
| | | } |
| | | |
| | | } |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | throw new RuntimeException(e.getMessage()); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 商品下载 |
| | | */ |
| | | @Scheduled(cron = "0 */2 * * * ? ") |
| | | public void updateMatExecute(){ |
| | | try { |
| | | Map<String, Object> param = new HashMap<>(); |
| | | param.put("Flag", 6); |
| | | String response = new HttpHandler.Builder() |
| | | .setUri(URI) |
| | | .setPath(GET_BASIS) |
| | | .setJson(JSON.toJSONString(param)) |
| | | .build() |
| | | .doPost(); |
| | | if (!Cools.isEmpty(response)) { |
| | | // log.info(response); |
| | | Date now = new Date(); |
| | | Result result = JSON.parseObject(response, Result.class); |
| | | if (result.getCode() != 1) { |
| | | return; |
| | | } |
| | | List<GetBasisResult> list = JSON.parseArray(result.getData(), GetBasisResult.class); |
| | | Tag first = null; |
| | | for (GetBasisResult data : list) { |
| | | Mat mat = matService.selectByMatnr(data.getUserCode()); |
| | | String modifyDate = data.getModifyDate(); |
| | | Date updateTime = null; |
| | | if (!Cools.isEmpty(modifyDate)) { |
| | | updateTime = DateUtils.convert(data.getModifyDate()); |
| | | } |
| | | |
| | | // 分类 |
| | | Tag second = tagService.selectOne(new EntityWrapper<Tag>().eq("name", data.getYjfl()).eq("level", 2)); |
| | | if (second == null) { |
| | | if (first == null) { |
| | | first = tagService.selectOne(new EntityWrapper<Tag>().eq("level", 1)); |
| | | if (first == null) { |
| | | throw new CoolException("全部分类出错"); |
| | | } |
| | | if (matService.updateById(mat)) { |
| | | MatCode matCode = mat.beMatCode(); |
| | | matCodeMapper.updateById(matCode); |
| | | } |
| | | NodeUtils nodeUtils = new NodeUtils(); |
| | | nodeUtils.executePath(first.getId()); |
| | | second = new Tag( |
| | | null, // 编号 |
| | | data.getYjfl(), // 名称 |
| | | first.getId(), // 父级 |
| | | first.getName(), // 父级名称 |
| | | nodeUtils.path.toString(), // 关联路径 |
| | | nodeUtils.pathName.toString(), // 关联路径名 |
| | | 0, // 类型 |
| | | null, // 负责人 |
| | | null, // 图片 |
| | | null, // 简要描述 |
| | | null, // 数量 |
| | | 2, // 等级 |
| | | null, // 排序 |
| | | 1, // 状态 |
| | | now, // 添加时间 |
| | | null, // 添加人员 |
| | | now, // 修改时间 |
| | | null, // 修改人员 |
| | | null // 备注 |
| | | ); |
| | | if (tagMapper.insert(second) == 0) { |
| | | throw new CoolException("插入分类失败"); |
| | | } |
| | | } |
| | | |
| | | Tag third = tagService.selectOne(new EntityWrapper<Tag>().eq("level", 3).eq("name", data.getEjfl()).eq("parent_name", data.getYjfl())); |
| | | if (third == null) { |
| | | NodeUtils nodeUtils = new NodeUtils(); |
| | | nodeUtils.executePath(second.getId()); |
| | | third = new Tag( |
| | | null, // 编号 |
| | | data.getEjfl(), // 名称 |
| | | second.getId(), // 父级 |
| | | second.getName(), // 父级名称 |
| | | nodeUtils.path.toString(), // 关联路径 |
| | | nodeUtils.pathName.toString(), // 关联路径名 |
| | | 0, // 类型 |
| | | null, // 负责人 |
| | | null, // 图片 |
| | | null, // 简要描述 |
| | | null, // 数量 |
| | | 3, // 等级 |
| | | null, // 排序 |
| | | 1, // 状态 |
| | | now, // 添加时间 |
| | | null, // 添加人员 |
| | | now, // 修改时间 |
| | | null, // 修改人员 |
| | | null // 备注 |
| | | ); |
| | | if (tagMapper.insert(third) == 0) { |
| | | throw new CoolException("插入分类失败"); |
| | | } |
| | | } |
| | | |
| | | if (null == mat) { |
| | | mat = new Mat( |
| | | String.valueOf(data.getRec()), // 编号 |
| | | null, // 所属区域 |
| | | third.getId(), // 所属归类 |
| | | data.getUserCode(), // 商品编号 |
| | | data.getFullName(), // 商品名称 |
| | | null, // 名称 |
| | | data.getStandard(), // 规格 |
| | | null, // 型号 |
| | | null, // 批号 |
| | | data.getUnit3(), // 单位 |
| | | data.getBarcode(), // 条码 |
| | | null, // 单据类型 |
| | | null, // 单据编号 |
| | | null, // 客户名称 |
| | | null, // 品项数 |
| | | null, // 库存余量 |
| | | null, // 重量 |
| | | 1, // |
| | | null, // 添加人员 |
| | | now, // 添加时间 |
| | | null, // 修改人员 |
| | | updateTime, // 修改时间 |
| | | null // 备注 |
| | | ); |
| | | matService.insert(mat); |
| | | } else { |
| | | mat.setUuid(String.valueOf(data.getRec())); |
| | | mat.setMatnr(data.getUserCode()); |
| | | mat.setMaktx(data.getFullName()); |
| | | mat.setSpecs(data.getStandard()); |
| | | mat.setUpdateTime(updateTime); |
| | | mat.setBarcode(data.getBarcode()); |
| | | mat.setUnit(data.getUnit3()); |
| | | matService.updateById(mat); |
| | | } |
| | | log.info("====>> 更新物料:{}", data.getUserCode()); |
| | | } |
| | |
| | | docLogService.insert(docLog); |
| | | } |
| | | |
| | | RequestLog logInfo = new RequestLog(); |
| | | logInfo.setName("单据上传,单据类型" + 11); |
| | | logInfo.setRequest(JSON.toJSONString(getOrderResult0)); // 入参 |
| | | logInfo.setResponse(response); // 出参 |
| | | logInfo.setCreateTime(new Date()); |
| | | requestLogService.insert(logInfo); |
| | | |
| | | } catch (Exception e) { |
| | | log.error(e.getMessage()); |
| | | } |
| | |
| | | if (!Cools.isEmpty(response)) { |
| | | log.warn(response); |
| | | Result result = JSON.parseObject(response, Result.class); |
| | | if (result.getCode() != 1) { |
| | | if (result.getCode() != 1 && !result.getMsg().equals("单据已经审核完成或删除,不能审核。")) { |
| | | continue; |
| | | } |
| | | if (!orderService.updateSettle(order.getOrderNo(), 6L)) { |
| | | throw new CoolException("修改订单状态失败"); |
| | | } |
| | | // // 转历史档 |
| | | // int save = custOrderMapper.saveLog(getOrderResult0.getNumber()); |
| | | // if (save > 0) { |
| | | // if (custOrderMapper.delete(new EntityWrapper<CustOrder>().eq("number", getOrderResult0.getNumber())) == 0) { |
| | | // throw new CoolException("删除销售订单失败"); |
| | | // } |
| | | // log.info("{}销售订单拣货结束", getOrderResult0.getNumber()); |
| | | // } |
| | | |
| | | } |
| | | |
| | | } |
| | |
| | | .doPost(); |
| | | |
| | | try { |
| | | docLogService.insertBatch(docLogs); |
| | | for (DocLog docLog : docLogs) { |
| | | docLogService.insert(docLog); |
| | | } |
| | | |
| | | RequestLog logInfo = new RequestLog(); |
| | | logInfo.setName("单据上传,单据类型" + 6); |
| | | logInfo.setRequest(JSON.toJSONString(getOrderResult0)); // 入参 |
| | | logInfo.setResponse(response); // 出参 |
| | | logInfo.setCreateTime(new Date()); |
| | | requestLogService.insert(logInfo); |
| | | } catch (Exception e) { |
| | | log.error(e.getMessage()); |
| | | } |