作者 zhangFan

kakoIMF check some message

1 #登录账号 1 #登录账号
2 -loginname = KAKO 2 +loginname = KAOR
3 #登录密码 3 #登录密码
4 -loginpass = KAKO 4 +loginpass = KAOR
5 #发送报文目录,相对程序目录 5 #发送报文目录,相对程序目录
6 readDirectory = sendDirectory 6 readDirectory = sendDirectory
7 #接收存储报文目录 7 #接收存储报文目录
8 bakDirectory = receiveDirectory 8 bakDirectory = receiveDirectory
9 9
10 #IMF MEAT报头配置 10 #IMF MEAT报头配置
11 -  
12 RCVR= 11 RCVR=
13 TYPE=KAKO 12 TYPE=KAKO
14 STYP=CARM 13 STYP=CARM
@@ -8,8 +8,8 @@ import com.sy.model.LandBusinessTypeList; @@ -8,8 +8,8 @@ import com.sy.model.LandBusinessTypeList;
8 import com.sy.model.LandRoadVe; 8 import com.sy.model.LandRoadVe;
9 import com.sy.service.LandBusListService; 9 import com.sy.service.LandBusListService;
10 import com.sy.service.LandRoadVeService; 10 import com.sy.service.LandRoadVeService;
11 -import com.sy.socket.CommandClient;  
12 import com.sy.utils.FileTool; 11 import com.sy.utils.FileTool;
  12 +import com.sy.utils.UUIDCreate;
13 import org.apache.log4j.Logger; 13 import org.apache.log4j.Logger;
14 import org.springframework.beans.factory.annotation.Autowired; 14 import org.springframework.beans.factory.annotation.Autowired;
15 import org.springframework.stereotype.Component; 15 import org.springframework.stereotype.Component;
@@ -24,6 +24,7 @@ import java.net.URL; @@ -24,6 +24,7 @@ import java.net.URL;
24 import java.net.URLConnection; 24 import java.net.URLConnection;
25 import java.text.NumberFormat; 25 import java.text.NumberFormat;
26 import java.text.ParseException; 26 import java.text.ParseException;
  27 +import java.util.Date;
