提交 02bf2772 authored 作者: 李炎's avatar 李炎

新增单条查询

上级 f2c8b536
......@@ -76,13 +76,13 @@ public class WebApi {
} else if (soSsRequestVo.getObjAPIName().equals(salesOrderService.apiName)) {
result=salesOrderService.getDataById(soSsRequestVo);//订单
} else if (soSsRequestVo.getObjAPIName().equals(salesDeliveryService.apiName)) {
//发货单
result=salesDeliveryService.getDataById(soSsRequestVo);//发货单
} else if (soSsRequestVo.getObjAPIName().equals(salesInvoiceService.apiName)) {
//开票
result=salesInvoiceService.getDataById(soSsRequestVo);//开票
} else if (soSsRequestVo.getObjAPIName().equals(receiptService.apiName)) {
//回款
} else if (soSsRequestVo.getObjAPIName().equals(inventoryService.apiName)) {
//库存
result=receiptService.getDataById(soSsRequestVo);//回款
} else if (soSsRequestVo.getObjAPIName().equals(customerService.apiName)) {
result=customerService.getDataById(soSsRequestVo);//客户
} else {
return Result.fail("操作失败", soSsRequestVo.getObjAPIName() + "不存在", "406");
}
......
......@@ -3,8 +3,11 @@ package com.santos.iost.service;
import com.santos.iost.dto.Result;
import com.santos.iost.vo.SoSsCreateVo;
import com.santos.iost.vo.SoSsRequestVo;
import com.santos.iost.vo.SoSsRequestVo2;
public interface SoSsCustomerService {
String apiName ="ERPCustomer";
public Result setData(SoSsCreateVo soSsRequestVo) throws Exception;
public Result getDataById(SoSsRequestVo2 soSsRequestVo);
}
......@@ -2,8 +2,10 @@ package com.santos.iost.service;
import com.santos.iost.dto.Result;
import com.santos.iost.vo.SoSsRequestVo;
import com.santos.iost.vo.SoSsRequestVo2;
public interface SoSsReceiptService {
String apiName ="ReturnFee";
public Result getData(SoSsRequestVo soSsRequestVo);
public Result getDataById(SoSsRequestVo2 soSsRequestVo);
}
......@@ -2,8 +2,12 @@ package com.santos.iost.service;
import com.santos.iost.dto.Result;
import com.santos.iost.vo.SoSsRequestVo;
import com.santos.iost.vo.SoSsRequestVo2;
public interface SoSsSalesDeliveryService {
String apiName ="DeliveryBill";
String apiName = "DeliveryBill";
public Result getData(SoSsRequestVo soSsRequestVo);
public Result getDataById(SoSsRequestVo2 soSsRequestVo);
}
......@@ -2,8 +2,11 @@ package com.santos.iost.service;
import com.santos.iost.dto.Result;
import com.santos.iost.vo.SoSsRequestVo;
import com.santos.iost.vo.SoSsRequestVo2;
public interface SoSsSalesInvoiceService {
String apiName ="Invoice";
public Result getData(SoSsRequestVo soSsRequestVo);
public Result getDataById(SoSsRequestVo2 soSsRequestVo);
}
......@@ -8,6 +8,7 @@ import com.santos.iost.dto.SoSsResponseDate;
import com.santos.iost.service.SoSsCustomerService;
import com.santos.iost.utils.JsonUtil;
import com.santos.iost.vo.SoSsCreateVo;
import com.santos.iost.vo.SoSsRequestVo2;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
......@@ -19,8 +20,10 @@ public class SoSsCustomerServiceImpl implements SoSsCustomerService {
@Autowired
SoSsDao soSsDao;
String Url;//拼接用请求地址-(http://127.0.0.1/K3API/Material/GetList?token=${token})
String Url;
String setUrl;//拼接用请求地址-(http://127.0.0.1/K3API/Material/GetList?token=${token})
String setData;
String fields;//需要查询出的字段
/**
* 请求字段
*/
......@@ -34,12 +37,14 @@ public class SoSsCustomerServiceImpl implements SoSsCustomerService {
public SoSsCustomerServiceImpl() {
this.Url = "/K3API/Customer/Save";//拼接用请求地址-(http://127.0.0.1/K3API/Material/GetList?token=${token})
this.Url="/K3API/Customer/GetList";
this.setUrl = "/K3API/Customer/Save";//拼接用请求地址-(http://127.0.0.1/K3API/Material/GetList?token=${token})
this.fields ="FNumber,FName,FRegionID,Femployee,FContact,FPhone,FAddress";
this.setData = "{\n" +
" \"F_109\": {\n" +
" \"FID\": \"003\"\n" +
// " \"F_109\": {\n" +
// " \"FID\": \"003\"\n" +
// " \"FName\": \"重要客户\"\n" +
" },\n" +
// " },\n" +
" \"FIsCreditMgr\": false,\n" +
" \"FlastRPAmount\": 0,\n" +
" \"FlastTradeAmount\": 0,\n" +
......@@ -89,6 +94,29 @@ public class SoSsCustomerServiceImpl implements SoSsCustomerService {
return result;
}
@Override
public Result getDataById(SoSsRequestVo2 soSsRequestVo) {
String s = new String();
Map map = new HashMap();
Map Data = new LinkedHashMap();
Data.put("PageSize", 1);//每页行数
Data.put("PageIndex", 1);//第几页
Data.put("Filter", "FNumber = '" + soSsRequestVo.getDataId() + "'");//过滤条件
Data.put("Fields", fields);//查询字段
map.put("Data", Data);
try {
s = soSsDao.requestK3Api(Url, JsonUtil.Mapjson(map));
} catch (Exception e) {
e.printStackTrace();
}
SoSsResponseDate soSsResponseDate = JSON.parseObject(s, SoSsResponseDate.class, Feature.OrderedField);//转换数据类型
Result result = changeResponse2(soSsResponseDate, soSsRequestVo);//转换返回的数据格式
return result;
}
/*转换*/
public Result changeResponse(SoSsResponseDate soSsRequestVo) {
Map<Object, Object> map = new HashMap<>();
......@@ -117,4 +145,47 @@ public class SoSsCustomerServiceImpl implements SoSsCustomerService {
return result;
}
/*转换*/
public Result changeResponse2(SoSsResponseDate ResponseDate, SoSsRequestVo2 RequestVo) {
Map<Object, Object> masterField = new LinkedHashMap<>();
Result result = new Result();
try {//字段转换-变化soSsRequestVo的data参数格式 为CRM规定格式
Map data = (Map) ResponseDate.getData();
Object data1 = data.get("Data");
System.out.println(data);
List list = JSON.parseObject(data1.toString(), List.class, Feature.OrderedField);
for (Object o : list) {
Map map = new HashMap<>();
Map listDateMap = JSON.parseObject(o.toString(), Map.class, Feature.OrderedField);
Map masterFieldVal = new LinkedHashMap<>();
masterFieldVal.put("ERPNumber", listDateMap.get(FNumber));//
masterFieldVal.put("customerName", listDateMap.get(FName));//
masterFieldVal.put("detailedAddress", listDateMap.get(FAddress));//
masterFieldVal.put("customerLevel", listDateMap.get(FRegionID+"_FID"));//
masterFieldVal.put("contacts", listDateMap.get(FContact));//
masterFieldVal.put("phone", listDateMap.get(FPhone));//
masterFieldVal.put("personCharge", listDateMap.get(Femployee+"_FNumber"));//
// if (null == RequestVo.getIncludeDetail() || false == RequestVo.getIncludeDetail()) {
// } else if (null != RequestVo.getIncludeDetail() && true == RequestVo.getIncludeDetail()) {
// map = getDetail(listDateMap.get(FBillNo).toString());
// }
masterField.put("objAPIName", apiName);
masterField.put("masterFieldVal", masterFieldVal);
masterField.put("detailFieldVals", map);
}
ResponseDate.setData(masterField);
} catch (Exception e) {
e.printStackTrace();
}
//将ERP格式变换为CRM格式
result.setMessage(ResponseDate.getMessage());
result.setCode(ResponseDate.getStatusCode());
result.setData(ResponseDate.getData());
return result;
}
}
......@@ -9,6 +9,7 @@ import com.santos.iost.service.SoSsReceiptService;
import com.santos.iost.utils.JsonUtil;
import com.santos.iost.utils.StringUtil;
import com.santos.iost.vo.SoSsRequestVo;
import com.santos.iost.vo.SoSsRequestVo2;
import net.sf.json.JSONObject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
......@@ -59,6 +60,31 @@ public class SoSsReceiptServiceImpl implements SoSsReceiptService {
Result result = changeResponse(soSsResponseDate, soSsRequestVo);//转换返回的数据格式
return result;
}
@Override
public Result getDataById(SoSsRequestVo2 soSsRequestVo) {
String s = new String();
Map map = new HashMap();
Map Data = new LinkedHashMap();
Data.put("Top", 1);//返回行数
Data.put("PageSize", 1);//每页行数
Data.put("PageIndex", 1);//第几页
Data.put("Filter", "[FNumber] = '" + soSsRequestVo.getDataId() + "'");//过滤条件
Data.put("OrderBy", "[FNumber] asc");//排序规则
Data.put("SelectPage", "1");//表体索引,文档默认为2
Data.put("Fields", fields);//查询字段
map.put("Data", Data);
try {
s = soSsDao.requestK3Api(Url, JsonUtil.Mapjson(map));
} catch (Exception e) {
e.printStackTrace();
}
SoSsResponseDate soSsResponseDate = JSON.parseObject(s, SoSsResponseDate.class, Feature.OrderedField);//转换数据类型
Result result = changeResponse2(soSsResponseDate, soSsRequestVo);//转换返回的数据格式
return result;
}
......@@ -104,6 +130,7 @@ public class SoSsReceiptServiceImpl implements SoSsReceiptService {
Map listDateMap = JSON.parseObject(o.toString(), Map.class, Feature.OrderedField);
Map masterField = new LinkedHashMap<>();
Map masterFieldVal = new LinkedHashMap<>();
masterFieldVal.put("ERPSystemNumber", listDateMap.get(FNumber));//编号
masterFieldVal.put("customerName", listDateMap.get(FCustomer_DSPName));//客户名称
masterFieldVal.put("MSBsTotalAmount", listDateMap.get(FAmountFor));//本次回款总金额
masterFieldVal.put("MSBsDate", listDateMap.get(FDate));//回款日期
......@@ -142,7 +169,7 @@ public class SoSsReceiptServiceImpl implements SoSsReceiptService {
Map requestData = new HashMap();
requestData.put(FBillNo, code);
paramsMap.put("Data", requestData);
System.out.println(paramsMap);
try {
String s = soSsDao.requestK3ApiDetail(includeDetailUrl, JsonUtil.Mapjson(paramsMap));
SoSsResponseDate soSsResponseDate = JSON.parseObject(s, SoSsResponseDate.class);//转换数据类型
......@@ -212,4 +239,42 @@ public class SoSsReceiptServiceImpl implements SoSsReceiptService {
return result;
}
/*转换*/
public Result changeResponse2(SoSsResponseDate ResponseDate, SoSsRequestVo2 RequestVo) {
Map<Object, Object> masterField = new LinkedHashMap<>();
Result result = new Result();
try {//字段转换-变化soSsRequestVo的data参数格式 为CRM规定格式
Map data = (Map) ResponseDate.getData();
Object data1 = data.get("DATA");
List list = JSON.parseObject(data1.toString(), List.class, Feature.OrderedField);
for (Object o : list) {
Map map = new HashMap<>();
Map listDateMap = JSON.parseObject(o.toString(), Map.class, Feature.OrderedField);
Map masterFieldVal = new LinkedHashMap<>();
masterFieldVal.put("ERPSystemNumber", listDateMap.get(FNumber));//编号
masterFieldVal.put("customerName", listDateMap.get(FCustomer_DSPName));//客户名称
masterFieldVal.put("MSBsTotalAmount", listDateMap.get(FAmountFor));//本次回款总金额
masterFieldVal.put("MSBsDate", listDateMap.get(FDate));//回款日期
if (null == RequestVo.getIncludeDetail() || false == RequestVo.getIncludeDetail()) {
} else if (null != RequestVo.getIncludeDetail() && true == RequestVo.getIncludeDetail()) {
map = getDetail(listDateMap.get(FNumber).toString());
}
masterField.put("objAPIName", apiName);
masterField.put("masterFieldVal", masterFieldVal);
masterField.put("detailFieldVals", map);
}
ResponseDate.setData(masterField);
} catch (Exception e) {
e.printStackTrace();
}
//将ERP格式变换为CRM格式
result.setMessage(ResponseDate.getMessage());
result.setCode(ResponseDate.getStatusCode());
result.setData(ResponseDate.getData());
return result;
}
}
......@@ -9,6 +9,7 @@ import com.santos.iost.service.SoSsSalesDeliveryService;
import com.santos.iost.utils.JsonUtil;
import com.santos.iost.utils.StringUtil;
import com.santos.iost.vo.SoSsRequestVo;
import com.santos.iost.vo.SoSsRequestVo2;
import net.sf.json.JSONObject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
......@@ -71,6 +72,29 @@ public class SoSsSalesDeliveryServiceImpl implements SoSsSalesDeliveryService {
return result;
}
@Override
public Result getDataById(SoSsRequestVo2 soSsRequestVo) {
String s = new String();
Map map = new HashMap();
Map Data = new LinkedHashMap();
Data.put("Top", 1);//返回行数
Data.put("PageSize", 1);//每页行数
Data.put("PageIndex", 1);//第几页
Data.put("Filter", "FBillNo = '" + soSsRequestVo.getDataId() + "'");//过滤条件
Data.put("OrderBy", "[FBillNo] asc");//排序规则
Data.put("SelectPage", "1");//表体索引,文档默认为2
Data.put("Fields", fields);//查询字段
map.put("Data", Data);
try {
s = soSsDao.requestK3Api(Url, JsonUtil.Mapjson(map));
} catch (Exception e) {
e.printStackTrace();
}
SoSsResponseDate soSsResponseDate = JSON.parseObject(s, SoSsResponseDate.class, Feature.OrderedField);//转换数据类型
Result result = changeResponse2(soSsResponseDate, soSsRequestVo);//转换返回的数据格式
return result;
}
/*转换请求参数*/
public Map changeGeta(SoSsRequestVo soSsRequestVo) {
......@@ -136,7 +160,7 @@ public class SoSsSalesDeliveryServiceImpl implements SoSsSalesDeliveryService {
Map masterFieldVal = new LinkedHashMap<>();
masterFieldVal.put("customerName", listDateMap.get(FSupplyID_DSPName));//客户名称
masterFieldVal.put("customerAddress", listDateMap.get(FHeadSelfB0162));//客户地址
masterFieldVal.put("erpNumber", listDateMap.get(FBillNo));//erp编号
masterFieldVal.put("erpNumber",StringUtil.randomNumber() + listDateMap.get(FBillNo));//erp编号
masterFieldVal.put("orderDate", listDateMap.get(Fdate));//下单日期
masterFieldVal.put("logisticsCompany", listDateMap.get(FHeadSelfB0159));//物流公司
masterFieldVal.put("logisticsOrderNo", listDateMap.get(FHeadSelfB0157));//物流单号
......@@ -238,4 +262,45 @@ public class SoSsSalesDeliveryServiceImpl implements SoSsSalesDeliveryService {
return result;
}
/*转换*/
public Result changeResponse2(SoSsResponseDate ResponseDate, SoSsRequestVo2 RequestVo) {
Map<Object, Object> masterField = new LinkedHashMap<>();
Result result = new Result();
try {//字段转换-变化soSsRequestVo的data参数格式 为CRM规定格式
Map data = (Map) ResponseDate.getData();
Object data1 = data.get("DATA");
List list = JSON.parseObject(data1.toString(), List.class, Feature.OrderedField);
for (Object o : list) {
Map map = new HashMap<>();
Map listDateMap = JSON.parseObject(o.toString(), Map.class, Feature.OrderedField);
Map masterFieldVal = new LinkedHashMap<>();
masterFieldVal.put("customerName", listDateMap.get(FSupplyID_DSPName));//客户名称
masterFieldVal.put("customerAddress", listDateMap.get(FHeadSelfB0162));//客户地址
masterFieldVal.put("erpNumber", listDateMap.get(FBillNo));//erp编号
masterFieldVal.put("orderDate", listDateMap.get(Fdate));//下单日期
masterFieldVal.put("logisticsCompany", listDateMap.get(FHeadSelfB0159));//物流公司
masterFieldVal.put("logisticsOrderNo", listDateMap.get(FHeadSelfB0157));//物流单号
masterFieldVal.put("remarks", listDateMap.get(FExplanation));//备注
if (null == RequestVo.getIncludeDetail() || false == RequestVo.getIncludeDetail()) {
} else if (null != RequestVo.getIncludeDetail() && true == RequestVo.getIncludeDetail()) {
map = getDetail(listDateMap.get(FBillNo).toString());
}
masterField.put("objAPIName", apiName);
masterField.put("masterFieldVal", masterFieldVal);
masterField.put("detailFieldVals", map);
}
ResponseDate.setData(masterField);
} catch (Exception e) {
e.printStackTrace();
}
//将ERP格式变换为CRM格式
result.setMessage(ResponseDate.getMessage());
result.setCode(ResponseDate.getStatusCode());
result.setData(ResponseDate.getData());
return result;
}
}
......@@ -9,6 +9,7 @@ import com.santos.iost.service.SoSsSalesInvoiceService;
import com.santos.iost.utils.JsonUtil;
import com.santos.iost.utils.StringUtil;
import com.santos.iost.vo.SoSsRequestVo;
import com.santos.iost.vo.SoSsRequestVo2;
import net.sf.json.JSONObject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
......@@ -65,6 +66,30 @@ public class SoSsSalesInvoiceServiceImpl implements SoSsSalesInvoiceService {
return result;
}
@Override
public Result getDataById(SoSsRequestVo2 soSsRequestVo) {
String s = new String();
Map map = new HashMap();
Map Data = new LinkedHashMap();
Data.put("Top", 1);//返回行数
Data.put("PageSize", 1);//每页行数
Data.put("PageIndex", 1);//第几页
Data.put("Filter", "FBillNo = '" + soSsRequestVo.getDataId() + "'");//过滤条件
Data.put("OrderBy", "[FBillNo] asc");//排序规则
Data.put("SelectPage", "1");//表体索引,文档默认为2
Data.put("Fields", fields);//查询字段
map.put("Data", Data);
try {
s = soSsDao.requestK3Api(Url, JsonUtil.Mapjson(map));
} catch (Exception e) {
e.printStackTrace();
}
System.out.println(s);
SoSsResponseDate soSsResponseDate = JSON.parseObject(s, SoSsResponseDate.class, Feature.OrderedField);//转换数据类型
Result result = changeResponse2(soSsResponseDate, soSsRequestVo);//转换返回的数据格式
return result;
}
/*转换请求参数*/
public Map changeGeta(SoSsRequestVo soSsRequestVo) {
......@@ -153,7 +178,7 @@ public class SoSsSalesInvoiceServiceImpl implements SoSsSalesInvoiceService {
// Map Data = JSON.parseObject(soSsResponseDate.getData().toString(), Map.class);//转换数据类型
JSONObject fromObject = JSONObject.fromObject(soSsResponseDate.getData().toString());//转换数据类型
List list = JSON.parseObject(fromObject.get("Page2").toString(), List.class, Feature.OrderedField);
// int i = 1;
List<Map> mapList = new ArrayList<>();
for (Object o : list) {
Map listDateMap = JSON.parseObject(o.toString(), Map.class);
......@@ -165,10 +190,6 @@ public class SoSsSalesInvoiceServiceImpl implements SoSsSalesInvoiceService {
map.put("salesUnitPrice", listDateMap.get(FAuxPriceDiscount));//销售单价
map.put("thisInvoicingSubtotal", listDateMap.get(FAllAmount));//本次开票小计
mapList.add(map);
// returnDate.put(apiName + i, new ArrayList<Map>() {{
// add(map);
// }});
// i++;
}
returnDate.put("InvoiceDetail", mapList);
} else {
......@@ -217,4 +238,43 @@ public class SoSsSalesInvoiceServiceImpl implements SoSsSalesInvoiceService {
return result;
}
/*转换*/
public Result changeResponse2(SoSsResponseDate ResponseDate, SoSsRequestVo2 RequestVo) {
Map<Object, Object> masterField = new LinkedHashMap<>();
Result result = new Result();
try {//字段转换-变化soSsRequestVo的data参数格式 为CRM规定格式
Map data = (Map) ResponseDate.getData();
Object data1 = data.get("DATA");
List list = JSON.parseObject(data1.toString(), List.class, Feature.OrderedField);
for (Object o : list) {
Map map = new HashMap<>();
Map listDateMap = JSON.parseObject(o.toString(), Map.class, Feature.OrderedField);
Map masterFieldVal = new LinkedHashMap<>();
masterFieldVal.put("customerName", listDateMap.get(FCustID_DSPName));//客户名称
masterFieldVal.put("billingDate", listDateMap.get(SJKPRQ80));//开票日期
// masterFieldVal.put("billingDate", listDateMap.get(Fdate));//开票日期
masterFieldVal.put("invoiceNumber", listDateMap.get(FBillNo));//发票号码
masterFieldVal.put("shipmentNo", listDateMap.get(FHeadSelfI0471));//发货单号
if (null == RequestVo.getIncludeDetail() || false == RequestVo.getIncludeDetail()) {
} else if (null != RequestVo.getIncludeDetail() && true == RequestVo.getIncludeDetail()) {
map = getDetail(listDateMap.get(FBillNo).toString());
}
masterField.put("objAPIName", apiName);
masterField.put("masterFieldVal", masterFieldVal);
masterField.put("detailFieldVals", map);
}
ResponseDate.setData(masterField);
} catch (Exception e) {
e.printStackTrace();
}
//将ERP格式变换为CRM格式
result.setMessage(ResponseDate.getMessage());
result.setCode(ResponseDate.getStatusCode());
result.setData(ResponseDate.getData());
return result;
}
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论