Commit 4b2d4dc5 by peterchu

fix: 修复优化报表中字段存储数据问题

parent 98187638
......@@ -45,9 +45,9 @@ public class ParseToSaleDetail extends BaseService{
System.out.println("map:"+ map);
String orderDetail = map.get("other");
String purchase = map.get("orderpurchase");
String transactiondetail = map.get("transactiondetail");
String orderDetail = map.get("other"); // 订单详情
String purchase = map.get("orderpurchase"); // 订单采购记录
String transactiondetail = map.get("transactiondetail"); // 交易流水
JSONArray orderArr = JSONArray.parseArray(orderDetail);
JSONArray purchArr = JSONArray.parseArray(purchase);
JSONArray transArr = JSONArray.parseArray(transactiondetail);
......@@ -92,7 +92,7 @@ public class ParseToSaleDetail extends BaseService{
if("".equals(saleOrderId) || saleOrderId==null) continue;
String flightInfoIds = purchObj.getString("flightInfoIds");//航班id
String passengerIds = purchObj.getString("passengerIds");//乘客id
int flightSize = flightInfoIds.replace(",","").length()/36;//行程段数
int flightSize = flightInfoIds.replace(",","").length()/36;//行程段数 ???
int passengerSize = passengerIds.replace(",","").length()/36;//乘客人量
String route = purchObj.getString("routeType");
// String route = orderArr.get(0).getString("routeType");
......@@ -107,7 +107,7 @@ public class ParseToSaleDetail extends BaseService{
String localTotalPrice = nullToString(purchObj.getString("localTotalPrice"), "0").toString();//外币金额
String purchaseTotalPrice = nullToString(purchObj.getString("purchaseTotalPrice"), "0").toString();//本币金额
String orderValuedAddedOrderNo = purchObj.getString("orderValuedAddedOrderNo");//增值服务单号
String purchaseChannel = purchObj.getString("purchaseChannel");//采购渠道
String purchaseChannel = convertpurchaseChannel(purchObj.getString("purchaseChannel"));//采购渠道
String purchaseAccount = purchObj.getString("purchaseAccount");//采购账户
String purchaseOrderNo = purchObj.getString("purchaseOrderNo");//采购订单号
String purchaseOperator = purchObj.getString("purchaseOperator");//出票人
......@@ -129,16 +129,16 @@ public class ParseToSaleDetail extends BaseService{
String owPolicyCode = "";
String rtPolicyCode = "";
List<String> policySourceArr = new ArrayList<String>();
saleDetailList.get(num).setPoints(Integer.parseInt(points));//14 // 注意 判空
saleDetailList.get(num).setPurchaseCurrency(localCurrency);//15
saleDetailList.get(num).setPurchaseCurrency(currency); // 采购币种
// saleDetailList.get(num).setPurchaseCurrency(localCurrency);//15
saleDetailList.get(num).setOrderValueAddedNo(orderValuedAddedOrderNo);//24
saleDetailList.get(num).setPurchaseChannel(purchaseChannel);//25
saleDetailList.get(num).setPurchaseChannel(purchaseChannel);//25 采购渠道
saleDetailList.get(num).setPurchaseAccount(purchaseAccount);//26
saleDetailList.get(num).setPurchaseOrderNo(purchaseOrderNo);//27
saleDetailList.get(num).setOperator(trueName);//31
saleDetailList.get(num).setOperator(trueName);//31 操作员姓名
// saleDetailList.get(num).setPurchaseTime(purchObj.getDate("purchaseTime"));//32
saleDetailList.get(num).setPurchaseTime(purchObj.getString("purchaseTime"));//32
saleDetailList.get(num).setPurchaseTime(purchaseTime);//32 采购时间
saleDetailList.get(num).setOrderValueAdded(orderType);//33
saleDetailList.get(num).setRemark(remarkText);//35
saleDetailList.get(num).setPurchasePrice_local(Double.parseDouble(localTotalPrice));//16 // 注意 判空
......@@ -219,7 +219,7 @@ public class ParseToSaleDetail extends BaseService{
//政策信息
if(policySource!=null && !"".equals(policySource)){
policySourceArr = Arrays.asList(policySource.split("_",-1));
policySourceArr = Arrays.asList(policySource.split("_",-1)); // 注意 政策代码的分割 分隔符
}
if(policySourceArr.size()==2){// 去哪儿、同城、航管等 //单程
if("0".equals(policySourceArr.get(0))) owPolicyType = "默认";
......@@ -228,7 +228,7 @@ public class ParseToSaleDetail extends BaseService{
if("3".equals(policySourceArr.get(0))) owPolicyType = "普通促销";
owPolicyCode = policySourceArr.get(1);
saleDetailList.get(num+count_saleOrder-2).setPolicyType(owPolicyType);//28
saleDetailList.get(num+count_saleOrder-2).setPolicyType(owPolicyType);//28 注意 -2 还是 -1
saleDetailList.get(num+count_saleOrder-2).setPolicyCode(policySourceArr.get(1));//29
}
if(policySourceArr.size()==4){// 淘宝-->单程或者往返 其他平台-->往返
......@@ -275,6 +275,10 @@ public class ParseToSaleDetail extends BaseService{
rtPolicyCode = "去程:"+policySourceArr.get(2)+"\r\n回程:"+policySourceArr.get(5);
}
}
if (policySourceArr.size() == 1) {
saleDetailList.get(num+count_saleOrder-1).setPolicyType(owPolicyType);//28
saleDetailList.get(num+count_saleOrder-1).setPolicyCode(policySourceArr.get(0));//29
}
//写入附加产品规格
JSONArray ordervalueadded_info=orderObj.getJSONArray("ordervalueadded");//附加产品信息json
......@@ -378,15 +382,15 @@ public class ParseToSaleDetail extends BaseService{
JSONObject passengerObj = passengerArr.getJSONObject(pass);
String passengerId = passengerObj.getString("id");
// if(passengerIds.indexOf(passengerId)>-1){
if(passengerIds.equals(passengerId)){
if(passengerIds.contains(passengerId)){
pnr = passengerObj.getString("pnr"); // 注意 此处需要乘机人数据中保存了 pnr
ticketNumber = passengerObj.getString("ticketNumber");
passengerNames += passengerObj.getString("passengerName") +"-"+ ticketNumber +",";
passengerNames += passengerObj.getString("passengerName") +"-"+ ticketNumber +" \r\n";
Integer passengerType = passengerObj.getInteger("passengerType");
if(passengerType == 0){
if(passengerType == 1){
adultCount ++ ;
}else {
}else if (passengerType == 2){
childCount ++ ;
}
}
......@@ -428,9 +432,15 @@ public class ParseToSaleDetail extends BaseService{
purchaseId_trans = transObj.getString("purchaseId");
orderId_trans = transObj.getString("orderId");
String remark = transObj.getString("remark");
if(!StringUtils.isBlank(remark) && remark.contains("accountAlias")) {
if(!StringUtils.isBlank(remark) && remark.contains("remark")) {
JSONObject remarkJson = JSONObject.parseObject(remark);
accountId = remarkJson.getString("accountAlias");
if (remark.contains("accountAlias")) {
accountId = remarkJson.getString("accountAlias");
} else if (remark.contains("autopay")) {
accountId = remarkJson.getString("autopay");
} else {
accountId = transObj.getString("accountId");
}
} else {
accountId = transObj.getString("accountId");
}
......@@ -461,7 +471,7 @@ public class ParseToSaleDetail extends BaseService{
}
saleDetailList.get(num+count_transDetail-1).setTransactionDetail_local(Double.parseDouble(localPrice));//18
saleDetailList.get(num+count_transDetail-1).setTransactionDetail_rmb(Double.parseDouble(rmbPrice));//19
saleDetailList.get(num+count_transDetail-1).setPayMethod(accountId);//20
saleDetailList.get(num+count_transDetail-1).setPayMethod(accountId);//20 支付方式 注意 使用支付账号的别称字段数据
saleDetailList.get(num+count_transDetail-1).setCardNumber(cardNumber);//21
saleDetailList.get(num+count_transDetail-1).setTransactionNumber(transactionNumber);//23
}else{
......@@ -661,6 +671,27 @@ public class ParseToSaleDetail extends BaseService{
}
return key;
}
/**
* 将采购数据中的采购渠道转化
* 1.官网 2.bsp 3.b2b
* @param purchaseChannel
* @return
*/
public String convertpurchaseChannel (String purchaseChannel) {
String channel;
switch (purchaseChannel) {
case "1": channel = "官网";
break;
case "2": channel = "bsp";
break;
case "3": channel = "b2b";
break;
default:channel = purchaseChannel;
break;
}
return channel;
}
public String convertTripType(String key){
switch (key) {
case "OW":key = "单程";
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment