Browse Source

更新订单代码

master
xyiege 3 years ago
parent
commit
865cde49f3
  1. 6
      src/main/java/cn/chjyj/szwh/bean/OrderGoodsDetail.java
  2. 43
      src/main/java/cn/chjyj/szwh/controller/api/GoodsController.java
  3. 183
      src/main/java/cn/chjyj/szwh/controller/api/OrderController.java
  4. 9
      src/main/java/cn/chjyj/szwh/mapper/AccountRatioDetailMapper.java
  5. 5
      src/main/java/cn/chjyj/szwh/mapper/AccountRatioSettingMapper.java
  6. 7
      src/main/java/cn/chjyj/szwh/mapper/OrderMapper.java
  7. 7
      src/main/java/cn/chjyj/szwh/mapper/OrderUserMapper.java
  8. 7
      src/main/java/cn/chjyj/szwh/service/OrderService.java
  9. 7
      src/main/java/cn/chjyj/szwh/service/OrderUserService.java
  10. 2
      src/main/java/cn/chjyj/szwh/service/impl/AccountRatioDetailServiceImpl.java
  11. 6
      src/main/java/cn/chjyj/szwh/service/impl/OrderServiceImpl.java
  12. 5
      src/main/java/cn/chjyj/szwh/service/impl/OrderUserServiceImpl.java
  13. 60
      src/main/java/cn/chjyj/szwh/utils/SzOrderUtils.java
  14. 3
      src/main/java/cn/chjyj/szwh/utils/SzwhApiUtils.java
  15. 26
      src/main/resources/mapper/szwh/OrderMapper.xml
  16. 46
      src/main/resources/mapper/szwh/OrderUserMapper.xml
  17. 29
      src/test/java/cn/chjyj/szwh/ApiTest.java
  18. 26
      src/test/java/cn/chjyj/szwh/service/GoodsServiceTest.java
  19. 25
      src/test/java/cn/chjyj/szwh/service/impl/OrderTaskServiceImplTest.java

6
src/main/java/cn/chjyj/szwh/bean/OrderGoodsDetail.java

