宇同海外 国内订单取数
This commit is contained in:
parent
3e95dfd2aa
commit
b4397ec7e3
|
@ -0,0 +1,15 @@
|
||||||
|
package com.hzya.frame.u8c.gnsale.service;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import com.hzya.frame.basedao.service.IBaseService;
|
||||||
|
import com.hzya.frame.web.entity.BaseEntity;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* (BdInvmandoc)表服务接口
|
||||||
|
*
|
||||||
|
* @author makejava
|
||||||
|
* @since 2023-08-25 11:21:44
|
||||||
|
*/
|
||||||
|
public interface IGnSaleService extends IBaseService<BaseEntity, String> {
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,183 @@
|
||||||
|
package com.hzya.frame.u8c.gnsale.service.impl;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSON;
|
||||||
|
import com.alibaba.fastjson.JSONArray;
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import com.hzya.frame.basedao.service.impl.BaseService;
|
||||||
|
import com.hzya.frame.sysnew.comparison.service.impl.ComparisonServiceImpl;
|
||||||
|
import com.hzya.frame.u8c.gnsale.service.IGnSaleService;
|
||||||
|
import com.hzya.frame.web.entity.BaseEntity;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.TreeMap;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* (BdInvmandoc)表服务实现类
|
||||||
|
*
|
||||||
|
* @author makejava
|
||||||
|
* @since 2023-08-25 11:21:44
|
||||||
|
*/
|
||||||
|
@Service("GnSaleServiceImpl")
|
||||||
|
public class GnSaleServiceImpl extends BaseService<BaseEntity, String> implements IGnSaleService {
|
||||||
|
@Autowired
|
||||||
|
private ComparisonServiceImpl comparisonServiceimpl;
|
||||||
|
|
||||||
|
|
||||||
|
private JSONObject bdGnDispatch(Object item) {
|
||||||
|
JSONObject data = (JSONObject) item;
|
||||||
|
//组装表头参数
|
||||||
|
JSONArray orders = data.getJSONArray("orders");
|
||||||
|
JSONObject jsonObjectUser = new JSONObject();
|
||||||
|
JSONObject jsonStr = new JSONObject();
|
||||||
|
jsonObjectUser.put("data_id", data.get("data_id"));
|
||||||
|
jsonObjectUser.put("mdmCode", "10001");
|
||||||
|
jsonStr.put("jsonStr", jsonObjectUser);
|
||||||
|
//先查询编码和名称查询是否存在
|
||||||
|
Object attribute = comparisonServiceimpl.queryEntityPage(jsonStr);
|
||||||
|
JSONObject jsonObjectAttribute = (JSONObject) JSON.toJSON(attribute);
|
||||||
|
JSONArray jsonArrayList = jsonObjectAttribute.getJSONObject("pageInfo").getJSONArray("list");
|
||||||
|
if (jsonArrayList == null || jsonArrayList.size() == 0) {
|
||||||
|
JSONObject mainObject = new JSONObject();
|
||||||
|
mainObject.put("appName","数智中台");
|
||||||
|
mainObject.put("appCode","800004");
|
||||||
|
mainObject.put("mdmCode", "10004");
|
||||||
|
mainObject.put("optionName", "数智中台");
|
||||||
|
JSONObject gn_dispatch = new JSONObject();
|
||||||
|
gn_dispatch.put("data_id", data.getString("detailId"));//明细唯一id
|
||||||
|
gn_dispatch.put("detail_id", data.getString("detailId"));//明细唯一id
|
||||||
|
gn_dispatch.put("shop_no", data.getString("shopNo"));//店铺编码
|
||||||
|
gn_dispatch.put("shop_name", data.getString("shopName"));//店铺名称
|
||||||
|
gn_dispatch.put("spec_no", data.getString("specNo"));//商品编码
|
||||||
|
gn_dispatch.put("reco_status", data.getString("recoStatus"));//对账状态(对账成功/对账失败)
|
||||||
|
gn_dispatch.put("warehouse_no", data.getString("warehouseNo"));//仓库编码
|
||||||
|
gn_dispatch.put("warehouse_name", data.getString("warehouseName"));//仓库名称
|
||||||
|
gn_dispatch.put("business_time", data.getString("businessTime"));//业务日期,发货口径对账则为发货日期,收货口径对账则为完成日期
|
||||||
|
gn_dispatch.put("period_start_date", data.getString("periodStartDate"));//账期开始日期
|
||||||
|
gn_dispatch.put("period_end_date", data.getString("periodEndDate"));//账期结束日期
|
||||||
|
gn_dispatch.put("summary_no", data.getString("summaryNo"));//汇总单号
|
||||||
|
gn_dispatch.put("plat_order_no", data.getString("platOrderNo"));//平台订单号
|
||||||
|
gn_dispatch.put("plat_sub_no", data.getString("platSubNo"));//平台子订单号
|
||||||
|
gn_dispatch.put("sys_order_no", data.getString("sysOrderNo"));//系统订单号
|
||||||
|
gn_dispatch.put("oms_stockout_no", data.getString("omsStockoutNo"));//销售出库单号
|
||||||
|
gn_dispatch.put("oms_refund_no", data.getString("omsRefundNo"));//退单号
|
||||||
|
gn_dispatch.put("original_order_no", data.getString("originalOrderNo"));//平台订单号[未处理](对于手工订单/退单,慧经营会默认截取单号后缀,如7198371239874-1,截取后订单号为7198371239874,此列展示7198371239874-1)
|
||||||
|
gn_dispatch.put("reco_time", data.getString("recoTime"));//对账时间,对账执行时间
|
||||||
|
gn_dispatch.put("salesman_name", data.getString("salesmanName"));//业务员名称
|
||||||
|
gn_dispatch.put("fenxiao_nick", data.getString("fenxiaoNick"));//分销商昵称
|
||||||
|
gn_dispatch.put("goods_no", data.getString("goodsNo"));//货品编码
|
||||||
|
gn_dispatch.put("goods_name", data.getString("goodsName"));//货品名称
|
||||||
|
gn_dispatch.put("goods_batch_no", data.getString("goodsBatchNo"));//货品批次号
|
||||||
|
gn_dispatch.put("gift_type", data.getString("giftType"));//赠品(是/否)
|
||||||
|
gn_dispatch.put("erp_order_type", data.getString("erpOrderType"));//订单类型(网店销售、线下零售、售后换货、批发业务、保修换新、保修完成、订单补发、供销补发、自定义类型1-6、自定义属性7-8等)
|
||||||
|
gn_dispatch.put("delivery_amount", data.getString("deliveryAmount"));//发货金额
|
||||||
|
gn_dispatch.put("sqt_amount", data.getString("sqtAmount"));//售前退款金额,发货前退款金额
|
||||||
|
gn_dispatch.put("szt_amount", data.getString("sztAmount"));//售中退款金额,发货后确认收货前退款金额
|
||||||
|
gn_dispatch.put("sz_refund_only_amount", data.getString("szRefundOnlyAmount"));//售中仅退款金额
|
||||||
|
gn_dispatch.put("sz_refund_return_amount", data.getString("szRefundReturnAmount"));//售中退货退款金额
|
||||||
|
gn_dispatch.put("adjust_amount", data.getString("adjustAmount"));//调整单金额
|
||||||
|
gn_dispatch.put("collection_amount", data.getString("collectionAmount"));//收款金额,最终账单实际收款金额
|
||||||
|
gn_dispatch.put("diff_amount", data.getString("diffAmount"));//差异金额,计算公式:发货金额-售中退款金额+调整单金额-收款金额
|
||||||
|
gn_dispatch.put("delivery_qty", data.getString("deliveryQty"));//发货数量
|
||||||
|
gn_dispatch.put("refund_qty", data.getString("refundQty"));//售中预计退款数量
|
||||||
|
gn_dispatch.put("return_qty", data.getString("returnQty"));//售中退货入库数量
|
||||||
|
gn_dispatch.put("expect_qty", data.getString("expectQty"));//实际数量,计算公式:发货数量-售中退货入库数量
|
||||||
|
gn_dispatch.put("share_post_amount", data.getString("sharePostAmount"));//邮费收入
|
||||||
|
gn_dispatch.put("author_name", data.getString("authorName"));//达人名称
|
||||||
|
gn_dispatch.put("sign_status", data.getString("signStatus"));//签收状态(已签收等)
|
||||||
|
|
||||||
|
mainObject.put("gn_dispatch",gn_dispatch);
|
||||||
|
jsonStr.put("jsonStr",mainObject);
|
||||||
|
Object result = comparisonServiceimpl.saveEntity(jsonStr);
|
||||||
|
logger.info("新增结果为:{}", JSON.toJSONString(result));
|
||||||
|
}
|
||||||
|
return data;
|
||||||
|
}
|
||||||
|
private JSONObject bdGnAdjust(Object item) {
|
||||||
|
JSONObject data = (JSONObject) item;
|
||||||
|
//组装表头参数
|
||||||
|
JSONArray orders = data.getJSONArray("orders");
|
||||||
|
JSONObject jsonObjectUser = new JSONObject();
|
||||||
|
JSONObject jsonStr = new JSONObject();
|
||||||
|
jsonObjectUser.put("data_id", data.get("data_id"));
|
||||||
|
jsonObjectUser.put("mdmCode", "10001");
|
||||||
|
jsonStr.put("jsonStr", jsonObjectUser);
|
||||||
|
//先查询编码和名称查询是否存在
|
||||||
|
Object attribute = comparisonServiceimpl.queryEntityPage(jsonStr);
|
||||||
|
JSONObject jsonObjectAttribute = (JSONObject) JSON.toJSON(attribute);
|
||||||
|
JSONArray jsonArrayList = jsonObjectAttribute.getJSONObject("pageInfo").getJSONArray("list");
|
||||||
|
if (jsonArrayList == null || jsonArrayList.size() == 0) {
|
||||||
|
JSONObject mainObject = new JSONObject();
|
||||||
|
mainObject.put("appName","数智中台");
|
||||||
|
mainObject.put("appCode","800004");
|
||||||
|
mainObject.put("mdmCode", "10005");
|
||||||
|
mainObject.put("optionName", "数智中台");
|
||||||
|
JSONObject gn_adjust = new JSONObject();
|
||||||
|
gn_adjust.put("data_id", data.getString("summaryNo"));//汇总单号,唯一编码(示例:HZBH0001)
|
||||||
|
gn_adjust.put("shop_no", data.getString("shopNo"));//店铺编码(示例:Db001)
|
||||||
|
gn_adjust.put("summary_no", data.getString("summaryNo"));//汇总单号,唯一编码(示例:HZBH0001)
|
||||||
|
gn_adjust.put("shop_name", data.getString("shopName"));//店铺名称(示例:第一个店铺)
|
||||||
|
gn_adjust.put("start_date", data.getString("startDate"));//账期开始时间(示例:2023-10-10)
|
||||||
|
gn_adjust.put("end_date", data.getString("endDate"));//账期结束时间(示例:2023-10-31)
|
||||||
|
gn_adjust.put("reco_status", data.getString("recoStatus"));//对账状态(示例:对账成功,对账失败)
|
||||||
|
gn_adjust.put("spec_no", data.getString("specNo"));//商家编码(示例:A0001)
|
||||||
|
gn_adjust.put("good_name", data.getString("goodName"));//货品名称(示例:这是个好东西)
|
||||||
|
gn_adjust.put("adjust_type", data.getString("adjustType"));//调整单类型(示例:负应收单,正应收单)
|
||||||
|
gn_adjust.put("refund_type", data.getString("refundType"));//退款类型(处理逻辑同 adjust_type)
|
||||||
|
|
||||||
|
mainObject.put("gn_adjust",gn_adjust);
|
||||||
|
jsonStr.put("jsonStr",mainObject);
|
||||||
|
Object result = comparisonServiceimpl.saveEntity(jsonStr);
|
||||||
|
logger.info("新增结果为:{}", JSON.toJSONString(result));
|
||||||
|
}
|
||||||
|
return data;
|
||||||
|
}
|
||||||
|
|
||||||
|
private JSONObject bdGnZdfy(Object item) {
|
||||||
|
JSONObject data = (JSONObject) item;
|
||||||
|
//组装表头参数
|
||||||
|
JSONArray orders = data.getJSONArray("orders");
|
||||||
|
JSONObject jsonObjectUser = new JSONObject();
|
||||||
|
JSONObject jsonStr = new JSONObject();
|
||||||
|
jsonObjectUser.put("data_id", data.get("data_id"));
|
||||||
|
jsonObjectUser.put("mdmCode", "10001");
|
||||||
|
jsonStr.put("jsonStr", jsonObjectUser);
|
||||||
|
//先查询编码和名称查询是否存在
|
||||||
|
Object attribute = comparisonServiceimpl.queryEntityPage(jsonStr);
|
||||||
|
JSONObject jsonObjectAttribute = (JSONObject) JSON.toJSON(attribute);
|
||||||
|
JSONArray jsonArrayList = jsonObjectAttribute.getJSONObject("pageInfo").getJSONArray("list");
|
||||||
|
if (jsonArrayList == null || jsonArrayList.size() == 0) {
|
||||||
|
JSONObject mainObject = new JSONObject();
|
||||||
|
mainObject.put("appName","数智中台");
|
||||||
|
mainObject.put("appCode","800004");
|
||||||
|
mainObject.put("mdmCode", "10005");
|
||||||
|
mainObject.put("optionName", "数智中台");
|
||||||
|
JSONObject gn_zdfy = new JSONObject();
|
||||||
|
gn_zdfy.put("plat_name", data.getString("platName"));//平台名称(示例:淘宝)
|
||||||
|
gn_zdfy.put("shop_no", data.getString("shopNo"));//店铺编码(示例:Db001)
|
||||||
|
gn_zdfy.put("shop_name", data.getString("shopName"));//店铺名称(示例:第一个店铺)
|
||||||
|
gn_zdfy.put("business_date", data.getString("businessDate"));//账单结算日期(示例:2023-03-21)
|
||||||
|
gn_zdfy.put("summary_no", data.getString("summaryNo"));//汇总单号,唯一编码(示例:HZBH0001)
|
||||||
|
gn_zdfy.put("account_no", data.getString("accountNo"));//账号(示例:**@.com)
|
||||||
|
gn_zdfy.put("bill_type", data.getString("billType"));//交易账户名(示例:***@com.cn)
|
||||||
|
gn_zdfy.put("expense_classify_name", data.getString("expenseClassifyName"));//费用分类名称(示例:收款项目)
|
||||||
|
gn_zdfy.put("expense_classify_no", data.getString("expenseClassifyNo"));//费用分类编码(示例:90290125)
|
||||||
|
gn_zdfy.put("expense_classify_remark", data.getString("expenseClassifyRemark"));//费用分类备注(示例:这是一个费用项)
|
||||||
|
gn_zdfy.put("expense_item_no", data.getString("expenseItemNo"));//费用项编码(示例:10290125)
|
||||||
|
gn_zdfy.put("expense_item_remark", data.getString("expenseItemRemark"));//费用项备注(示例:费用接口数据)
|
||||||
|
gn_zdfy.put("expense_item_name", data.getString("expenseItemName"));//费用项名称(示例:这是一个收款项)
|
||||||
|
gn_zdfy.put("subject_id", data.getString("subjectId"));//科目编码(示例:123)
|
||||||
|
gn_zdfy.put("subject_name", data.getString("subjectName"));//科目名称(示例:aaa)
|
||||||
|
gn_zdfy.put("business_amount", data.getString("businessAmount"));//金额(示例:100.0009)
|
||||||
|
gn_zdfy.put("amount_channel", data.getString("amountChannel"));//资金渠道(示例:支付宝)
|
||||||
|
gn_zdfy.put("business_type", data.getString("businessType"));//类型(示例:收款)
|
||||||
|
|
||||||
|
mainObject.put("gn_zdfy",gn_zdfy);
|
||||||
|
jsonStr.put("jsonStr",mainObject);
|
||||||
|
Object result = comparisonServiceimpl.saveEntity(jsonStr);
|
||||||
|
logger.info("新增结果为:{}", JSON.toJSONString(result));
|
||||||
|
}
|
||||||
|
return data;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,46 @@
|
||||||
|
package com.hzya.frame.u8c.gnsale.util;
|
||||||
|
|
||||||
|
import cn.hutool.http.HttpRequest;
|
||||||
|
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* com.hzya.frame.u8c.hwsale.util
|
||||||
|
*
|
||||||
|
* @author makejava
|
||||||
|
* @date 2025-08 -14 13:25
|
||||||
|
*/
|
||||||
|
|
||||||
|
public class HjyUtil {
|
||||||
|
public static final String baseUrl = "https://openapi.qizhishangke.com";
|
||||||
|
public static final String appkey = "2aa6ce6a155fdceebec72edec9c7abf8";
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @content 参数加密
|
||||||
|
* @className: Administrator
|
||||||
|
* @author laborer
|
||||||
|
* @date 2025-08-14 13:25
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
public static String linkParams(Map<String, String> map, String secret) {
|
||||||
|
StringBuilder sb = new StringBuilder();
|
||||||
|
sb.append(secret);
|
||||||
|
for (Map.Entry<String, String> item : map.entrySet())
|
||||||
|
{
|
||||||
|
if (item.getKey().equals("sign"))
|
||||||
|
continue;
|
||||||
|
sb.append(item.getKey());
|
||||||
|
sb.append(item.getValue());
|
||||||
|
}
|
||||||
|
sb.append(secret);
|
||||||
|
return sb.toString();
|
||||||
|
}
|
||||||
|
public static String doPost(String parm,String url){
|
||||||
|
String result = HttpRequest.post(url)
|
||||||
|
.body(parm)//表单内容
|
||||||
|
.timeout(20000)//超时,毫秒
|
||||||
|
.execute().body();
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue