base-server/src/main/java/com/yuanchu/mom/service/impl/TechnologyTemplateServiceImpl.java
@@ -34,6 +34,9 @@ TechnicalModelMapper technicalModelMapper; @Resource SelfcheckModelMapper selfcheckModelMapper; @Resource RecordModelMapper recordModelMapper; @Resource @@ -117,6 +120,8 @@ technologyTemplateMapper.updateById(technologyTemplate); //删除技术指标维护表 technicalModelMapper.delTeMoByTechId(id); //删除自检项目维护表 selfcheckModelMapper.delSelfByTechId(id); //删除记录内容维护表 recordModelMapper.delRecordByTechId(id); //删除物料清单维护表 @@ -131,6 +136,8 @@ technologyTemplateMapper.delAllTech(ids); //批量删除指标维护表 technicalModelMapper.delAllByTechId(ids); //批量删除自检项目维护表 selfcheckModelMapper.delAllByTechId(ids); //批量删除记录内容维护表 recordModelMapper.delAllByTechId(ids); //批量删除物料清单维护表 inspect-server/src/main/java/com/yuanchu/mom/service/impl/RawInspectServiceImpl.java
@@ -140,7 +140,7 @@ .build(); inspectUnacceptedMapper.insert(rawUnaccepted); } return "上报成功!"; return rawInspect.getJudgeState().toString(); } inventory-server/src/main/java/com/yuanchu/mom/Task/DataPullTask.java
@@ -46,6 +46,8 @@ sale.setDelTime(DateUtil.parseDate(orde.get("wantedDeliveryDate").toString()));//交货日期 sale.setCreateTime(DateUtil.parseDate(orde.get("orderDate").toString()));//下单日期 sale.setNote(String.valueOf(orde.get("comment")));//备注 sale.setOrderId((Integer) orde.get("id")); sale.setOrderType(orde.get("orderClassification").toString()); return sale; }).collect(Collectors.toList()); //去重 inventory-server/src/main/java/com/yuanchu/mom/Task/SyncOrder.java
@@ -17,28 +17,32 @@ */ public class SyncOrder { private static final String TOKEN_URL="http://192.168.18.16:9999/auth/oauth/token"; private static final String TOKEN_URL = "http://192.168.18.16:9999/auth/oauth/token"; private static final String GET_ORDER_MAIN_URL="http://192.168.18.16:9999/order/otcService/getOrderInfoForHyxtMes"; private static final String GET_ORDER_MAIN_URL = "http://192.168.18.16:9999/order/otcService/getOrderInfoForHyxtMes"; private static final String GET_ORDER_INNER_URL="http://192.168.18.16:9999/order/otcService/getOrderLineForHyxtMes"; private static final String GET_ORDER_INNER_URL = "http://192.168.18.16:9999/order/otcService/getOrderLineForHyxtMes"; private static final Map<String, String> GET_TOKEN_HEADER=new HashMap<>(2); private static final String GET_ATTACHMENT_BY_ORDERID = "http://192.168.18.16:9999/order/otcService/getAttachmentByOrderId/"; private static final Map<String, Object>USER_INFO=new HashMap<>(4); private static final String DOWN_LOAD = "http://192.168.18.16:9999/order/otcService/download/"; private static final Map<String, String> GET_TOKEN_HEADER = new HashMap<>(2); private static final Map<String, Object> USER_INFO = new HashMap<>(4); static { GET_TOKEN_HEADER.put("Authorization","Basic cGlnOnBpZw=="); GET_TOKEN_HEADER.put("Content-Type","application/x-www-form-urlencoded"); GET_TOKEN_HEADER.put("Authorization", "Basic cGlnOnBpZw=="); GET_TOKEN_HEADER.put("Content-Type", "application/x-www-form-urlencoded"); USER_INFO.put("username","external_interface_hyxt_mes"); USER_INFO.put("password","uCc+u3iP83WhO2dAU+5HUkCgfINnKfrHXMT/lwI/1f0="); USER_INFO.put("scope","server"); USER_INFO.put("grant_type","password"); USER_INFO.put("username", "external_interface_hyxt_mes"); USER_INFO.put("password", "uCc+u3iP83WhO2dAU+5HUkCgfINnKfrHXMT/lwI/1f0="); USER_INFO.put("scope", "server"); USER_INFO.put("grant_type", "password"); } private static String getToken(){ private static String getToken() { String body = HttpRequest.post(TOKEN_URL) .headerMap(GET_TOKEN_HEADER, true) .form(USER_INFO)//表单内容 @@ -47,26 +51,41 @@ return String.valueOf(JsonUtil.jsonToPojo(body, Map.class).get("access_token")); } public static List<Map<String, Object>> getMainOrder(String time){ Map<String,Object> orderCondition = new HashMap<String,Object>(); public static List<Map<String, Object>> getMainOrder(String time) { Map<String, Object> orderCondition = new HashMap<String, Object>(); orderCondition.put("selectTime", time); String result = HttpRequest.get(GET_ORDER_MAIN_URL) .header("Authorization", "Bearer " + getToken()) .form(orderCondition) .execute().body(); List<Map<String, Object>>list = JsonUtil.jsonToPojo(JsonUtil.jsonToString(JsonUtil.jsonToPojo(result,Result.class).getData()),List.class); return list.stream().filter(l-> Objects.equals(l.get("status"),"已下达")).collect(Collectors.toList()); List<Map<String, Object>> list = JsonUtil.jsonToPojo(JsonUtil.jsonToString(JsonUtil.jsonToPojo(result, Result.class).getData()), List.class); return list.stream().filter(l -> Objects.equals(l.get("status"), "已下达")).collect(Collectors.toList()); } public static List<Map<String, Object>> getInnerOrder(String time,String orderNo){ Map<String,Object> orderCondition = new HashMap<String,Object>(); public static List<Map<String, Object>> getInnerOrder(String time, String orderNo) { Map<String, Object> orderCondition = new HashMap<String, Object>(); orderCondition.put("selectTime", time); orderCondition.put("orderNo",orderNo); orderCondition.put("orderNo", orderNo); String result = HttpRequest.get(GET_ORDER_INNER_URL) .header("Authorization", "Bearer " + getToken()) .form(orderCondition) .execute().body(); List<Map<String, Object>>list = JsonUtil.jsonToPojo(JsonUtil.jsonToString(JsonUtil.jsonToPojo(result,Result.class).getData()),List.class); List<Map<String, Object>> list = JsonUtil.jsonToPojo(JsonUtil.jsonToString(JsonUtil.jsonToPojo(result, Result.class).getData()), List.class); return list; } public static List<Map<String, Object>> getAttachmentByOrderId(Integer orderId) { String result = HttpRequest.get(GET_ATTACHMENT_BY_ORDERID + orderId) .header("Authorization", "Bearer " + getToken()) .execute().body(); List<Map<String, Object>> list = JsonUtil.jsonToPojo(JsonUtil.jsonToString(JsonUtil.jsonToPojo(result, Result.class).getData()), List.class); return list; } public static String download(Integer id) { String result = HttpRequest.get(DOWN_LOAD + id) .header("Authorization", "Bearer " + getToken()) .execute().body(); return result; } } inventory-server/src/main/java/com/yuanchu/mom/controller/SaleController.java
@@ -139,4 +139,13 @@ return Result.success(saleService.synchronization()); } @ApiOperation(value = "下载附件") @ApiImplicitParams(value = { @ApiImplicitParam(name = "id", value = "销售单id", dataTypeClass = Integer.class, required = true) }) @PostMapping("/download") public Result download(Integer id){ return Result.success(saleService.download(id)); } } inventory-server/src/main/java/com/yuanchu/mom/pojo/Sale.java
@@ -84,4 +84,10 @@ @ApiModelProperty(value = "备注") private String note; @ApiModelProperty(value = "otc中的订单id") private Integer orderId; @ApiModelProperty(value = "订单类型") private String orderType; } inventory-server/src/main/java/com/yuanchu/mom/pojo/dto/ConsignmentDto1.java
@@ -22,18 +22,6 @@ @JsonSerialize private String proname; //到货地址 @JsonSerialize private String adress; //收货联系人 @JsonSerialize private String username; //手机号 @JsonSerialize private String phone ; //产品信息 @JsonSerialize private List<ConsignmentDto2> messages; inventory-server/src/main/java/com/yuanchu/mom/pojo/dto/ConsignmentDto2.java
@@ -29,4 +29,16 @@ @NotBlank(message = "发货数量不能为空") @JsonSerialize private Integer number; //到货地址 @JsonSerialize private String adress; //收货联系人 @JsonSerialize private String username; //手机号 @JsonSerialize private String phone ; } inventory-server/src/main/java/com/yuanchu/mom/service/SaleService.java
@@ -83,4 +83,11 @@ * @return */ String synchronization(); /** * 下载附件 * @param id * @return */ List<String> download(Integer id); } inventory-server/src/main/java/com/yuanchu/mom/service/impl/SaleServiceImpl.java
@@ -63,6 +63,7 @@ Sale sale = new Sale(); BeanUtils.copyProperties(saleDto, sale); sale.setSaleman(saleman); sale.setOrderType("手工订单"); saleMapper.insert(sale); //添加销售产品单 List<SaleMaterialDto> saleMaterialDtoList = saleDto.getSaleMaterialList(); @@ -186,9 +187,6 @@ .orderCode(orderNumber) .customerCode(sale.getCode()) .proname(sale.getProname()) //.adress(sale.getAdress()) //.username(sale.getUsername()) //.phone(sale.getPhone()) .messages(dto2List) .build(); return consignmentDto1; @@ -215,6 +213,8 @@ sale.setDelTime(DateUtil.parseDate(orde.get("wantedDeliveryDate").toString()));//交货日期 sale.setCreateTime(DateUtil.parseDate(orde.get("orderDate").toString()));//下单日期 sale.setNote(String.valueOf(orde.get("comment")));//备注 sale.setOrderId((Integer) orde.get("id")); //otc订单id sale.setOrderType(orde.get("orderClassification").toString()); //订单类型 return sale; }).collect(Collectors.toList()); //去重 @@ -239,4 +239,22 @@ } return "同步成功!"; } //下载附件 @Override public List<String> download(Integer id) { Integer orderId = saleMapper.selectById(id).getOrderId(); List<Map<String, Object>> attachment = SyncOrder.getAttachmentByOrderId(orderId); List<String> list = new ArrayList<>(); if (ObjectUtils.isEmpty(attachment)) { list.add("该订单没有附件"); return list; } for (Map<String, Object> attch : attachment) { String path = attch.get("path").toString(); list.add(path); } return list; } } inventory-server/src/main/resources/mapper/SaleMapper.xml
@@ -15,7 +15,8 @@ proname, type, DATE_FORMAT(delTime, '%Y-%m-%d') '交货日期', note note, order_type from mom_ocean.sale where state=1 <if test="orderNumber!=null and orderNumber!=''"> system-run/src/test/java/com/yuanchu/mom/SystemRunApplicationTest.java
@@ -1,19 +1,12 @@ package com.yuanchu.mom; import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateUnit; import cn.hutool.core.date.DateUtil; import com.yuanchu.mom.Task.SyncOrder; import com.yuanchu.mom.pojo.Sale; import com.yuanchu.mom.pojo.SaleMaterial; import com.yuanchu.mom.vo.Result; import javafx.scene.input.DataFormat; import org.junit.jupiter.api.Test; import org.springframework.boot.test.context.SpringBootTest; import java.time.LocalDateTime; import java.time.LocalTime; import java.time.format.DateTimeFormatter; import java.util.*; import java.util.stream.Collectors; @@ -37,7 +30,6 @@ return sale; }).collect(Collectors.toList()); //System.out.println(list); for (Sale sale : list) { List<Map<String, Object>> innerOrder = SyncOrder.getInnerOrder("2023-08-01 10:00:00", sale.getOrderNumber()); List<SaleMaterial> saleMaterials = innerOrder.stream().map(inorder -> { @@ -45,7 +37,7 @@ saleMaterial.setName(inorder.get("productName").toString()); //产品名称 saleMaterial.setSpecifications(inorder.get("specificationModel").toString()); //产品规格型号 saleMaterial.setUnit(inorder.get("unit").toString()); //单位 saleMaterial.setNumber((int)Double.parseDouble(inorder.get("quantity").toString())); //数量 saleMaterial.setNumber((int) Double.parseDouble(inorder.get("quantity").toString())); //数量 saleMaterial.setPrice(inorder.get("unitPriceInclTax").toString()); //单价 saleMaterial.setSaleId(sale.getId()); //关联 销售单id saleMaterial.setAdress(String.valueOf(inorder.get("shippingAddress"))); //收货地址 @@ -59,9 +51,13 @@ @Test void aaa() { String pattern = "yyyy-MM-dd HH:mm:ss"; DateTimeFormatter formatter = DateTimeFormatter.ofPattern(pattern); System.out.println(LocalDateTime.now().minusDays(1).with(LocalTime.of(0,0,0)).format(formatter)); System.out.println(LocalDateTime.now().with(LocalTime.of(4, 0, 0)).format(formatter)); int orderId = 773699; List<Map<String, Object>> attachment = SyncOrder.getAttachmentByOrderId(orderId); List<String> list = new ArrayList<>(); for (Map<String, Object> attch : attachment) { String path = attch.get("path").toString(); list.add(path); } System.out.println(list); } }