CoustomAnalysisServiceImp.java
5.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
package com.tianbo.analysis.service.imp;
import com.tianbo.analysis.bean.SpringBeanUtitl;
import com.tianbo.analysis.dao.ORIGINMANIFESTMASTERMapper;
import com.tianbo.analysis.dao.OriginmanifestsecondaryMapper;
import com.tianbo.analysis.dao.SENDLOGMapper;
import com.tianbo.analysis.model.ORIGINMANIFESTMASTER;
import com.tianbo.analysis.model.Originmanifestsecondary;
import com.tianbo.analysis.model.SENDLOG;
import com.tianbo.analysis.service.CoustomAnalysisService;
import com.tianbo.analysis.model.NmmsBase;
import com.tianbo.util.Helper;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
/**
* @author mrz
* 原始回执解析
*/
@Service
@Slf4j
public class CoustomAnalysisServiceImp extends NmmsBase implements CoustomAnalysisService {
@Resource
SENDLOGMapper sendlogMapper;
@Resource
ORIGINMANIFESTMASTERMapper originmanifestmasterMapper;
@Resource
OriginmanifestsecondaryMapper originmanifestsecondaryMapper;
public CoustomAnalysisServiceImp(){
// //处理多线程时 springboot 无法注入bean的问题
// if (this.sendlogMapper==null){
// this.sendlogMapper = SpringBeanUtitl.getBean(SENDLOGMapper.class);
// }
// if (this.originmanifestmasterMapper==null){
// this.originmanifestmasterMapper = SpringBeanUtitl.getBean(ORIGINMANIFESTMASTERMapper.class);
// }
// if (this.originmanifestsecondaryMapper==null){
// this.originmanifestsecondaryMapper = SpringBeanUtitl.getBean(OriginmanifestsecondaryMapper.class);
// }
}
@Override
public int second() {
// 设置分单回执
Originmanifestsecondary originmanifestsecondary = new Originmanifestsecondary();
originmanifestsecondary.setReceiption(reception);
//设置主分单的 主单号
originmanifestsecondary.setWaybillnomaster(awbA);
//取分单号
String[] awbhArr = awbH.split("_");
String awbh = awbhArr[1];
originmanifestsecondary.setWaybillnosecondary(awbh);
originmanifestsecondary.setStatus(nmsStatusCode);
//更新分单回执
int i = originmanifestsecondaryMapper.updateRECEIPTION(originmanifestsecondary);
//获取分单autoid
List<Originmanifestsecondary> originmanifestsecondaryList = originmanifestsecondaryMapper.selectAutoIdByawbAawbH(originmanifestsecondary);
if(!originmanifestsecondaryList.isEmpty()){
Originmanifestsecondary originSecond = originmanifestsecondaryList.get(0);
String autoId = originSecond.getAutoid();
//插入sendlog记录表
log.info("即将插入日志运单号为:"+awbH+"->autoid="+autoId);
int ii = insertSendlog("MT1201",reception,autoId);
int iii = shareServiceImp.updateMessages(customReception);
if (i>0 && ii>0){
log.info("运单号 {} 原始回执更新成功",awbA);
return 1;
}
if (iii > 0){
return 1;
}
}
return 0;
}
@Override
public int master() {
// 设置主单回执、航班号、航班日期
ORIGINMANIFESTMASTER originmanifestmaster = new ORIGINMANIFESTMASTER();
originmanifestmaster.setReceiptinformation(reception);
originmanifestmaster.setFlightno(customReception.getFlightNo());
originmanifestmaster.setFlightDate(flightDate);
originmanifestmaster.setWaybillnomaster(awbA);
originmanifestmaster.setStatus(nmsStatusCode);
//更新主单回执
int i = originmanifestmasterMapper.updateRECEIPTION(originmanifestmaster);
//获取分单autoid
List<ORIGINMANIFESTMASTER> originmanifestmasterList = originmanifestmasterMapper.selectAutoIdByAwb(originmanifestmaster);
if(!originmanifestmasterList.isEmpty()){
ORIGINMANIFESTMASTER originMaster = originmanifestmasterList.get(0);
String autoId = originMaster.getAutoid();
//插入sendlog记录表
log.info("即将插入日志运单号为:"+awbA+"->autoid="+autoId);
int ii =insertSendlog("MT1201",reception,autoId);
int iii = shareServiceImp.updateMessages(customReception);
if (i>0 && ii>0){
log.info("运单号 {} 原始回执更新成功",awbA);
return 1;
}
if (iii > 0){
return 1;
}
}
return 0;
}
public int insertSendlog(String type,String reception,String autoId){
SENDLOG sendlog = new SENDLOG();
sendlog.setAutoid(Helper.getUUID());
sendlog.setCreatedate(new Date());
sendlog.setMessageautoid(autoId);
sendlog.setMessagetype(type);
sendlog.setReceiption(reception);
sendlog.setSendpeice(new Long(0));
sendlog.setSendweight(new BigDecimal(0));
int i = sendlogMapper.insertSelective(sendlog);
if (i>0){
log.info("插入日志成功,插入数据量为:"+i);
}
return i;
}
}