作者 朱兆平

处理带板箱的舱单入库

  1 +package com.tianbo.analysis.dao;
  2 +
  3 +import com.tianbo.analysis.model.FFMInfo;
  4 +
  5 +import java.util.List;
  6 +
  7 +public interface FFMInfoMapper {
  8 + int insert(FFMInfo record);
  9 +
  10 + int insertSelective(FFMInfo record);
  11 +
  12 + /**
  13 + * 板号为空的航班数据
  14 + * @return
  15 + */
  16 + List<FFMInfo> getDistinctFlightWithPalletNull();
  17 +
  18 + /**
  19 + * 板号非空的航班数据
  20 + * @return
  21 + */
  22 + List<FFMInfo> getDistinctFlightWithPallet();
  23 +
  24 + /**
  25 + * 根据航班号 航班日期 确定报文最大的LAST序号
  26 + * @param record 带有航班号航班日期的FFMinfo
  27 + * @return 未处理的空板箱(散装货)的ffminfo
  28 + */
  29 + List<FFMInfo> getLastReportOrderByNullPallet(FFMInfo record);
  30 +
  31 + /**
  32 + * 根据航班号 航班日期 确定报文最大的LAST序号
  33 + * @param record 带有航班号航班日期的FFMinfo
  34 + * @return 未处理的带板箱的ffminfo
  35 + */
  36 + List<FFMInfo> getLastReportOrderByPallet(FFMInfo record);
  37 +
  38 + /**
  39 + * 针对补发报文处理,补发的报文: FFM_INFO表数据,存储的报文批次01对应标识是LAST
  40 + * @param record
  41 + * @return
  42 + */
  43 +
  44 + List<FFMInfo> getFFMLastReportOrderByNullPallet(FFMInfo record);
  45 +
  46 + /**
  47 + * 针对补发报文处理,补发的报文: FFM_INFO表数据,存储的报文批次01对应标识是LAST
  48 + * @param record
  49 + * @return
  50 + */
  51 + List<FFMInfo> getFFMLastReportOrderByPallet(FFMInfo record);
  52 +
  53 + List<FFMInfo> lastCountByNullPallet(FFMInfo record);
  54 +
  55 + List<FFMInfo> lastCountByPallet(FFMInfo record);
  56 +
  57 + List<FFMInfo> getFFMinfoByNullpallet(FFMInfo record);
  58 +
  59 + List<FFMInfo> getFFMinfoBypallet(FFMInfo record);
  60 +
  61 + int updateSelective(FFMInfo record);
  62 +}
  1 +package com.tianbo.analysis.dao;
  2 +
  3 +import com.tianbo.analysis.model.FWBINFO;
  4 +
  5 +import java.util.List;
  6 +
  7 +public interface FWBINFOMapper {
  8 + int insert(FWBINFO record);
  9 +
  10 + int insertSelective(FWBINFO record);
  11 +
  12 + List<FWBINFO> queryFwbInfo(String waybillnomaster);
  13 +}
1 package com.tianbo.analysis.dao; 1 package com.tianbo.analysis.dao;
2 2
  3 +import com.tianbo.analysis.model.FWBINFO;