27 import java.util.List; 28 import java.util.List;
28 import java.util.Map; 29 import java.util.Map;
29 30
@@ -65,20 +66,35 @@ public class LogicOperation { @@ -65,20 +66,35 @@ public class LogicOperation {
65 for (LandBusinessTypeList list:lists) { 66 for (LandBusinessTypeList list:lists) {
66 //查询是否做了出场申请 67 //查询是否做了出场申请
67 if(list.getContrastflag()=="" | list.getContrastflag()==null){ 68 if(list.getContrastflag()=="" | list.getContrastflag()==null){
68 - //判断车重  
69 //判断载货重量是否符合所设定的范围 69 //判断载货重量是否符合所设定的范围
70 double goodsWt = GoodsWt(list.getMasterList(),"E"); 70 double goodsWt = GoodsWt(list.getMasterList(),"E");
71 if(checkResult(growsswWt,Double.parseDouble(ve.getSelfWt()),goodsWt)){ 71 if(checkResult(growsswWt,Double.parseDouble(ve.getSelfWt()),goodsWt)){
72 sign = true; 72 sign = true;
73 } 73 }
74 - //发送放行指令  
75 - String flag = "";  
76 - CommandClient.Client(info,flag); 74 + list.setContrastflag("已出站");
  75 + logic.listService.updateById(list);
  76 + if("货物流转".equals(list.getBusinesstype()) |"分拨分流".equals(list.getBusinesstype())){
  77 + if(list.getMasterList().length()>0) {
  78 + createTypeList(list);
  79 + }
  80 + }
77 } 81 }
78 } 82 }
79 }else { 83 }else {
80 ietype = "进场站"; 84 ietype = "进场站";
81 lists = listService.selectByFrameNoAndType(info.getIcvename(),ietype); 85 lists = listService.selectByFrameNoAndType(info.getIcvename(),ietype);
  86 + for (LandBusinessTypeList list:lists) {
  87 + //查询是否做了出场申请
  88 + if(list.getContrastflag()=="" | list.getContrastflag()==null){
  89 + //判断载货重量是否符合所设定的范围
  90 + double goodsWt = GoodsWt(list.getMasterList(),"I");
  91 + if(checkResult(growsswWt,Double.parseDouble(ve.getSelfWt()),goodsWt)){
  92 + sign = true;
  93 + }
  94 + list.setContrastflag("已进站");
  95 + logic.listService.updateById(list);
  96 + }
  97 + }
82 } 98 }
83 return sign; 99 return sign;
84 } 100 }
@@ -119,10 +135,12 @@ public class LogicOperation { @@ -119,10 +135,12 @@ public class LogicOperation {
119 * 获取货物总重 135 * 获取货物总重
120 * */ 136 * */
121 public static double GoodsWt(String mainifast,String ietype){ 137 public static double GoodsWt(String mainifast,String ietype){
122 - String [] mainifastList = mainifast.split(",");  
123 Double sum = 0.0; 138 Double sum = 0.0;
124 - for (String mainBill:mainifastList) {  
125 - sum = sum+=getGrossWt(mainBill,ietype); 139 + if(mainifast.length()>0){
  140 + String [] mainifastList = mainifast.split(",");
  141 + for (String mainBill:mainifastList) {
  142 + sum = sum+=getGrossWt(mainBill,ietype);
  143 + }
126 } 144 }
127 return sum; 145 return sum;
128 } 146 }
@@ -162,4 +180,32 @@ public class LogicOperation { @@ -162,4 +180,32 @@ public class LogicOperation {
162 } 180 }
163 return bg; 181 return bg;
164 } 182 }
  183 + /**
  184 + * 分拨或者流转业务生成新的进站申请
  185 + * */
  186 + public static int createTypeList(LandBusinessTypeList list){
  187 + LandBusinessTypeList typeList = new LandBusinessTypeList();
  188 + typeList.setId(UUIDCreate.getUUID());
  189 + typeList.setAgentname(list.getAgentname());
  190 + typeList.setAgentno(list.getAgentno());
  191 + typeList.setAisle("1号卡口");
  192 + typeList.setCreateBy(list.getCreateBy());
  193 + typeList.setUpdateBy(list.getUpdateBy());
  194 + typeList.setCreateDate(new Date());
  195 + typeList.setUpdateDate(new Date());
  196 + typeList.setCocode(list.getCocode());
  197 + typeList.setDriverid(list.getDriverid());
  198 + typeList.setStartport(list.getEndport());
  199 + typeList.setStartsatation(list.getEndstation());
  200 + typeList.setEndport(list.getStartport());
  201 + typeList.setEndstation(list.getStartsatation());
  202 + typeList.setTrailerFrameNo(list.getTrailerFrameNo());
  203 + typeList.setTrailerLicenseNo(list.getTrailerFrameNo());
  204 + typeList.setTurnoverflag("进场站");
  205 + typeList.setProdectTime(new Date());
  206 + typeList.setMasterList(list.getMasterList());
  207 + typeList.setBusinesstype(list.getBusinesstype());
  208 + int result = logic.listService.saveList(typeList);
  209 + return result;
  210 + }
165 } 211 }
@@ -18,4 +18,5 @@ public interface airone_ex_stockMapper { @@ -18,4 +18,5 @@ public interface airone_ex_stockMapper {
18 18
19 int updateByPrimaryKey(airone_ex_stock record); 19 int updateByPrimaryKey(airone_ex_stock record);
20 20
  21 + airone_ex_stock selectByMawbNo(String mawbNo);
21 } 22 }
@@ -13,6 +13,8 @@ public interface airone_im_stockMapper { @@ -13,6 +13,8 @@ public interface airone_im_stockMapper {
13 13
14 airone_im_stock selectByPrimaryKey(String workNo); 14 airone_im_stock selectByPrimaryKey(String workNo);
15 15
  16 + airone_im_stock selectByMawbAndHawb(String mawbNo,String hawbNo);
  17 +
16 int updateByPrimaryKeySelective(airone_im_stock record); 18 int updateByPrimaryKeySelective(airone_im_stock record);
17 19
18 int updateByPrimaryKey(airone_im_stock record); 20 int updateByPrimaryKey(airone_im_stock record);
@@ -10,4 +10,6 @@ public interface LandBusListService { @@ -10,4 +10,6 @@ public interface LandBusListService {
10 List<LandBusinessTypeList> selectByFrameNoAndType(String frameNo, String flag); 10 List<LandBusinessTypeList> selectByFrameNoAndType(String frameNo, String flag);
11 11
12 int updateById(LandBusinessTypeList list); 12 int updateById(LandBusinessTypeList list);
  13 +
  14 + int saveList(LandBusinessTypeList list);
13 } 15 }
@@ -6,4 +6,8 @@ public interface aironeExStockService { @@ -6,4 +6,8 @@ public interface aironeExStockService {
6 6
7 int save(airone_ex_stock ex); 7 int save(airone_ex_stock ex);
8 8
  9 + airone_ex_stock selectByMawbNo(String mawbNo);
  10 +
  11 + int delectByWorkNo(String workNo);
  12 +
9 } 13 }
@@ -5,4 +5,10 @@ import com.sy.model.airone_im_stock; @@ -5,4 +5,10 @@ import com.sy.model.airone_im_stock;
5 public interface aironeImStockService { 5 public interface aironeImStockService {
6 6
7 int save(airone_im_stock im); 7 int save(airone_im_stock im);
  8 + //根据主分单查询
  9 + airone_im_stock selectByMawbAndHawb(String manwNo,String hawbNo);
  10 +
  11 + int updateById(airone_im_stock stock);
  12 +
  13 + int delectByWarkNo(String workNo);
8 } 14 }
@@ -31,4 +31,9 @@ public class LandBusListServiceImpl implements LandBusListService { @@ -31,4 +31,9 @@ public class LandBusListServiceImpl implements LandBusListService {
31 } 31 }
32 return 0; 32 return 0;
33 } 33 }
  34 +
  35 + @Override
  36 + public int saveList(LandBusinessTypeList list) {
  37 + return listMapper.insert(list);
  38 + }
