| @@ -1757,21 +1757,21 @@ public class PosServiceImpl implements PosService { | |||||
| public JSONObject posOrderSync(Map<String, String> params) throws MallinkException { | public JSONObject posOrderSync(Map<String, String> params) throws MallinkException { | ||||
| JSONObject retMap = new JSONObject(); | JSONObject retMap = new JSONObject(); | ||||
| String tenantId = params.get(WxPayConstant.NEU_TENANT_ID); // 租户ID | |||||
| String merchantIdStr = params.get(WxPayConstant.NEU_MERCHANT_ID); // 商户ID | |||||
| String buUserIdStr = params.get(WxPayConstant.NEU_BU_USER_ID); // POS操作员ID | |||||
| String cuUserIdStr = params.get(WxPayConstant.NEU_MEM_ID); // 富茂系统会员ID | |||||
| String cuPhoneStr = params.get(WxPayConstant.NEU_MEM_PHONE); // 富茂系统会员手机号 | |||||
| String sceneTypeStr = params.get(WxPayConstant.NEU_ORDER_SCENE_TYPE); // 场景类型 | |||||
| String posOrderIdStr = params.get(WxPayConstant.NEU_ORDER_ID); // POS订单ID | |||||
| String posOrderTimeStr = params.get(WxPayConstant.NEU_ORDER_TIME); // POS订单时间 | |||||
| String posAmountStr = params.get(WxPayConstant.NEU_ORDER_AMOUNT); // POS订单总额 | |||||
| String orderCreateSN = params.get(WxPayConstant.NEU_ORDER_CREATE_SN); // POS SN号 | |||||
| String posStatusStr = params.get(WxPayConstant.NEU_ORDER_STATUS); // 订单状态: 0有效,1取消,根据订单状态处理优惠券;有效:优惠券从预核销处理为核销; | |||||
| String tenantId = params.get(WxPayConstant.TENANT_ID); // 租户ID | |||||
| String merchantIdStr = params.get(WxPayConstant.MERCHANT_ID); // 商户ID | |||||
| String buUserIdStr = params.get(WxPayConstant.BUSER_ID); // POS操作员ID | |||||
| String cuUserIdStr = params.get(WxPayConstant.MEM_ID); // 富茂系统会员ID | |||||
| String cuPhoneStr = params.get(WxPayConstant.MEM_PHONE); // 富茂系统会员手机号 | |||||
| String sceneTypeStr = params.get(WxPayConstant.SCENE_TYPE); // 场景类型 | |||||
| String posOrderIdStr = params.get(WxPayConstant.POS_ORDER_ID); // POS订单ID | |||||
| String posOrderTimeStr = params.get(WxPayConstant.POS_ORDER_TIME); // POS订单时间 | |||||
| String posAmountStr = params.get(WxPayConstant.ORDER_AMOUNT); // POS订单总额 | |||||
| String orderCreateSN = params.get(WxPayConstant.ORDER_CREATE_SN); // POS SN号 | |||||
| String posStatusStr = params.get(WxPayConstant.ORDER_STATUS); // 订单状态: 0有效,1取消,根据订单状态处理优惠券;有效:优惠券从预核销处理为核销; | |||||
| // 1. check params | // 1. check params | ||||
| if (StringUtils.isBlank(tenantId)) { | if (StringUtils.isBlank(tenantId)) { | ||||
| errParam(WxPayConstant.NEU_TENANT_ID); | |||||
| errParam(WxPayConstant.TENANT_ID); | |||||
| } | } | ||||
| PosMallConfig config = posMallConfigService.getByTenantId(tenantId); | PosMallConfig config = posMallConfigService.getByTenantId(tenantId); | ||||
| if (config == null) { | if (config == null) { | ||||
| @@ -1779,31 +1779,31 @@ public class PosServiceImpl implements PosService { | |||||
| throw new MallinkException(ErrorCode.POS_CONFIG_NOT_FOUND); | throw new MallinkException(ErrorCode.POS_CONFIG_NOT_FOUND); | ||||
| } | } | ||||
| if (StringUtils.isBlank(merchantIdStr)) { | if (StringUtils.isBlank(merchantIdStr)) { | ||||
| errParam(WxPayConstant.NEU_MERCHANT_ID); | |||||
| errParam(WxPayConstant.MERCHANT_ID); | |||||
| } | } | ||||
| if (StringUtils.isBlank(buUserIdStr)) { | if (StringUtils.isBlank(buUserIdStr)) { | ||||
| errParam(WxPayConstant.NEU_BU_USER_ID); | |||||
| errParam(WxPayConstant.BUSER_ID); | |||||
| } | } | ||||
| if (StringUtils.isBlank(cuUserIdStr)) { | if (StringUtils.isBlank(cuUserIdStr)) { | ||||
| errParam(WxPayConstant.NEU_MEM_ID); | |||||
| errParam(WxPayConstant.MEM_ID); | |||||
| } | } | ||||
| if (StringUtils.isBlank(sceneTypeStr)) { | if (StringUtils.isBlank(sceneTypeStr)) { | ||||
| errParam(WxPayConstant.NEU_ORDER_SCENE_TYPE); | |||||
| errParam(WxPayConstant.SCENE_TYPE); | |||||
| } | } | ||||
| if (StringUtils.isBlank(posOrderIdStr)) { | if (StringUtils.isBlank(posOrderIdStr)) { | ||||
| errParam(WxPayConstant.NEU_ORDER_ID); | |||||
| errParam(WxPayConstant.POS_ORDER_ID); | |||||
| } | } | ||||
| if (StringUtils.isBlank(posOrderTimeStr)) { | if (StringUtils.isBlank(posOrderTimeStr)) { | ||||
| errParam(WxPayConstant.NEU_ORDER_TIME); | |||||
| errParam(WxPayConstant.POS_ORDER_TIME); | |||||
| } | } | ||||
| if (StringUtils.isBlank(posAmountStr)) { | if (StringUtils.isBlank(posAmountStr)) { | ||||
| errParam(WxPayConstant.NEU_ORDER_AMOUNT); | |||||
| errParam(WxPayConstant.ORDER_AMOUNT); | |||||
| } | } | ||||
| if (StringUtils.isBlank(orderCreateSN)) { | if (StringUtils.isBlank(orderCreateSN)) { | ||||
| errParam(WxPayConstant.NEU_ORDER_CREATE_SN); | |||||
| errParam(WxPayConstant.ORDER_CREATE_SN); | |||||
| } | } | ||||
| if (StringUtils.isBlank(posStatusStr)) { | if (StringUtils.isBlank(posStatusStr)) { | ||||
| errParam(WxPayConstant.NEU_ORDER_STATUS); | |||||
| errParam(WxPayConstant.ORDER_STATUS); | |||||
| } | } | ||||
| Long merchantId, buUserId, posOrderId, memId; | Long merchantId, buUserId, posOrderId, memId; | ||||
| @@ -1835,12 +1835,12 @@ public class PosServiceImpl implements PosService { | |||||
| if (posStatusStr.equalsIgnoreCase(WxPayConstant.NEU_ORDER_PAY)) { | if (posStatusStr.equalsIgnoreCase(WxPayConstant.NEU_ORDER_PAY)) { | ||||
| // 4.1 支付同步 | // 4.1 支付同步 | ||||
| WxOrder order = createOrderByPos(merchantBUser, memId, posOrderId, posAmount.intValue(), orderTime); | WxOrder order = createOrderByPos(merchantBUser, memId, posOrderId, posAmount.intValue(), orderTime); | ||||
| String payDetail = params.get(WxPayConstant.NEU_PAY_DETAIL); | |||||
| String payDetail = params.get(WxPayConstant.PAY_DETAIL); | |||||
| JSONObject payDetailObj = JSON.parseObject(payDetail); | JSONObject payDetailObj = JSON.parseObject(payDetail); | ||||
| PromotionCalc scoreCreditCalc = new PromotionCalc(); | PromotionCalc scoreCreditCalc = new PromotionCalc(); | ||||
| scoreCreditCalc.setScore(0); | scoreCreditCalc.setScore(0); | ||||
| scoreCreditCalc.setCredit(0); | scoreCreditCalc.setCredit(0); | ||||
| JSONArray payDetailList = payDetailObj.getJSONArray(WxPayConstant.NEU_PAY_DETAIL_LIST); | |||||
| JSONArray payDetailList = payDetailObj.getJSONArray(WxPayConstant.PAY_DETAIL_LIST); | |||||
| for (int i=0;i<payDetailList.size();i++) { | for (int i=0;i<payDetailList.size();i++) { | ||||
| JSONObject payOrderObj = payDetailList.getJSONObject(i); | JSONObject payOrderObj = payDetailList.getJSONObject(i); | ||||
| // ADD to wx_pay_order | // ADD to wx_pay_order | ||||
| @@ -267,20 +267,20 @@ public class PosAppTest { | |||||
| Map<String, String> reqObj = new HashMap<>(); | Map<String, String> reqObj = new HashMap<>(); | ||||
| reqObj.put(WxPayConstant.NONCE_STR, "1"); | reqObj.put(WxPayConstant.NONCE_STR, "1"); | ||||
| reqObj.put(WxPayConstant.DEV_ID, devId); | reqObj.put(WxPayConstant.DEV_ID, devId); | ||||
| reqObj.put(WxPayConstant.NEU_TENANT_ID, tenantId); | |||||
| reqObj.put(WxPayConstant.NEU_MERCHANT_ID, merchantId); | |||||
| reqObj.put(WxPayConstant.NEU_BU_USER_ID, buUserId); | |||||
| reqObj.put(WxPayConstant.NEU_MEM_ID, memId); | |||||
| reqObj.put(WxPayConstant.NEU_MEM_PHONE, memPhone); | |||||
| reqObj.put(WxPayConstant.NEU_ORDER_SCENE_TYPE, sceneType); | |||||
| reqObj.put(WxPayConstant.NEU_ORDER_ID, posOrderId); | |||||
| reqObj.put(WxPayConstant.NEU_ORDER_TIME, neuDateFormat.format(curDate)); | |||||
| reqObj.put(WxPayConstant.NEU_ORDER_AMOUNT, posAmount); | |||||
| reqObj.put(WxPayConstant.NEU_ORDER_CREATE_SN, posSN); | |||||
| reqObj.put(WxPayConstant.NEU_ORDER_STATUS, "0"); | |||||
| reqObj.put(WxPayConstant.TENANT_ID, tenantId); | |||||
| reqObj.put(WxPayConstant.MERCHANT_ID, merchantId); | |||||
| reqObj.put(WxPayConstant.BUSER_ID, buUserId); | |||||
| reqObj.put(WxPayConstant.MEM_ID, memId); | |||||
| reqObj.put(WxPayConstant.MEM_PHONE, memPhone); | |||||
| reqObj.put(WxPayConstant.SCENE_TYPE, sceneType); | |||||
| reqObj.put(WxPayConstant.POS_ORDER_ID, posOrderId); | |||||
| reqObj.put(WxPayConstant.POS_ORDER_TIME, neuDateFormat.format(curDate)); | |||||
| reqObj.put(WxPayConstant.ORDER_AMOUNT, posAmount); | |||||
| reqObj.put(WxPayConstant.ORDER_CREATE_SN, posSN); | |||||
| reqObj.put(WxPayConstant.ORDER_STATUS, "0"); | |||||
| JSONObject payDetail = new JSONObject(); | JSONObject payDetail = new JSONObject(); | ||||
| payDetail.put(WxPayConstant.NEU_PAY_DETAIL_LIST, JSON.toJSONString(payDetailList)); | |||||
| reqObj.put(WxPayConstant.NEU_PAY_DETAIL, JSON.toJSONString(payDetail)); | |||||
| payDetail.put(WxPayConstant.PAY_DETAIL_LIST, JSON.toJSONString(payDetailList)); | |||||
| reqObj.put(WxPayConstant.PAY_DETAIL, JSON.toJSONString(payDetail)); | |||||
| boolean resSigned = sendAndRes("/posOrderSync", reqObj); | boolean resSigned = sendAndRes("/posOrderSync", reqObj); | ||||
| Assert.assertEquals(resSigned, true); | Assert.assertEquals(resSigned, true); | ||||
| } | } | ||||
| @@ -344,20 +344,20 @@ public class PosAppTest { | |||||
| Map<String, String> reqObj = new HashMap<>(); | Map<String, String> reqObj = new HashMap<>(); | ||||
| reqObj.put(WxPayConstant.NONCE_STR, "1"); | reqObj.put(WxPayConstant.NONCE_STR, "1"); | ||||
| reqObj.put(WxPayConstant.DEV_ID, devId); | reqObj.put(WxPayConstant.DEV_ID, devId); | ||||
| reqObj.put(WxPayConstant.NEU_TENANT_ID, tenantId); | |||||
| reqObj.put(WxPayConstant.NEU_MERCHANT_ID, merchantId); | |||||
| reqObj.put(WxPayConstant.NEU_BU_USER_ID, buUserId); | |||||
| reqObj.put(WxPayConstant.NEU_MEM_ID, memId); | |||||
| reqObj.put(WxPayConstant.NEU_MEM_PHONE, memPhone); | |||||
| reqObj.put(WxPayConstant.NEU_ORDER_SCENE_TYPE, sceneType); | |||||
| reqObj.put(WxPayConstant.NEU_ORDER_ID, posOrderId); | |||||
| reqObj.put(WxPayConstant.NEU_ORDER_TIME, neuDateFormat.format(curDate)); | |||||
| reqObj.put(WxPayConstant.NEU_ORDER_AMOUNT, orderAmount); | |||||
| reqObj.put(WxPayConstant.NEU_ORDER_CREATE_SN, posSN); | |||||
| reqObj.put(WxPayConstant.NEU_ORDER_STATUS, "0"); | |||||
| reqObj.put(WxPayConstant.TENANT_ID, tenantId); | |||||
| reqObj.put(WxPayConstant.MERCHANT_ID, merchantId); | |||||
| reqObj.put(WxPayConstant.BUSER_ID, buUserId); | |||||
| reqObj.put(WxPayConstant.MEM_ID, memId); | |||||
| reqObj.put(WxPayConstant.MEM_PHONE, memPhone); | |||||
| reqObj.put(WxPayConstant.SCENE_TYPE, sceneType); | |||||
| reqObj.put(WxPayConstant.POS_ORDER_ID, posOrderId); | |||||
| reqObj.put(WxPayConstant.POS_ORDER_TIME, neuDateFormat.format(curDate)); | |||||
| reqObj.put(WxPayConstant.ORDER_AMOUNT, orderAmount); | |||||
| reqObj.put(WxPayConstant.ORDER_CREATE_SN, posSN); | |||||
| reqObj.put(WxPayConstant.ORDER_STATUS, "0"); | |||||
| JSONObject payDetail = new JSONObject(); | JSONObject payDetail = new JSONObject(); | ||||
| payDetail.put(WxPayConstant.NEU_PAY_DETAIL_LIST, JSON.toJSONString(payDetailList)); | |||||
| reqObj.put(WxPayConstant.NEU_PAY_DETAIL, JSON.toJSONString(payDetail)); | |||||
| payDetail.put(WxPayConstant.PAY_DETAIL_LIST, JSON.toJSONString(payDetailList)); | |||||
| reqObj.put(WxPayConstant.PAY_DETAIL, JSON.toJSONString(payDetail)); | |||||
| boolean resSigned = sendAndRes("/posOrderSync", reqObj); | boolean resSigned = sendAndRes("/posOrderSync", reqObj); | ||||
| Assert.assertEquals(resSigned, true); | Assert.assertEquals(resSigned, true); | ||||
| } | } | ||||
| @@ -378,7 +378,7 @@ public class PosAppTest { | |||||
| reqObj.put(WxPayConstant.POS_ORDER_ID, posOrderId); | reqObj.put(WxPayConstant.POS_ORDER_ID, posOrderId); | ||||
| reqObj.put(WxPayConstant.ORDER_AMOUNT, orderAmount); | reqObj.put(WxPayConstant.ORDER_AMOUNT, orderAmount); | ||||
| reqObj.put(WxPayConstant.ORDER_AMOUNT_LEFT, orderAmount); | reqObj.put(WxPayConstant.ORDER_AMOUNT_LEFT, orderAmount); | ||||
| reqObj.put(WxPayConstant.NEU_ORDER_CREATE_SN, posSN); | |||||
| reqObj.put(WxPayConstant.ORDER_CREATE_SN, posSN); | |||||
| reqObj.put(WxPayConstant.CARD_ID, cardId); | reqObj.put(WxPayConstant.CARD_ID, cardId); | ||||
| reqObj.put(WxPayConstant.AMOUNT_PAID_BY_CARD, orderAmount); | reqObj.put(WxPayConstant.AMOUNT_PAID_BY_CARD, orderAmount); | ||||
| boolean resSigned = sendAndRes("/cardPayPre", reqObj); | boolean resSigned = sendAndRes("/cardPayPre", reqObj); | ||||
| @@ -388,7 +388,7 @@ public class PosAppTest { | |||||
| @Test | @Test | ||||
| public void cardPayPreCancelTest() throws Exception { | public void cardPayPreCancelTest() throws Exception { | ||||
| String cardId = "321883878446825472"; | String cardId = "321883878446825472"; | ||||
| String cardSpendId = "329524779780829184"; | |||||
| String cardSpendId = "329763372332511232"; | |||||
| String sceneType = "1"; // 支付 | String sceneType = "1"; // 支付 | ||||
| String posOrderId = "1"; | String posOrderId = "1"; | ||||
| String orderAmount = "2000"; | String orderAmount = "2000"; | ||||
| @@ -426,7 +426,7 @@ public class PosAppTest { | |||||
| String posPaymentType = String.valueOf(EnumNeuPosPamentType.MEM_CARD.getCode()); | String posPaymentType = String.valueOf(EnumNeuPosPamentType.MEM_CARD.getCode()); | ||||
| String posPaymentTypeDes = EnumNeuPosPamentType.MEM_CARD.getMessage(); | String posPaymentTypeDes = EnumNeuPosPamentType.MEM_CARD.getMessage(); | ||||
| String posPaymentStatus = "0"; | String posPaymentStatus = "0"; | ||||
| String cardSpendId = "329527235668242432"; | |||||
| String cardSpendId = "329763372332511232"; | |||||
| Date curDate = new Date(); | Date curDate = new Date(); | ||||
| @@ -447,20 +447,20 @@ public class PosAppTest { | |||||
| Map<String, String> reqObj = new HashMap<>(); | Map<String, String> reqObj = new HashMap<>(); | ||||
| reqObj.put(WxPayConstant.NONCE_STR, "1"); | reqObj.put(WxPayConstant.NONCE_STR, "1"); | ||||
| reqObj.put(WxPayConstant.DEV_ID, devId); | reqObj.put(WxPayConstant.DEV_ID, devId); | ||||
| reqObj.put(WxPayConstant.NEU_TENANT_ID, tenantId); | |||||
| reqObj.put(WxPayConstant.NEU_MERCHANT_ID, merchantId); | |||||
| reqObj.put(WxPayConstant.NEU_BU_USER_ID, buUserId); | |||||
| reqObj.put(WxPayConstant.NEU_ORDER_SCENE_TYPE, sceneType); | |||||
| reqObj.put(WxPayConstant.NEU_MEM_ID, memId); | |||||
| reqObj.put(WxPayConstant.NEU_MEM_PHONE, memPhone); | |||||
| reqObj.put(WxPayConstant.NEU_ORDER_ID, posOrderId); | |||||
| reqObj.put(WxPayConstant.NEU_ORDER_TIME, neuDateFormat.format(curDate)); | |||||
| reqObj.put(WxPayConstant.NEU_ORDER_AMOUNT, orderAmount); | |||||
| reqObj.put(WxPayConstant.TENANT_ID, tenantId); | |||||
| reqObj.put(WxPayConstant.MERCHANT_ID, merchantId); | |||||
| reqObj.put(WxPayConstant.BUSER_ID, buUserId); | |||||
| reqObj.put(WxPayConstant.SCENE_TYPE, sceneType); | |||||
| reqObj.put(WxPayConstant.MEM_ID, memId); | |||||
| reqObj.put(WxPayConstant.MEM_PHONE, memPhone); | |||||
| reqObj.put(WxPayConstant.POS_ORDER_ID, posOrderId); | |||||
| reqObj.put(WxPayConstant.POS_ORDER_TIME, neuDateFormat.format(curDate)); | |||||
| reqObj.put(WxPayConstant.ORDER_AMOUNT, orderAmount); | |||||
| reqObj.put(WxPayConstant.ORDER_CREATE_SN, posSN); | reqObj.put(WxPayConstant.ORDER_CREATE_SN, posSN); | ||||
| reqObj.put(WxPayConstant.NEU_ORDER_STATUS, "0"); | |||||
| reqObj.put(WxPayConstant.ORDER_STATUS, "0"); | |||||
| JSONObject payDetail = new JSONObject(); | JSONObject payDetail = new JSONObject(); | ||||
| payDetail.put(WxPayConstant.NEU_PAY_DETAIL_LIST, JSON.toJSONString(payDetailList)); | |||||
| reqObj.put(WxPayConstant.NEU_PAY_DETAIL, JSON.toJSONString(payDetail)); | |||||
| payDetail.put(WxPayConstant.PAY_DETAIL_LIST, JSON.toJSONString(payDetailList)); | |||||
| reqObj.put(WxPayConstant.PAY_DETAIL, JSON.toJSONString(payDetail)); | |||||
| boolean resSigned = sendAndRes("/posOrderSync", reqObj); | boolean resSigned = sendAndRes("/posOrderSync", reqObj); | ||||
| Assert.assertEquals(resSigned, true); | Assert.assertEquals(resSigned, true); | ||||
| } | } | ||||
| @@ -131,40 +131,30 @@ public class WxPayConstant { | |||||
| //// 东软相关定义 | //// 东软相关定义 | ||||
| public final static String NEU_TENANT_ID = "TenantID"; // 富茂系统商场ID | |||||
| public final static String NEU_MERCHANT_ID = "MerchantID"; // 富茂系统商户ID | |||||
| public final static String NEU_BU_USER_ID = "OrderOperatorID"; // 富茂系统登录操作员ID | |||||
| public final static String NEU_MEM_ID = "MemberID"; // 富茂系统会员ID | |||||
| public final static String NEU_MEM_PHONE = "MemberPhoneNumber"; // 富茂系统会员手机号 | |||||
| public final static String NEU_ORDER_ID = "OrderNumberofPlatform"; // 东软平台订单号 | |||||
| public final static String NEU_ORDER_TIME = "OrderTimeOfPlatform"; // 平台订单创建时间, 格式:4位年2位月2位日2位24小时制时2位分2位秒3位毫秒 | |||||
| public final static String NEU_ORDER_AMOUNT = "OrderAmount"; // 订单价格 | |||||
| public final static String NEU_ORDER_CREATE_SN = "OrderCreateSN"; // 创建订单的POS SN号 | |||||
| public final static String NEU_ORDER_SCENE_TYPE = "BusinessType"; // 订单场景 // 0:核销 1:支付 | |||||
| public final static String NEU_ORDER_STATUS = "OrderStatus"; // 必要,订单状态: 0有效,1取消,根据订单状态处理优惠券;有效:优惠券从预核销处理为核销; | |||||
| public final static String NEU_PAY_DETAIL = "PaymentDetail"; | |||||
| public final static String NEU_PAY_DETAIL_LIST = "PaymentDetailList"; | |||||
| public final static String NEU_PAY_ORDER_ID = "PaymentNumberOfPlatform"; // 东软平台支付订单号 | |||||
| public final static String NEU_PAY_ORDER_TIME = "PaymentOrderTime"; // 东软平台支付订单创建时间 | |||||
| public final static String NEU_PAY_ORDER_TYPE = "PaymentType"; // 支付方式: 0微信;1支付宝;2现金;3会员折扣;4优惠券;5预付卡;6银行卡 | |||||
| public final static String NEU_PAY_ORDER_TYPE_DES = "PaymentTypeDescription"; // 支付方式描述:微信或支付宝或现金或会员折扣或优惠券或预付卡或银行卡 | |||||
| public final static String NEU_PAY_ORDER_PARAM = "PaymentThirdPartyString"; // 第三方使用数据,JSON存储,包含富茂所需的系统要素 | |||||
| public final static String NEU_PAY_ORDER_STATUS = "PaymentStatus"; // 支付状态:0非手动同步, 1手动同步 | |||||
| public final static String NEU_PAY_ORDER_OUT_NO = "OuterPaymentNumber"; // 第三方(微信、支付宝、富茂预付卡)支付订单流水号,富茂优惠券ID,现金和富茂会员折扣时为空 | |||||
| public final static String NEU_PAY_ORDER_AMOUNT = "PaymentAmount"; // 支付金额 | |||||
| public final static String NEU_PAY_ORDER_OUT_TIME = "PayTime"; // 第三方支付系统返回的支付时间,现金和富茂会员折扣时为空 | |||||
| public final static String NEU_REFUND_DETAIL = "RefundDetail"; | |||||
| public final static String NEU_REFUND_DETAIL_LIST = "RefundDetailList"; | |||||
| public final static String NEU_REFUND_ORDER_ID = "RefundNumberOfPlatform"; // 东软平台退款订单号 | |||||
| public final static String NEU_REFUND_ORDER_TIME = "RefundOrderTime"; // 东软平台退款订单创建时间 | |||||
| public final static String NEU_REFUND_ORDER_TYPE = "RefundType"; // 退款方式: 0微信;1支付宝;2现金;3会员折扣;4优惠券;5预付卡;6银行卡;7记账; | |||||
| public final static String POS_ORDER_TIME = "order_time_of_platform"; // 平台订单创建时间, 格式:4位年2位月2位日2位24小时制时2位分2位秒3位毫秒 | |||||
| public final static String PAY_DETAIL = "payment_detail"; | |||||
| public final static String PAY_DETAIL_LIST = "payment_detail_list"; | |||||
| public final static String NEU_PAY_ORDER_ID = "payment_number_of_platform"; // 东软平台支付订单号 | |||||
| public final static String NEU_PAY_ORDER_TIME = "payment_order_time"; // 东软平台支付订单创建时间 | |||||
| public final static String NEU_PAY_ORDER_TYPE = "payment_type"; // 支付方式: 0微信;1支付宝;2现金;3会员折扣;4优惠券;5预付卡;6银行卡 | |||||
| public final static String NEU_PAY_ORDER_TYPE_DES = "payment_type_description"; // 支付方式描述:微信或支付宝或现金或会员折扣或优惠券或预付卡或银行卡 | |||||
| public final static String NEU_PAY_ORDER_PARAM = "payment_third_party_string"; // 第三方使用数据,JSON存储,包含富茂所需的系统要素 | |||||
| public final static String NEU_PAY_ORDER_STATUS = "payment_status"; // 支付状态:0非手动同步, 1手动同步 | |||||
| public final static String NEU_PAY_ORDER_OUT_NO = "outer_payment_number"; // 第三方(微信、支付宝、富茂预付卡)支付订单流水号,富茂优惠券ID,现金和富茂会员折扣时为空 | |||||
| public final static String NEU_PAY_ORDER_AMOUNT = "payment_amount"; // 支付金额 | |||||
| public final static String NEU_PAY_ORDER_OUT_TIME = "pay_time"; // 第三方支付系统返回的支付时间,现金和富茂会员折扣时为空 | |||||
| public final static String NEU_REFUND_DETAIL = "refund_detail"; | |||||
| public final static String NEU_REFUND_DETAIL_LIST = "refund_detail_list"; | |||||
| public final static String NEU_REFUND_ORDER_ID = "refund_number_of_platform"; // 东软平台退款订单号 | |||||
| public final static String NEU_REFUND_ORDER_TIME = "refund_order_time"; // 东软平台退款订单创建时间 | |||||
| public final static String NEU_REFUND_ORDER_TYPE = "refund_type"; // 退款方式: 0微信;1支付宝;2现金;3会员折扣;4优惠券;5预付卡;6银行卡;7记账; | |||||
| // 退款方式可以与支付方式不同,但只能是记账,作为线下手动操作退款方式 | // 退款方式可以与支付方式不同,但只能是记账,作为线下手动操作退款方式 | ||||
| public final static String NEU_REFUND_ORDER_TYPE_DES = "RefundTypeDescription"; // 退款方式描述:微信或支付宝或现金或会员折扣或优惠券或预付卡或银行卡或记账 | |||||
| public final static String NEU_REFUND_ORDER_PARAM = "RefundThirdPartyString"; // 第三方使用数据,JSON存储,包含富茂所需的系统要素 | |||||
| public final static String NEU_REFUND_ORDER_STATUS = "RefundStatus"; // 退款状态:0非手动, 1手动退款, 2手动释放同步 | |||||
| public final static String NEU_REFUND_ORDER_OUT_NO = "OuterRefundNumber"; // 第三方(微信、支付宝、富茂预付卡)支付订单流水号,富茂优惠券ID,现金和富茂会员折扣时为空 | |||||
| public final static String NEU_REFUND_ORDER_AMOUNT = "RefundAmount"; // 退款金额 | |||||
| public final static String NEU_REFUND_ORDER_OUT_TIME = "RefundTime"; // 第三方支付系统返回的支付时间,现金和富茂会员折扣时为空 | |||||
| public final static String NEU_REFUND_ORDER_TYPE_DES = "refund_type_description"; // 退款方式描述:微信或支付宝或现金或会员折扣或优惠券或预付卡或银行卡或记账 | |||||
| public final static String NEU_REFUND_ORDER_PARAM = "refund_third_party_string"; // 第三方使用数据,JSON存储,包含富茂所需的系统要素 | |||||
| public final static String NEU_REFUND_ORDER_STATUS = "refund_status"; // 退款状态:0非手动, 1手动退款, 2手动释放同步 | |||||
| public final static String NEU_REFUND_ORDER_OUT_NO = "outer_refund_number"; // 第三方(微信、支付宝、富茂预付卡)支付订单流水号,富茂优惠券ID,现金和富茂会员折扣时为空 | |||||
| public final static String NEU_REFUND_ORDER_AMOUNT = "refund_amount"; // 退款金额 | |||||
| public final static String NEU_REFUND_ORDER_OUT_TIME = "refund_time"; // 第三方支付系统返回的支付时间,现金和富茂会员折扣时为空 | |||||
| public final static String NEU_ORDER_PAY = "0"; // 有效, 优惠券从预核销处理为核销, 卡从预支付->支付 | public final static String NEU_ORDER_PAY = "0"; // 有效, 优惠券从预核销处理为核销, 卡从预支付->支付 | ||||
| public final static String NEU_ORDER_REFUND = "1"; // 取消 | public final static String NEU_ORDER_REFUND = "1"; // 取消 | ||||
| @@ -725,13 +725,14 @@ public class WxCardSpendServiceImpl implements WxCardSpendService { | |||||
| Date curDate = new Date(); | Date curDate = new Date(); | ||||
| // 1. update card_spend | // 1. update card_spend | ||||
| WxCardSpend updateCardSpend = new WxCardSpend(); | WxCardSpend updateCardSpend = new WxCardSpend(); | ||||
| updateCardSpend.setId(record.getId()); | |||||
| updateCardSpend.setOrderId(record.getOrderId()); | updateCardSpend.setOrderId(record.getOrderId()); | ||||
| updateCardSpend.setPayStatus(EnumCardSpendStatus.NOT_PAY.getCode()); | updateCardSpend.setPayStatus(EnumCardSpendStatus.NOT_PAY.getCode()); | ||||
| updateCardSpend.setUpdateDate(curDate); | updateCardSpend.setUpdateDate(curDate); | ||||
| try { | try { | ||||
| wxCardSpendMapper.updateByPrimaryKeySelective(updateCardSpend); | wxCardSpendMapper.updateByPrimaryKeySelective(updateCardSpend); | ||||
| } catch (Exception e) { | } catch (Exception e) { | ||||
| logger.error("card spend update error"); | |||||
| logger.error("card spend update error: " + e.getMessage()); | |||||
| throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "card spend 插入出错!"); | throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "card spend 插入出错!"); | ||||
| } | } | ||||
| @@ -213,6 +213,8 @@ public class WxCreditHistoryServiceImpl implements WxCreditHistoryService { | |||||
| } else if (wxCUserBasicInfo != null && wxCUserBasicInfo.getCredit() != null && wxCUserBasicInfo.getCredit() > 0) { | } else if (wxCUserBasicInfo != null && wxCUserBasicInfo.getCredit() != null && wxCUserBasicInfo.getCredit() > 0) { | ||||
| currentCreditAmount = wxCUserBasicInfo.getCredit(); | currentCreditAmount = wxCUserBasicInfo.getCredit(); | ||||
| } | } | ||||
| record.setCreditAmount(currentCreditAmount); | |||||
| record.setCreditNum(0); | |||||
| int creditChangeNumOrigin = creditIncrement(record); | int creditChangeNumOrigin = creditIncrement(record); | ||||
| int creditChangeNum = creditChangeNumOrigin ; | int creditChangeNum = creditChangeNumOrigin ; | ||||