作者 朱兆平

直接改配解析

... ... @@ -101,6 +101,7 @@
<groupId>com.tianbo</groupId>
<artifactId>util</artifactId>
<version>1.0-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
<!--util依赖-->
... ...
package com.tianbo.analysis.dao;
import com.tianbo.analysis.model.MANIFEST_AIR_CHANGE;
import java.util.List;
public interface MANIFEST_AIR_CHANGEMapper {
int deleteByPrimaryKey(String autoid);
int insert(MANIFEST_AIR_CHANGE record);
int insertSelective(MANIFEST_AIR_CHANGE record);
List<MANIFEST_AIR_CHANGE> insertCheckRepeat(MANIFEST_AIR_CHANGE record);
MANIFEST_AIR_CHANGE selectByPrimaryKey(String autoid);
List<MANIFEST_AIR_CHANGE> selectList(MANIFEST_AIR_CHANGE record);
int updateByPrimaryKeySelective(MANIFEST_AIR_CHANGE record);
int updateByPrimaryKey(MANIFEST_AIR_CHANGE record);
}
... ...
... ... @@ -321,6 +321,10 @@ public class CustomXmlHandleThread implements Runnable{
MANIFESTLOSTCHANGE manifestlostchange = new MANIFESTLOSTCHANGE(customReception);
i= manifestlostchange.secondAnalysisReception();
break;
case "MT8024":
PREPAREMASTER preparemaster1201= new PREPAREMASTER(customReception);
i = preparemaster1201.masterAnalysisReception();
break;
default:
break;
... ...
package com.tianbo.analysis.model;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.Date;
import java.util.List;
public class MANIFEST_AIR_CHANGE {
private String autoid;
private String flightno;
private String changeFlightno;
private String waybillnomaster;
private String changeWaybillnomaster;
private String cont;
private Date createdate;
private Date changetime;
private String carrier;
private String changeCarrier;
private String customsCode;
private String receiption;
//批量新增列表
private List<String> waybillList;
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date flightDate;
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date changeFlightDate;
public String getAutoid() {
return autoid;
}
public void setAutoid(String autoid) {
this.autoid = autoid == null ? null : autoid.trim();
}
public String getFlightno() {
return flightno;
}
public void setFlightno(String flightno) {
this.flightno = flightno == null ? null : flightno.trim();
}
public String getChangeFlightno() {
return changeFlightno;
}
public void setChangeFlightno(String changeFlightno) {
this.changeFlightno = changeFlightno == null ? null : changeFlightno.trim();
}
public String getWaybillnomaster() {
return waybillnomaster;
}
public void setWaybillnomaster(String waybillnomaster) {
this.waybillnomaster = waybillnomaster == null ? null : waybillnomaster.trim();
}
public String getChangeWaybillnomaster() {
return changeWaybillnomaster;
}
public void setChangeWaybillnomaster(String changeWaybillnomaster) {
this.changeWaybillnomaster = changeWaybillnomaster == null ? null : changeWaybillnomaster.trim();
}
public String getCont() {
return cont;
}
public void setCont(String cont) {
this.cont = cont == null ? null : cont.trim();
}
public Date getCreatedate() {
return createdate;
}
public void setCreatedate(Date createdate) {
this.createdate = createdate;
}
public Date getChangetime() {
return changetime;
}
public void setChangetime(Date changetime) {
this.changetime = changetime;
}
public String getCarrier() {
return carrier;
}
public void setCarrier(String carrier) {
this.carrier = carrier == null ? null : carrier.trim();
}
public String getChangeCarrier() {
return changeCarrier;
}
public void setChangeCarrier(String changeCarrier) {
this.changeCarrier = changeCarrier == null ? null : changeCarrier.trim();
}
public Date getFlightDate() {
return flightDate;
}
public void setFlightDate(Date flightDate) {
this.flightDate = flightDate;
}
public Date getChangeFlightDate() {
return changeFlightDate;
}
public void setChangeFlightDate(Date changeFlightDate) {
this.changeFlightDate = changeFlightDate;
}
public String getCustomsCode() {
return customsCode;
}
public void setCustomsCode(String customsCode) {
this.customsCode = customsCode;
}
public String getReceiption() {
return receiption;
}
public void setReceiption(String receiption) {
this.receiption = receiption;
}
public List<String> getWaybillList() {
return waybillList;
}
public void setWaybillList(List<String> waybillList) {
this.waybillList = waybillList;
}
}
... ...
package com.tianbo.analysis.service;
import com.tianbo.analysis.model.CustomReception;
public interface SendLogService {
int insertSendlog(String type,String reception,String autoId);
int updateMT8204(CustomReception customReception);
}
... ...
package com.tianbo.analysis.service.imp;
import com.tianbo.analysis.dao.MANIFEST_AIR_CHANGEMapper;
import com.tianbo.analysis.dao.SENDLOGMapper;
import com.tianbo.analysis.model.CustomReception;
import com.tianbo.analysis.model.MANIFEST_AIR_CHANGE;
import com.tianbo.analysis.model.SENDLOG;
import com.tianbo.analysis.service.SendLogService;
import com.tianbo.analysis.tools.AWBTools;
import com.tianbo.util.Date.DateUtil;
import com.tianbo.util.Helper;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
@Service
@Slf4j
... ... @@ -18,6 +25,9 @@ public class SendLogServiceImp implements SendLogService{
@Resource
private SENDLOGMapper sendlogMapper;
@Resource
MANIFEST_AIR_CHANGEMapper manifest_air_changeMapper;
@Override
public int insertSendlog(String type,String reception,String autoId){
SENDLOG sendlog = new SENDLOG();
... ... @@ -38,4 +48,21 @@ public class SendLogServiceImp implements SendLogService{
return i;
}
@Override
public int updateMT8204(CustomReception customReception) {
MANIFEST_AIR_CHANGE manifest_air_change = new MANIFEST_AIR_CHANGE();
manifest_air_change.setWaybillnomaster(customReception.getWayBillMaster());
manifest_air_change.setFlightno(customReception.getFlightNo());
if (!StringUtils.isEmpty(customReception.getFlightDate())) {
manifest_air_change.setFlightDate(DateUtil.formatByyyyyMMdd(customReception.getFlightDate()));
}
List<MANIFEST_AIR_CHANGE> list = manifest_air_changeMapper.selectList(manifest_air_change);
if (!list.isEmpty()){
MANIFEST_AIR_CHANGE m = list.get(0);
return insertSendlog("MT8204",customReception.getResponseText(),m.getAutoid());
}
return 0;
}
}
... ...
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.tianbo.analysis.dao.MANIFEST_AIR_CHANGEMapper" >
<resultMap id="BaseResultMap" type="com.tianbo.analysis.model.MANIFEST_AIR_CHANGE" >
<id column="AUTOID" property="autoid" jdbcType="VARCHAR" />
<result column="FLIGHTNO" property="flightno" jdbcType="VARCHAR" />
<result column="CHANGE_FLIGHTNO" property="changeFlightno" jdbcType="VARCHAR" />
<result column="WAYBILLNOMASTER" property="waybillnomaster" jdbcType="VARCHAR" />
<result column="CHANGE_WAYBILLNOMASTER" property="changeWaybillnomaster" jdbcType="VARCHAR" />
<result column="CONT" property="cont" jdbcType="VARCHAR" />
<result column="CREATEDATE" property="createdate" jdbcType="TIMESTAMP" />
<result column="CHANGETIME" property="changetime" jdbcType="TIMESTAMP" />
<result column="CARRIER" property="carrier" jdbcType="VARCHAR" />
<result column="CHANGE_CARRIER" property="changeCarrier" jdbcType="VARCHAR" />
<result column="CUSTOMS_CODE" property="customsCode" jdbcType="VARCHAR" />
<result column="RECEIPTION" property="receiption" jdbcType="VARCHAR" />
<result column="FLIGHT_DATE" property="flightDate" jdbcType="DATE" />
<result column="CHANGE_FLIGHT_DATE" property="changeFlightDate" jdbcType="DATE" />
</resultMap>
<sql id="Base_Column_List" >
AUTOID, FLIGHTNO, CHANGE_FLIGHTNO, WAYBILLNOMASTER, CHANGE_WAYBILLNOMASTER, CONT,
CREATEDATE, CHANGETIME, CARRIER, CHANGE_CARRIER, FLIGHT_DATE, CHANGE_FLIGHT_DATE,CUSTOMS_CODE
</sql>
<sql id="Custom_Receipt">
<include refid="Base_Column_List" />
,RECEIPTION
</sql>
<select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.String" >
select
<include refid="Base_Column_List" />
from CGONMS.MANIFEST_AIR_CHANGE
where AUTOID = #{autoid,jdbcType=VARCHAR}
</select>
<select id="insertCheckRepeat" parameterType="com.tianbo.analysis.model.MANIFEST_AIR_CHANGE" resultMap="BaseResultMap">
select
AUTOID
from CGONMS.MANIFEST_AIR_CHANGE
where
FLIGHTNO = #{flightno,jdbcType=VARCHAR}
and
FLIGHT_DATE = #{flightDate,jdbcType=DATE}
and
WAYBILLNOMASTER = #{waybillnomaster,jdbcType=VARCHAR}
</select>
<select id="selectList" resultMap="BaseResultMap" parameterType="com.tianbo.analysis.model.MANIFEST_AIR_CHANGE" >
SELECT
<include refid="Custom_Receipt" />
FROM
(
SELECT
<include refid="Custom_Receipt" />
FROM
MANIFEST_AIR_CHANGE t1
LEFT JOIN (
SELECT
RECEIPTION,
MESSAGEAUTOID,
ROW_NUMBER () OVER ( PARTITION BY MESSAGEAUTOID ORDER BY CREATEDATE DESC ) rn
FROM
SENDLOG
) t2 ON t1.AUTOID = t2.MESSAGEAUTOID
AND t2.rn = 1
) t3
where 1=1
<if test="flightno != null and flightno != ''">
and FLIGHTNO = #{flightno,jdbcType=VARCHAR}
</if>
<if test="flightDate != null">
AND FLIGHT_DATE = #{flightDate,jdbcType=DATE}
</if>
<if test="waybillnomaster != null and waybillnomaster != ''">
AND WAYBILLNOMASTER = #{waybillnomaster,jdbcType=VARCHAR}
</if>
order by CREATEDATE desc
</select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.String" >
delete from CGONMS.MANIFEST_AIR_CHANGE
where AUTOID = #{autoid,jdbcType=VARCHAR}
</delete>
<insert id="insert" parameterType="com.tianbo.analysis.model.MANIFEST_AIR_CHANGE" >
insert into CGONMS.MANIFEST_AIR_CHANGE (AUTOID, FLIGHTNO, CHANGE_FLIGHTNO,
WAYBILLNOMASTER, CHANGE_WAYBILLNOMASTER,
CONT, CREATEDATE, CHANGETIME,
CARRIER, CHANGE_CARRIER, FLIGHT_DATE,
CHANGE_FLIGHT_DATE, CUSTOMS_CODE)
values (#{autoid,jdbcType=VARCHAR}, #{flightno,jdbcType=VARCHAR}, #{changeFlightno,jdbcType=VARCHAR},
#{waybillnomaster,jdbcType=VARCHAR}, #{changeWaybillnomaster,jdbcType=VARCHAR},
#{cont,jdbcType=VARCHAR}, #{createdate,jdbcType=TIMESTAMP}, #{changetime,jdbcType=TIMESTAMP},
#{carrier,jdbcType=VARCHAR}, #{changeCarrier,jdbcType=VARCHAR}, #{flightDate,jdbcType=DATE},
#{changeFlightDate,jdbcType=DATE}, #{customsCode,jdbcType=VARCHAR})
</insert>
<insert id="insertSelective" parameterType="com.tianbo.analysis.model.MANIFEST_AIR_CHANGE" >
insert into CGONMS.MANIFEST_AIR_CHANGE
<trim prefix="(" suffix=")" suffixOverrides="," >
<if test="autoid != null" >
AUTOID,
</if>
<if test="flightno != null" >
FLIGHTNO,
</if>
<if test="changeFlightno != null" >
CHANGE_FLIGHTNO,
</if>
<if test="waybillnomaster != null" >
WAYBILLNOMASTER,
</if>
<if test="changeWaybillnomaster != null" >
CHANGE_WAYBILLNOMASTER,
</if>
<if test="cont != null" >
CONT,
</if>
<if test="createdate != null" >
CREATEDATE,
</if>
<if test="changetime != null" >
CHANGETIME,
</if>
<if test="carrier != null" >
CARRIER,
</if>
<if test="changeCarrier != null" >
CHANGE_CARRIER,
</if>
<if test="flightDate != null" >
FLIGHT_DATE,
</if>
<if test="changeFlightDate != null" >
CHANGE_FLIGHT_DATE,
</if>
<if test="customsCode != null" >
CUSTOMS_CODE,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides="," >
<if test="autoid != null" >
#{autoid,jdbcType=VARCHAR},
</if>
<if test="flightno != null" >
#{flightno,jdbcType=VARCHAR},
</if>
<if test="changeFlightno != null" >
#{changeFlightno,jdbcType=VARCHAR},
</if>
<if test="waybillnomaster != null" >
#{waybillnomaster,jdbcType=VARCHAR},
</if>
<if test="changeWaybillnomaster != null" >
#{changeWaybillnomaster,jdbcType=VARCHAR},
</if>
<if test="cont != null" >
#{cont,jdbcType=VARCHAR},
</if>
<if test="createdate != null" >
#{createdate,jdbcType=TIMESTAMP},
</if>
<if test="changetime != null" >
#{changetime,jdbcType=TIMESTAMP},
</if>
<if test="carrier != null" >
#{carrier,jdbcType=VARCHAR},
</if>
<if test="changeCarrier != null" >
#{changeCarrier,jdbcType=VARCHAR},
</if>
<if test="flightDate != null" >
#{flightDate,jdbcType=DATE},
</if>
<if test="changeFlightDate != null" >
#{changeFlightDate,jdbcType=DATE},
</if>
<if test="customsCode != null" >
#{customsCode,jdbcType=VARCHAR},
</if>
</trim>
</insert>
<update id="updateByPrimaryKeySelective" parameterType="com.tianbo.analysis.model.MANIFEST_AIR_CHANGE" >
update CGONMS.MANIFEST_AIR_CHANGE
<set >
<if test="flightno != null" >
FLIGHTNO = #{flightno,jdbcType=VARCHAR},
</if>
<if test="changeFlightno != null" >
CHANGE_FLIGHTNO = #{changeFlightno,jdbcType=VARCHAR},
</if>
<if test="waybillnomaster != null" >
WAYBILLNOMASTER = #{waybillnomaster,jdbcType=VARCHAR},
</if>
<if test="changeWaybillnomaster != null" >
CHANGE_WAYBILLNOMASTER = #{changeWaybillnomaster,jdbcType=VARCHAR},
</if>
<if test="cont != null" >
CONT = #{cont,jdbcType=VARCHAR},
</if>
<if test="createdate != null" >
CREATEDATE = #{createdate,jdbcType=TIMESTAMP},
</if>
<if test="changetime != null" >
CHANGETIME = #{changetime,jdbcType=TIMESTAMP},
</if>
<if test="carrier != null" >
CARRIER = #{carrier,jdbcType=VARCHAR},
</if>
<if test="changeCarrier != null" >
CHANGE_CARRIER = #{changeCarrier,jdbcType=VARCHAR},
</if>
<if test="flightDate != null" >
FLIGHT_DATE = #{flightDate,jdbcType=DATE},
</if>
<if test="changeFlightDate != null" >
CHANGE_FLIGHT_DATE = #{changeFlightDate,jdbcType=DATE},
</if>
<if test="customsCode != null" >
CUSTOMS_CODE = #{customsCode,jdbcType=VARCHAR},
</if>
</set>
where AUTOID = #{autoid,jdbcType=VARCHAR}
</update>
<update id="updateByPrimaryKey" parameterType="com.tianbo.analysis.model.MANIFEST_AIR_CHANGE" >
update CGONMS.MANIFEST_AIR_CHANGE
set FLIGHTNO = #{flightno,jdbcType=VARCHAR},
CHANGE_FLIGHTNO = #{changeFlightno,jdbcType=VARCHAR},
WAYBILLNOMASTER = #{waybillnomaster,jdbcType=VARCHAR},
CHANGE_WAYBILLNOMASTER = #{changeWaybillnomaster,jdbcType=VARCHAR},
CONT = #{cont,jdbcType=VARCHAR},
CREATEDATE = #{createdate,jdbcType=TIMESTAMP},
CHANGETIME = #{changetime,jdbcType=TIMESTAMP},
CARRIER = #{carrier,jdbcType=VARCHAR},
CHANGE_CARRIER = #{changeCarrier,jdbcType=VARCHAR},
FLIGHT_DATE = #{flightDate,jdbcType=DATE},
CHANGE_FLIGHT_DATE = #{changeFlightDate,jdbcType=DATE},
CUSTOMS_CODE = #{customsCode,jdbcType=VARCHAR}
where AUTOID = #{autoid,jdbcType=VARCHAR}
</update>
</mapper>
... ...