提交 f470d559 authored 作者: 梁业锦's avatar 梁业锦 💬

Merge remote-tracking branch 'origin/master'

...@@ -65,7 +65,9 @@ public class ThirdPartyController { ...@@ -65,7 +65,9 @@ public class ThirdPartyController {
} }
/** /**
* 根据订单号获取详细订单数据 * 根据订单号获取详细订单数据2
*
*
*/ */
@ApiOperation(value = "根据订单号获取详细订单数据") @ApiOperation(value = "根据订单号获取详细订单数据")
@GetMapping(value ="/order/detail/{orderId}") @GetMapping(value ="/order/detail/{orderId}")
...@@ -73,18 +75,20 @@ public class ThirdPartyController { ...@@ -73,18 +75,20 @@ public class ThirdPartyController {
return tbCfOrderService.getOrderDetailThird(orderId); return tbCfOrderService.getOrderDetailThird(orderId);
} }
/** /**
* 获取用户列表 * 根据userId获取用户信息
* @return
*/ */
@ApiOperation(value = "获取用户列表") @ApiOperation(value = "获取用户列表")
@GetMapping(value ="/user") @GetMapping(value ="/user/{userId}")
public Result getAllUser( @ApiParam(value = "页数") @RequestParam(required = false) Integer pageNum, public Result getAllUser(@PathVariable("userId")String userId) {
@ApiParam(value ="每页大小 默认100") @RequestParam(required = false) Integer pageSize) { return tbCfUserInfoService.queryUserByUserId(userId);
if (pageNum == null) {
pageNum = 1;
} }
if (pageSize == null) { /**
pageSize = 100; * 获取报关品名
} */
return tbCfUserInfoService.queryUserList(pageNum,pageSize); @ApiOperation(value = "获取报关品名")
@GetMapping(value ="/description/{descriptionId}")
public Result getDescriptionList(@PathVariable("descriptionId")String descriptionId) {
return tbCfOrderService.getDescriptionById(descriptionId);
} }
} }
...@@ -36,14 +36,14 @@ public class FlutterWaveController { ...@@ -36,14 +36,14 @@ public class FlutterWaveController {
/** /**
* 验证付款 * 验证付款
* *
* @param txref * @param
* @param orderId * @param orderId
* @return * @return
*/ */
@PostMapping("/verifyPay") @PostMapping("/verifyPay")
public Result verifyPay(@ApiParam("交易唯一标识") @RequestParam("txref") String txref, @ApiParam("订单ID") @RequestParam("orderId") String orderId) { public Result verifyPay(@ApiParam("订单ID") @RequestParam("orderId") String orderId) {
return flutterWaveService.verifyPay(txref, orderId); return flutterWaveService.verifyPay(orderId);
} }
...@@ -57,10 +57,10 @@ public class FlutterWaveController { ...@@ -57,10 +57,10 @@ public class FlutterWaveController {
public Result refund(@RequestBody FlutterWaveCard flutterWaveCard) { public Result refund(@RequestBody FlutterWaveCard flutterWaveCard) {
return flutterWaveService.refund(flutterWaveCard); return flutterWaveService.refund(flutterWaveCard);
} }
//
// @GetMapping("/queryPayParams") @GetMapping("/queryParams")
// public Result queryPayParams(@ApiParam("用户ID") @RequestParam("userId") String userId) { public Result queryParams(@ApiParam("用户ID") @RequestParam("userId") String userId) {
//
// return flutterWaveService.queryParams(userId);
// } }
} }
package com.diaoyun.zion.chinafrica.dao; package com.diaoyun.zion.chinafrica.dao;
import com.diaoyun.zion.chinafrica.entity.TbCfExpressTemplateEntity; import com.diaoyun.zion.chinafrica.entity.TbCfExpressTemplateEntity;
import com.diaoyun.zion.chinafrica.vo.ExpressTemplateVo;
import com.diaoyun.zion.master.dao.BaseDao; import com.diaoyun.zion.master.dao.BaseDao;
import java.util.List;
/** /**
* 运费模板Dao * 运费模板Dao
* *
...@@ -11,4 +14,7 @@ import com.diaoyun.zion.master.dao.BaseDao; ...@@ -11,4 +14,7 @@ import com.diaoyun.zion.master.dao.BaseDao;
*/ */
public interface TbCfExpressTemplateDao extends BaseDao<TbCfExpressTemplateEntity> { public interface TbCfExpressTemplateDao extends BaseDao<TbCfExpressTemplateEntity> {
List<TbCfExpressTemplateEntity> getDescriptionList();
ExpressTemplateVo getDescriptionById(String descriptionId);
} }
...@@ -13,10 +13,14 @@ import java.util.List; ...@@ -13,10 +13,14 @@ import java.util.List;
*/ */
public interface TbCfItemOrderRDao extends BaseDao<TbCfItemOrderREntity> { public interface TbCfItemOrderRDao extends BaseDao<TbCfItemOrderREntity> {
TbCfItemOrderREntity queryByTitle(String itemTitle);
/** /**
* 批量保存 * 批量保存
* @param itemOrderRList * @param itemOrderRList
* @return * @return
*/ */
int saveBatch(List<TbCfItemOrderREntity> itemOrderRList); int saveBatch(List<TbCfItemOrderREntity> itemOrderRList);
int updates(TbCfItemOrderREntity itemOrderR);
} }
...@@ -5,8 +5,6 @@ import com.diaoyun.zion.chinafrica.entity.TbCfUserInfoEntity; ...@@ -5,8 +5,6 @@ import com.diaoyun.zion.chinafrica.entity.TbCfUserInfoEntity;
import com.diaoyun.zion.chinafrica.vo.TbCfUserVo; import com.diaoyun.zion.chinafrica.vo.TbCfUserVo;
import com.diaoyun.zion.master.dao.BaseDao; import com.diaoyun.zion.master.dao.BaseDao;
import java.util.List;
/** /**
* 用户表Dao * 用户表Dao
* *
...@@ -60,8 +58,8 @@ public interface TbCfUserInfoDao extends BaseDao<TbCfUserInfoEntity> { ...@@ -60,8 +58,8 @@ public interface TbCfUserInfoDao extends BaseDao<TbCfUserInfoEntity> {
TbCfUserInfoEntity findByEmail(String email); TbCfUserInfoEntity findByEmail(String email);
/** /**
* 提供给第三方的用户列表 * 根据userID获取用户信息
* @return * @return
*/ */
List<TbCfUserVo> queryUserList(); TbCfUserVo queryUserByUserId(String userId);
} }
package com.diaoyun.zion.chinafrica.entity;
import java.util.List;
/**
* @Auther: wudepeng
* @Date: 2019/11/28
* @Description:ǰ֧
*/
public class FlutterKey {
private String public_key;
private List<TbCfUserInfoEntity> userInfo;
public String getPublic_key() {
return public_key;
}
public void setPublic_key(String public_key) {
this.public_key = public_key;
}
public List<TbCfUserInfoEntity> getUserInfo() {
return userInfo;
}
public void setUserInfo(List<TbCfUserInfoEntity> userInfo) {
this.userInfo = userInfo;
}
}
...@@ -30,6 +30,14 @@ public class TbCfItemOrderREntity implements Serializable { ...@@ -30,6 +30,14 @@ public class TbCfItemOrderREntity implements Serializable {
*/ */
private Integer enableFlag; private Integer enableFlag;
private Integer orderStatus;
private Integer deliveryFlag;
private Date deliveryTime;
private Date closeTime;
private Date updateTime;
/** /**
* 设置:记录表 * 设置:记录表
*/ */
...@@ -82,4 +90,44 @@ public class TbCfItemOrderREntity implements Serializable { ...@@ -82,4 +90,44 @@ public class TbCfItemOrderREntity implements Serializable {
public Integer getEnableFlag() { public Integer getEnableFlag() {
return enableFlag; return enableFlag;
} }
public Integer getOrderStatus() {
return orderStatus;
}
public void setOrderStatus(Integer orderStatus) {
this.orderStatus = orderStatus;
}
public Integer getDeliveryFlag() {
return deliveryFlag;
}
public void setDeliveryFlag(Integer deliveryFlag) {
this.deliveryFlag = deliveryFlag;
}
public Date getDeliveryTime() {
return deliveryTime;
}
public void setDeliveryTime(Date deliveryTime) {
this.deliveryTime = deliveryTime;
}
public Date getCloseTime() {
return closeTime;
}
public void setCloseTime(Date closeTime) {
this.closeTime = closeTime;
}
public Date getUpdateTime() {
return updateTime;
}
public void setUpdateTime(Date updateTime) {
this.updateTime = updateTime;
}
} }
package com.diaoyun.zion.chinafrica.entity; package com.diaoyun.zion.chinafrica.entity;
import java.io.Serializable; import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date; import java.util.Date;
/** /**
...@@ -40,11 +39,18 @@ public class TbCfItemShippedEntity implements Serializable { ...@@ -40,11 +39,18 @@ public class TbCfItemShippedEntity implements Serializable {
* 商品ID * 商品ID
*/ */
private String itemId; private String itemId;
/**
* 商品ID
*/
private String itemNum;
/**
* 国家
*/
private String country;
/** /**
* 商品品名 * 商品品名
*/ */
private String descripitionName; private String descripitionId;
public static long getSerialVersionUID() { public static long getSerialVersionUID() {
return serialVersionUID; return serialVersionUID;
...@@ -58,12 +64,12 @@ public class TbCfItemShippedEntity implements Serializable { ...@@ -58,12 +64,12 @@ public class TbCfItemShippedEntity implements Serializable {
this.itemId = itemId; this.itemId = itemId;
} }
public String getDescripitionName() { public String getDescripitionId() {
return descripitionName; return descripitionId;
} }
public void setDescripitionName(String descripitionName) { public void setDescripitionId(String descripitionId) {
this.descripitionName = descripitionName; this.descripitionId = descripitionId;
} }
/** /**
...@@ -111,4 +117,20 @@ public class TbCfItemShippedEntity implements Serializable { ...@@ -111,4 +117,20 @@ public class TbCfItemShippedEntity implements Serializable {
public void setExpressId(String expressId) { public void setExpressId(String expressId) {
this.expressId = expressId; this.expressId = expressId;
} }
public String getCountry() {
return country;
}
public void setCountry(String country) {
this.country = country;
}
public String getItemNum() {
return itemNum;
}
public void setItemNum(String itemNum) {
this.itemNum = itemNum;
}
} }
...@@ -13,7 +13,10 @@ import java.util.Date; ...@@ -13,7 +13,10 @@ import java.util.Date;
*/ */
public class TbCfOrderEntity implements Serializable { public class TbCfOrderEntity implements Serializable {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
/**
* 订单id
*/
private String ordersId;
/** /**
* 订单id * 订单id
*/ */
...@@ -496,4 +499,12 @@ public class TbCfOrderEntity implements Serializable { ...@@ -496,4 +499,12 @@ public class TbCfOrderEntity implements Serializable {
public void setEnableFlag(Integer enableFlag) { public void setEnableFlag(Integer enableFlag) {
this.enableFlag = enableFlag; this.enableFlag = enableFlag;
} }
public String getOrdersId() {
return ordersId;
}
public void setOrdersId(String ordersId) {
this.ordersId = ordersId;
}
} }
...@@ -15,7 +15,11 @@ import java.io.IOException; ...@@ -15,7 +15,11 @@ import java.io.IOException;
* @Description: * @Description:
*/ */
public interface FlutterWaveService { public interface FlutterWaveService {
public Result payForOrder(String orderId, FlutterWaveCard flutterWaveCard); Result payForOrder(String orderId, FlutterWaveCard flutterWaveCard);
Result verifyPay(String txref,String orderId);
public Result refund(FlutterWaveCard flutterWaveCard); Result verifyPay(String orderId);
Result refund(FlutterWaveCard flutterWaveCard);
Result queryParams(String userId);
} }
...@@ -169,4 +169,6 @@ public interface TbCfOrderService { ...@@ -169,4 +169,6 @@ public interface TbCfOrderService {
*/ */
Result getOrderDetail(String orderId); Result getOrderDetail(String orderId);
Result getDescriptionById(String descriptionId);
} }
...@@ -177,5 +177,5 @@ public interface TbCfUserInfoService { ...@@ -177,5 +177,5 @@ public interface TbCfUserInfoService {
boolean checkUserByNick(String name); boolean checkUserByNick(String name);
Result queryUserList(Integer pageNum, Integer pageSize); Result queryUserByUserId(String userId);
} }
...@@ -3,13 +3,14 @@ package com.diaoyun.zion.chinafrica.service.impl; ...@@ -3,13 +3,14 @@ package com.diaoyun.zion.chinafrica.service.impl;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.diaoyun.zion.chinafrica.constant.KeyConstant; import com.diaoyun.zion.chinafrica.constant.KeyConstant;
import com.diaoyun.zion.chinafrica.dao.TbCfFinanceDao; import com.diaoyun.zion.chinafrica.dao.TbCfFinanceDao;
import com.diaoyun.zion.chinafrica.dao.TbCfItemOrderRDao;
import com.diaoyun.zion.chinafrica.dao.TbCfOrderDao; import com.diaoyun.zion.chinafrica.dao.TbCfOrderDao;
import com.diaoyun.zion.chinafrica.dao.TbCfToiCouponDao; import com.diaoyun.zion.chinafrica.dao.TbCfToiCouponDao;
import com.diaoyun.zion.chinafrica.entity.TbCfFinanceEntity; import com.diaoyun.zion.chinafrica.entity.*;
import com.diaoyun.zion.chinafrica.entity.TbCfOrderEntity;
import com.diaoyun.zion.chinafrica.enums.DeliveryStatusEnum; import com.diaoyun.zion.chinafrica.enums.DeliveryStatusEnum;
import com.diaoyun.zion.chinafrica.enums.OrderStatusEnum; import com.diaoyun.zion.chinafrica.enums.OrderStatusEnum;
import com.diaoyun.zion.chinafrica.service.FlutterWaveService; import com.diaoyun.zion.chinafrica.service.FlutterWaveService;
import com.diaoyun.zion.chinafrica.service.TbCfUserInfoService;
import com.diaoyun.zion.chinafrica.vo.FlutterWaveCard; import com.diaoyun.zion.chinafrica.vo.FlutterWaveCard;
import com.diaoyun.zion.chinafrica.vo.TbCfFinanceVo; import com.diaoyun.zion.chinafrica.vo.TbCfFinanceVo;
import com.diaoyun.zion.chinafrica.vo.TbCfOrderVo; import com.diaoyun.zion.chinafrica.vo.TbCfOrderVo;
...@@ -33,9 +34,7 @@ import org.springframework.transaction.annotation.Transactional; ...@@ -33,9 +34,7 @@ import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.io.IOException; import java.io.IOException;
import java.util.Date; import java.util.*;
import java.util.HashMap;
import java.util.Map;
/** /**
* @Auther: wudepeng * @Auther: wudepeng
...@@ -50,7 +49,12 @@ public class FlutterWaveServiceImpl implements FlutterWaveService { ...@@ -50,7 +49,12 @@ public class FlutterWaveServiceImpl implements FlutterWaveService {
@Autowired @Autowired
private TbCfOrderDao tbCfOrderDao; private TbCfOrderDao tbCfOrderDao;
@Autowired @Autowired
private TbCfToiCouponDao TbCfToiCouponDao; private TbCfToiCouponDao tbCfToiCouponDao;
@Autowired
private TbCfItemOrderRDao tbCfItemOrderRDao;
@Autowired
private TbCfUserInfoService tbCfUserInfoService;
@Autowired @Autowired
private DomainProperties domainProperties; private DomainProperties domainProperties;
@Resource @Resource
...@@ -62,7 +66,8 @@ public class FlutterWaveServiceImpl implements FlutterWaveService { ...@@ -62,7 +66,8 @@ public class FlutterWaveServiceImpl implements FlutterWaveService {
//校验API //校验API
private String VERIFY_PAY_URL = "https://api.ravepay.co/flwv3-pug/getpaidx/api/v2/verify"; private String VERIFY_PAY_URL = "https://api.ravepay.co/flwv3-pug/getpaidx/api/v2/verify";
//测试API
//private String VERIFY_PAY_URL = "https://ravesandboxapi.flutterwave.com/flwv3-pug/getpaidx/api/v2/verify";
/** /**
* 使用卡号支付(预支付) * 使用卡号支付(预支付)
...@@ -97,7 +102,7 @@ public class FlutterWaveServiceImpl implements FlutterWaveService { ...@@ -97,7 +102,7 @@ public class FlutterWaveServiceImpl implements FlutterWaveService {
.setExpiryyear(flutterWaveCard.getYear()) .setExpiryyear(flutterWaveCard.getYear())
.setExpirymonth(flutterWaveCard.getMonth()) .setExpirymonth(flutterWaveCard.getMonth())
.setEmail(flutterWaveCard.getEmail()) .setEmail(flutterWaveCard.getEmail())
.setTxRef("Afri-shop" + new Date().getTime()); .setTxRef(orderId);
JSONObject chargevisa = ch.chargeVisaAndIntl(); JSONObject chargevisa = ch.chargeVisaAndIntl();
result.setData(chargevisa); result.setData(chargevisa);
} catch (Exception e) { } catch (Exception e) {
...@@ -115,17 +120,16 @@ public class FlutterWaveServiceImpl implements FlutterWaveService { ...@@ -115,17 +120,16 @@ public class FlutterWaveServiceImpl implements FlutterWaveService {
/** /**
* 校验支付 * 校验支付
* *
* @param txref
* @param orderId * @param orderId
* @return * @return
*/ */
@Override @Override
public Result verifyPay(String txref, String orderId) { public Result verifyPay(String orderId) {
Result result = new Result(); Result result = new Result();
try { try {
TbCfOrderVo tbCfOrderVo = (TbCfOrderVo) orderRedisCache.get(KeyConstant.ORDER_DET + orderId); TbCfOrderVo tbCfOrderVo = (TbCfOrderVo) orderRedisCache.get(KeyConstant.ORDER_DET + orderId);
Map<String, Object> map = new HashMap<>(); Map<String, Object> map = new HashMap<>();
map.put("txref", txref); map.put("txref", orderId);
map.put("SECKEY", domainProperties.getProperty("flutterwave.secret.key")); map.put("SECKEY", domainProperties.getProperty("flutterwave.secret.key"));
String data = HttpClientUtil.sendPostWithBodyParameter(VERIFY_PAY_URL, map); String data = HttpClientUtil.sendPostWithBodyParameter(VERIFY_PAY_URL, map);
com.alibaba.fastjson.JSONObject object = JSON.parseObject(data); com.alibaba.fastjson.JSONObject object = JSON.parseObject(data);
...@@ -139,25 +143,25 @@ public class FlutterWaveServiceImpl implements FlutterWaveService { ...@@ -139,25 +143,25 @@ public class FlutterWaveServiceImpl implements FlutterWaveService {
if (tbCfOrderVo != null) { if (tbCfOrderVo != null) {
changeOrderState(paymentid, tbCfOrderVo); changeOrderState(paymentid, tbCfOrderVo);
//修改优惠券状态 //修改优惠券状态
if (tbCfOrderVo.getCouponId() != null && "20".equals(tbCfOrderVo.getOrderStatus())) { if (tbCfOrderVo.getCouponId() != null && OrderStatusEnum.PAID.getValue().equals(tbCfOrderVo.getOrderStatus())) {
TbCfToiCouponDao.changeCoupnStatus(tbCfOrderVo.getUserId(), tbCfOrderVo.getCouponId()); tbCfToiCouponDao.changeCoupnStatus(tbCfOrderVo.getUserId(), tbCfOrderVo.getCouponId());
} }
//生成支付流水 //生成支付流水
TbCfFinanceEntity finance = createFinance(paymentid, authurl, tbCfOrderVo); TbCfFinanceEntity finance = createFinance(paymentid, authurl, tbCfOrderVo);
TbCfFinanceVo tbCfFinanceVo = new TbCfFinanceVo(); TbCfFinanceVo tbCfFinanceVo = new TbCfFinanceVo();
BeanUtils.copyProperties(finance, tbCfFinanceVo); BeanUtils.copyProperties(finance, tbCfFinanceVo);
logger.info(tbCfOrderVo.getUserName() + ":Pay for success! The order number is:" + tbCfOrderVo.getOrderId());
//清空订单 //清空订单
removeRedisCache(tbCfOrderVo); removeRedisCache(tbCfOrderVo);
} }
result.setData(JSON.parseObject(data)); result.setData(JSON.parseObject(data));
result.setCode(ResultCodeEnum.SUCCESS.getCode()).setMessage("payment success!"); result.setCode(ResultCodeEnum.SUCCESS.getCode()).setMessage("payment success!");
logger.info("payment success! The flutterwave txref is:" + txref); logger.info(tbCfOrderVo.getUserName() + ":Pay for success! The order number is:" + tbCfOrderVo.getOrderId());
} else { } else {
result.setData(JSON.parseObject(data)); result.setData(JSON.parseObject(data));
//支付失败 //支付失败
result.setCode(ResultCodeEnum.ORDER_PAY_ERROR.getCode()).setMessage("payment failure!"); result.setCode(ResultCodeEnum.ORDER_PAY_ERROR.getCode()).setMessage("payment failure!");
logger.error("payment failure! The flutterwave txref is:" + txref); logger.error(tbCfOrderVo.getUserName() + ":Pay for success! The order number is:" + tbCfOrderVo.getOrderId());
} }
} catch (Exception e) { } catch (Exception e) {
result.setCode(ResultCodeEnum.VALIDATE_ERROR.getCode()).setMessage(e.getMessage()); result.setCode(ResultCodeEnum.VALIDATE_ERROR.getCode()).setMessage(e.getMessage());
...@@ -203,6 +207,20 @@ public class FlutterWaveServiceImpl implements FlutterWaveService { ...@@ -203,6 +207,20 @@ public class FlutterWaveServiceImpl implements FlutterWaveService {
return result; return result;
} }
@Override
public Result queryParams(String userId) {
Result result = new Result();
List<TbCfUserInfoEntity> list = new ArrayList<>();
FlutterKey key = new FlutterKey();
String public_key = domainProperties.getProperty("flutterwave.public.key");
TbCfUserInfoEntity userInfo = tbCfUserInfoService.queryObject(userId);
list.add(userInfo);
key.setPublic_key(public_key);
key.setUserInfo(list);
result.setData(key).setMessage(ResultCodeEnum.SUCCESS.getDesc());
return result;
}
/** /**
* 清空订单缓存 * 清空订单缓存
...@@ -227,13 +245,18 @@ public class FlutterWaveServiceImpl implements FlutterWaveService { ...@@ -227,13 +245,18 @@ public class FlutterWaveServiceImpl implements FlutterWaveService {
*/ */
private void changeOrderState(String payId, TbCfOrderVo oldOrder) { private void changeOrderState(String payId, TbCfOrderVo oldOrder) {
//更改订单状态 //更改订单状态
TbCfItemOrderREntity itemOrderR = new TbCfItemOrderREntity();
itemOrderR.setOrderId(oldOrder.getOrderId());
itemOrderR.setUpdateTime(new Date());
itemOrderR.setOrderStatus(OrderStatusEnum.PAID.getValue());
itemOrderR.setDeliveryFlag(DeliveryStatusEnum.PROCESSING.getValue());
tbCfItemOrderRDao.updates(itemOrderR);
TbCfOrderEntity tbCfOrder = new TbCfOrderEntity(); TbCfOrderEntity tbCfOrder = new TbCfOrderEntity();
tbCfOrder.setOrderId(oldOrder.getOrderId()); tbCfOrder.setOrderId(oldOrder.getOrderId());
tbCfOrder.setUpdateTime(new Date()); tbCfOrder.setUpdateTime(new Date());
tbCfOrder.setDealTime(new Date()); tbCfOrder.setDealTime(new Date());
tbCfOrder.setOrderStatus(OrderStatusEnum.PAID.getValue());
tbCfOrder.setDeliveryFlag(DeliveryStatusEnum.PROCESSING.getValue());
tbCfOrder.setPayId(payId); tbCfOrder.setPayId(payId);
tbCfOrder.setOrderStatus(OrderStatusEnum.PAID.getValue());
tbCfOrder.setPayStatus(OrderStatusEnum.PAID.getValue()); tbCfOrder.setPayStatus(OrderStatusEnum.PAID.getValue());
tbCfOrderDao.update(tbCfOrder); tbCfOrderDao.update(tbCfOrder);
} }
......
package com.diaoyun.zion.chinafrica.service.impl; package com.diaoyun.zion.chinafrica.service.impl;
import com.diaoyun.zion.chinafrica.constant.KeyConstant; import com.diaoyun.zion.chinafrica.constant.KeyConstant;
import com.diaoyun.zion.chinafrica.dao.TbCfFinanceDao; import com.diaoyun.zion.chinafrica.dao.*;
import com.diaoyun.zion.chinafrica.dao.TbCfIssueCouponDao;
import com.diaoyun.zion.chinafrica.dao.TbCfOrderDao;
import com.diaoyun.zion.chinafrica.dao.TbCfToiCouponDao;
import com.diaoyun.zion.chinafrica.entity.TbCfFinanceEntity; import com.diaoyun.zion.chinafrica.entity.TbCfFinanceEntity;
import com.diaoyun.zion.chinafrica.entity.TbCfItemOrderREntity;
import com.diaoyun.zion.chinafrica.entity.TbCfOrderEntity; import com.diaoyun.zion.chinafrica.entity.TbCfOrderEntity;
import com.diaoyun.zion.chinafrica.enums.DeliveryStatusEnum; import com.diaoyun.zion.chinafrica.enums.DeliveryStatusEnum;
import com.diaoyun.zion.chinafrica.enums.OrderStatusEnum; import com.diaoyun.zion.chinafrica.enums.OrderStatusEnum;
...@@ -57,7 +55,8 @@ public class PayPalServiceImpl implements PayPalService { ...@@ -57,7 +55,8 @@ public class PayPalServiceImpl implements PayPalService {
private TbCfIssueCouponDao tbCfIssueCouponDao; private TbCfIssueCouponDao tbCfIssueCouponDao;
@Autowired @Autowired
private TbCfToiCouponDao tbCfToiCouponDao; private TbCfToiCouponDao tbCfToiCouponDao;
@Autowired
private TbCfItemOrderRDao tbCfItemOrderRDao;
private String ORDER_ID = ""; private String ORDER_ID = "";
@Override @Override
...@@ -215,13 +214,18 @@ public class PayPalServiceImpl implements PayPalService { ...@@ -215,13 +214,18 @@ public class PayPalServiceImpl implements PayPalService {
*/ */
private void changeOrderState(String payId, TbCfOrderVo oldOrder) { private void changeOrderState(String payId, TbCfOrderVo oldOrder) {
//更改订单状态 //更改订单状态
TbCfItemOrderREntity itemOrderR = new TbCfItemOrderREntity();
itemOrderR.setOrderId(oldOrder.getOrderId());
itemOrderR.setUpdateTime(new Date());
itemOrderR.setOrderStatus(OrderStatusEnum.PAID.getValue());
itemOrderR.setDeliveryFlag(DeliveryStatusEnum.PROCESSING.getValue());
tbCfItemOrderRDao.updates(itemOrderR);
TbCfOrderEntity tbCfOrder = new TbCfOrderEntity(); TbCfOrderEntity tbCfOrder = new TbCfOrderEntity();
tbCfOrder.setOrderId(oldOrder.getOrderId()); tbCfOrder.setOrderId(oldOrder.getOrderId());
tbCfOrder.setUpdateTime(new Date()); tbCfOrder.setUpdateTime(new Date());
tbCfOrder.setDealTime(new Date()); tbCfOrder.setDealTime(new Date());
tbCfOrder.setOrderStatus(OrderStatusEnum.PAID.getValue());
tbCfOrder.setDeliveryFlag(DeliveryStatusEnum.PROCESSING.getValue());
tbCfOrder.setPayId(payId); tbCfOrder.setPayId(payId);
tbCfOrder.setOrderStatus(OrderStatusEnum.PAID.getValue());
tbCfOrder.setPayStatus(OrderStatusEnum.PAID.getValue()); tbCfOrder.setPayStatus(OrderStatusEnum.PAID.getValue());
tbCfOrderDao.update(tbCfOrder); tbCfOrderDao.update(tbCfOrder);
} }
......
...@@ -46,6 +46,7 @@ public class TbCfItemDetailServiceImpl implements TbCfItemDetailService { ...@@ -46,6 +46,7 @@ public class TbCfItemDetailServiceImpl implements TbCfItemDetailService {
@Autowired @Autowired
private TbCfExpTemKeywordDao tbCfExpTemKeywordDao; private TbCfExpTemKeywordDao tbCfExpTemKeywordDao;
@Resource(name="redisTokenManager") @Resource(name="redisTokenManager")
private TokenManager tokenManager; private TokenManager tokenManager;
...@@ -191,7 +192,7 @@ public class TbCfItemDetailServiceImpl implements TbCfItemDetailService { ...@@ -191,7 +192,7 @@ public class TbCfItemDetailServiceImpl implements TbCfItemDetailService {
if ("0".equals(tbCfExpressTemplateList.size())) { if ("0".equals(tbCfExpressTemplateList.size())) {
String[] split = keyword.split(""); String[] split = keyword.split("");
for (int i = 0; i < split.length; i++) { for (int i = 0; i < split.length; i++) {
if(i+1<split.length){ if(i+1<=split.length){
List<TbCfExpressTemplateEntity> tbCfExpressTemplateLists = tbCfExpTemKeywordDao.getTemplateByKeyword(split[i]+split[i+1]); List<TbCfExpressTemplateEntity> tbCfExpressTemplateLists = tbCfExpTemKeywordDao.getTemplateByKeyword(split[i]+split[i+1]);
totalTemplateSet.addAll(tbCfExpressTemplateLists); totalTemplateSet.addAll(tbCfExpressTemplateLists);
} }
......
...@@ -27,7 +27,6 @@ import com.diaoyun.zion.master.util.EmailHelper; ...@@ -27,7 +27,6 @@ import com.diaoyun.zion.master.util.EmailHelper;
import com.diaoyun.zion.master.util.IdUtil; import com.diaoyun.zion.master.util.IdUtil;
import com.diaoyun.zion.master.util.RandomCodeHelper; import com.diaoyun.zion.master.util.RandomCodeHelper;
import com.diaoyun.zion.master.util.SMSUtil; import com.diaoyun.zion.master.util.SMSUtil;
import com.github.pagehelper.PageInfo;
import freemarker.template.TemplateException; import freemarker.template.TemplateException;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.apache.commons.mail.EmailException; import org.apache.commons.mail.EmailException;
...@@ -51,8 +50,6 @@ import java.util.Date; ...@@ -51,8 +50,6 @@ import java.util.Date;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import static com.github.pagehelper.page.PageMethod.startPage;
/** /**
* 用户表Service实现类 * 用户表Service实现类
* *
...@@ -537,12 +534,19 @@ public class TbCfUserInfoServiceImpl implements TbCfUserInfoService { ...@@ -537,12 +534,19 @@ public class TbCfUserInfoServiceImpl implements TbCfUserInfoService {
} }
@Override @Override
public Result queryUserList(Integer pageNum, Integer pageSize) { public Result queryUserByUserId(String userId) {
Result result = new Result<>(); Result<TbCfUserVo> result = new Result<>();
startPage(pageNum, pageSize); TbCfUserVo tbCfUserVo=new TbCfUserVo();
List<TbCfUserVo> userList = tbCfUserInfoDao.queryUserList(); TbCfUserVo user=tbCfUserInfoDao.queryUserByUserId(userId);
PageInfo<TbCfUserVo> pageInfo = new PageInfo<>(userList); tbCfUserVo.setUserId(user.getUserId());
result.setData(pageInfo); tbCfUserVo.setUserNo(user.getUserNo());
tbCfUserVo.setUserName(user.getUserName());
tbCfUserVo.setPhone(user.getPhone());
tbCfUserVo.setLastLoginTime(user.getLastLoginTime());
tbCfUserVo.setDefaultAddressId(user.getDefaultAddressId());
tbCfUserVo.setDefaultAddressName(user.getDefaultAddressName());
tbCfUserVo.setEnableFlag(user.getEnableFlag());
result.setData(tbCfUserVo);
return result; return result;
} }
......
package com.diaoyun.zion.chinafrica.vo;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
public class ExpressTemplateVo implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 模板id
*/
private String descriptionId;
/**
* 模板标题
*/
private String descriptionName;
/**
* 快递费
*/
private BigDecimal expressFee;
/**
* 国家编号
*/
private String countryCode;
/**
* 创建日期
*/
private Date createTime;
public String getDescriptionId() {
return descriptionId;
}
public void setDescriptionId(String descriptionId) {
this.descriptionId = descriptionId;
}
public String getDescriptionName() {
return descriptionName;
}
public void setDescriptionName(String descriptionName) {
this.descriptionName = descriptionName;
}
public BigDecimal getExpressFee() {
return expressFee;
}
public void setExpressFee(BigDecimal expressFee) {
this.expressFee = expressFee;
}
public String getCountryCode() {
return countryCode;
}
public void setCountryCode(String countryCode) {
this.countryCode = countryCode;
}
public Date getCreateTime() {
return createTime;
}
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
}
...@@ -18,7 +18,7 @@ import java.util.Date; ...@@ -18,7 +18,7 @@ import java.util.Date;
public class TbCfCartItemDetailVo implements Serializable { public class TbCfCartItemDetailVo implements Serializable {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
/** /**
* 购物车记录id * 记录id
*/ */
@ApiModelProperty("订单记录id") @ApiModelProperty("订单记录id")
private String ordersId; private String ordersId;
......
...@@ -23,7 +23,6 @@ ...@@ -23,7 +23,6 @@
from tb_cf_cart_record_r from tb_cf_cart_record_r
where cart_record_id = #{id} where cart_record_id = #{id}
</select> </select>
<select id="queryList" resultType="com.diaoyun.zion.chinafrica.entity.TbCfCartRecordREntity"> <select id="queryList" resultType="com.diaoyun.zion.chinafrica.entity.TbCfCartRecordREntity">
select select
`cart_record_id`, `cart_record_id`,
......
...@@ -97,5 +97,15 @@ ...@@ -97,5 +97,15 @@
#{templateId} #{templateId}
</foreach> </foreach>
</delete> </delete>
<select id="getDescriptionById" resultType="com.diaoyun.zion.chinafrica.vo.ExpressTemplateVo">
select
t.template_id descriptionId,
t.template_title descriptionName,
t.item_category_id,
t.express_fee,
t.country_code,
t.create_time
from tb_cf_express_template t
where t.template_id = #{descriptionId}
</select>
</mapper> </mapper>
\ No newline at end of file
...@@ -39,7 +39,25 @@ ...@@ -39,7 +39,25 @@
from tb_cf_item_detail from tb_cf_item_detail
where item_id = #{id} where item_id = #{id}
</select> </select>
<select id="queryByTitle" resultType="com.diaoyun.zion.chinafrica.vo.TbCfItemDetailVo">
select
`item_id`,
`source_item_id`,
`station_id`,
`station_type`,
`item_title`,
`item_num`,
`item_img`,
`item_price`,
`item_category`,
`item_sku`,
`shop_id`,
`shop_name`,
`shop_url`,
`create_time`
from tb_cf_item_detail
where item_title = #{itemTitle}
</select>
<select id="queryList" resultType="com.diaoyun.zion.chinafrica.entity.TbCfItemDetailEntity"> <select id="queryList" resultType="com.diaoyun.zion.chinafrica.entity.TbCfItemDetailEntity">
select select
`item_id`, `item_id`,
......
...@@ -8,6 +8,11 @@ ...@@ -8,6 +8,11 @@
<result property="itemId" column="item_id"/> <result property="itemId" column="item_id"/>
<result property="orderId" column="order_id"/> <result property="orderId" column="order_id"/>
<result property="enableFlag" column="enable_flag"/> <result property="enableFlag" column="enable_flag"/>
<result property="orderStatus" column="order_status"/>
<result property="deliveryFlag" column="delivery_flag"/>
<result property="deliveryTime" column="delivery_time"/>
<result property="closeTime" column="close_time"/>
<result property="updateTime" column="update_time"/>
</resultMap> </resultMap>
<select id="queryObject" resultType="com.diaoyun.zion.chinafrica.entity.TbCfItemOrderREntity"> <select id="queryObject" resultType="com.diaoyun.zion.chinafrica.entity.TbCfItemOrderREntity">
...@@ -15,7 +20,12 @@ ...@@ -15,7 +20,12 @@
`order_item_id`, `order_item_id`,
`item_id`, `item_id`,
`order_id`, `order_id`,
`enable_flag` `enable_flag`,
`order_status`,
`delivery_flag`,
`delivery_time`,
`close_time`,
`update_time`
from tb_cf_item_order_r from tb_cf_item_order_r
where order_item_id = #{id} where order_item_id = #{id}
</select> </select>
...@@ -25,7 +35,12 @@ ...@@ -25,7 +35,12 @@
`order_item_id`, `order_item_id`,
`item_id`, `item_id`,
`order_id`, `order_id`,
`enable_flag` `enable_flag`,
`order_status`,
`delivery_flag`,
`delivery_time`,
`close_time`,
`update_time`
from tb_cf_item_order_r from tb_cf_item_order_r
WHERE 1=1 WHERE 1=1
<if test="name != null and name.trim() != ''"> <if test="name != null and name.trim() != ''">
...@@ -57,12 +72,22 @@ ...@@ -57,12 +72,22 @@
`order_item_id`, `order_item_id`,
`item_id`, `item_id`,
`order_id`, `order_id`,
`enable_flag`) `enable_flag`,
`order_status`,
`delivery_flag`,
`delivery_time`,
`close_time`,
`update_time`)
values( values(
#{orderItemId}, #{orderItemId},
#{itemId}, #{itemId},
#{orderId}, #{orderId},
#{enableFlag}) #{enableFlag},
#{orderStatus},
#{deliveryFlag},
#{deliveryTime},
#{closeTime},
#{updateTime})
</insert> </insert>
<update id="update" parameterType="com.diaoyun.zion.chinafrica.entity.TbCfItemOrderREntity"> <update id="update" parameterType="com.diaoyun.zion.chinafrica.entity.TbCfItemOrderREntity">
...@@ -70,11 +95,30 @@ ...@@ -70,11 +95,30 @@
<set> <set>
<if test="itemId != null">`item_id` = #{itemId}, </if> <if test="itemId != null">`item_id` = #{itemId}, </if>
<if test="orderId != null">`order_id` = #{orderId}, </if> <if test="orderId != null">`order_id` = #{orderId}, </if>
<if test="enableFlag != null">`enable_flag` = #{enableFlag}</if> <if test="enableFlag != null">`enable_flag` = #{enableFlag},</if>
<if test="orderStatus != null">`order_status` = #{orderStatus},</if>
<if test="deliveryFlag != null">`delivery_flag`= #{deliveryFlag},</if>
<if test="deliveryTime != null">`delivery_time`= #{deliveryTime},</if>
<if test="closeTime != null">`close_time`= #{closeTime},</if>
<if test="updateTime != null">`update_time` = #{updateTime}</if>
</set> </set>
where order_item_id = #{orderItemId} where order_item_id = #{orderItemId}
</update> </update>
<update id="updates" parameterType="com.diaoyun.zion.chinafrica.entity.TbCfItemOrderREntity">
update tb_cf_item_order_r
<set>
<if test="itemId != null">`item_id` = #{itemId}, </if>
<if test="enableFlag != null">`enable_flag` = #{enableFlag},</if>
<if test="orderStatus != null">`order_status` = #{orderStatus},</if>
<if test="deliveryFlag != null">`delivery_flag`= #{deliveryFlag},</if>
<if test="deliveryTime != null">`delivery_time`= #{deliveryTime},</if>
<if test="closeTime != null">`close_time`= #{closeTime},</if>
<if test="updateTime != null">`update_time` = #{updateTime}</if>
</set>
where order_id = #{orderId}
</update>
<delete id="delete"> <delete id="delete">
delete from tb_cf_item_order_r where order_item_id = #{value} delete from tb_cf_item_order_r where order_item_id = #{value}
</delete> </delete>
...@@ -92,14 +136,24 @@ ...@@ -92,14 +136,24 @@
`order_item_id`, `order_item_id`,
`item_id`, `item_id`,
`order_id`, `order_id`,
`enable_flag`) `enable_flag`,
`order_status`,
`delivery_flag`,
`delivery_time`,
`close_time`,
`update_time`)
values values
<foreach collection="list" item="item" index="index" separator=","> <foreach collection="list" item="item" index="index" separator=",">
( (
#{item.orderItemId}, #{item.orderItemId},
#{item.itemId}, #{item.itemId},
#{item.orderId}, #{item.orderId},
#{item.enableFlag} #{item.enableFlag},
#{item.orderStatus},
#{item.deliveryFlag},
#{item.deliveryTime},
#{item.closeTime},
#{item.updateTime}
) )
</foreach> </foreach>
......
...@@ -279,7 +279,7 @@ ...@@ -279,7 +279,7 @@
t1.item_title, t1.item_title,
t1.item_num, t1.item_num,
t1.item_price, t1.item_price,
t1.item_category, t5.template_id descripitionId,
t5.template_title descripitionName t5.template_title descripitionName
FROM FROM
tb_cf_item_detail t1 tb_cf_item_detail t1
...@@ -288,11 +288,13 @@ ...@@ -288,11 +288,13 @@
LEFT JOIN tb_cf_platform_order t4 on t3.order_id=t4.order_id LEFT JOIN tb_cf_platform_order t4 on t3.order_id=t4.order_id
LEFT JOIN tb_cf_express_template t5 on t5.template_id=t4.descripition_id LEFT JOIN tb_cf_express_template t5 on t5.template_id=t4.descripition_id
WHERE WHERE
t2.enable_flag = 1 and t2.order_item_id=#{order_id} t2.enable_flag = 1 and t2.order_item_id=#{orderId}
</select> </select>
<!--获取付款订单--> <!--获取付款订单-->
<select id="getOrderListByTime" resultType="com.diaoyun.zion.chinafrica.entity.TbCfOrderEntity"> <select id="getOrderListByTime" resultType="com.diaoyun.zion.chinafrica.entity.TbCfOrderEntity">
select o.user_id,r.order_item_id order_id,o.deal_time from tb_cf_order o left join tb_cf_item_order_r r on r.order_id=o.order_id where pay_status=20 and o.enable_flag=1 select o.user_id,r.order_item_id order_id,o.deal_time
from tb_cf_order o left join tb_cf_item_order_r r on r.order_id=o.order_id
where pay_status=20 and r.enable_flag=1
and deal_time <![CDATA[ >= ]]> #{beginDate} and deal_time <![CDATA[ < ]]> #{endDate} and deal_time <![CDATA[ >= ]]> #{beginDate} and deal_time <![CDATA[ < ]]> #{endDate}
</select> </select>
...@@ -302,16 +304,18 @@ ...@@ -302,16 +304,18 @@
o.user_id, o.user_id,
r.order_item_id order_id, r.order_item_id order_id,
p.create_time deliveryTime, p.create_time deliveryTime,
a.address_country_name countryName,
o.delivery_address, o.delivery_address,
p.p_express_number expressId, p.p_express_number expressId,
i.item_id itemId, i.item_id itemId,
e.template_title descripitionName i.item_num,
p.descripition_id
from tb_cf_order o from tb_cf_order o
LEFT JOIN tb_cf_platform_order p on o.order_id=p.order_id LEFT JOIN tb_cf_platform_order p on o.order_id=p.order_id
left join tb_cf_item_order_r r on r.order_id=o.order_id left join tb_cf_item_order_r r on r.order_id=o.order_id
LEFT JOIN tb_cf_item_detail i on r.item_id=i.item_id LEFT JOIN tb_cf_item_detail i on r.item_id=i.item_id
LEFT JOIN tb_cf_express_template e on e.template_id=p.descripition_id LEFT JOIN tb_cf_address a on a.user_id=o.user_id
where o.delivery_flag=20 and o.enable_flag=1 where r.delivery_flag=10 and r.enable_flag=1
and p.create_time <![CDATA[ >= ]]> #{beginDate} and p.create_time <![CDATA[ < ]]> #{endDate} and p.create_time <![CDATA[ >= ]]> #{beginDate} and p.create_time <![CDATA[ < ]]> #{endDate}
</select> </select>
......
...@@ -53,20 +53,7 @@ ...@@ -53,20 +53,7 @@
from tb_cf_user_info from tb_cf_user_info
where user_id = #{id} where user_id = #{id}
</select> </select>
<!--提供给第三方的接口查询用户列表 -->
<select id="queryUserList" resultType="com.diaoyun.zion.chinafrica.vo.TbCfUserVo">
select
u.user_id,
u.user_no,
u.nick user_name,
u.phone,
u.last_login_time,
a.address_id defaultAddressId,
a.address_detail defaultAddressName,
u.enable_flag
from tb_cf_user_info u left join tb_cf_address a on u.user_id=a.user_id
WHERE 1=1
</select>
<select id="queryList" resultType="com.diaoyun.zion.chinafrica.entity.TbCfUserInfoEntity"> <select id="queryList" resultType="com.diaoyun.zion.chinafrica.entity.TbCfUserInfoEntity">
select select
`user_id`, `user_id`,
...@@ -229,5 +216,18 @@ ...@@ -229,5 +216,18 @@
<update id="updatePassWord"> <update id="updatePassWord">
update tb_cf_user_info set password=#{newPassword} where user_id=#{userId} update tb_cf_user_info set password=#{newPassword} where user_id=#{userId}
</update> </update>
<!--提供给第三方的 ,根据userId,查找需要的信息-->
<select id="queryUserByUserId" resultType="com.diaoyun.zion.chinafrica.vo.TbCfUserVo">
select
u.user_id,
u.user_no,
u.nick user_name,
u.phone,
u.last_login_time,
a.address_id defaultAddressId,
a.address_detail defaultAddressName,
u.enable_flag
from tb_cf_user_info u left join tb_cf_address a on u.user_id=a.user_id
WHERE 1=1 and u.user_id=#{userId}
</select>
</mapper> </mapper>
\ No newline at end of file
...@@ -417,7 +417,7 @@ public class ZionApplicationTests { ...@@ -417,7 +417,7 @@ public class ZionApplicationTests {
@Test @Test
public void testDate() throws ParseException { public void testDate() throws ParseException {
String res = "2019-10-2 10:04:59"; String res = "2019-12-10 10:04:59";
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = simpleDateFormat.parse(res); Date date = simpleDateFormat.parse(res);
long it = date.getTime(); long it = date.getTime();
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论