3 import com.tianbo.analysis.model.ORIGINMANIFESTMASTER; 4 import com.tianbo.analysis.model.ORIGINMANIFESTMASTER;
4 5
5 import java.util.List; 6 import java.util.List;
@@ -11,5 +12,11 @@ public interface ORIGINMANIFESTMASTERMapper { @@ -11,5 +12,11 @@ public interface ORIGINMANIFESTMASTERMapper {
11 12
12 int updateRECEIPTION(ORIGINMANIFESTMASTER record); 13 int updateRECEIPTION(ORIGINMANIFESTMASTER record);
13 14
  15 + int updateFWBByFWBInfoAndStatus(FWBINFO record);
  16 +
  17 + int updateSelective(ORIGINMANIFESTMASTER record);
  18 +
14 List<ORIGINMANIFESTMASTER> selectAutoIdByAwb(ORIGINMANIFESTMASTER record); 19 List<ORIGINMANIFESTMASTER> selectAutoIdByAwb(ORIGINMANIFESTMASTER record);
  20 +
  21 + List<ORIGINMANIFESTMASTER> queryMasterInfo(ORIGINMANIFESTMASTER record);
15 } 22 }
@@ -11,5 +11,9 @@ public interface OriginmanifestsecondaryMapper { @@ -11,5 +11,9 @@ public interface OriginmanifestsecondaryMapper {
11 11
12 int updateRECEIPTION(Originmanifestsecondary record); 12 int updateRECEIPTION(Originmanifestsecondary record);
13 13
  14 + int updateMasterAutoId(Originmanifestsecondary record);
  15 +
14 List<Originmanifestsecondary> selectAutoIdByawbAawbH (Originmanifestsecondary record); 16 List<Originmanifestsecondary> selectAutoIdByawbAawbH (Originmanifestsecondary record);
  17 +
  18 + List<Originmanifestsecondary> selectByFWb(String waybillnomaster);
15 } 19 }
  1 +package com.tianbo.analysis.model;
  2 +
  3 +import java.util.Date;
  4 +
  5 +public class FFMInfo {
  6 + private String autoid;
  7 +
  8 + private Date createdate;
  9 +
  10 + private String flightno;
  11 +
  12 + private Date flightdate;
  13 +
  14 + private String waybillnomaster;
  15 +
  16 + private String originatingstation;
  17 +
  18 + private String destinationstation;
  19 +
  20 + private String manifesttotalpiece;
  21 +
  22 + private String manifesttotalweight;
  23 +
  24 + private String productname;
  25 +
  26 + private String specialgoodscode;
  27 +
  28 + private String customscode;
  29 +
  30 + private String customsstatus;
  31 +
  32 + private String isbatch;
  33 +
  34 + private String pallet;
  35 +
  36 + private String reportorder;
  37 +
  38 + private String islast;
  39 +
  40 + private String originatingstationBill;
  41 +
  42 + private String destinationstationBill;
  43 +
  44 + private String totalpiece;
  45 +
  46 + private String dealstatus;
  47 +
  48 + public String getAutoid() {
  49 + return autoid;
  50 + }
  51 +
  52 + public void setAutoid(String autoid) {
  53 + this.autoid = autoid == null ? null : autoid.trim();
  54 + }
  55 +
  56 + public Date getCreatedate() {
  57 + return createdate;
  58 + }
  59 +
  60 + public void setCreatedate(Date createdate) {
  61 + this.createdate = createdate;
  62 + }
  63 +
  64 + public String getFlightno() {
  65 + return flightno;
  66 + }
  67 +
  68 + public void setFlightno(String flightno) {
  69 + this.flightno = flightno == null ? null : flightno.trim();
  70 + }
  71 +
  72 + public Date getFlightdate() {
  73 + return flightdate;
  74 + }
  75 +
  76 + public void setFlightdate(Date flightdate) {
  77 + this.flightdate = flightdate;
  78 + }
  79 +
  80 + public String getWaybillnomaster() {
  81 + return waybillnomaster;
  82 + }
  83 +
  84 + public void setWaybillnomaster(String waybillnomaster) {
  85 + this.waybillnomaster = waybillnomaster == null ? null : waybillnomaster.trim();
  86 + }
  87 +
  88 + public String getOriginatingstation() {
  89 + return originatingstation;
  90 + }
  91 +
  92 + public void setOriginatingstation(String originatingstation) {
  93 + this.originatingstation = originatingstation == null ? null : originatingstation.trim();
  94 + }
  95 +
  96 + public String getDestinationstation() {
  97 + return destinationstation;
  98 + }
  99 +
  100 + public void setDestinationstation(String destinationstation) {
  101 + this.destinationstation = destinationstation == null ? null : destinationstation.trim();
  102 + }
  103 +
  104 + public String getManifesttotalpiece() {
  105 + return manifesttotalpiece;
  106 + }
  107 +
  108 + public void setManifesttotalpiece(String manifesttotalpiece) {
  109 + this.manifesttotalpiece = manifesttotalpiece == null ? null : manifesttotalpiece.trim();
  110 + }
  111 +
  112 + public String getManifesttotalweight() {
  113 + return manifesttotalweight;
  114 + }
  115 +
  116 + public void setManifesttotalweight(String manifesttotalweight) {
  117 + this.manifesttotalweight = manifesttotalweight == null ? null : manifesttotalweight.trim();
  118 + }
  119 +
  120 + public String getProductname() {
  121 + return productname;
  122 + }
  123 +
  124 + public void setProductname(String productname) {
  125 + this.productname = productname == null ? null : productname.trim();
  126 + }
  127 +
  128 + public String getSpecialgoodscode() {
  129 + return specialgoodscode;
  130 + }
  131 +
  132 + public void setSpecialgoodscode(String specialgoodscode) {
  133 + this.specialgoodscode = specialgoodscode == null ? null : specialgoodscode.trim();
  134 + }
  135 +
  136 + public String getCustomscode() {
  137 + return customscode;
  138 + }
  139 +
  140 + public void setCustomscode(String customscode) {
  141 + this.customscode = customscode == null ? null : customscode.trim();
  142 + }
  143 +
  144 + public String getCustomsstatus() {
  145 + return customsstatus;
  146 + }
  147 +
  148 + public void setCustomsstatus(String customsstatus) {
  149 + this.customsstatus = customsstatus == null ? null : customsstatus.trim();
  150 + }
  151 +
  152 + public String getIsbatch() {
  153 + return isbatch;
  154 + }
  155 +
  156 + public void setIsbatch(String isbatch) {
  157 + this.isbatch = isbatch == null ? null : isbatch.trim();
  158 + }
  159 +
  160 + public String getPallet() {
  161 + return pallet;
  162 + }
  163 +
  164 + public void setPallet(String pallet) {
  165 + this.pallet = pallet == null ? null : pallet.trim();
  166 + }
  167 +
  168 + public String getReportorder() {
  169 + return reportorder;
  170 + }
  171 +
  172 + public void setReportorder(String reportorder) {
  173 + this.reportorder = reportorder == null ? null : reportorder.trim();
  174 + }
  175 +
  176 + public String getIslast() {
  177 + return islast;
  178 + }
  179 +
  180 + public void setIslast(String islast) {
  181 + this.islast = islast == null ? null : islast.trim();
  182 + }
  183 +
  184 + public String getOriginatingstationBill() {
  185 + return originatingstationBill;
  186 + }
  187 +
  188 + public void setOriginatingstationBill(String originatingstationBill) {
  189 + this.originatingstationBill = originatingstationBill == null ? null : originatingstationBill.trim();
  190 + }
  191 +
  192 + public String getDestinationstationBill() {
  193 + return destinationstationBill;
  194 + }
  195 +
  196 + public void setDestinationstationBill(String destinationstationBill) {
  197 + this.destinationstationBill = destinationstationBill == null ? null : destinationstationBill.trim();
  198 + }
  199 +
  200 + public String getTotalpiece() {
  201 + return totalpiece;
  202 + }
  203 +
  204 + public void setTotalpiece(String totalpiece) {
  205 + this.totalpiece = totalpiece == null ? null : totalpiece.trim();
  206 + }
  207 +
  208 + public String getDealstatus() {
  209 + return dealstatus;
  210 + }
  211 +
  212 + public void setDealstatus(String dealstatus) {
  213 + this.dealstatus = dealstatus == null ? null : dealstatus.trim();
  214 + }
  215 +}
  1 +package com.tianbo.analysis.model;
  2 +
  3 +import java.util.Date;
  4 +
  5 +public class FWBINFO {
  6 + private String autoid;
  7 +
  8 + private String waybillnomaster;
  9 +
  10 + private String totalweight;
  11 +
  12 + private String totalpiece;
  13 +
  14 + private String productname;
  15 +
  16 + private String carrier1;
  17 +
  18 + private String arrivalstation1;
  19 +
  20 + private String carrier2;
  21 +
  22 + private String arrivalstation2;
  23 +
  24 + private String carrier3;
  25 +
  26 + private String arrivalstation3;
  27 +
  28 + private String paymode;
  29 +
  30 + private String specialgoodscode;
  31 +
  32 + private String shippername;
  33 +
  34 + private String shipperaddress;
  35 +
  36 + private String consigneename;
  37 +
  38 + private String consigneeaddress;
  39 +
  40 + private Date createdate;
  41 +
  42 + private String istransfer;
  43 +
  44 + private String shipperCode;
  45 +
  46 + private String shipperCountrycode;
  47 +
  48 + private String shipperPhone;
  49 +
  50 + private String shipperFax;
  51 +
  52 + private String consigneeCode;
  53 +
  54 + private String consigneeCountrycode;
  55 +
  56 + private String consigneeFax;
  57 +
  58 + private String specificConsigneename;
  59 +
  60 + private String specificConsigneePhone;
  61 +
  62 + private String consigneePhone;
  63 +
  64 + public String getAutoid() {
  65 + return autoid;
  66 + }
  67 +
  68 + public void setAutoid(String autoid) {
  69 + this.autoid = autoid == null ? null : autoid.trim();
  70 + }
  71 +
  72 + public String getWaybillnomaster() {
  73 + return waybillnomaster;
  74 + }
  75 +
  76 + public void setWaybillnomaster(String waybillnomaster) {
  77 + this.waybillnomaster = waybillnomaster == null ? null : waybillnomaster.trim();
  78 + }
  79 +
  80 + public String getTotalweight() {
  81 + return totalweight;
  82 + }
  83 +
  84 + public void setTotalweight(String totalweight) {
  85 + this.totalweight = totalweight == null ? null : totalweight.trim();
  86 + }
  87 +
  88 + public String getTotalpiece() {
  89 + return totalpiece;
  90 + }
  91 +
  92 + public void setTotalpiece(String totalpiece) {
  93 + this.totalpiece = totalpiece == null ? null : totalpiece.trim();
  94 + }
  95 +
  96 + public String getProductname() {
  97 + return productname;
  98 + }
  99 +
  100 + public void setProductname(String productname) {
  101 + this.productname = productname == null ? null : productname.trim();
  102 + }
  103 +
  104 + public String getCarrier1() {
  105 + return carrier1;
  106 + }
  107 +
  108 + public void setCarrier1(String carrier1) {
  109 + this.carrier1 = carrier1 == null ? null : carrier1.trim();
  110 + }
  111 +
  112 + public String getArrivalstation1() {
  113 + return arrivalstation1;
  114 + }
  115 +
  116 + public void setArrivalstation1(String arrivalstation1) {
  117 + this.arrivalstation1 = arrivalstation1 == null ? null : arrivalstation1.trim();
  118 + }
  119 +
  120 + public String getCarrier2() {
  121 + return carrier2;
  122 + }
  123 +
  124 + public void setCarrier2(String carrier2) {
  125 + this.carrier2 = carrier2 == null ? null : carrier2.trim();
  126 + }
  127 +
  128 + public String getArrivalstation2() {
  129 + return arrivalstation2;
  130 + }
  131 +
  132 + public void setArrivalstation2(String arrivalstation2) {
  133 + this.arrivalstation2 = arrivalstation2 == null ? null : arrivalstation2.trim();
  134 + }
  135 +
  136 + public String getCarrier3() {
  137 + return carrier3;
  138 + }
  139 +
  140 + public void setCarrier3(String carrier3) {
  141 + this.carrier3 = carrier3 == null ? null : carrier3.trim();
  142 + }
  143 +
  144 + public String getArrivalstation3() {
  145 + return arrivalstation3;
  146 + }
  147 +
  148 + public void setArrivalstation3(String arrivalstation3) {
  149 + this.arrivalstation3 = arrivalstation3 == null ? null : arrivalstation3.trim();
  150 + }
  151 +
  152 + public String getPaymode() {
  153 + return paymode;
  154 + }
  155 +
  156 + public void setPaymode(String paymode) {
  157 + this.paymode = paymode == null ? null : paymode.trim();
  158 + }
  159 +
  160 + public String getSpecialgoodscode() {
  161 + return specialgoodscode;
  162 + }
  163 +
  164 + public void setSpecialgoodscode(String specialgoodscode) {
  165 + this.specialgoodscode = specialgoodscode == null ? null : specialgoodscode.trim();
  166 + }
  167 +
  168 + public String getShippername() {
  169 + return shippername;
  170 + }
  171 +
  172 + public void setShippername(String shippername) {
  173 + this.shippername = shippername == null ? null : shippername.trim();
  174 + }
  175 +
  176 + public String getShipperaddress() {
  177 + return shipperaddress;
  178 + }
  179 +
  180 + public void setShipperaddress(String shipperaddress) {
  181 + this.shipperaddress = shipperaddress == null ? null : shipperaddress.trim();
  182 + }
  183 +
  184 + public String getConsigneename() {
  185 + return consigneename;
  186 + }
  187 +
  188 + public void setConsigneename(String consigneename) {
  189 + this.consigneename = consigneename == null ? null : consigneename.trim();
  190 + }
  191 +
  192 + public String getConsigneeaddress() {
  193 + return consigneeaddress;
  194 + }
  195 +
  196 + public void setConsigneeaddress(String consigneeaddress) {
  197 + this.consigneeaddress = consigneeaddress == null ? null : consigneeaddress.trim();
  198 + }
  199 +
  200 + public Date getCreatedate() {
  201 + return createdate;
  202 + }
  203 +
  204 + public void setCreatedate(Date createdate) {
  205 + this.createdate = createdate;
  206 + }
  207 +
  208 + public String getIstransfer() {
  209 + return istransfer;
  210 + }
  211 +
  212 + public void setIstransfer(String istransfer) {
  213 + this.istransfer = istransfer == null ? null : istransfer.trim();
  214 + }
  215 +
  216 + public String getShipperCode() {
  217 + return shipperCode;
  218 + }
  219 +
  220 + public void setShipperCode(String shipperCode) {
  221 + this.shipperCode = shipperCode == null ? null : shipperCode.trim();
  222 + }
  223 +
  224 + public String getShipperCountrycode() {
  225 + return shipperCountrycode;
  226 + }
  227 +
  228 + public void setShipperCountrycode(String shipperCountrycode) {
  229 + this.shipperCountrycode = shipperCountrycode == null ? null : shipperCountrycode.trim();
  230 + }
  231 +
  232 + public String getShipperPhone() {
  233 + return shipperPhone;
  234 + }
  235 +
  236 + public void setShipperPhone(String shipperPhone) {
  237 + this.shipperPhone = shipperPhone == null ? null : shipperPhone.trim();
  238 + }
  239 +
  240 + public String getShipperFax() {
  241 + return shipperFax;
  242 + }
  243 +
  244 + public void setShipperFax(String shipperFax) {
  245 + this.shipperFax = shipperFax == null ? null : shipperFax.trim();
  246 + }
  247 +
  248 + public String getConsigneeCode() {
  249 + return consigneeCode;
  250 + }
  251 +
  252 + public void setConsigneeCode(String consigneeCode) {
  253 + this.consigneeCode = consigneeCode == null ? null : consigneeCode.trim();
  254 + }
  255 +
  256 + public String getConsigneeCountrycode() {
  257 + return consigneeCountrycode;
  258 + }
  259 +
  260 + public void setConsigneeCountrycode(String consigneeCountrycode) {
  261 + this.consigneeCountrycode = consigneeCountrycode == null ? null : consigneeCountrycode.trim();
  262 + }
  263 +
  264 + public String getConsigneeFax() {
  265 + return consigneeFax;
  266 + }
  267 +
  268 + public void setConsigneeFax(String consigneeFax) {
  269 + this.consigneeFax = consigneeFax == null ? null : consigneeFax.trim();
  270 + }
  271 +
  272 + public String getSpecificConsigneename() {
  273 + return specificConsigneename;
  274 + }
  275 +
  276 + public void setSpecificConsigneename(String specificConsigneename) {
  277 + this.specificConsigneename = specificConsigneename == null ? null : specificConsigneename.trim();
  278 + }
  279 +
  280 + public String getSpecificConsigneePhone() {
  281 + return specificConsigneePhone;
  282 + }
  283 +
  284 + public void setSpecificConsigneePhone(String specificConsigneePhone) {
  285 + this.specificConsigneePhone = specificConsigneePhone == null ? null : specificConsigneePhone.trim();
  286 + }
  287 +
  288 + public String getConsigneePhone() {
  289 + return consigneePhone;
  290 + }
  291 +
  292 + public void setConsigneePhone(String consigneePhone) {
  293 + this.consigneePhone = consigneePhone == null ? null : consigneePhone.trim();
  294 + }
  295 +}
  1 +package com.tianbo.analysis.service;
  2 +
  3 +import com.tianbo.analysis.model.FFMInfo;
  4 +
  5 +import java.util.List;
  6 +
  7 +public interface FFMInfoService {
  8 +
  9 + List<FFMInfo> getDistinctFlightWithPallet(Boolean pallatIsNull);
  10 +
  11 + /**
  12 + *
  13 + * @param record ffm数据
  14 + * @param pallatIsNull 板箱号是否为空
  15 + * @return
  16 + */
  17 + List<FFMInfo> getFFMLastReportOrderByPallet(FFMInfo record,Boolean pallatIsNull);
  18 +
  19 + int updateSelective(FFMInfo record);
  20 +
  21 + /**
  22 + * 更新ffminfo临时表处理完毕的航班舱单信息状态为已处理
  23 + * @param ffm 可处理的舱单信息
  24 + * @return
  25 + */
  26 + int setDealstatusSuccess(FFMInfo ffm);
  27 +
  28 + /**
  29 + *
  30 + * @param record 带有航班号航班日期的FFMINFO实体
  31 + * @param pallatIsNull 板箱号是否为空,为空返回空板箱的数据,不为空返回非空板箱的数据
  32 + * @return ffm报文中带有LAST的报文批次号
  33 + */
  34 + List<FFMInfo> getLastReportOrder(FFMInfo record,Boolean pallatIsNull);
  35 +
  36 + List<FFMInfo> getLastCountByPallet(FFMInfo record,Boolean pallatIsNull);
  37 +
  38 + /**
  39 + * 得到报文到齐的整个航班的舱单数据
  40 + * @param record 带有航班号航班日期的FFMINFO实体
  41 + * @param pallatIsNull 板箱号是否为空,为空返回空板箱的数据,不为空返回非空板箱的数据
  42 + * @return 可入业务库的临时表的舱单数据
  43 + */
  44 + List<FFMInfo> getFFMinfoByPallet(FFMInfo record,Boolean pallatIsNull);
  45 +
  46 +
  47 +}
  1 +package com.tianbo.analysis.service;
  2 +
  3 +public interface FWBInfoService {
  4 +
  5 + int updateFwbToManifest(String waybillMaster);
  6 +}
  1 +package com.tianbo.analysis.service;
  2 +
  3 +import com.tianbo.analysis.model.FFMInfo;
  4 +
  5 +public interface ManifestMasterService {
  6 +
  7 + int insertManifestWithMaster(FFMInfo ffmInfo);
  8 +}
  1 +package com.tianbo.analysis.service;
  2 +
  3 +import com.tianbo.analysis.model.FFMInfo;
  4 +
  5 +public interface ManifestSecondService {
  6 +
  7 + /**
  8 + * 根据舱单挂载分单 到相对航班仓单上
  9 + * 目前这种用舱单的逻辑挂载 是因为 主单表和舱单表是一个表
  10 + * TODO: 2019/5/7 以后架构变了后 分单表跟主单表关联就行 主单表跟 舱单表关联 。不用这种方式挂载了就
  11 + * @param ffm 舱单数据
  12 + * @return
  13 + */
  14 + int setManifestMaster(FFMInfo ffm);
  15 +}
  1 +package com.tianbo.analysis.service.imp;
  2 +
  3 +import com.tianbo.analysis.dao.FFMInfoMapper;
  4 +import com.tianbo.analysis.model.FFMInfo;
  5 +import com.tianbo.analysis.service.FFMInfoService;
  6 +import org.springframework.beans.factory.annotation.Autowired;
  7 +import org.springframework.stereotype.Service;
  8 +
  9 +import java.util.List;
  10 +
  11 +@Service
  12 +public class FFMInfoServiceImp implements FFMInfoService {
  13 +
  14 + @Autowired
  15 + FFMInfoMapper ffmInfoMapper;
  16 +
  17 + @Override
  18 + public List<FFMInfo> getDistinctFlightWithPallet(Boolean pallatIsNull){
  19 + if (pallatIsNull){
  20 + return ffmInfoMapper.getDistinctFlightWithPalletNull();
  21 + }else {
  22 + return ffmInfoMapper.getDistinctFlightWithPallet();
  23 + }
  24 + }
  25 +
  26 + @Override
  27 + public List<FFMInfo> getFFMLastReportOrderByPallet(FFMInfo record,Boolean pallatIsNull){
  28 + if (pallatIsNull){
  29 + return ffmInfoMapper.getFFMLastReportOrderByNullPallet(record);
  30 + }else {
  31 + return ffmInfoMapper.getFFMLastReportOrderByPallet(record);
  32 + }
  33 + }
  34 +
  35 + @Override
  36 + public int updateSelective(FFMInfo record){
  37 + return ffmInfoMapper.updateSelective(record);
  38 + }
  39 +
  40 + @Override
  41 + public int setDealstatusSuccess(FFMInfo ffm){
  42 + //舱单业务数据入业务库成功后,更新舱单待处理表的数据状态为 1,根据航班号+航班日期+主单号
  43 + FFMInfo temp_ffm = new FFMInfo();
  44 + temp_ffm.setFlightno(ffm.getFlightno());
  45 + temp_ffm.setFlightdate(ffm.getFlightdate());
  46 + temp_ffm.setWaybillnomaster(ffm.getWaybillnomaster());
  47 + temp_ffm.setDealstatus("1");
  48 + return updateSelective(temp_ffm);
  49 + }
  50 +
  51 + @Override
  52 + public List<FFMInfo> getLastReportOrder(FFMInfo record,Boolean pallatIsNull){
  53 + if (pallatIsNull){
  54 + return ffmInfoMapper.getLastReportOrderByNullPallet(record);
  55 + }else {
  56 + return ffmInfoMapper.getLastReportOrderByPallet(record);
  57 + }
  58 + }
  59 +
  60 + @Override
  61 + public List<FFMInfo> getLastCountByPallet(FFMInfo record,Boolean pallatIsNull){
  62 + if (pallatIsNull){
  63 + return ffmInfoMapper.lastCountByNullPallet(record);
  64 + }else {
  65 + return ffmInfoMapper.lastCountByPallet(record);
  66 + }
  67 + }
  68 +
  69 + @Override
  70 + public List<FFMInfo> getFFMinfoByPallet(FFMInfo record,Boolean pallatIsNull){
  71 + if (pallatIsNull){
  72 + return ffmInfoMapper.getFFMinfoByNullpallet(record);
  73 + }else {
  74 + return ffmInfoMapper.getFFMinfoBypallet(record);
  75 + }
  76 + }
  77 +}
  1 +package com.tianbo.analysis.service.imp;
  2 +
  3 +import com.tianbo.analysis.dao.FWBINFOMapper;
  4 +import com.tianbo.analysis.dao.ORIGINMANIFESTMASTERMapper;
  5 +import com.tianbo.analysis.model.FWBINFO;
  6 +import com.tianbo.analysis.service.FWBInfoService;
  7 +import org.springframework.beans.factory.annotation.Autowired;
  8 +import org.springframework.stereotype.Service;
  9 +
  10 +import java.util.List;
  11 +
  12 +@Service
  13 +public class FWBInfoServiceImp implements FWBInfoService {
  14 +
  15 + @Autowired
  16 + FWBINFOMapper fwbinfoMapper;
  17 +
  18 + @Autowired
  19 + ORIGINMANIFESTMASTERMapper originmanifestmasterMapper;
  20 +
  21 + @Override
  22 + public int updateFwbToManifest(String waybillMaster){
  23 + //舱单报文入库后, 更新FWB信息,将FWB临时表的信息更新到 舱单业务表
  24 + List<FWBINFO> fwbinfos = fwbinfoMapper.queryFwbInfo(waybillMaster);
  25 + if (fwbinfos!=null && !fwbinfos.isEmpty()){
  26 + FWBINFO _model_fwb = fwbinfos.get(0);
  27 + return originmanifestmasterMapper.updateFWBByFWBInfoAndStatus(_model_fwb);
  28 + }
  29 + return 0;
  30 + }
  31 +
  32 +}
  1 +package com.tianbo.analysis.service.imp;
  2 +
  3 +import com.tianbo.analysis.dao.ORIGINMANIFESTMASTERMapper;
  4 +import com.tianbo.analysis.model.FFMInfo;
  5 +import com.tianbo.analysis.model.ORIGINMANIFESTMASTER;
  6 +import com.tianbo.analysis.service.FFMInfoService;
  7 +import com.tianbo.analysis.service.ManifestMasterService;
  8 +import com.tianbo.analysis.service.ManifestSecondService;
  9 +import org.springframework.beans.factory.annotation.Autowired;
  10 +import org.springframework.stereotype.Service;
  11 +
  12 +import java.util.Date;
  13 +import java.util.List;
  14 +
  15 +@Service
  16 +public class ManifestMasterServiceImp implements ManifestMasterService{
  17 +
  18 + @Autowired
  19 + ORIGINMANIFESTMASTERMapper originmanifestmasterMapper;
  20 +
  21 + @Autowired
  22 + FFMInfoService ffmInfoService;
  23 +
  24 + @Override
  25 + public int insertManifestWithMaster(FFMInfo item){
  26 + ORIGINMANIFESTMASTER master = new ORIGINMANIFESTMASTER();
  27 + master.setWaybillnomaster(item.getWaybillnomaster());
  28 + master.setFlightDate(item.getFlightdate());
  29 + master.setFlightno(item.getFlightno());
  30 + List<ORIGINMANIFESTMASTER> _masterinfo = originmanifestmasterMapper.queryMasterInfo(master);
  31 +
  32 + //业务库没此运单的数据,则写入业务库数据,否则更新临时表此运单处理状态
  33 + if (_masterinfo!=null && _masterinfo.size()==0){
  34 + master.setAutoid(item.getAutoid());
  35 + master.setOriginatingstation(item.getOriginatingstation());
  36 + master.setDestinationstation(item.getDestinationstation());
  37 + master.setSegment(item.getOriginatingstation() + "-" + item.getDestinationstation());
  38 + //填写分批标识
  39 + master.setIsbatch(item.getIsbatch());
  40 + //运单起始地
  41 + master.setOriginatingstationBill(item.getOriginatingstationBill());
  42 + //运单目的地
  43 + master.setDestinationstationBill(item.getDestinationstationBill());
  44 + //舱单件数
  45 + master.setManifesttotalpiece(item.getManifesttotalpiece());
  46 + //舱单重量
  47 + master.setManifesttotalweight(item.getManifesttotalweight());
  48 + master.setCustomsstatus("01");
  49 + master.setCustomscode(item.getCustomscode());
  50 + master.setReportorder("");
  51 + master.setIslast("");
  52 + master.setCreatedate(new Date());
  53 +
  54 + return originmanifestmasterMapper.insertSelective(master);
  55 + //写入完毕
  56 + }else {
  57 + //重复数据不操作,直接更新掉临时表数据状态
  58 + ffmInfoService.setDealstatusSuccess(item);
  59 + }
  60 + return 0;
  61 + }
  62 +}
  1 +package com.tianbo.analysis.service.imp;
  2 +
  3 +import com.tianbo.analysis.dao.OriginmanifestsecondaryMapper;
  4 +import com.tianbo.analysis.model.FFMInfo;
  5 +import com.tianbo.analysis.model.Originmanifestsecondary;
  6 +import com.tianbo.analysis.service.ManifestSecondService;
  7 +import org.springframework.beans.factory.annotation.Autowired;
  8 +import org.springframework.stereotype.Service;
  9 +
  10 +import java.util.List;
  11 +
  12 +@Service
  13 +public class ManifestSecondServiceImp implements ManifestSecondService {
  14 +
  15 + @Autowired
  16 + OriginmanifestsecondaryMapper originmanifestsecondaryMapper;
  17 +
  18 + @Override
  19 + public int setManifestMaster(FFMInfo ffm){
  20 +
  21 + String isBatch = ffm.getIsbatch();
  22 + isBatch = (isBatch == null) ? "" : isBatch;
  23 + //未分批的分单 如果已经挂载到主单上就不挂载了
  24 + if (isBatch.equals("T") || isBatch.equals("S") || isBatch.equals("D") || isBatch.equals("P") || isBatch.equals("M")){
  25 + }
  26 + //否则是分批标识的 要挂载到最新的航班的主单下 Todo: 这里后面判断是否需要做分批和非分批的挂载方式判定
  27 +
  28 + //从分单表取属于此主单下的分单列表,更新主分单关系
  29 + List<Originmanifestsecondary> list_seondary = originmanifestsecondaryMapper.selectByFWb(ffm.getWaybillnomaster());
  30 + if (list_seondary != null && !list_seondary.isEmpty()){
  31 + for (Originmanifestsecondary manifestsecondary : list_seondary) {
  32 +
  33 +
  34 + Originmanifestsecondary secondary = new Originmanifestsecondary();
  35 + secondary.setAutoid(manifestsecondary.getAutoid());
  36 + secondary.setOriginmanifestmasterautoid(ffm.getAutoid());
  37 + secondary.setCustomsstatus(ffm.getCustomsstatus());
  38 + int i =originmanifestsecondaryMapper.updateMasterAutoId(secondary);
  39 + return i;
  40 + }
  41 + }
  42 +
  43 +
  44 + return 0;
  45 + }
  46 +}
  1 +package com.tianbo.analysis.task;
  2 +
  3 +import com.netflix.discovery.converters.Auto;
  4 +import com.tianbo.analysis.dao.FWBINFOMapper;
  5 +import com.tianbo.analysis.dao.ORIGINMANIFESTMASTERMapper;
  6 +import com.tianbo.analysis.dao.OriginmanifestsecondaryMapper;
  7 +import com.tianbo.analysis.model.FFMInfo;
  8 +import com.tianbo.analysis.model.FWBINFO;
  9 +import com.tianbo.analysis.model.ORIGINMANIFESTMASTER;
  10 +import com.tianbo.analysis.model.Originmanifestsecondary;
  11 +import com.tianbo.analysis.service.FFMInfoService;
  12 +import com.tianbo.analysis.service.FWBInfoService;
  13 +import com.tianbo.analysis.service.ManifestMasterService;
  14 +import com.tianbo.analysis.service.ManifestSecondService;
  15 +import org.springframework.beans.factory.annotation.Autowired;
  16 +import org.springframework.stereotype.Component;
  17 +
  18 +import java.util.Date;
  19 +import java.util.List;
  20 +
  21 +/**
  22 + * ffm临时业务表处理入业务库
  23 + *
  24 + */
  25 +@Component
  26 +public class FFMInfoHandle {
  27 +
  28 + @Autowired
  29 + FFMInfoService ffmInfoService;
  30 +
  31 + @Autowired
  32 + ORIGINMANIFESTMASTERMapper originmanifestmasterMapper;
  33 +
  34 + @Autowired
  35 + ManifestMasterService manifestMasterService;
  36 +
  37 +
  38 + @Autowired
  39 + FWBInfoService fwbInfoService;
  40 +
  41 + @Autowired
  42 + OriginmanifestsecondaryMapper originmanifestsecondaryMapper;
  43 +
  44 + @Autowired
  45 + ManifestSecondService secondService;
  46 +
  47 + public boolean dealFFMInfo(){
  48 + boolean result =false;
  49 + try {
  50 + //1.处理板箱非空的数据
  51 + List<FFMInfo> ffmInfoList = ffmInfoService.getDistinctFlightWithPallet(false);
  52 + if (ffmInfoList!=null && !ffmInfoList.isEmpty()){
  53 + for (FFMInfo item_f:ffmInfoList) {
  54 + //针对补发报文处理,补发的报文: FFM_INFOB表数据,存储的报文批次01对应标识是LAST
  55 + List<FFMInfo> ffmlist_reportorder_1 = ffmInfoService.getFFMLastReportOrderByPallet(item_f,false);
  56 +
  57 + /**
  58 + * 判断列表是否为空
  59 + * 不为空则说明 FFM只有一份,第一份报文包含LAST标识
  60 + */
  61 + if (ffmlist_reportorder_1 !=null && !ffmlist_reportorder_1.isEmpty()){
  62 + for (FFMInfo item:ffmlist_reportorder_1) {
  63 +
  64 + //1.1 查看舱单运单业务表是否已存在运单数据,不存在则插入业务表,存在则更新临时表的数据为已处理
  65 + int Flag = 0;
  66 +
  67 + Flag = manifestMasterService.insertManifestWithMaster(item);
  68 +
  69 + if (Flag>0){
  70 + result = true;
  71 + //业务数据入库成功后,更新舱单待处理表的数据状态为 1,根据航班号+航班日期+主单号
  72 + ffmInfoService.setDealstatusSuccess(item);
  73 +
  74 + //舱单报文入库后, 更新FWB信息,将FWB临时表的信息更新到 舱单业务表
  75 + fwbInfoService.updateFwbToManifest(item.getWaybillnomaster());
  76 +
  77 + //分单挂主单
  78 + int i = secondService.setManifestMaster(item);
  79 +
  80 + }
  81 + }
  82 + }
  83 + /**
  84 + *FFM文件多份处理
  85 + */
  86 + else
  87 + {
  88 + //首先确定带有LAST的ffm的最批次大序号
  89 + //根据航班号+航班日期 判断LAST报对应的报文批次
  90 + List<FFMInfo> _last = ffmInfoService.getLastReportOrder(item_f,false);
  91 + List<FFMInfo> _last_count = ffmInfoService.getLastCountByPallet(item_f,false);
  92 + if (_last != null && _last.size() > 0 && _last_count != null && _last_count.size() > 0){
  93 + int mm = Integer.parseInt(_last.get(0).getReportorder());
  94 + int nn = Integer.parseInt(_last_count.get(0).getReportorder());
  95 + if (mm > 0 && nn > 0 && mm == nn){
  96 + // 业务数据 开始入库
  97 +
  98 + List<FFMInfo> ffmlist = ffmInfoService.getFFMinfoByPallet(item_f,false);
  99 + if (ffmlist != null && ffmlist.size() > 0){
  100 +
  101 + for (FFMInfo item:ffmlist) {
  102 + int Flag = 0;
  103 + Flag = manifestMasterService.insertManifestWithMaster(item);
  104 +
  105 + if (Flag>0){
  106 + result = true;
  107 +
  108 + //业务数据入库成功后,更新舱单待处理表的数据状态为 1,根据航班号+航班日期+主单号
  109 + ffmInfoService.setDealstatusSuccess(item);
  110 +
  111 + //舱单报文入库后, 更新FWB信息,将FWB临时表的信息更新到 舱单业务表
  112 + fwbInfoService.updateFwbToManifest(item.getWaybillnomaster());
  113 +
  114 + //分单挂主单
  115 + int i = secondService.setManifestMaster(item);
  116 + }
  117 + }
  118 + }
  119 + }
  120 + }
  121 + }
  122 + }
  123 + }
  124 + }catch (Exception e){
  125 + e.printStackTrace();
  126 + }
  127 + return true;
  128 + }
  129 +}