34 } 39 }
@@ -6,7 +6,7 @@ import com.sy.service.aironeExStockService; @@ -6,7 +6,7 @@ import com.sy.service.aironeExStockService;
6 import org.springframework.beans.factory.annotation.Autowired; 6 import org.springframework.beans.factory.annotation.Autowired;
7 import org.springframework.stereotype.Service; 7 import org.springframework.stereotype.Service;
8 8
9 -@Service("exStockService") 9 +@Service
10 public class aironeExStockServiceImpl implements aironeExStockService { 10 public class aironeExStockServiceImpl implements aironeExStockService {
11 11
12 @Autowired 12 @Autowired
@@ -22,4 +22,26 @@ public class aironeExStockServiceImpl implements aironeExStockService { @@ -22,4 +22,26 @@ public class aironeExStockServiceImpl implements aironeExStockService {
22 } 22 }
23 return row; 23 return row;
24 } 24 }
  25 +
  26 + @Override
  27 + public airone_ex_stock selectByMawbNo(String mawbNo) {
  28 + airone_ex_stock stock = null;
  29 + try{
  30 + stock = exStockMapper.selectByMawbNo(mawbNo);
  31 + }catch (Exception e){
  32 + e.printStackTrace();
  33 + }
  34 + return stock;
  35 + }
  36 +
  37 + @Override
  38 + public int delectByWorkNo(String workNo) {
  39 + int result = 0;
  40 + try{
  41 + result = exStockMapper.deleteByPrimaryKey(workNo);
  42 + }catch (Exception e){
  43 + e.printStackTrace();
  44 + }
  45 + return result;
  46 + }
25 } 47 }
@@ -21,4 +21,31 @@ public class aironeImStockServiceImpl implements aironeImStockService { @@ -21,4 +21,31 @@ public class aironeImStockServiceImpl implements aironeImStockService {
21 } 21 }
22 return row; 22 return row;
23 } 23 }
  24 +
  25 + @Override
  26 + public int updateById(airone_im_stock stock) {
  27 + return imStockMapper.updateByPrimaryKeySelective(stock);
  28 + }
  29 +
  30 + @Override
  31 + public airone_im_stock selectByMawbAndHawb(String manwNo, String hawbNo) {
  32 + airone_im_stock stock = null;
  33 + try {
  34 + stock = imStockMapper.selectByMawbAndHawb(manwNo,hawbNo);
  35 + }catch (Exception e){
  36 + e.printStackTrace();
  37 + }
  38 + return stock;
  39 + }
  40 +
  41 + @Override
  42 + public int delectByWarkNo(String workNo) {
  43 + int result = 0;
  44 + try{
  45 + result = imStockMapper.deleteByPrimaryKey(workNo);
  46 + }catch (Exception e){
  47 + e.printStackTrace();
  48 + }
  49 + return result;
  50 + }
24 } 51 }
@@ -26,37 +26,41 @@ public class CommandClient { @@ -26,37 +26,41 @@ public class CommandClient {
26 socket = new Socket("192.168.1.107", 9002); 26 socket = new Socket("192.168.1.107", 9002);
27 logger.info("socket通讯创建连接成功"); 27 logger.info("socket通讯创建连接成功");
28 op = socket.getOutputStream(); 28 op = socket.getOutputStream();
  29 + //xml字节流
29 byte[]xBody =xmlBody.getBytes("GB2312"); 30 byte[]xBody =xmlBody.getBytes("GB2312");
  31 + //包头
30 byte[] head = new byte[4]; 32 byte[] head = new byte[4];
31 head[0]=(byte)0xE2; 33 head[0]=(byte)0xE2;
32 head[1]=(byte)0x5C; 34 head[1]=(byte)0x5C;
33 head[2]=(byte)0x4B; 35 head[2]=(byte)0x4B;
34 head[3]=(byte)0x89; 36 head[3]=(byte)0x89;
35 - byte[]packge = intToByte4((40+xBody.length)); 37 + //消息类型
36 byte[] mType = new byte[1]; 38 byte[] mType = new byte[1];
37 mType[0] = (byte)0x22; 39 mType[0] = (byte)0x22;
38 - byte[]station ="4257010001".getBytes("ASCII");  
39 - byte[]aisle ="4257011005".getBytes("ASCII");  
40 - byte[]eType ="E".getBytes("ASCII"); 40 + //场站号
  41 + byte[]station =info.getAreaid().getBytes("ASCII");
  42 + //通道号
  43 + byte[]aisle =info.getChnlno().getBytes("ASCII");
  44 + //进出标识
  45 + byte[]eType =info.getIetype().getBytes("ASCII");
  46 + //标识符
41 byte[] bwFlag = new byte[4]; 47 byte[] bwFlag = new byte[4];
42 bwFlag[0]=(byte)0xFF; 48 bwFlag[0]=(byte)0xFF;
43 bwFlag[1]=(byte)0xFF; 49 bwFlag[1]=(byte)0xFF;
44 bwFlag[2]=(byte)0xFF; 50 bwFlag[2]=(byte)0xFF;
45 bwFlag[3]=(byte)0xFF; 51 bwFlag[3]=(byte)0xFF;
  52 + //xml字节流长度
46 byte[]xmlLength = intToByte4(xBody.length); 53 byte[]xmlLength = intToByte4(xBody.length);
  54 + //包尾
47 byte[]end = new byte[2]; 55 byte[]end = new byte[2];
48 end[0]=(byte)0xFF; 56 end[0]=(byte)0xFF;
49 end[1]=(byte)0xFF; 57 end[1]=(byte)0xFF;
50 - byte[]b1 = byteMerger(head,packge);  
51 - byte[]b2 = byteMerger(mType,station);  
52 - byte[]b3 = byteMerger(aisle,eType);  
53 - byte[]b4 = byteMerger(bwFlag, xmlLength);  
54 - byte[]b5 = byteMerger(xBody, end);  
55 - byte[]b6 = byteMerger(b1,b2);  
56 - byte[]b7 = byteMerger(b3,b4);  
57 - byte[]b8 = byteMerger(b5,b6);  
58 - byte[]b9 = byteMerger(b7,b8);  
59 - op.write(b9); 58 + //总长
  59 + byte [] packge = intToByte4((head.length+xBody.length+mType.length+station.length+aisle.length+eType
  60 + .length+bwFlag.length+xmlLength.length+end.length));
  61 + byte[]allByte = byteMergerAll(head,packge,mType,station,aisle,eType,bwFlag,xmlLength,xBody,end);
  62 + op.write(allByte);
  63 + op.flush();
60 op.close(); 64 op.close();
61 logger.info("发送完毕"); 65 logger.info("发送完毕");
62 socket.close(); 66 socket.close();
@@ -70,15 +74,24 @@ public class CommandClient { @@ -70,15 +74,24 @@ public class CommandClient {
70 74
71 75
72 } 76 }
  77 + /**
  78 + * @Param info 卡口采集信息
  79 + * @Param flag 放行标识
  80 + * */
73 private static String getXmlInfo(GatherInfo info,String flag) { 81 private static String getXmlInfo(GatherInfo info,String flag) {
  82 + String message = null;
  83 + if ("11".equals(flag)){
  84 + message="直接放行";
  85 + }else{
  86 + message = "禁止通行,载重比对不在可控范围";
  87 + }
74 StringBuffer buffer = new StringBuffer(); 88 StringBuffer buffer = new StringBuffer();
75 - buffer.append("<?xml version='1.0' encoding='GB2312' ?>");  
76 - buffer.append("<COMMAND_INFO AREA_ID="+info.getAreaid()+" CHNL_NO="+info.getChnlno()+" I_E_TYPE="+info  
77 - .getIetype()+" SEQ_NO="+info.getSeqno()+">");  
78 - buffer.append("<CHECK_RESULT>11000000000000000000</CHECK_RESULT><OP_HINT>数据不完整</OP_HINT>"); 89 + buffer.append("<COMMAND_INFO AREA_ID=\""+info.getAreaid()+"\" CHNL_NO=\""+info.getChnlno()+"\" I_E_TYPE=\""+info
  90 + .getIetype()+"\" SEQ_NO=\""+info.getSeqno()+"\">");
  91 + buffer.append("<CHECK_RESULT>"+flag+"000000000000000000</CHECK_RESULT><OP_HINT>"+message+"</OP_HINT>");
79 buffer.append("<SEAL>"); 92 buffer.append("<SEAL>");
80 - buffer.append("<ESEAL_ID></ESEAL_ID>");  
81 - buffer.append("<SEAL_KEY></SEAL_KEY>"); 93 + buffer.append("<ESEAL_ID>"+info.getEsealid()+"</ESEAL_ID>");
  94 + buffer.append("<SEAL_KEY>"+info.getSealkey()+"</SEAL_KEY>");
82 buffer.append("<OPEN_TIMES></OPEN_TIMES>"); 95 buffer.append("<OPEN_TIMES></OPEN_TIMES>");
83 buffer.append("<ESEAL_IC_NO></ESEAL_IC_NO>"); 96 buffer.append("<ESEAL_IC_NO></ESEAL_IC_NO>");
84 buffer.append("</SEAL>"); 97 buffer.append("</SEAL>");
@@ -88,7 +101,7 @@ public class CommandClient { @@ -88,7 +101,7 @@ public class CommandClient {
88 } 101 }
89 102
90 //int转byte 103 //int转byte
91 - public static byte[] intToByte4(int i) { 104 + private static byte[] intToByte4(int i) {
92 byte[] targets = new byte[4]; 105 byte[] targets = new byte[4];
93 //低位到高位 106 //低位到高位
94 targets[0] = (byte) (i & 0xFF); 107 targets[0] = (byte) (i & 0xFF);
@@ -98,15 +111,8 @@ public class CommandClient { @@ -98,15 +111,8 @@ public class CommandClient {
98 return targets; 111 return targets;
99 } 112 }
100 113
101 - //合并两个byte数组  
102 - public static byte[] byteMerger(byte[] bt1, byte[] bt2) {  
103 - byte[] bt3 = new byte[bt1.length + bt2.length];  
104 - System.arraycopy(bt1, 0, bt3, 0, bt1.length);  
105 - System.arraycopy(bt2, 0, bt3, bt1.length, bt2.length);  
106 - return bt3;  
107 - }  
108 //byte转int 114 //byte转int
109 - public static int byteArrayToInt(byte[] bytes) { 115 + private static int byteArrayToInt(byte[] bytes) {
110 int value = 0; 116 int value = 0;
111 // 由高位到低位 117 // 由高位到低位
112 for (int i = 0; i < 4; i++) { 118 for (int i = 0; i < 4; i++) {
@@ -116,4 +122,19 @@ public class CommandClient { @@ -116,4 +122,19 @@ public class CommandClient {
116 return value; 122 return value;
117 } 123 }
118 124
  125 + private static byte[] byteMergerAll(byte[]... values) {
  126 + int length_byte = 0;
  127 + for (int i = 0; i < values.length; i++) {
  128 + length_byte += values[i].length;
  129 + }
  130 + byte[] all_byte = new byte[length_byte];
  131 + int countLength = 0;
  132 + for (int i = 0; i < values.length; i++) {
  133 + byte[] b = values[i];
  134 + System.arraycopy(b, 0, all_byte, countLength, b.length);
  135 + countLength += b.length;
  136 + }
  137 + return all_byte;
  138 + }
  139 +
119 } 140 }
@@ -26,10 +26,10 @@ public final class FileTool { @@ -26,10 +26,10 @@ public final class FileTool {
26 26
27 if (rightOrwrong){ 27 if (rightOrwrong){
28 stringBuffer.append(xmlRootDirectory).append("/").append(path).append("/").append(DateTimeConverter.getFormat()) 28 stringBuffer.append(xmlRootDirectory).append("/").append(path).append("/").append(DateTimeConverter.getFormat())
29 - .append("/").append(uuidCreate.getUUID()).append(".log"); 29 + .append("/").append(UUIDCreate.getUUID()).append(".log");
30 }else { 30 }else {
31 stringBuffer.append(errorRootDirectory).append("/").append(path).append("/").append(DateTimeConverter.getDay()) 31 stringBuffer.append(errorRootDirectory).append("/").append(path).append("/").append(DateTimeConverter.getDay())
32 - .append("/").append(uuidCreate.getUUID()).append(".log"); 32 + .append("/").append(UUIDCreate.getUUID()).append(".log");
33 } 33 }
34 34
35 File file = new File(stringBuffer.toString()); 35 File file = new File(stringBuffer.toString());
@@ -67,7 +67,7 @@ public final class FileTool { @@ -67,7 +67,7 @@ public final class FileTool {
67 public static void writeFileToBak(String content){ 67 public static void writeFileToBak(String content){
68 String bakDir = readProperties("bakDirectory"); 68 String bakDir = readProperties("bakDirectory");
69 StringBuffer stringBuffer = new StringBuffer(); 69 StringBuffer stringBuffer = new StringBuffer();
70 - stringBuffer.append(bakDir).append("/").append(uuidCreate.getUUID()).append(".txt"); 70 + stringBuffer.append(bakDir).append("/").append(UUIDCreate.getUUID()).append(".txt");
71 71
72 File file = new File(stringBuffer.toString()); 72 File file = new File(stringBuffer.toString());
73 73
@@ -3,7 +3,7 @@ package com.sy.utils; @@ -3,7 +3,7 @@ package com.sy.utils;
3 import java.util.UUID; 3 import java.util.UUID;
4 4
5 5
6 -public class uuidCreate { 6 +public class UUIDCreate {
7 public static String getUUID() { 7 public static String getUUID() {
8 String uuid = UUID.randomUUID().toString().replace("-",""); 8 String uuid = UUID.randomUUID().toString().replace("-","");
9 return uuid; 9 return uuid;
@@ -88,6 +88,12 @@ @@ -88,6 +88,12 @@
88 from airone_ex_stock 88 from airone_ex_stock
89 where WORK_NO = #{workNo,jdbcType=VARCHAR} 89 where WORK_NO = #{workNo,jdbcType=VARCHAR}
90 </select> 90 </select>
  91 + <select id="selectByMawbNo" parameterType="java.lang.String" resultMap="BaseResultMap">
  92 + select
  93 + <include refid="Base_Column_List" />
  94 + from airone_ex_stock
  95 + where MAWB_NO = #{mawbNo,jdbcType=VARCHAR}
  96 + </select>
91 <delete id="deleteByPrimaryKey" parameterType="java.lang.String"> 97 <delete id="deleteByPrimaryKey" parameterType="java.lang.String">
92 delete from airone_ex_stock 98 delete from airone_ex_stock
93 where WORK_NO = #{workNo,jdbcType=VARCHAR} 99 where WORK_NO = #{workNo,jdbcType=VARCHAR}
@@ -85,6 +85,13 @@ @@ -85,6 +85,13 @@
85 from airone_im_stock 85 from airone_im_stock
86 where WORK_NO = #{workNo,jdbcType=VARCHAR} 86 where WORK_NO = #{workNo,jdbcType=VARCHAR}
87 </select> 87 </select>
  88 + <select id="selectByMawbAndHawb" parameterType="java.lang.String" resultMap="BaseResultMap">
  89 + select
  90 + <include refid="Base_Column_List" />
  91 + from airone_im_stock
  92 + where MAWB_NO = #{mawbNo,jdbcType=VARCHAR}
  93 + and HAWB_NO = #{hawbNo,jdbcType=VARCHAR}
  94 + </select>
88 <delete id="deleteByPrimaryKey" parameterType="java.lang.String"> 95 <delete id="deleteByPrimaryKey" parameterType="java.lang.String">
89 delete from airone_im_stock 96 delete from airone_im_stock
90 where WORK_NO = #{workNo,jdbcType=VARCHAR} 97 where WORK_NO = #{workNo,jdbcType=VARCHAR}