|
@@ -25,6 +25,7 @@ import com.sckw.system.api.RemoteSystemService;
|
|
|
import com.sckw.system.api.model.dto.res.EntCacheResDto;
|
|
import com.sckw.system.api.model.dto.res.EntCacheResDto;
|
|
|
import com.sckw.system.api.model.dto.res.SysDictResDto;
|
|
import com.sckw.system.api.model.dto.res.SysDictResDto;
|
|
|
import com.sckw.system.api.model.dto.res.UserCacheResDto;
|
|
import com.sckw.system.api.model.dto.res.UserCacheResDto;
|
|
|
|
|
+import com.sckw.transport.common.config.MessageUrlConfig;
|
|
|
import com.sckw.transport.dao.KwtLogisticsOrderContractMapper;
|
|
import com.sckw.transport.dao.KwtLogisticsOrderContractMapper;
|
|
|
import com.sckw.transport.dao.KwtLogisticsOrderMapper;
|
|
import com.sckw.transport.dao.KwtLogisticsOrderMapper;
|
|
|
import com.sckw.transport.model.KwtLogisticsOrder;
|
|
import com.sckw.transport.model.KwtLogisticsOrder;
|
|
@@ -55,6 +56,9 @@ public class CommonService {
|
|
|
@Autowired
|
|
@Autowired
|
|
|
private StreamBridge streamBridge;
|
|
private StreamBridge streamBridge;
|
|
|
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
|
+ private MessageUrlConfig messageUrlConfig;
|
|
|
|
|
+
|
|
|
@Value("${message.logistics.order.consignLogisticsOrderUrl}")
|
|
@Value("${message.logistics.order.consignLogisticsOrderUrl}")
|
|
|
private String consignLogisticsOrderUrl;
|
|
private String consignLogisticsOrderUrl;
|
|
|
|
|
|
|
@@ -237,23 +241,23 @@ public class CommonService {
|
|
|
/**
|
|
/**
|
|
|
* 发起物流托运-[贸易订单物流托运确认/承运订单分包托运确认]
|
|
* 发起物流托运-[贸易订单物流托运确认/承运订单分包托运确认]
|
|
|
*
|
|
*
|
|
|
- * @param checkUnit 托运单位
|
|
|
|
|
|
|
+ * @param consignUnit 托运单位
|
|
|
* @param carriageUnit 承运单位
|
|
* @param carriageUnit 承运单位
|
|
|
* @param orderNo 单据号
|
|
* @param orderNo 单据号
|
|
|
* @param createBy 创建人
|
|
* @param createBy 创建人
|
|
|
* @param entId 创建数据的企业id
|
|
* @param entId 创建数据的企业id
|
|
|
*/
|
|
*/
|
|
|
- public void initIatingLogisticsConsignment(KwtLogisticsOrderUnit checkUnit, KwtLogisticsOrderUnit carriageUnit, String orderNo, Long createBy, Long entId) {
|
|
|
|
|
|
|
+ public void initIatingLogisticsConsignment(KwtLogisticsOrderUnit consignUnit, KwtLogisticsOrderUnit carriageUnit, String orderNo, Long createBy, Long entId) {
|
|
|
boolean flag = false;
|
|
boolean flag = false;
|
|
|
- if (createBy.equals(checkUnit.getContactsId()) || createBy.equals(carriageUnit.getContactsId())) {
|
|
|
|
|
|
|
+ if (createBy.equals(consignUnit.getContactsId()) || createBy.equals(carriageUnit.getContactsId())) {
|
|
|
flag = true;
|
|
flag = true;
|
|
|
}
|
|
}
|
|
|
Map<String, Object> map = new HashMap<>(NumberConstant.SIXTEEN);
|
|
Map<String, Object> map = new HashMap<>(NumberConstant.SIXTEEN);
|
|
|
map.put("orderNo", orderNo);
|
|
map.put("orderNo", orderNo);
|
|
|
- if (flag && createBy.equals(checkUnit.getContactsId())) {
|
|
|
|
|
- sendMessageLogistics(checkUnit, carriageUnit, map);
|
|
|
|
|
|
|
+ if (flag && createBy.equals(consignUnit.getContactsId())) {
|
|
|
|
|
+ sendMessageLogistics(consignUnit, carriageUnit, map);
|
|
|
} else if (flag && createBy.equals(carriageUnit.getContactsId())) {
|
|
} else if (flag && createBy.equals(carriageUnit.getContactsId())) {
|
|
|
- sendMessageLogistics(checkUnit, carriageUnit, map);
|
|
|
|
|
|
|
+ sendMessageLogistics(consignUnit, carriageUnit, map);
|
|
|
} else {
|
|
} else {
|
|
|
UserCacheResDto userCacheResDto = remoteSystemService.queryUserCacheById(createBy);
|
|
UserCacheResDto userCacheResDto = remoteSystemService.queryUserCacheById(createBy);
|
|
|
//给订单创建人发消息
|
|
//给订单创建人发消息
|
|
@@ -266,7 +270,9 @@ public class CommonService {
|
|
|
msg.setRequestId(UUIDUtils.get32UUID())
|
|
msg.setRequestId(UUIDUtils.get32UUID())
|
|
|
.setMessageEnum(MessageEnum.INITIATING_LOGISTICS_CONSIGNMENT)
|
|
.setMessageEnum(MessageEnum.INITIATING_LOGISTICS_CONSIGNMENT)
|
|
|
.setParams(map)
|
|
.setParams(map)
|
|
|
- .setMsgUrl(consignLogisticsOrderUrl)
|
|
|
|
|
|
|
+ .setMsgUrls(new HashMap<>(NumberConstant.SIXTEEN){
|
|
|
|
|
+ { put("pc", messageUrlConfig.getPc().getConsignLogisticsAddOrderUrl());
|
|
|
|
|
+ put("app", messageUrlConfig.getApp().getConsignLogisticsAddOrderUrl()); }})
|
|
|
.setUserInfos(userInfos)
|
|
.setUserInfos(userInfos)
|
|
|
.setCreateBy(LoginUserHolder.getUserId());
|
|
.setCreateBy(LoginUserHolder.getUserId());
|
|
|
log.info("发起物流托运-[贸易订单物流托运确认/承运订单分包托运确认]-创建人:{}", JSON.toJSONString(msg));
|
|
log.info("发起物流托运-[贸易订单物流托运确认/承运订单分包托运确认]-创建人:{}", JSON.toJSONString(msg));
|
|
@@ -511,7 +517,7 @@ public class CommonService {
|
|
|
List<UserInfo> list = new ArrayList<>();
|
|
List<UserInfo> list = new ArrayList<>();
|
|
|
UserInfo userInfo1 = new UserInfo();
|
|
UserInfo userInfo1 = new UserInfo();
|
|
|
userInfo1.setUserId(consignUnit.getContactsId()).setEntId(consignUnit.getTopEntId());
|
|
userInfo1.setUserId(consignUnit.getContactsId()).setEntId(consignUnit.getTopEntId());
|
|
|
- list.add(userInfo);
|
|
|
|
|
|
|
+ list.add(userInfo1);
|
|
|
map.put("companyName", consignUnit.getFirmName());
|
|
map.put("companyName", consignUnit.getFirmName());
|
|
|
SckwMessage message = new SckwMessage();
|
|
SckwMessage message = new SckwMessage();
|
|
|
message.setRequestId(UUIDUtils.get32UUID())
|
|
message.setRequestId(UUIDUtils.get32UUID())
|
|
@@ -523,4 +529,101 @@ public class CommonService {
|
|
|
log.info(MessageEnum.getDesc(consignMessageEnum) + "-[托运方]-业务联系人:{}", JSON.toJSONString(message));
|
|
log.info(MessageEnum.getDesc(consignMessageEnum) + "-[托运方]-业务联系人:{}", JSON.toJSONString(message));
|
|
|
streamBridge.send("sckw-message", JSON.toJSONString(message));
|
|
streamBridge.send("sckw-message", JSON.toJSONString(message));
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ *
|
|
|
|
|
+ * @param consignUnit 托运单位
|
|
|
|
|
+ * @param carriageUnit 承运单位
|
|
|
|
|
+ * @param orderNo 单据号
|
|
|
|
|
+ * @param createBy 创建人
|
|
|
|
|
+ * @param entId 企业id
|
|
|
|
|
+ * @param consignMessageEnum 托运消息体
|
|
|
|
|
+ * @param carriageMessageEnum 承运消息体
|
|
|
|
|
+ * @param pcConsignLogisticsAddOrderUrl pc托运url
|
|
|
|
|
+ * @param pcCarriageLogisticsAddOrderUrl pc承运url
|
|
|
|
|
+ * @param appConsignLogisticsAddOrderUrl app托运url
|
|
|
|
|
+ * @param appCarriageLogisticsAddOrderUrl app承运url
|
|
|
|
|
+ */
|
|
|
|
|
+ public void pushMessageByUrl(KwtLogisticsOrderUnit consignUnit, KwtLogisticsOrderUnit carriageUnit, String orderNo, Long createBy, Long entId,
|
|
|
|
|
+ MessageEnum consignMessageEnum, MessageEnum carriageMessageEnum,
|
|
|
|
|
+ String pcConsignLogisticsAddOrderUrl,String pcCarriageLogisticsAddOrderUrl,
|
|
|
|
|
+ String appConsignLogisticsAddOrderUrl,String appCarriageLogisticsAddOrderUrl
|
|
|
|
|
+ ) {
|
|
|
|
|
+ boolean flag = false;
|
|
|
|
|
+ if (createBy.equals(consignUnit.getContactsId()) || createBy.equals(carriageUnit.getContactsId())) {
|
|
|
|
|
+ flag = true;
|
|
|
|
|
+ }
|
|
|
|
|
+ Map<String, Object> map = new HashMap<>(NumberConstant.SIXTEEN);
|
|
|
|
|
+ map.put("orderNo", orderNo);
|
|
|
|
|
+ if (flag && createBy.equals(consignUnit.getContactsId())) {
|
|
|
|
|
+ sendPushMessageByUrlLogistics(consignUnit, carriageUnit, map, consignMessageEnum,carriageMessageEnum);
|
|
|
|
|
+ } else if (flag && createBy.equals(carriageUnit.getContactsId())) {
|
|
|
|
|
+ sendPushMessageByUrlLogistics(consignUnit, carriageUnit, map, consignMessageEnum,carriageMessageEnum);
|
|
|
|
|
+ } else {
|
|
|
|
|
+ UserCacheResDto userCacheResDto = remoteSystemService.queryUserCacheById(createBy);
|
|
|
|
|
+ //给订单创建人发消息
|
|
|
|
|
+ List<UserInfo> userInfos = new ArrayList<>();
|
|
|
|
|
+ UserInfo createUser = new UserInfo();
|
|
|
|
|
+ createUser.setUserId(createBy).setEntId(entId);
|
|
|
|
|
+ userInfos.add(createUser);
|
|
|
|
|
+ map.put("companyName", userCacheResDto == null ? null : userCacheResDto.getEntInfo().getFirmName());
|
|
|
|
|
+ SckwMessage msg = new SckwMessage();
|
|
|
|
|
+ msg.setRequestId(UUIDUtils.get32UUID())
|
|
|
|
|
+ .setMessageEnum(carriageMessageEnum)
|
|
|
|
|
+ .setParams(map)
|
|
|
|
|
+ .setMsgUrls(new HashMap<>(NumberConstant.SIXTEEN){{put("pc",pcCarriageLogisticsAddOrderUrl);put("app",appCarriageLogisticsAddOrderUrl);}})
|
|
|
|
|
+ .setUserInfos(userInfos)
|
|
|
|
|
+ .setCreateBy(LoginUserHolder.getUserId());
|
|
|
|
|
+ log.info(MessageEnum.getDesc(consignMessageEnum) + "-创建人:{}", JSON.toJSONString(msg));
|
|
|
|
|
+ streamBridge.send("sckw-message", JSON.toJSONString(msg));
|
|
|
|
|
+ sendPushMessageByUrlLogistics(consignUnit, carriageUnit, map, consignMessageEnum,carriageMessageEnum);
|
|
|
|
|
+ }
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ *
|
|
|
|
|
+ * @param consignUnit 托运单位
|
|
|
|
|
+ * @param carriageUnit 承运单位
|
|
|
|
|
+ * @param map
|
|
|
|
|
+ * @param consignMessageEnum 托运枚举
|
|
|
|
|
+ * @param carriageMessageEnum 承运枚
|
|
|
|
|
+ */
|
|
|
|
|
+ private void sendPushMessageByUrlLogistics(KwtLogisticsOrderUnit consignUnit, KwtLogisticsOrderUnit carriageUnit,
|
|
|
|
|
+ Map<String, Object> map,
|
|
|
|
|
+ MessageEnum consignMessageEnum,
|
|
|
|
|
+ MessageEnum carriageMessageEnum
|
|
|
|
|
+ ) {
|
|
|
|
|
+ //给业务联系人发消息[承运方]
|
|
|
|
|
+ List<UserInfo> userInfoList = new ArrayList<>();
|
|
|
|
|
+ UserInfo userInfo = new UserInfo();
|
|
|
|
|
+ userInfo.setUserId(carriageUnit.getContactsId()).setEntId(carriageUnit.getTopEntId());
|
|
|
|
|
+ userInfoList.add(userInfo);
|
|
|
|
|
+ map.put("companyName", carriageUnit.getFirmName());
|
|
|
|
|
+ SckwMessage sckwMessage = new SckwMessage();
|
|
|
|
|
+ sckwMessage.setRequestId(UUIDUtils.get32UUID())
|
|
|
|
|
+ .setMessageEnum(carriageMessageEnum)
|
|
|
|
|
+ .setParams(map)
|
|
|
|
|
+ .setMsgUrls(new HashMap<>(){{put("pc",messageUrlConfig.getPc().getCarriageLogisticsAddOrderUrl());put("app",messageUrlConfig.getApp().getCarriageLogisticsAddOrderUrl());}})
|
|
|
|
|
+ .setUserInfos(userInfoList)
|
|
|
|
|
+ .setCreateBy(LoginUserHolder.getUserId());
|
|
|
|
|
+ log.info(MessageEnum.getDesc(carriageMessageEnum) + "-[承运方]-业务联系人:{}", JSON.toJSONString(sckwMessage));
|
|
|
|
|
+ streamBridge.send("sckw-message", JSON.toJSONString(sckwMessage));
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ //给业务联系人发消息[托运方]
|
|
|
|
|
+ List<UserInfo> list = new ArrayList<>();
|
|
|
|
|
+ UserInfo userInfo1 = new UserInfo();
|
|
|
|
|
+ userInfo1.setUserId(consignUnit.getContactsId()).setEntId(consignUnit.getTopEntId());
|
|
|
|
|
+ list.add(userInfo1);
|
|
|
|
|
+ map.put("companyName", consignUnit.getFirmName());
|
|
|
|
|
+ SckwMessage message = new SckwMessage();
|
|
|
|
|
+ message.setRequestId(UUIDUtils.get32UUID())
|
|
|
|
|
+ .setMessageEnum(consignMessageEnum)
|
|
|
|
|
+ .setParams(map)
|
|
|
|
|
+ .setMsgUrls(new HashMap<>(){{put("pc",messageUrlConfig.getPc().getConsignLogisticsAddOrderUrl());put("app",messageUrlConfig.getApp().getConsignLogisticsAddOrderUrl());}})
|
|
|
|
|
+ .setUserInfos(list)
|
|
|
|
|
+ .setCreateBy(LoginUserHolder.getUserId());
|
|
|
|
|
+ log.info(MessageEnum.getDesc(consignMessageEnum) + "-[托运方]-业务联系人:{}", JSON.toJSONString(message));
|
|
|
|
|
+ streamBridge.send("sckw-message", JSON.toJSONString(message));
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|