@@ -45,6 +45,6 @@ @@ -45,6 +45,6 @@
45 <property name="enableSubPackages" value="true"/> 45 <property name="enableSubPackages" value="true"/>
46 </javaClientGenerator> 46 </javaClientGenerator>
47 <!-- 要生成的表 tableName是数据库中的表名或视图名 domainObjectName是实体类名--> 47 <!-- 要生成的表 tableName是数据库中的表名或视图名 domainObjectName是实体类名-->
48 - <table tableName="originmanifestsecondary" domainObjectName="originmanifestsecondary" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table> 48 + <table tableName="fwb_info" domainObjectName="FWBINFO" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
49 </context> 49 </context>
50 </generatorConfiguration> 50 </generatorConfiguration>
  1 +<?xml version="1.0" encoding="UTF-8" ?>
  2 +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
  3 +<mapper namespace="com.tianbo.analysis.dao.FFMInfoMapper" >
  4 + <resultMap id="BaseResultMap" type="com.tianbo.analysis.model.FFMInfo" >
  5 + <result column="AUTOID" property="autoid" jdbcType="VARCHAR" />
  6 + <result column="CREATEDATE" property="createdate" jdbcType="TIMESTAMP" />
  7 + <result column="FLIGHTNO" property="flightno" jdbcType="VARCHAR" />
  8 + <result column="FLIGHTDATE" property="flightdate" jdbcType="TIMESTAMP" />
  9 + <result column="WAYBILLNOMASTER" property="waybillnomaster" jdbcType="VARCHAR" />
  10 + <result column="ORIGINATINGSTATION" property="originatingstation" jdbcType="VARCHAR" />
  11 + <result column="DESTINATIONSTATION" property="destinationstation" jdbcType="VARCHAR" />
  12 + <result column="MANIFESTTOTALPIECE" property="manifesttotalpiece" jdbcType="VARCHAR" />
  13 + <result column="MANIFESTTOTALWEIGHT" property="manifesttotalweight" jdbcType="VARCHAR" />
  14 + <result column="PRODUCTNAME" property="productname" jdbcType="VARCHAR" />
  15 + <result column="SPECIALGOODSCODE" property="specialgoodscode" jdbcType="VARCHAR" />
  16 + <result column="CUSTOMSCODE" property="customscode" jdbcType="VARCHAR" />
  17 + <result column="CUSTOMSSTATUS" property="customsstatus" jdbcType="VARCHAR" />
  18 + <result column="ISBATCH" property="isbatch" jdbcType="VARCHAR" />
  19 + <result column="PALLET" property="pallet" jdbcType="VARCHAR" />
  20 + <result column="REPORTORDER" property="reportorder" jdbcType="VARCHAR" />
  21 + <result column="ISLAST" property="islast" jdbcType="VARCHAR" />
  22 + <result column="ORIGINATINGSTATION_BILL" property="originatingstationBill" jdbcType="VARCHAR" />
  23 + <result column="DESTINATIONSTATION_BILL" property="destinationstationBill" jdbcType="VARCHAR" />
  24 + <result column="TOTALPIECE" property="totalpiece" jdbcType="VARCHAR" />
  25 + <result column="DEALSTATUS" property="dealstatus" jdbcType="VARCHAR" />
  26 + </resultMap>
  27 + <insert id="insert" parameterType="com.tianbo.analysis.model.FFMInfo" >
  28 + insert into FFM_INFO (AUTOID, CREATEDATE, FLIGHTNO,
  29 + FLIGHTDATE, WAYBILLNOMASTER, ORIGINATINGSTATION,
  30 + DESTINATIONSTATION, MANIFESTTOTALPIECE,
  31 + MANIFESTTOTALWEIGHT, PRODUCTNAME, SPECIALGOODSCODE,
  32 + CUSTOMSCODE, CUSTOMSSTATUS, ISBATCH,
  33 + PALLET, REPORTORDER, ISLAST,
  34 + ORIGINATINGSTATION_BILL, DESTINATIONSTATION_BILL,
  35 + TOTALPIECE, DEALSTATUS)
  36 + values (#{autoid,jdbcType=VARCHAR}, #{createdate,jdbcType=TIMESTAMP}, #{flightno,jdbcType=VARCHAR},
  37 + #{flightdate,jdbcType=TIMESTAMP}, #{waybillnomaster,jdbcType=VARCHAR}, #{originatingstation,jdbcType=VARCHAR},
  38 + #{destinationstation,jdbcType=VARCHAR}, #{manifesttotalpiece,jdbcType=VARCHAR},
  39 + #{manifesttotalweight,jdbcType=VARCHAR}, #{productname,jdbcType=VARCHAR}, #{specialgoodscode,jdbcType=VARCHAR},
  40 + #{customscode,jdbcType=VARCHAR}, #{customsstatus,jdbcType=VARCHAR}, #{isbatch,jdbcType=VARCHAR},
  41 + #{pallet,jdbcType=VARCHAR}, #{reportorder,jdbcType=VARCHAR}, #{islast,jdbcType=VARCHAR},
  42 + #{originatingstationBill,jdbcType=VARCHAR}, #{destinationstationBill,jdbcType=VARCHAR},
  43 + #{totalpiece,jdbcType=VARCHAR}, #{dealstatus,jdbcType=VARCHAR})
  44 + </insert>
  45 + <insert id="insertSelective" parameterType="com.tianbo.analysis.model.FFMInfo" >
  46 + insert into FFM_INFO
  47 + <trim prefix="(" suffix=")" suffixOverrides="," >
  48 + <if test="autoid != null" >
  49 + AUTOID,
  50 + </if>
  51 + <if test="createdate != null" >
  52 + CREATEDATE,
  53 + </if>
  54 + <if test="flightno != null" >
  55 + FLIGHTNO,
  56 + </if>
  57 + <if test="flightdate != null" >
  58 + FLIGHTDATE,
  59 + </if>
  60 + <if test="waybillnomaster != null" >
  61 + WAYBILLNOMASTER,
  62 + </if>
  63 + <if test="originatingstation != null" >
  64 + ORIGINATINGSTATION,
  65 + </if>
  66 + <if test="destinationstation != null" >
  67 + DESTINATIONSTATION,
  68 + </if>
  69 + <if test="manifesttotalpiece != null" >
  70 + MANIFESTTOTALPIECE,
  71 + </if>
  72 + <if test="manifesttotalweight != null" >
  73 + MANIFESTTOTALWEIGHT,
  74 + </if>
  75 + <if test="productname != null" >
  76 + PRODUCTNAME,
  77 + </if>
  78 + <if test="specialgoodscode != null" >
  79 + SPECIALGOODSCODE,
  80 + </if>
  81 + <if test="customscode != null" >
  82 + CUSTOMSCODE,
  83 + </if>
  84 + <if test="customsstatus != null" >
  85 + CUSTOMSSTATUS,
  86 + </if>
  87 + <if test="isbatch != null" >
  88 + ISBATCH,
  89 + </if>
  90 + <if test="pallet != null" >
  91 + PALLET,
  92 + </if>
  93 + <if test="reportorder != null" >
  94 + REPORTORDER,
  95 + </if>
  96 + <if test="islast != null" >
  97 + ISLAST,
  98 + </if>
  99 + <if test="originatingstationBill != null" >
  100 + ORIGINATINGSTATION_BILL,
  101 + </if>
  102 + <if test="destinationstationBill != null" >
  103 + DESTINATIONSTATION_BILL,
  104 + </if>
  105 + <if test="totalpiece != null" >
  106 + TOTALPIECE,
  107 + </if>
  108 + <if test="dealstatus != null" >
  109 + DEALSTATUS,
  110 + </if>
  111 + </trim>
  112 + <trim prefix="values (" suffix=")" suffixOverrides="," >
  113 + <if test="autoid != null" >
  114 + #{autoid,jdbcType=VARCHAR},
  115 + </if>
  116 + <if test="createdate != null" >
  117 + #{createdate,jdbcType=TIMESTAMP},
  118 + </if>
  119 + <if test="flightno != null" >
  120 + #{flightno,jdbcType=VARCHAR},
  121 + </if>
  122 + <if test="flightdate != null" >
  123 + #{flightdate,jdbcType=TIMESTAMP},
  124 + </if>
  125 + <if test="waybillnomaster != null" >
  126 + #{waybillnomaster,jdbcType=VARCHAR},
  127 + </if>
  128 + <if test="originatingstation != null" >
  129 + #{originatingstation,jdbcType=VARCHAR},
  130 + </if>
  131 + <if test="destinationstation != null" >
  132 + #{destinationstation,jdbcType=VARCHAR},
  133 + </if>
  134 + <if test="manifesttotalpiece != null" >
  135 + #{manifesttotalpiece,jdbcType=VARCHAR},
  136 + </if>
  137 + <if test="manifesttotalweight != null" >
  138 + #{manifesttotalweight,jdbcType=VARCHAR},
  139 + </if>
  140 + <if test="productname != null" >
  141 + #{productname,jdbcType=VARCHAR},
  142 + </if>
  143 + <if test="specialgoodscode != null" >
  144 + #{specialgoodscode,jdbcType=VARCHAR},
  145 + </if>
  146 + <if test="customscode != null" >
  147 + #{customscode,jdbcType=VARCHAR},
  148 + </if>
  149 + <if test="customsstatus != null" >
  150 + #{customsstatus,jdbcType=VARCHAR},
  151 + </if>
  152 + <if test="isbatch != null" >
  153 + #{isbatch,jdbcType=VARCHAR},
  154 + </if>
  155 + <if test="pallet != null" >
  156 + #{pallet,jdbcType=VARCHAR},
  157 + </if>
  158 + <if test="reportorder != null" >
  159 + #{reportorder,jdbcType=VARCHAR},
  160 + </if>
  161 + <if test="islast != null" >
  162 + #{islast,jdbcType=VARCHAR},
  163 + </if>
  164 + <if test="originatingstationBill != null" >
  165 + #{originatingstationBill,jdbcType=VARCHAR},
  166 + </if>
  167 + <if test="destinationstationBill != null" >
  168 + #{destinationstationBill,jdbcType=VARCHAR},
  169 + </if>
  170 + <if test="totalpiece != null" >
  171 + #{totalpiece,jdbcType=VARCHAR},
  172 + </if>
  173 + <if test="dealstatus != null" >
  174 + #{dealstatus,jdbcType=VARCHAR},
  175 + </if>
  176 + </trim>
  177 + </insert>
  178 + <select id="getDistinctFlightWithPalletNull" resultType="com.tianbo.analysis.model.FFMInfo">
  179 + select distinct flightno,flightdate from ffm_info
  180 + where createdate &lt;= to_date(to_char(sysdate-1/24/60,'yyyy-mm-dd HH24:MI:SS'),'yyyy-mm-dd HH24:MI:SS')
  181 + and dealstatus='0'
  182 + and islast='LAST'
  183 + and pallet is null
  184 + </select>
  185 + <select id="getDistinctFlightWithPallet" resultType="com.tianbo.analysis.model.FFMInfo">
  186 + select distinct flightno,flightdate from ffm_info
  187 + where createdate <![CDATA[<=]]> to_date(to_char(sysdate-1/24/60,'yyyy-mm-dd HH24:MI:SS'),'yyyy-mm-dd HH24:MI:SS')
  188 + and dealstatus='0'
  189 + and islast='LAST'
  190 + and pallet is not null
  191 + </select>
  192 + <select id="getLastReportOrderByNullPallet" resultType="com.tianbo.analysis.model.FFMInfo" parameterType="com.tianbo.analysis.model.FFMInfo">
  193 + SELECT
  194 + NVL(MAX(reportorder),0) AS reportorder
  195 + FROM
  196 + FFM_INFO
  197 + WHERE
  198 + dealstatus='0'
  199 + and
  200 + islast = 'LAST'
  201 + and
  202 + flightno= #{flightno,jdbcType=VARCHAR}
  203 + and
  204 + flightdate= #{flightdate,jdbcType=TIMESTAMP}
  205 + and
  206 + pallet is null
  207 + </select>
  208 + <select id="getLastReportOrderByPallet" resultType="com.tianbo.analysis.model.FFMInfo" parameterType="com.tianbo.analysis.model.FFMInfo">
  209 + SELECT
  210 + NVL(MAX(reportorder),0) AS reportorder
  211 + FROM
  212 + ffm_info
  213 + WHERE
  214 + dealstatus='0'
  215 + AND
  216 + islast = 'LAST'
  217 + AND
  218 + flightno= #{flightno,jdbcType=VARCHAR}
  219 + AND
  220 + flightdate= #{flightdate,jdbcType=TIMESTAMP}
  221 + AND
  222 + pallet is not null
  223 + </select>
  224 + <select id="lastCountByNullPallet" resultType="com.tianbo.analysis.model.FFMInfo" parameterType="com.tianbo.analysis.model.FFMInfo">
  225 + SELECT
  226 + count(*) as reportorder
  227 + FROM
  228 + (
  229 + SELECT
  230 + distinct reportorder,islast
  231 + FROM
  232 + ffm_info
  233 + WHERE
  234 + dealstatus='0'
  235 + and
  236 + flightno= #{flightno,jdbcType=VARCHAR}
  237 + and
  238 + flightdate = #{flightdate,jdbcType=TIMESTAMP}
  239 + and pallet is null
  240 + )
  241 + </select>
  242 + <select id="lastCountByPallet" resultType="com.tianbo.analysis.model.FFMInfo" parameterType="com.tianbo.analysis.model.FFMInfo">
  243 + SELECT
  244 + count(*) as reportorder
  245 + FROM
  246 + (
  247 + SELECT
  248 + distinct reportorder,islast
  249 + FROM
  250 + ffm_info
  251 + WHERE
  252 + dealstatus='0'
  253 + and
  254 + flightno= #{flightno,jdbcType=VARCHAR}
  255 + and
  256 + flightdate = #{flightdate,jdbcType=TIMESTAMP}
  257 + and pallet is NOT null
  258 + )
  259 + </select>
  260 + <select id="getFFMLastReportOrderByNullPallet" resultType="com.tianbo.analysis.model.FFMInfo" parameterType="com.tianbo.analysis.model.FFMInfo">
  261 + SELECT
  262 + tb.flightno,
  263 + tb.flightdate,
  264 + tb.waybillnomaster,
  265 + SUM (tb.manifesttotalpiece) manifesttotalpiece,
  266 + SUM (tb.manifesttotalweight) manifesttotalweight,
  267 + MAX (customscode) customscode,
  268 + MAX (customsstatus) customsstatus,
  269 + MAX (originatingstation_bill) originatingstation_bill,
  270 + MAX (destinationstation_bill) destinationstation_bill,
  271 + MAX (isbatch) isbatch,
  272 + MAX (autoid) autoid,
  273 + MAX (originatingstation) originatingstation,
  274 + MAX (destinationstation) destinationstation
  275 + FROM
  276 + (
  277 + SELECT
  278 + T .*
  279 + FROM
  280 + (
  281 + SELECT
  282 + A .*, ROW_NUMBER () OVER (
  283 + PARTITION BY flightno,
  284 + flightdate,
  285 + waybillnomaster,
  286 + pallet,
  287 + reportorder
  288 + ORDER BY
  289 + createdate DESC
  290 + ) rw
  291 + FROM
  292 + ffm_info A
  293 + WHERE
  294 + islast = 'LAST'
  295 + AND reportorder = '1'
  296 + AND dealstatus = '0'
  297 + AND flightno = #{flightno,jdbcType=VARCHAR}
  298 + AND flightdate = #{flightdate,jdbcType=TIMESTAMP}
  299 + AND pallet IS NULL
  300 + ) T
  301 + WHERE
  302 + T .rw = 1
  303 + ORDER BY
  304 + waybillnomaster
  305 + ) tb
  306 + GROUP BY
  307 + tb.flightno,
  308 + tb.flightdate,
  309 + tb.waybillnomaster
  310 + ORDER BY
  311 + tb.waybillnomaster
  312 + </select>
  313 + <select id="getFFMLastReportOrderByPallet" resultType="com.tianbo.analysis.model.FFMInfo" parameterType="com.tianbo.analysis.model.FFMInfo">
  314 + SELECT
  315 + tb.flightno,
  316 + tb.flightdate,
  317 + tb.waybillnomaster,
  318 + SUM (tb.manifesttotalpiece) manifesttotalpiece,
  319 + SUM (tb.manifesttotalweight) manifesttotalweight,
  320 + MAX (customscode) customscode,
  321 + MAX (customsstatus) customsstatus,
  322 + MAX (originatingstation_bill) originatingstation_bill,
  323 + MAX (destinationstation_bill) destinationstation_bill,
  324 + MAX (isbatch) isbatch,
  325 + MAX (autoid) autoid,
  326 + MAX (originatingstation) originatingstation,
  327 + MAX (destinationstation) destinationstation
  328 + FROM
  329 + (
  330 + SELECT
  331 + T .*
  332 + FROM
  333 + (
  334 + SELECT
  335 + A .*, ROW_NUMBER () OVER (
  336 + PARTITION BY flightno,
  337 + flightdate,
  338 + waybillnomaster,
  339 + pallet,
  340 + reportorder
  341 + ORDER BY
  342 + createdate DESC
  343 + ) rw
  344 + FROM
  345 + ffm_info A
  346 + WHERE
  347 + islast = 'LAST'
  348 + AND reportorder = '1'
  349 + AND dealstatus = '0'
  350 + AND flightno = #{flightno,jdbcType=VARCHAR}
  351 + AND flightdate = #{flightdate,jdbcType=TIMESTAMP}
  352 + AND pallet IS NOT NULL
  353 + ) T
  354 + WHERE
  355 + T .rw = 1
  356 + ORDER BY
  357 + waybillnomaster
  358 + ) tb
  359 + GROUP BY
  360 + tb.flightno,
  361 + tb.flightdate,
  362 + tb.waybillnomaster
  363 + ORDER BY
  364 + tb.waybillnomaster
  365 + </select>
  366 + <select id="getFFMinfoByNullpallet" resultType="com.tianbo.analysis.model.FFMInfo" parameterType="com.tianbo.analysis.model.FFMInfo">
  367 + SELECT
  368 + tb.flightno,
  369 + tb.flightdate,
  370 + tb.waybillnomaster,
  371 + SUM (tb.manifesttotalpiece) manifesttotalpiece,
  372 + SUM (tb.manifesttotalweight) manifesttotalweight,
  373 + MAX (customscode) customscode,
  374 + MAX (customsstatus) customsstatus,
  375 + MAX (originatingstation_bill) originatingstation_bill,
  376 + MAX (destinationstation_bill) destinationstation_bill,
  377 + MAX (isbatch) isbatch,
  378 + MAX (autoid) autoid,
  379 + MAX (originatingstation) originatingstation,
  380 + MAX (destinationstation) destinationstation
  381 + FROM
  382 + (
  383 + SELECT
  384 + T .*
  385 + FROM
  386 + (
  387 + SELECT
  388 + A .*, ROW_NUMBER () OVER (
  389 + PARTITION BY flightno,
  390 + flightdate,
  391 + waybillnomaster,
  392 + pallet,
  393 + reportorder
  394 + ORDER BY
  395 + createdate DESC
  396 + ) rw
  397 + FROM
  398 + ffm_info A
  399 + WHERE
  400 + dealstatus = '0'
  401 + AND flightno = #{flightno,jdbcType=VARCHAR}
  402 + AND flightdate = #{flightdate,jdbcType=TIMESTAMP}
  403 + AND pallet IS NULL
  404 + ) T
  405 + WHERE
  406 + T .rw = 1
  407 + ORDER BY
  408 + waybillnomaster
  409 + ) tb
  410 + GROUP BY
  411 + tb.flightno,
  412 + tb.flightdate,
  413 + tb.waybillnomaster
  414 + ORDER BY
  415 + tb.waybillnomaster
  416 + </select>
  417 +
  418 + <select id="getFFMinfoBypallet" resultType="com.tianbo.analysis.model.FFMInfo" parameterType="com.tianbo.analysis.model.FFMInfo">
  419 + SELECT
  420 + tb.flightno,
  421 + tb.flightdate,
  422 + tb.waybillnomaster,
  423 + SUM (tb.manifesttotalpiece) manifesttotalpiece,
  424 + SUM (tb.manifesttotalweight) manifesttotalweight,
  425 + MAX (customscode) customscode,
  426 + MAX (customsstatus) customsstatus,
  427 + MAX (originatingstation_bill) originatingstation_bill,
  428 + MAX (destinationstation_bill) destinationstation_bill,
  429 + MAX (isbatch) isbatch,
  430 + MAX (autoid) autoid,
  431 + MAX (originatingstation) originatingstation,
  432 + MAX (destinationstation) destinationstation
  433 + FROM
  434 + (
  435 + SELECT
  436 + T .*
  437 + FROM
  438 + (
  439 + SELECT
  440 + A .*, ROW_NUMBER () OVER (
  441 + PARTITION BY flightno,
  442 + flightdate,
  443 + waybillnomaster,
  444 + pallet,
  445 + reportorder
  446 + ORDER BY
  447 + createdate DESC
  448 + ) rw
  449 + FROM
  450 + ffm_info A
  451 + WHERE
  452 + dealstatus = '0'
  453 + AND flightno = #{flightno,jdbcType=VARCHAR}
  454 + AND flightdate = #{flightdate,jdbcType=TIMESTAMP}
  455 + AND pallet IS NOT NULL
  456 + ) T
  457 + WHERE
  458 + T .rw = 1
  459 + ORDER BY
  460 + waybillnomaster
  461 + ) tb
  462 + GROUP BY
  463 + tb.flightno,
  464 + tb.flightdate,
  465 + tb.waybillnomaster
  466 + ORDER BY
  467 + tb.waybillnomaster
  468 + </select>
  469 +
  470 + <update id="updateSelective" parameterType="com.tianbo.analysis.model.FFMInfo">
  471 + UPDATE FFM_INFO
  472 + <set >
  473 + <if test="createdate != null" >
  474 + CREATEDATE = #{createdate,jdbcType=TIMESTAMP},
  475 + </if>
  476 + <if test="flightno != null" >
  477 + FLIGHTNO = #{flightno,jdbcType=VARCHAR},
  478 + </if>
  479 + <if test="flightdate != null" >
  480 + FLIGHTDATE = #{flightdate,jdbcType=TIMESTAMP},
  481 + </if>
  482 + <if test="waybillnomaster != null" >
  483 + WAYBILLNOMASTER = #{waybillnomaster,jdbcType=VARCHAR},
  484 + </if>
  485 + <if test="originatingstation != null" >
  486 + ORIGINATINGSTATION = #{originatingstation,jdbcType=VARCHAR},
  487 + </if>
  488 + <if test="destinationstation != null" >
  489 + DESTINATIONSTATION = #{destinationstation,jdbcType=VARCHAR},
  490 + </if>
  491 + <if test="manifesttotalpiece != null" >
  492 + MANIFESTTOTALPIECE = #{manifesttotalpiece,jdbcType=VARCHAR},
  493 + </if>
  494 + <if test="manifesttotalweight != null" >
  495 + MANIFESTTOTALWEIGHT = #{manifesttotalweight,jdbcType=VARCHAR},
  496 + </if>
  497 + <if test="productname != null" >
  498 + PRODUCTNAME = #{productname,jdbcType=VARCHAR},
  499 + </if>
  500 + <if test="specialgoodscode != null" >
  501 + SPECIALGOODSCODE = #{specialgoodscode,jdbcType=VARCHAR},
  502 + </if>
  503 + <if test="customscode != null" >
  504 + CUSTOMSCODE = #{customscode,jdbcType=VARCHAR},
  505 + </if>
  506 + <if test="customsstatus != null" >
  507 + CUSTOMSSTATUS = #{customsstatus,jdbcType=VARCHAR},
  508 + </if>
  509 + <if test="isbatch != null" >
  510 + ISBATCH = #{isbatch,jdbcType=VARCHAR},
  511 + </if>
  512 + <if test="pallet != null" >
  513 + PALLET = #{pallet,jdbcType=VARCHAR},
  514 + </if>
  515 + <if test="reportorder != null" >
  516 + REPORTORDER = #{reportorder,jdbcType=VARCHAR},
  517 + </if>
  518 + <if test="islast != null" >
  519 + ISLAST = #{islast,jdbcType=VARCHAR},
  520 + </if>
  521 + <if test="originatingstationBill != null" >
  522 + ORIGINATINGSTATION_BILL = #{originatingstationBill,jdbcType=VARCHAR},
  523 + </if>
  524 + <if test="destinationstationBill != null" >
  525 + DESTINATIONSTATION_BILL = #{destinationstationBill,jdbcType=VARCHAR},
  526 + </if>
  527 + <if test="totalpiece != null" >
  528 + TOTALPIECE = #{totalpiece,jdbcType=VARCHAR},
  529 + </if>
  530 + <if test="dealstatus != null" >
  531 + DEALSTATUS = #{dealstatus,jdbcType=VARCHAR},
  532 + </if>
  533 + </set>
  534 + WHERE
  535 + flightno= #{flightno,jdbcType=VARCHAR}
  536 + AND flightdate= #{flightdate,jdbcType=TIMESTAMP}
  537 + AND waybillnomaster= #{waybillnomaster,jdbcType=VARCHAR}
  538 + </update>
  539 +</mapper>
  1 +<?xml version="1.0" encoding="UTF-8" ?>
  2 +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
  3 +<mapper namespace="com.tianbo.analysis.dao.FWBINFOMapper" >
  4 + <resultMap id="BaseResultMap" type="com.tianbo.analysis.model.FWBINFO" >
  5 + <result column="AUTOID" property="autoid" jdbcType="VARCHAR" />
  6 + <result column="WAYBILLNOMASTER" property="waybillnomaster" jdbcType="VARCHAR" />
  7 + <result column="TOTALWEIGHT" property="totalweight" jdbcType="VARCHAR" />
  8 + <result column="TOTALPIECE" property="totalpiece" jdbcType="VARCHAR" />
  9 + <result column="PRODUCTNAME" property="productname" jdbcType="VARCHAR" />
  10 + <result column="CARRIER1" property="carrier1" jdbcType="VARCHAR" />
  11 + <result column="ARRIVALSTATION1" property="arrivalstation1" jdbcType="VARCHAR" />
  12 + <result column="CARRIER2" property="carrier2" jdbcType="VARCHAR" />
  13 + <result column="ARRIVALSTATION2" property="arrivalstation2" jdbcType="VARCHAR" />
  14 + <result column="CARRIER3" property="carrier3" jdbcType="VARCHAR" />
  15 + <result column="ARRIVALSTATION3" property="arrivalstation3" jdbcType="VARCHAR" />
  16 + <result column="PAYMODE" property="paymode" jdbcType="VARCHAR" />
  17 + <result column="SPECIALGOODSCODE" property="specialgoodscode" jdbcType="VARCHAR" />
  18 + <result column="SHIPPERNAME" property="shippername" jdbcType="VARCHAR" />
  19 + <result column="SHIPPERADDRESS" property="shipperaddress" jdbcType="VARCHAR" />
  20 + <result column="CONSIGNEENAME" property="consigneename" jdbcType="VARCHAR" />
  21 + <result column="CONSIGNEEADDRESS" property="consigneeaddress" jdbcType="VARCHAR" />
  22 + <result column="CREATEDATE" property="createdate" jdbcType="TIMESTAMP" />
  23 + <result column="ISTRANSFER" property="istransfer" jdbcType="VARCHAR" />
  24 + <result column="SHIPPER_CODE" property="shipperCode" jdbcType="VARCHAR" />
  25 + <result column="SHIPPER_COUNTRYCODE" property="shipperCountrycode" jdbcType="VARCHAR" />
  26 + <result column="SHIPPER_PHONE" property="shipperPhone" jdbcType="VARCHAR" />
  27 + <result column="SHIPPER_FAX" property="shipperFax" jdbcType="VARCHAR" />
  28 + <result column="CONSIGNEE_CODE" property="consigneeCode" jdbcType="VARCHAR" />
  29 + <result column="CONSIGNEE_COUNTRYCODE" property="consigneeCountrycode" jdbcType="VARCHAR" />
  30 + <result column="CONSIGNEE_FAX" property="consigneeFax" jdbcType="VARCHAR" />
  31 + <result column="SPECIFIC_CONSIGNEENAME" property="specificConsigneename" jdbcType="VARCHAR" />
  32 + <result column="SPECIFIC_CONSIGNEE_PHONE" property="specificConsigneePhone" jdbcType="VARCHAR" />
  33 + <result column="CONSIGNEE_PHONE" property="consigneePhone" jdbcType="VARCHAR" />
  34 + </resultMap>
  35 + <insert id="insert" parameterType="com.tianbo.analysis.model.FWBINFO" >
  36 + insert into FWB_INFO (AUTOID, WAYBILLNOMASTER, TOTALWEIGHT,
  37 + TOTALPIECE, PRODUCTNAME, CARRIER1,
  38 + ARRIVALSTATION1, CARRIER2, ARRIVALSTATION2,
  39 + CARRIER3, ARRIVALSTATION3, PAYMODE,
  40 + SPECIALGOODSCODE, SHIPPERNAME, SHIPPERADDRESS,
  41 + CONSIGNEENAME, CONSIGNEEADDRESS, CREATEDATE,
  42 + ISTRANSFER, SHIPPER_CODE, SHIPPER_COUNTRYCODE,
  43 + SHIPPER_PHONE, SHIPPER_FAX, CONSIGNEE_CODE,
  44 + CONSIGNEE_COUNTRYCODE, CONSIGNEE_FAX, SPECIFIC_CONSIGNEENAME,
  45 + SPECIFIC_CONSIGNEE_PHONE, CONSIGNEE_PHONE)
  46 + values (#{autoid,jdbcType=VARCHAR}, #{waybillnomaster,jdbcType=VARCHAR}, #{totalweight,jdbcType=VARCHAR},
  47 + #{totalpiece,jdbcType=VARCHAR}, #{productname,jdbcType=VARCHAR}, #{carrier1,jdbcType=VARCHAR},
  48 + #{arrivalstation1,jdbcType=VARCHAR}, #{carrier2,jdbcType=VARCHAR}, #{arrivalstation2,jdbcType=VARCHAR},
  49 + #{carrier3,jdbcType=VARCHAR}, #{arrivalstation3,jdbcType=VARCHAR}, #{paymode,jdbcType=VARCHAR},
  50 + #{specialgoodscode,jdbcType=VARCHAR}, #{shippername,jdbcType=VARCHAR}, #{shipperaddress,jdbcType=VARCHAR},
  51 + #{consigneename,jdbcType=VARCHAR}, #{consigneeaddress,jdbcType=VARCHAR}, #{createdate,jdbcType=TIMESTAMP},
  52 + #{istransfer,jdbcType=VARCHAR}, #{shipperCode,jdbcType=VARCHAR}, #{shipperCountrycode,jdbcType=VARCHAR},
  53 + #{shipperPhone,jdbcType=VARCHAR}, #{shipperFax,jdbcType=VARCHAR}, #{consigneeCode,jdbcType=VARCHAR},
  54 + #{consigneeCountrycode,jdbcType=VARCHAR}, #{consigneeFax,jdbcType=VARCHAR}, #{specificConsigneename,jdbcType=VARCHAR},
  55 + #{specificConsigneePhone,jdbcType=VARCHAR}, #{consigneePhone,jdbcType=VARCHAR})
  56 + </insert>
  57 + <insert id="insertSelective" parameterType="com.tianbo.analysis.model.FWBINFO" >
  58 + insert into FWB_INFO
  59 + <trim prefix="(" suffix=")" suffixOverrides="," >
  60 + <if test="autoid != null" >
  61 + AUTOID,
  62 + </if>
  63 + <if test="waybillnomaster != null" >
  64 + WAYBILLNOMASTER,
  65 + </if>
  66 + <if test="totalweight != null" >
  67 + TOTALWEIGHT,
  68 + </if>
  69 + <if test="totalpiece != null" >
  70 + TOTALPIECE,
  71 + </if>
  72 + <if test="productname != null" >
  73 + PRODUCTNAME,
  74 + </if>
  75 + <if test="carrier1 != null" >
  76 + CARRIER1,
  77 + </if>
  78 + <if test="arrivalstation1 != null" >
  79 + ARRIVALSTATION1,
  80 + </if>
  81 + <if test="carrier2 != null" >
  82 + CARRIER2,
  83 + </if>
  84 + <if test="arrivalstation2 != null" >
  85 + ARRIVALSTATION2,
  86 + </if>
  87 + <if test="carrier3 != null" >
  88 + CARRIER3,
  89 + </if>
  90 + <if test="arrivalstation3 != null" >
  91 + ARRIVALSTATION3,
  92 + </if>
  93 + <if test="paymode != null" >
  94 + PAYMODE,
  95 + </if>
  96 + <if test="specialgoodscode != null" >
  97 + SPECIALGOODSCODE,
  98 + </if>
  99 + <if test="shippername != null" >
  100 + SHIPPERNAME,
  101 + </if>
  102 + <if test="shipperaddress != null" >
  103 + SHIPPERADDRESS,
  104 + </if>
  105 + <if test="consigneename != null" >
  106 + CONSIGNEENAME,
  107 + </if>
  108 + <if test="consigneeaddress != null" >
  109 + CONSIGNEEADDRESS,
  110 + </if>
  111 + <if test="createdate != null" >
  112 + CREATEDATE,
  113 + </if>
  114 + <if test="istransfer != null" >
  115 + ISTRANSFER,
  116 + </if>
  117 + <if test="shipperCode != null" >
  118 + SHIPPER_CODE,
  119 + </if>
  120 + <if test="shipperCountrycode != null" >
  121 + SHIPPER_COUNTRYCODE,
  122 + </if>
  123 + <if test="shipperPhone != null" >
  124 + SHIPPER_PHONE,
  125 + </if>
  126 + <if test="shipperFax != null" >
  127 + SHIPPER_FAX,
  128 + </if>
  129 + <if test="consigneeCode != null" >
  130 + CONSIGNEE_CODE,
  131 + </if>
  132 + <if test="consigneeCountrycode != null" >
  133 + CONSIGNEE_COUNTRYCODE,
  134 + </if>
  135 + <if test="consigneeFax != null" >
  136 + CONSIGNEE_FAX,
  137 + </if>
  138 + <if test="specificConsigneename != null" >
  139 + SPECIFIC_CONSIGNEENAME,
  140 + </if>
  141 + <if test="specificConsigneePhone != null" >
  142 + SPECIFIC_CONSIGNEE_PHONE,
  143 + </if>
  144 + <if test="consigneePhone != null" >
  145 + CONSIGNEE_PHONE,
  146 + </if>
  147 + </trim>
  148 + <trim prefix="values (" suffix=")" suffixOverrides="," >
  149 + <if test="autoid != null" >
  150 + #{autoid,jdbcType=VARCHAR},
  151 + </if>
  152 + <if test="waybillnomaster != null" >
  153 + #{waybillnomaster,jdbcType=VARCHAR},
  154 + </if>
  155 + <if test="totalweight != null" >
  156 + #{totalweight,jdbcType=VARCHAR},
  157 + </if>
  158 + <if test="totalpiece != null" >
  159 + #{totalpiece,jdbcType=VARCHAR},
  160 + </if>
  161 + <if test="productname != null" >
  162 + #{productname,jdbcType=VARCHAR},
  163 + </if>
  164 + <if test="carrier1 != null" >
  165 + #{carrier1,jdbcType=VARCHAR},
  166 + </if>
  167 + <if test="arrivalstation1 != null" >
  168 + #{arrivalstation1,jdbcType=VARCHAR},
  169 + </if>
  170 + <if test="carrier2 != null" >
  171 + #{carrier2,jdbcType=VARCHAR},
  172 + </if>
  173 + <if test="arrivalstation2 != null" >
  174 + #{arrivalstation2,jdbcType=VARCHAR},
  175 + </if>
  176 + <if test="carrier3 != null" >
  177 + #{carrier3,jdbcType=VARCHAR},
  178 + </if>
  179 + <if test="arrivalstation3 != null" >
  180 + #{arrivalstation3,jdbcType=VARCHAR},
  181 + </if>
  182 + <if test="paymode != null" >
  183 + #{paymode,jdbcType=VARCHAR},
  184 + </if>
  185 + <if test="specialgoodscode != null" >
  186 + #{specialgoodscode,jdbcType=VARCHAR},
  187 + </if>
  188 + <if test="shippername != null" >
  189 + #{shippername,jdbcType=VARCHAR},
  190 + </if>
  191 + <if test="shipperaddress != null" >
  192 + #{shipperaddress,jdbcType=VARCHAR},
  193 + </if>
  194 + <if test="consigneename != null" >
  195 + #{consigneename,jdbcType=VARCHAR},
  196 + </if>
  197 + <if test="consigneeaddress != null" >
  198 + #{consigneeaddress,jdbcType=VARCHAR},
  199 + </if>
  200 + <if test="createdate != null" >
  201 + #{createdate,jdbcType=TIMESTAMP},
  202 + </if>
  203 + <if test="istransfer != null" >
  204 + #{istransfer,jdbcType=VARCHAR},
  205 + </if>
  206 + <if test="shipperCode != null" >
  207 + #{shipperCode,jdbcType=VARCHAR},
  208 + </if>
  209 + <if test="shipperCountrycode != null" >
  210 + #{shipperCountrycode,jdbcType=VARCHAR},
  211 + </if>
  212 + <if test="shipperPhone != null" >
  213 + #{shipperPhone,jdbcType=VARCHAR},
  214 + </if>
  215 + <if test="shipperFax != null" >
  216 + #{shipperFax,jdbcType=VARCHAR},
  217 + </if>
  218 + <if test="consigneeCode != null" >
  219 + #{consigneeCode,jdbcType=VARCHAR},
  220 + </if>
  221 + <if test="consigneeCountrycode != null" >
  222 + #{consigneeCountrycode,jdbcType=VARCHAR},
  223 + </if>
  224 + <if test="consigneeFax != null" >
  225 + #{consigneeFax,jdbcType=VARCHAR},
  226 + </if>
  227 + <if test="specificConsigneename != null" >
  228 + #{specificConsigneename,jdbcType=VARCHAR},
  229 + </if>
  230 + <if test="specificConsigneePhone != null" >
  231 + #{specificConsigneePhone,jdbcType=VARCHAR},
  232 + </if>
  233 + <if test="consigneePhone != null" >
  234 + #{consigneePhone,jdbcType=VARCHAR},
  235 + </if>
  236 + </trim>
  237 + </insert>
  238 + <select id="queryFwbInfo" resultType="com.tianbo.analysis.model.FWBINFO" parameterType="java.lang.String">
  239 + SELECT * FROM fwb_info
  240 + WHERE WAYBILLNOMASTER= #{waybillnomaster,jdbcType=VARCHAR}
  241 + order by createdate desc
  242 + </select>
  243 +</mapper>
@@ -362,7 +362,226 @@ @@ -362,7 +362,226 @@
362 AND 362 AND
363 WAYBILLNOMASTER = #{waybillnomaster,jdbcType=VARCHAR} 363 WAYBILLNOMASTER = #{waybillnomaster,jdbcType=VARCHAR}
364 </update> 364 </update>
365 - 365 + <update id="updateFWBByFWBInfoAndStatus" parameterType="com.tianbo.analysis.model.FWBINFO">
  366 + UPDATE ORIGINMANIFESTMASTER
  367 + <set >
  368 + <if test="totalweight != null" >
  369 + TOTALWEIGHT = #{totalweight,jdbcType=VARCHAR},
  370 + </if>
  371 + <if test="totalpiece != null" >
  372 + TOTALPIECE = #{totalpiece,jdbcType=VARCHAR},
  373 + </if>
  374 + <if test="productname != null" >
  375 + PRODUCTNAME= #{productname,jdbcType=VARCHAR},
  376 + </if>
  377 + <if test="carrier1 != null" >
  378 + CARRIER1= #{carrier1,jdbcType=VARCHAR},
  379 + </if>
  380 + <if test="arrivalstation1 != null" >
  381 + ARRIVALSTATION1 = #{arrivalstation1,jdbcType=VARCHAR},
  382 + </if>
  383 + <if test="carrier2 != null" >
  384 + CARRIER2 = #{carrier2,jdbcType=VARCHAR},
  385 + </if>
  386 + <if test="arrivalstation2 != null" >
  387 + ARRIVALSTATION2 = #{arrivalstation2,jdbcType=VARCHAR},
  388 + </if>
  389 + <if test="carrier3 != null" >
  390 + CARRIER3 = #{carrier3,jdbcType=VARCHAR},
  391 + </if>
  392 + <if test="arrivalstation3 != null" >
  393 + ARRIVALSTATION3 = #{arrivalstation3,jdbcType=VARCHAR},
  394 + </if>
  395 + <if test="paymode != null" >
  396 + PAYMODE = #{paymode,jdbcType=VARCHAR},
  397 + </if>
  398 + <if test="specialgoodscode != null" >
  399 + SPECIALGOODSCODE = #{specialgoodscode,jdbcType=VARCHAR},
  400 + </if>
  401 + <if test="shippername != null" >
  402 + SHIPPERNAME = #{shippername,jdbcType=VARCHAR},
  403 + </if>
  404 + <if test="shipperaddress != null" >
  405 + SHIPPERADDRESS = #{shipperaddress,jdbcType=VARCHAR},
  406 + </if>
  407 + <if test="consigneename != null" >
  408 + CONSIGNEENAME = #{consigneename,jdbcType=VARCHAR},
  409 + </if>
  410 + <if test="consigneeaddress != null" >
  411 + CONSIGNEEADDRESS = #{consigneeaddress,jdbcType=VARCHAR},
  412 + </if>
  413 + <if test="shipperCode != null" >
  414 + SHIPPER_CODE = #{shipperCode,jdbcType=VARCHAR},
  415 + </if>
  416 + <if test="shipperCountrycode != null" >
  417 + SHIPPER_COUNTRYCODE = #{shipperCountrycode,jdbcType=VARCHAR},
  418 + </if>
  419 + <if test="shipperPhone != null" >
  420 + SHIPPER_PHONE = #{shipperPhone,jdbcType=VARCHAR},
  421 + </if>
  422 + <if test="shipperFax != null" >
  423 + SHIPPER_FAX = #{shipperFax,jdbcType=VARCHAR},
  424 + </if>
  425 + <if test="consigneeCode != null" >
  426 + CONSIGNEE_CODE = #{consigneeCode,jdbcType=VARCHAR},
  427 + </if>
  428 + <if test="consigneeCountrycode != null" >
  429 + CONSIGNEE_COUNTRYCODE = #{consigneeCountrycode,jdbcType=VARCHAR},
  430 + </if>
  431 + <if test="consigneeFax != null" >
  432 + CONSIGNEE_FAX = #{consigneeFax,jdbcType=VARCHAR},
  433 + </if>
  434 + <if test="specificConsigneename != null" >
  435 + SPECIFIC_CONSIGNEENAME = #{specificConsigneename,jdbcType=VARCHAR},
  436 + </if>
  437 + <if test="specificConsigneePhone != null" >
  438 + SPECIFIC_CONSIGNEE_PHONE = #{specificConsigneePhone,jdbcType=VARCHAR},
  439 + </if>
  440 + <if test="consigneePhone != null" >
  441 + CONSIGNEE_PHONE = #{consigneePhone,jdbcType=VARCHAR},
  442 + </if>
  443 + </set>
  444 + WHERE
  445 + WAYBILLNOMASTER = #{waybillnomaster,jdbcType=VARCHAR}
  446 + AND STATUS IN ('17','01')
  447 + </update>
  448 + <update id="updateSelective" parameterType="com.tianbo.analysis.model.ORIGINMANIFESTMASTER">
  449 + UPDATE ORIGINMANIFESTMASTER
  450 + <set >
  451 + <if test="segment != null" >
  452 + SEGMENT= #{segment,jdbcType=VARCHAR},
  453 + </if>
  454 + <if test="originatingstation != null" >
  455 + ORIGINATINGSTATION = #{originatingstation,jdbcType=VARCHAR},
  456 + </if>
  457 + <if test="destinationstation != null" >
  458 + DESTINATIONSTATION = #{destinationstation,jdbcType=VARCHAR},
  459 + </if>
  460 + <if test="totalweight != null" >
  461 + TOTALWEIGHT = #{totalweight,jdbcType=VARCHAR},
  462 + </if>
  463 + <if test="totalpiece != null" >
  464 + TOTALPIECE = #{totalpiece,jdbcType=VARCHAR},
  465 + </if>
  466 + <if test="manifesttotalpiece != null" >
  467 + MANIFESTTOTALPIECE = #{manifesttotalpiece,jdbcType=VARCHAR},
  468 + </if>
  469 + <if test="manifesttotalweight != null" >
  470 + MANIFESTTOTALWEIGHT= #{manifesttotalweight,jdbcType=VARCHAR},
  471 + </if>
  472 + <if test="flightno != null" >
  473 + FLIGHTNO = #{flightno,jdbcType=VARCHAR},
  474 + </if>
  475 + <if test="productname != null" >
  476 + PRODUCTNAME= #{productname,jdbcType=VARCHAR},
  477 + </if>
  478 + <if test="customsstatus != null" >
  479 + CUSTOMSSTATUS= #{customsstatus,jdbcType=VARCHAR},
  480 + </if>
  481 + <if test="carrier1 != null" >
  482 + CARRIER1= #{carrier1,jdbcType=VARCHAR},
  483 + </if>
  484 + <if test="arrivalstation1 != null" >
  485 + ARRIVALSTATION1 = #{arrivalstation1,jdbcType=VARCHAR},
  486 + </if>
  487 + <if test="carrier2 != null" >
  488 + CARRIER2 = #{carrier2,jdbcType=VARCHAR},
  489 + </if>
  490 + <if test="arrivalstation2 != null" >
  491 + ARRIVALSTATION2 = #{arrivalstation2,jdbcType=VARCHAR},
  492 + </if>
  493 + <if test="carrier3 != null" >
  494 + CARRIER3 = #{carrier3,jdbcType=VARCHAR},
  495 + </if>
  496 + <if test="arrivalstation3 != null" >
  497 + ARRIVALSTATION3 = #{arrivalstation3,jdbcType=VARCHAR},
  498 + </if>
  499 + <if test="paymode != null" >
  500 + PAYMODE = #{paymode,jdbcType=VARCHAR},
  501 + </if>
  502 + <if test="specialgoodscode != null" >
  503 + SPECIALGOODSCODE = #{specialgoodscode,jdbcType=VARCHAR},
  504 + </if>
  505 + <if test="customscode != null" >
  506 + CUSTOMSCODE = #{customscode,jdbcType=VARCHAR},
  507 + </if>
  508 + <if test="shippername != null" >
  509 + SHIPPERNAME = #{shippername,jdbcType=VARCHAR},
  510 + </if>
  511 + <if test="shipperaddress != null" >
  512 + SHIPPERADDRESS = #{shipperaddress,jdbcType=VARCHAR},
  513 + </if>
  514 + <if test="consigneename != null" >
  515 + CONSIGNEENAME = #{consigneename,jdbcType=VARCHAR},
  516 + </if>
  517 + <if test="consigneeaddress != null" >
  518 + CONSIGNEEADDRESS = #{consigneeaddress,jdbcType=VARCHAR},
  519 + </if>
  520 + <if test="receiptinformation != null" >
  521 + RECEIPTINFORMATION = #{receiptinformation,jdbcType=VARCHAR},
  522 + </if>
  523 + <if test="createdate != null" >
  524 + CREATEDATE = #{createdate,jdbcType=TIMESTAMP},
  525 + </if>
  526 + <if test="flightDate != null" >
  527 + FLIGHT_DATE = #{flightDate,jdbcType=TIMESTAMP},
  528 + </if>
  529 + <if test="status != null" >
  530 + STATUS = #{status,jdbcType=VARCHAR},
  531 + </if>
  532 + <if test="isbatch != null" >
  533 + ISBATCH = #{isbatch,jdbcType=VARCHAR},
  534 + </if>
  535 + <if test="originatingstationBill != null" >
  536 + ORIGINATINGSTATION_BILL = #{originatingstationBill,jdbcType=VARCHAR},
  537 + </if>
  538 + <if test="destinationstationBill != null" >
  539 + DESTINATIONSTATION_BILL = #{destinationstationBill,jdbcType=VARCHAR},
  540 + </if>
  541 + <if test="reportorder != null" >
  542 + REPORTORDER = #{reportorder,jdbcType=VARCHAR},
  543 + </if>
  544 + <if test="islast != null" >
  545 + ISLAST = #{islast,jdbcType=VARCHAR},
  546 + </if>
  547 + <if test="shipperCode != null" >
  548 + SHIPPER_CODE = #{shipperCode,jdbcType=VARCHAR},
  549 + </if>
  550 + <if test="shipperCountrycode != null" >
  551 + SHIPPER_COUNTRYCODE = #{shipperCountrycode,jdbcType=VARCHAR},
  552 + </if>
  553 + <if test="shipperPhone != null" >
  554 + SHIPPER_PHONE = #{shipperPhone,jdbcType=VARCHAR},
  555 + </if>
  556 + <if test="shipperFax != null" >
  557 + SHIPPER_FAX = #{shipperFax,jdbcType=VARCHAR},
  558 + </if>
  559 + <if test="consigneeCode != null" >
  560 + CONSIGNEE_CODE = #{consigneeCode,jdbcType=VARCHAR},
  561 + </if>
  562 + <if test="consigneeCountrycode != null" >
  563 + CONSIGNEE_COUNTRYCODE = #{consigneeCountrycode,jdbcType=VARCHAR},
  564 + </if>
  565 + <if test="consigneeFax != null" >
  566 + CONSIGNEE_FAX = #{consigneeFax,jdbcType=VARCHAR},
  567 + </if>
  568 + <if test="specificConsigneename != null" >
  569 + SPECIFIC_CONSIGNEENAME = #{specificConsigneename,jdbcType=VARCHAR},
  570 + </if>
  571 + <if test="specificConsigneePhone != null" >
  572 + SPECIFIC_CONSIGNEE_PHONE = #{specificConsigneePhone,jdbcType=VARCHAR},
  573 + </if>
  574 + <if test="consigneePhone != null" >
  575 + CONSIGNEE_PHONE = #{consigneePhone,jdbcType=VARCHAR},
  576 + </if>
  577 + </set>
  578 + WHERE
  579 + WAYBILLNOMASTER = #{waybillnomaster,jdbcType=VARCHAR}
  580 + AND
  581 + FLIGHTNO= #{flightno,jdbcType=VARCHAR}
  582 + AND
  583 + FLIGHT_DATE= #{flightDate,jdbcType=TIMESTAMP}
  584 + </update>
366 <select id="selectAutoIdByAwb" parameterType="com.tianbo.analysis.model.ORIGINMANIFESTMASTER" resultType="com.tianbo.analysis.model.ORIGINMANIFESTMASTER"> 585 <select id="selectAutoIdByAwb" parameterType="com.tianbo.analysis.model.ORIGINMANIFESTMASTER" resultType="com.tianbo.analysis.model.ORIGINMANIFESTMASTER">
367 SELECT AUTOID 586 SELECT AUTOID
368 FROM ORIGINMANIFESTMASTER 587 FROM ORIGINMANIFESTMASTER
@@ -373,4 +592,15 @@ @@ -373,4 +592,15 @@
373 AND 592 AND
374 WAYBILLNOMASTER = #{waybillnomaster,jdbcType=VARCHAR} 593 WAYBILLNOMASTER = #{waybillnomaster,jdbcType=VARCHAR}
375 </select> 594 </select>
  595 +
  596 + <select id="queryMasterInfo" parameterType="com.tianbo.analysis.model.ORIGINMANIFESTMASTER" resultType="com.tianbo.analysis.model.ORIGINMANIFESTMASTER">
  597 + SELECT *
  598 + FROM ORIGINMANIFESTMASTER
  599 + WHERE
  600 + FLIGHTNO= #{flightno,jdbcType=VARCHAR}
  601 + AND
  602 + FLIGHT_DATE= #{flightDate,jdbcType=TIMESTAMP}
  603 + AND
  604 + WAYBILLNOMASTER = #{waybillnomaster,jdbcType=VARCHAR}
  605 + </select>
376 </mapper> 606 </mapper>
@@ -267,11 +267,25 @@ @@ -267,11 +267,25 @@
267 WHERE WAYBILLNOMASTER = #{waybillnomaster,jdbcType=VARCHAR} 267 WHERE WAYBILLNOMASTER = #{waybillnomaster,jdbcType=VARCHAR}
268 AND WAYBILLNOSECONDARY = #{waybillnosecondary,jdbcType=VARCHAR} 268 AND WAYBILLNOSECONDARY = #{waybillnosecondary,jdbcType=VARCHAR}
269 </update> 269 </update>
270 - 270 + <update id="updateMasterAutoId" parameterType="com.tianbo.analysis.model.Originmanifestsecondary">
  271 + UPDATE
  272 + ORIGINMANIFESTSECONDARY
  273 + SET
  274 + ORIGINMANIFESTMASTERAUTOID = #{originmanifestmasterautoid,jdbcType=VARCHAR},
  275 + CUSTOMSSTATUS= #{customsstatus,jdbcType=VARCHAR}
  276 + WHERE AutoID= #{autoid,jdbcType=VARCHAR}
  277 + </update>
271 <select id="selectAutoIdByawbAawbH" parameterType="com.tianbo.analysis.model.Originmanifestsecondary" resultType="com.tianbo.analysis.model.Originmanifestsecondary"> 278 <select id="selectAutoIdByawbAawbH" parameterType="com.tianbo.analysis.model.Originmanifestsecondary" resultType="com.tianbo.analysis.model.Originmanifestsecondary">
272 SELECT AUTOID 279 SELECT AUTOID
273 FROM ORIGINMANIFESTSECONDARY 280 FROM ORIGINMANIFESTSECONDARY
274 WHERE 281 WHERE
275 WAYBILLNOMASTER = #{waybillnomaster,jdbcType=VARCHAR} AND WAYBILLNOSECONDARY = #{waybillnosecondary,jdbcType=VARCHAR} 282 WAYBILLNOMASTER = #{waybillnomaster,jdbcType=VARCHAR} AND WAYBILLNOSECONDARY = #{waybillnosecondary,jdbcType=VARCHAR}
276 </select> 283 </select>
  284 +
  285 + <select id="selectByFWb" parameterType="java.lang.String" resultType="com.tianbo.analysis.model.Originmanifestsecondary">
  286 + SELECT *
  287 + FROM ORIGINMANIFESTSECONDARY
  288 + WHERE
  289 + WAYBILLNOMASTER = #{waybillnomaster,jdbcType=VARCHAR}
  290 + </select>
277 </mapper> 291 </mapper>