@ -25,7 +25,7 @@ public class OrderGoodsDetail implements Serializable {
* close_status as closeStatus,is_close as isClose,callback_msg as callbackMsg,createtime,updatetime,is_deleted as isDeleted
*/
private Integer id;
private Long batchcode;//订单号
private String batchcode;//订单号
private Integer userId;//用户id
private String entrustIslicode;//委托方isli标识码
private String islicode;
@ -81,11 +81,11 @@ public class OrderGoodsDetail implements Serializable {
this.id = id;
}
public Long getBatchcode() {
public String getBatchcode() {
return batchcode;
}
public void setBatchcode(Long batchcode) {
public void setBatchcode(String batchcode) {
this.batchcode = batchcode;
}

43
src/main/java/cn/chjyj/szwh/controller/api/GoodsController.java

@ -3,13 +3,17 @@ package cn.chjyj.szwh.controller.api;
import cn.chjyj.szwh.bean.Goods;
import cn.chjyj.szwh.controller.BaseController;
import cn.chjyj.szwh.service.GoodsService;
import cn.chjyj.szwh.utils.AjaxResult;
import com.alibaba.fastjson2.JSONObject;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* API端产品信息
@ -82,4 +86,43 @@ public class GoodsController extends BaseController {
}
return outjson;
}
/**
* 接口处理搜索
* @return
*/
@PostMapping("/searchGoods")
public JSONObject searchGoods(@RequestBody String reqstr){
//{"pay_type":1,"goods_status":1,"record_type":"","entrust_name":"clytest1012-1","entrust_user_name":"","page":1,"limit":8}
log.info("查询委托信息接口:"+reqstr);
JSONObject reqjson = JSONObject.parseObject(reqstr);
Map qmap = new HashMap<>(); //查询条件
qmap.put("is_delete",0);//正常状态的
if(StringUtils.isNotBlank(reqstr)){
Integer ipage = reqjson.getInteger("page");
if(ipage==null){
ipage=1;
}
String limit = reqjson.getString("limit");
int ilimit = (StringUtils.isBlank(limit))?8:Integer.valueOf(limit);
//搜索关键词
String entrustName = reqjson.getString("entrust_name");
if(StringUtils.isNotBlank(entrustName)){
qmap.put("gd.goods_name",entrustName);
}
//排序方式
String orderType=reqjson.getString("record_type");
if(StringUtils.isNotBlank(orderType)){
qmap.put("orderway",orderType);
}
Map retmap =goodsService.getGoodsByMap(qmap,ipage,ilimit);
// 结果转为json
JSONObject retjson = new JSONObject(retmap);
return AjaxResult.success("成功",retjson);
}else{
return AjaxResult.error("参数为空");
}
}
}

183
src/main/java/cn/chjyj/szwh/controller/api/OrderController.java

@ -1,17 +1,25 @@
package cn.chjyj.szwh.controller.api;
import cn.chjyj.szwh.bean.Order;
import cn.chjyj.szwh.bean.User;
import cn.chjyj.szwh.bean.*;
import cn.chjyj.szwh.controller.BaseController;
import cn.chjyj.szwh.service.OrderService;
import cn.chjyj.szwh.service.UserService;
import cn.chjyj.szwh.exception.ChException;
import cn.chjyj.szwh.service.*;
import cn.chjyj.szwh.utils.RedisUtils;
import cn.chjyj.szwh.utils.SzOrderUtils;
import cn.chjyj.szwh.utils.SzwhApiUtils;
import cn.chjyj.szwh.vo.OrderDetailVo;
import com.alibaba.fastjson2.JSONObject;
import com.sun.org.apache.xpath.internal.operations.Or;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@ -23,10 +31,22 @@ import java.util.Map;
@RestController
@RequestMapping(name = "/api/Order", method = RequestMethod.POST)
public class OrderController extends BaseController {
private static Log log = LogFactory.getLog(OrderController.class);
@Autowired
private OrderService orderService;
@Autowired
private UserService userService;
@Autowired
private GoodsService goodsService;
@Autowired
private GoodsDetailService goodsDetailService;
//结算设置
@Autowired
private AccountRatioSettingService accountRatioSettingService;
@Autowired
private AccountRatioDetailService accountRatioDetailService;
@Autowired
private OrderUserService orderUserService;
/**
* 获取订单信息
@ -82,26 +102,52 @@ public class OrderController extends BaseController {
/**
* 创建订单
* @param reqString 接收到的数据为json字符串
* @param request 接收到的请求
* @return
*/
@RequestMapping("/createOrder")
public JSONObject createOrder(@RequestBody String reqString, HttpServletRequest request) {
public JSONObject createOrder(HttpServletRequest request) {
// 商品编号,逗号分隔
String goodsIsli=request.getParameter("goods_isli");
// 是否在购物车
String isCar = request.getParameter("is_car");
//用户购买年限,逗号分隔
String userYears = request.getParameter("user_years");
// 用户编码
String userIsli= request.getParameter("user_isli");
log.info("创建订单接口"+request.toString());
String msg="";
int code=400;
String sign = request.getHeader("sign");
//redis中是否存在
String r_key="createOrder_"+sign;
if(StringUtils.isNotEmpty(RedisUtils.get(r_key))){
msg="请勿重复提交";
code=400;
throw new ChException("请勿重复提交",400);
}
// 存入redis
RedisUtils.set(r_key,1,10);
//用户购物车
String shopCar = RedisUtils.get("car_"+userIsli);
//分割多个goodsisli
String goodArr[]=goodsIsli.split(",");
// 购买年限数组
String uYears[] = userYears.split(",");
//用户信息
User buser = userService.getUserByIsli(userIsli);
//只有一条记录的时候
if(goodArr.length==1){
}else{ //多个商品编号
}
if(StringUtils.isBlank(reqString)){
JSONObject json = JSONObject.parseObject(reqString);
String user_isli = json.getString("user_isli");
//查找对应的用户
User dbuser = userService.getUserByIsli(user_isli);
//未能删除成功
if(!RedisUtils.delete(r_key)){
throw new ChException("请勿重复提交",400);
}
jsonObject.put("code",code);
jsonObject.put("msg",msg);
return jsonObject;
}
@ -130,4 +176,115 @@ public class OrderController extends BaseController {
// 请求转发到远程服务器
return jsonObject;
}
private String buyFindGoods(String userIsli,String goodsIsli,int userYears){
Goods goods= goodsService.getGoodsByIsli(goodsIsli);
if(goods==null){
throw new ChException("没有该标的",400);
}
GoodsDetail goodsDetail = goodsDetailService.getGoodsDetailBygid(goods.getGoodsDetailId());
int count = Integer.valueOf(userYears);
if(goodsDetail.getGoodsEntrust()==1){
count=1;
}
// 结算设置
AccountRatioSetting accountRatioSetting = accountRatioSettingService.getUsingAccRationSetting();
//结算分配信息
AccountRatioDetail accountRatioDetail = accountRatioDetailService.getAccRatioDetailUnderRole(accountRatioSetting.getId(),
2);
// 判断当前订单是否存在问题
Order order=new Order();
//校验订单信息合法
SzOrderUtils.checkOrder(goods,goodsDetail,null,userIsli);
//服务费
BigDecimal serviceCharge=new BigDecimal(0.00);
//订单总费用
BigDecimal totalMoney=new BigDecimal(0.00);
int status=0;//订单状态
int payStatus=0;//支付状态
// 付费商品
if(goodsDetail.getChargesType()==2){
if(accountRatioDetail.getCalculate()==1){
//rate 小于等于0
if(accountRatioDetail.getRatio().compareTo(new BigDecimal(0))!=1){
// 服务费0
serviceCharge = new BigDecimal(0.00);
}else{
// 购买数量* 单价*(分配比例/100)
serviceCharge =new BigDecimal(count).multiply(goodsDetail.getPrice())
.multiply(accountRatioDetail.getRatio().divide(new BigDecimal(100)));
}
}else{
//固定金额
// 购买数量*单机+固定费额
serviceCharge = new BigDecimal(count).multiply(goodsDetail.getPrice())
.add(accountRatioDetail.getAmount());
}
//总的额度
totalMoney = new BigDecimal(count).multiply(goodsDetail.getPrice())
.add(serviceCharge)
.add(goodsDetail.getEarnestMoney());
status=1;
payStatus=1;
}else{
// 免费
serviceCharge =new BigDecimal(0.00);
totalMoney = new BigDecimal(0.00);
status=2;
payStatus=2; //已支付
}
// 订单编号
String batchCode = SzOrderUtils.createOrderBatchcode();
// 增加到订单商品详情
OrderGoodsDetail orderGoodsDetail = SzOrderUtils.mkOrderGoodsDetail(goodsDetail,batchCode,count,userYears);
// 补充其他未添加的属性
orderGoodsDetail.setEntrustIslicode(goods.getUserIslicode());
// 订单服务费
orderGoodsDetail.setServiceCharge(serviceCharge);
//总金额
orderGoodsDetail.setMoney(totalMoney);
orderGoodsDetail.setIslicode(goods.getIsLicode());
// 查找用户
OrderUser orderUser = orderUserService.getOrderUser(batchCode,goods.getIsLicode());
int userId=0;
if(orderUser!=null){
userId = orderUser.getId();
}else{
// 获取远程用户信息
JSONObject userjson = SzwhApiUtils.getApiUser(userIsli);
if(StringUtils.isBlank(userjson.getString("data"))){
throw new ChException("未查询到用户信息,下单失败",400);
}
//添加用户
OrderUser odu =SzOrderUtils.mkOrderUser(batchCode,userjson,0);
orderUserService.addOrderUser(odu);
userId = odu.getId();
}
// 订单实体
order.setBatchcode(batchCode);
order.setUserId(userId);
order.setBuyIslicode(userIsli);
order.setTotalServiceCharge(serviceCharge);
order.setTotalMoney(totalMoney);
order.setType(1);
order.setStatus(status);
order.setPayStatus(payStatus);
// 分配设置编号
order.setAccountRatioId(accountRatioSetting.getId());
//如果是付费
if(goodsDetail.getChargesType()==1){
order.setPaymenttime(new Date());
}
order.setCreatetime(new Date());
// 订单信息入库
int ret = orderService.addOrder(order);
if(ret==1){
if(status==2){
// 更新订单信息
}
}
return "";
}
}

9
src/main/java/cn/chjyj/szwh/mapper/AccountRatioDetailMapper.java

@ -1,6 +1,8 @@
package cn.chjyj.szwh.mapper;
import cn.chjyj.szwh.bean.AccountRatioDetail;
import org.apache.ibatis.annotations.Param;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.List;
@ -17,6 +19,13 @@ public interface AccountRatioDetailMapper {
*/
AccountRatioDetail getAccountRationDetailById(Integer id);
/**
* 查询设置下的角色分配详情
* @param settid
* @param roleid
* @return
*/
AccountRatioDetail getAccRatioDetailByIdRole(@Param("settid") Integer settid, @Param("roleid") Integer roleid);
/**
* 选择符合条件的记录
* @param settingId

5
src/main/java/cn/chjyj/szwh/mapper/AccountRatioSettingMapper.java

@ -19,6 +19,11 @@ public interface AccountRatioSettingMapper {
*/
AccountRatioSetting getAccRatioSettingById(Integer id);
/**
* 获取使用中的分配设置
* @return
*/
AccountRatioSetting getUsingAccRatioSetting();
/**
* 查询列表
* @param imap

7
src/main/java/cn/chjyj/szwh/mapper/OrderMapper.java

@ -116,4 +116,11 @@ public interface OrderMapper {
BigDecimal sumOderDtZone(@Param("startdt") String startdt,
@Param("enddt") String enddt,
@Param("field") String field);
/**
* 新增订单信息
* @param order
* @return
*/
int addOrder(Order order);
}

7
src/main/java/cn/chjyj/szwh/mapper/OrderUserMapper.java

@ -56,4 +56,11 @@ public interface OrderUserMapper {
* @return
*/
List<OrderUser> getSearchNameOrIslicode(String keyval);
/**
* 新增订单用户
* @param orderUser
* @return
*/
int addOrderUser(OrderUser orderUser);
}

7
src/main/java/cn/chjyj/szwh/service/OrderService.java

@ -76,4 +76,11 @@ public interface OrderService {
*/
int countAllOrder();
/**
* add new order information
* @param order
* @return
*/
int addOrder(Order order);
}

7
src/main/java/cn/chjyj/szwh/service/OrderUserService.java

@ -10,4 +10,11 @@ public interface OrderUserService {
* @return
*/
OrderUser getOrderUser(String batchcode,String islicode);
/**
* 增加
* @param orderUser
* @return
*/
int addOrderUser(OrderUser orderUser);
}

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

@ -14,6 +14,6 @@ public class AccountRatioDetailServiceImpl implements AccountRatioDetailService
@Override
public AccountRatioDetail getAccRatioDetailUnderRole(Integer id, Integer roleid) {
return accountRatioDetailMapper.getAccRatioDetailByIdRole(id,2);
return accountRatioDetailMapper.getAccRatioDetailByIdRole(id,roleid);
}
}

6
src/main/java/cn/chjyj/szwh/service/impl/OrderServiceImpl.java

@ -509,6 +509,12 @@ public class OrderServiceImpl implements OrderService {
return orderMapper.countAllOrder();
}
@Override
@Transactional(rollbackFor = Exception.class)
public int addOrder(Order order) {
return orderMapper.addOrder(order);
}
/**
* 结算
* @param order

5
src/main/java/cn/chjyj/szwh/service/impl/OrderUserServiceImpl.java

@ -18,4 +18,9 @@ public class OrderUserServiceImpl implements OrderUserService {
public OrderUser getOrderUser(String batchcode, String islicode) {
return orderUserMapper.getUserOrder(batchcode,islicode);
}
@Override
public int addOrderUser(OrderUser orderUser) {
return orderUserMapper.addOrderUser(orderUser);
}
}

60
src/main/java/cn/chjyj/szwh/utils/SzOrderUtils.java

@ -1,15 +1,13 @@
package cn.chjyj.szwh.utils;
import cn.chjyj.szwh.bean.Goods;
import cn.chjyj.szwh.bean.GoodsDetail;
import cn.chjyj.szwh.bean.Order;
import cn.chjyj.szwh.bean.OrderUser;
import cn.chjyj.szwh.bean.*;
import cn.chjyj.szwh.exception.ChException;
import com.alibaba.fastjson2.JSONObject;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import java.math.BigDecimal;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
@ -18,15 +16,49 @@ import java.util.Random;
public class SzOrderUtils {
private static Log log = LogFactory.getLog(SzOrderUtils.class);
/**
* 购买商品返回订单编号
* @param userIsli
* @param goodsIsli
* @param useYears
* 订单商品详情
* @param goodsDetail 商品详情
* @param batchcode 订单编码
* @param count 购买数量
* @param goodsUserYears 使用年限
* @return
*/
public static String buyFindGoods(String userIsli,String goodsIsli,int useYears){
return "";
public static OrderGoodsDetail mkOrderGoodsDetail(GoodsDetail goodsDetail,String batchcode,int count,int goodsUserYears){
OrderGoodsDetail ogd=new OrderGoodsDetail();
//ogd.setUserId(userId);
ogd.setBatchcode(batchcode);
ogd.setGoodsIslicode(goodsDetail.getGoodsIslicode());
//ogd.setIslicode(islicode);
//ogd.setEntrustIslicode(entislicode);
ogd.setGoodsName(goodsDetail.getGoodsName());
ogd.setGoodsImage(goodsDetail.getGoodsImage());
ogd.setIdentifier(goodsDetail.getIdentifier());
ogd.setIdentifiers(goodsDetail.getIdentifiers());
ogd.setSourcedataIslicode(goodsDetail.getSourcedataIslicode());
ogd.setPrice(goodsDetail.getPrice());
// goods price
BigDecimal gprice = goodsDetail.getPrice().multiply(new BigDecimal(count));
ogd.setGoodsPrice(gprice);
//ogd.setServiceCharge(serviceCharge);
ogd.setEarnestMoney(new BigDecimal(0.00));
ogd.setTransactionCount(goodsUserYears);
//总的金额
// ogd.setMoney(totalMoney);
ogd.setGoodsOwnershipStr(goodsDetail.getGoodsOwnershipStr());
ogd.setGoodsType(goodsDetail.getGoodsType());
ogd.setChargesType(goodsDetail.getChargesType());
ogd.setGoodsEntrust(goodsDetail.getGoodsEntrust());
ogd.setContractualPeriod(goodsDetail.getContractualPeriod());
ogd.setTransactionClass(goodsDetail.getTransactionClass());
ogd.setContract(goodsDetail.getContract());
// ? 设置商品名称
ogd.setOtheridentifiers(goodsDetail.getGoodsName());
ogd.setDataJson(goodsDetail.getDataJson());
ogd.setSourceJson(goodsDetail.getSourceJson());
ogd.setClassification(goodsDetail.getClassification());
return ogd;
}
/**
@ -86,6 +118,14 @@ public class SzOrderUtils {
OrderUser orderUser=new OrderUser();
//用户类型
String uType = userJson.getString("userType");
if(isBuy == 1){
if("个人".equals(uType)){
throw new ChException("暂不支持个人用户交易", 400);
}
if(!"1".equals(userJson.getString("state"))){
throw new ChException("当前用户未认证成功", 400);
}
}
// 机构用户
if("机构".equals(uType)){
orderUser.setBatchcode(batchcode);

3
src/main/java/cn/chjyj/szwh/utils/SzwhApiUtils.java

@ -26,9 +26,6 @@ public class SzwhApiUtils {
*/
public static JSONObject getApiUser(String userIsli) {
String userHost= ProperUtils.getSzwhProp("REAL_URL");//用户主机
if(StringUtils.isEmpty(userHost)){
userHost="";
}
// 远程获取用户的信息
String userUrl=userHost+"/users/usermgt/v1/user-info/"+userIsli;
log.info("rquest url:"+userUrl);

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

@ -175,21 +175,23 @@
</select>
<!--新增用户-->
<insert id="addUser" parameterType="cn.chjyj.szwh.bean.Goods" useGeneratedKeys="true" keyColumn="uid">
<insert id="addOrder" parameterType="cn.chjyj.szwh.bean.Order" useGeneratedKeys="true" keyColumn="id">
insert into
<include refid="tbName"/>
(uname,password,gender,urealname,ubirth,nickname,avatarurl,platfrom,sessionkey,openid)
(user_id ,buy_islicode ,batchcode,account_ratio_id ,
history_buy_name,history_buy_code ,total_service_charge ,total_money,
`type`,`status`,transaction_islicode ,ticketid,ticketmoney,ticketurl,ticketimage,
ticket_status ,charge_channel ,pay_status ,close_status ,
is_close ,close_serial_number ,payid,createtime,paymenttime,receivetime,closetime,
completetime,shuttime,tickettime)
values (
#{uname},
#{password},
#{gender},
#{urealname},
#{ubirth},
#{nickname},
#{avatarurl},
#{platfrom},
#{sessionkey},
#{openid}
#{userId},#{buyIslicode},#{batchcode},#{accountRatioId},
#{historyBuyName},#{historyBuyCode},#{totalServiceCharge},#{totalMoney},
#{type},#{status},#{transactionIslicode},#{ticketid},#{ticketmoney},#{ticketurl},#{ticketimage},
#{ticketStatus},#{chargeChannel},#{payStatus},#{closeStatus},
#{isClose},#{closeSerialNumber},#{payid},#{createtime},
#{paymenttime},#{receivetime},#{closetime},
#{completetime},#{shuttime},#{tickettime}
)
</insert>

46
src/main/resources/mapper/szwh/OrderUserMapper.xml

@ -92,20 +92,42 @@
</select>
<!--新增用户-->
<insert id="addUser" parameterType="cn.chjyj.szwh.bean.Goods" useGeneratedKeys="true" keyColumn="uid">
<insert id="addOrderUser" parameterType="cn.chjyj.szwh.bean.OrderUser" useGeneratedKeys="true" keyColumn="id">
insert into <include refid="tbName"/>
(uname,password,gender,urealname,ubirth,nickname,avatarurl,platfrom,sessionkey,openid)
(batchcode,islicode,`name`,uscc,userType,authType,certType,idNumber,cellPhone,publicAccount,
legalsName,legalsType,legalsIdnum,legalsCellPhone,bankCardType,bankType,bankName,bankAccountName,
certIdnum,bankCellPhone,bankAddress,`state`,registertime,attesttime,tickettime,ticketid,
ticketmoney,ticketurl,ticketimage,ticket_status as ticketStatus)
values (
#{uname},
#{password},
#{gender},
#{urealname},
#{ubirth},
#{nickname},
#{avatarurl},
#{platfrom},
#{sessionkey},
#{openid}
#{batchcode},
#{islicode},
#{name},
#{uscc},
#{userType},
#{authType},
#{certType},
#{idNumber},
#{cellPhone},
#{publicAccount},
#{legalsName},
#{legalsType},
#{legalsIdnum},
#{legalsCellPhone},
#{bankType},
#{bankName},
#{bankAccountName},
#{certIdnum},
#{bankCellPhone},
#{bankAddress},
#{state},
#{registertime},
#{attesttime},
#{tickettime},
#{ticketid},
#{ticketmoney},
#{ticketurl},
#{ticketimage},
#{ticketStatus}
)
</insert>

29
src/test/java/cn/chjyj/szwh/ApiTest.java

@ -6,6 +6,7 @@ import cn.chjyj.szwh.mapper.GoodsDetailMapper;
import cn.chjyj.szwh.utils.*;
import com.alibaba.fastjson2.JSONArray;
import com.alibaba.fastjson2.JSONObject;
import org.apache.commons.lang3.StringUtils;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
@ -117,6 +118,7 @@ public class ApiTest {
*/
@Test
public void jdxTest(){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String tmpstr ="{\"resultCode\":\"00000000\",\"resultMsg\":\"SUCCESS\"," +
"\"data\":[{\"isliCode\":\"010007-00000000302500000001-6\",\"status\":\"1\",\"createTime\":\"2022-10-18T02:16:02.000+00:00\"," +
"\"exStatus\":\"0\",\"timeStamp\":1666059370000,\"sourceData\":{\"contractIsLiCode\":\"010007-00000000302500000001-6\"," +
@ -153,6 +155,33 @@ public class ApiTest {
Integer day = nsdjson.getInteger("contractualCycle");
//转换为date
String cend = nsdjson.getString("contractualPeriodEnd");
// 委托终止日期
if (StringUtils.isBlank(cend)) {
cend = "2099-12-31";
}
// 加上时间
cend=cend+" 23:59:59";
//委托开始时间,取当前时间
Timestamp ncst = new Timestamp(System.currentTimeMillis());
//委托结束时间 default value 2099-12-31 23:59:59
Timestamp ncet = new Timestamp(4102415999000l);
// 周期性托管,判断开始时间是否结束
if (iperiod == 3) {
try{
// 委托开始时间 匹配时间格式,防止转码出错
Date wtStart = sdf.parse(ncstart);
// 委托开始时间戳
ncst = new Timestamp(wtStart.getTime());
// 委托终止时间
Date wtEnd = sdf.parse(cend);
SimpleDateFormat ysdf = new SimpleDateFormat("yyyy-MM-dd");
cend = ysdf.format(wtEnd) + " 23:59:59";
// 委托终止时间时间戳
ncet = new Timestamp(sdf.parse(cend).getTime());
}catch (Exception ex){
ex.printStackTrace();
}
}
}
@Test

26
src/test/java/cn/chjyj/szwh/service/GoodsServiceTest.java

@ -2,6 +2,7 @@ package cn.chjyj.szwh.service;
import cn.chjyj.szwh.bean.Goods;
import cn.chjyj.szwh.mapper.GoodsMapper;
import com.alibaba.fastjson2.JSONObject;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
@ -38,4 +39,29 @@ public class GoodsServiceTest {
System.out.println(g.getGoodsDetailId());
}
}
/**
* 手工导入测试
*/
@Test
public void manuImport(){
String tmpstr ="{\"resultCode\":\"00000000\",\"resultMsg\":\"SUCCESS\"," +
"\"data\":[{\"isliCode\":\"010007-00000000302500000001-6\",\"status\":\"1\",\"createTime\":\"2022-10-18T02:16:02.000+00:00\"," +
"\"exStatus\":\"0\",\"timeStamp\":1666059370000,\"sourceData\":{\"contractIsLiCode\":\"010007-00000000302500000001-6\"," +
"\"register\":\"北京玖扬博文文化发展有限公司\",\"entityName\":null,\"isliCode\":\"010007-00000000302599999999-5\",\"serviceCode\":\"010007\"," +
"\"titleName\":\"1018阶段\",\"releaseTime\":\"2022-10-18 10:14:37\",\"identifier\":\"010007-00000000302599999999-5\"," +
"\"identifiers\":\"000002-100000000192062-5\",\"systemIdentity\":\"ee6510c19fb643aabf336bbe9e014a82\",\"transactionType\":\"授权\"," +
"\"collectionType\":\"文化资源数据\",\"transactionKind\":\"权属\",\"otherIdentifiers\":\" \",\"contractualPeriod\":\"阶段性委托\",\"contractualCycle\":null," +
"\"price\":\"RMB 0.01\",\"rights\":\"放映权\",\"contractMoney\":\"交易全额的30%\",\"contractualPeriodStart\":\"2022-10-18\"," +
"\"contractualPeriodEnd\":\"2022-10-18\",\"contractStatus\":\"1\"," +
"\"cover\":\"http://aa.jpg\"}," +
"\"targetData\":{\"contractIsliCode\":\"010007-00000000302300000001-8\",\"register\":\"伏羲云\",\"entityName\":null," +
"\"isliCode\":\"899998-000000001161-2\",\"identifier\":\"899998-000000001161-2\",\"serviceCode\":\"899998\"," +
"\"titleName\":\"北京玖扬博文文化发展有限公司\",\"releaseTime\":null,\"otherIdentifiers\":\"91110108597748619P\"," +
"\"entityType\":\"组织\",\"certificate\":\"http://172.16.3.21:11000/file/cncbox/userself/7/16073304715399411.png\"," +
"\"date\":\"2022-08-05 15:17:24\",\"place\":\"中国\",\"description\":\"\",\"electronicSignature\":\"\",\"participants\":\"卖方\"}}]}";
JSONObject jsonObject = JSONObject.parseObject(tmpstr);
goodsService.manuImportGoods(jsonObject);
}
}

25
src/test/java/cn/chjyj/szwh/service/impl/OrderTaskServiceImplTest.java

@ -0,0 +1,25 @@
package cn.chjyj.szwh.service.impl;
import cn.chjyj.szwh.service.OrderTaskService;
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.SpringRunner;
import static org.junit.Assert.*;
@SpringBootTest
@RunWith(SpringRunner.class)
public class OrderTaskServiceImplTest {
@Autowired
private OrderTaskService orderTaskService;
/**
* 关闭超时订单
*/
@Test
public void closeOrderTimeout() {
orderTaskService.closeOrderTimeout();
}
}
Loading…
Cancel
Save