Browse Source

更新条件

master
xyiege 3 years ago
parent
commit
f062d3876d
  1. 2
      src/main/java/cn/chjyj/szwh/service/impl/PayServiceImpl.java
  2. 5
      src/main/resources/mapper/szwh/OrderMapper.xml
  3. 93
      src/test/java/cn/chjyj/szwh/service/PayServiceTest.java

2
src/main/java/cn/chjyj/szwh/service/impl/PayServiceImpl.java

@ -133,7 +133,7 @@ public class PayServiceImpl implements PayService {
log.info("支付回调 payCallback:"+data); log.info("支付回调 payCallback:"+data);
//todo 后续改造为可以配置型 //todo 后续改造为可以配置型
String url="https://t.masget.com/openapi/rest"; String url="https://t.masget.com/openapi/rest";
String sckey ="gRAZZKiNw0UbTuF9";;// 密钥 String sckey ="gRAZZKiNw0UbTuF9";// 密钥
String appid="910000198"; //应用id String appid="910000198"; //应用id
String session="iba3t9dqln8etmcaceq1xtqr7urevia1"; //token String session="iba3t9dqln8etmcaceq1xtqr7urevia1"; //token
try { try {

5
src/main/resources/mapper/szwh/OrderMapper.xml

@ -224,9 +224,7 @@
<include refid="tbName"/> <include refid="tbName"/>
<set> <set>
<foreach collection="map" item="v" index="k" separator="and"> <foreach collection="map" item="v" index="k" separator="and">
<if test="v != null and v != ''">
${k} = #{v} ${k} = #{v}
</if>
</foreach> </foreach>
</set> </set>
where id=#{id} where id=#{id}
@ -236,6 +234,7 @@
<update id="shutOrder" parameterType="java.lang.String"> <update id="shutOrder" parameterType="java.lang.String">
update update
<include refid="tbName"/> <include refid="tbName"/>
set `status`=5,`shuttime`=#{shuttime} where batchcode=#{batchcode} set `status`=5,`shuttime`=#{shuttime}
where batchcode=#{batchcode}
</update> </update>
</mapper> </mapper>

93
src/test/java/cn/chjyj/szwh/service/PayServiceTest.java

@ -0,0 +1,93 @@
package cn.chjyj.szwh.service;
import cn.chjyj.szwh.bean.Goods;
import cn.chjyj.szwh.bean.Order;
import cn.chjyj.szwh.bean.OrderGoodsDetail;
import cn.chjyj.szwh.mapper.GoodsMapper;
import cn.chjyj.szwh.mapper.OrderGoodsDetailMapper;
import cn.chjyj.szwh.mapper.OrderMapper;
import cn.chjyj.szwh.utils.pay.security.AesEncryption;
import com.alibaba.fastjson2.JSONObject;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import static org.junit.Assert.*;
@SpringBootTest
@RunWith(SpringJUnit4ClassRunner.class)
public class PayServiceTest {
@Autowired
private OrderMapper orderMapper;
@Autowired
private OrderGoodsDetailMapper orderGoodsDetailMapper;
@Autowired
private GoodsMapper goodsMapper;
@Test
public void payComplete() {
}
@Test
public void payFinishOperate() {
}
// 支付回调结果
@Test
public void payCallback() throws Exception {
String dd ="kfz3sNCvoH6jMGoM7NFwfQuLpuG50zIu-c5DKJcJovqVOUSoy4V9k0M5VOSQd7hiUeiueTnFNBsnASusHRY9IqoH08vXsUoy4GfX69ykRBsWz0lB1DSNyX3QPkP5QOK_o_admPpLAeY9p2MIoSE_0yZr2_1-Z5DfaVCt6naIpkUlTH4vDO__vVxZWHws3IGifQ0qF90V8gvfEXv1ZMjBePpdISNXWxgecuvMokMhGWqlHY9R3BgOchoe7PWVkMLh4-vHLZF8OxjPaU_B6J6UicgwfuDbs01YC2qPj-h_d-3KkpNOppjA11LWb9_fD_yQBG91VK-gE2kF5jgn4ncJGoDqySMkenzVh9edONRfjGAulqL_EAcIBnMWTB1ez-T8wZ1s4bXpJQx7wfPwKvwBZDk0yGIL9LWVYUXbxY7Qmf8_iYz4OiHYCRfVdnKXwAuicDIWUB363fWX1AGBh2p7fMhFK5n1js3ytf9Q6zqCDMG4YObLAA-stbsV4o3rrDh0pR40NvR0KWvLnCKlSwV3jfElQ9iFz9lel12bhijQ77TPpublL-Capi7rC_CAJvDTHIGacNRFTJAtxusHB_nLwoYo6dOAkgrOoZkwAmyvq7nDqwdiPV4BtJ8w_VFEXQ6deEEpJtKveu4o3WDnXx2taZn8UFL8zWs2A1cJkBpbXe6DUJEbosnI077EfokPwZtn6KueHAIeX5m7T37FfR_zprP92097iVQQnDbU8rmwEw1a1IxCAFU7RIrY2bqkEJXbO2KVxReZoBvP3f70skfSiPDAojdzaJa9qpfaUDR6_ZFx1F9lj0fk7--aXE7io-HSIaLxsFomMoN6QzG76JpSoCbE3MFcr81tTGvYDgh5mbXCnLqNdiCflCSmAWJ4rvXU6xndBMMKi1-oLKIEnrVvK1GIZK7FMPtW_WTKwsq66CL1djinIgVWwbvXvTyhwpHdF6cfryKU1s0TpvD72Id5fFXXBP2bbJQsAMra9BcuXOmRN-DSc7iFoHCYOOEcJONEc0AkqIHZBzH9HD338HRXY29yY-GyM5U5GSQngEyXhOjeb-dKmiphL6FQyuwmwD1e5Osx98D7C33sRRKYm56eW_SumCR9UDQ46gzTzGC3kQXNhMex-EtAJ9AdkjAEHLedwBZRaR5zKf83QHGhEmIo9WWjDuNChLMe-tzAhd-GfqGCxvEaq6-o8sp-vqoyClccCZlArCQEfJNNoBcvtatRUzp1RF7ziX6efW238x_kkE60FdGPrW0R_E79UNTcIj01";
//解密 略
//String jstr ="{\"businesstypename\":\"现场收款\",\"subpaymenttypeid\":12,\"latitude\":0.0,\"bankaccount\":\"12_null\",\"channelpayorderid\":\"2022112522001401901440759408\",\"payorderid\":\"30321021125133936750\",\"subcompanyname\":\"深圳文化产权交易所有限公司(测试商户)\",\"body\":\"11.25-永久\",\"respcode\":2,\"channelordernumber\":\"288590033351202211253266656442\",\"businesstype\":1001,\"rcompanyname\":\"深圳文化产权交易所有限公司(测试商户)\",\"settlementtype\":1,\"companyid\":910000198,\"ordernumber\":\"1669354770578266\",\"rcompanyid\":910000198,\"respmsg\":\"支付完成\",\"longitude\":0.0,\"amount\":1,\"subcompanyid\":910000198,\"bankcardtype\":0,\"loginname\":\"深圳文化产权交易所有限公司(测试商户)\",\"subpaymenttypename\":\"支付宝扫码支付\",\"paymenttypename\":\"支付宝支付\",\"companyname\":\"深圳文化产权交易所有限公司(测试商户)\",\"businesstime\":\"2022-11-25 13:40:32\",\"paymenttypeid\":12,\"stationid\":0,\"ordertype\":307}\n";
String sckey ="gRAZZKiNw0UbTuF9";// 密钥
//解密
String desencrypt = AesEncryption.Desencrypt(dd, sckey, sckey);
// 转为json
JSONObject dataObject = JSONObject.parseObject(desencrypt);
//支付完成
if (dataObject.getIntValue("respcode") == 2) {
//订单编号
String ordersn = dataObject.getString("ordernumber");
//查找订单并更新订单状态
Order order =orderMapper.getOrderByBatchcode(ordersn);
if(order!=null){ //订单存在,理论上应该是存在的
//查找订单中的商品
List<OrderGoodsDetail> ordgdlist = orderGoodsDetailMapper.getOrderGoodsDetailByBatchCode(ordersn);
//增加销售记录
for(OrderGoodsDetail ordg:ordgdlist){
// 根据goodsislicode 查询
Goods goods = goodsMapper.getGoodsByIsli(ordg.getGoodsIslicode());
// 更新订单状态
Map upgmap = new HashMap();
upgmap.put("sale_count",goods.getSaleCount()+1);
goodsMapper.updateGoods(upgmap,goods.getId());
}
//更新订单字段
Map upmap = new HashMap();
upmap.put("status",2);
upmap.put("pay_status",2);
upmap.put("paymenttime",new Date());
upmap.put("payid",dataObject.getString("payorderid")); //支付流水单号
//更新订单指定字段
orderMapper.updateOrderStatus(upmap,order.getId());
}
//订单信息发送至分发系统
//买家发票信息等
//卖家发票
// $this->payFinishOperate($batchcode);
// $this->invoiceBuyOperate($batchcode);
// $this->invoiceSellerOperate($batchcode);
}
}
}
Loading…
Cancel
Save