diff --git a/mallinkAdmin/src/test/java/com/iformall/service/test/Test.java b/mallinkAdmin/src/test/java/com/iformall/service/test/Test.java index 9d8139178..6f66d1274 100644 --- a/mallinkAdmin/src/test/java/com/iformall/service/test/Test.java +++ b/mallinkAdmin/src/test/java/com/iformall/service/test/Test.java @@ -3,6 +3,9 @@ package com.iformall.service.test; import com.alibaba.fastjson.JSON; import com.iformall.domain.po.*; import com.iformall.domain.vo.WxBillAll; +import com.iformall.enums.EnumSettleRecordWay; +import com.iformall.enums.EnumSettleStatus; +import com.iformall.mapper.WxBillSettleMapper; import com.iformall.service.*; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.SecurityUtils; @@ -27,6 +30,8 @@ import org.springframework.test.web.servlet.setup.MockMvcBuilders; import org.springframework.web.context.WebApplicationContext; import javax.annotation.Resource; +import java.math.BigDecimal; +import java.util.Date; @Slf4j @AutoConfigureMockMvc @@ -61,6 +66,10 @@ public class Test { private WxBillSettleService wxBillSettleService; @Autowired private WxBillAllService wxBillAllService; + @Autowired + private WxBillSettleMapper wxBillSettleMapper; + @Autowired + private WxBillSettleRecordService wxBillSettleRecordService; @Before public void setUp() { @@ -87,11 +96,29 @@ public class Test { public void levelList() { // WxBillSettle settle = wxBillSettleService.getById(328411851323572224l); // log.debug("data:{}", JSON.toJSONString(settle)); - WxBillAll wxBillAll = new WxBillAll(); - wxBillAll.setMerchantId(324754110547066880l); - wxBillAll.setTenantId("456"); - wxBillAll.setBillTypeValue(10); - log.debug("data:{}", JSON.toJSONString( wxBillAllService.listBill(wxBillAll))); +// WxBillAll wxBillAll = new WxBillAll(); +// wxBillAll.setMerchantId(324754110547066880l); +// wxBillAll.setTenantId("456"); +// wxBillAll.setBillTypeValue(10); +// log.debug("data:{}", JSON.toJSONString( wxBillAllService.listBill(wxBillAll))); + + WxBillSettle wxBillSettle = wxBillSettleService.getById(330875180045271040l); + + + WxBillSettleRecord settleRecord = new WxBillSettleRecord(); + settleRecord.setSettleId(wxBillSettle.getId()); + settleRecord.setSettleMoney(wxBillSettle.getBalance()); + settleRecord.setSettleTime(new Date()); + settleRecord.setSettleWay(EnumSettleRecordWay.WEBCAT.getCode()); + settleRecord.setTenantId(wxBillSettle.getTenantId()); + + BigDecimal money = new BigDecimal(settleRecord.getSettleMoney()).divide(new BigDecimal(100), 2, BigDecimal.ROUND_HALF_UP); + settleRecord.setDetail(EnumSettleRecordWay.getEnum(settleRecord.getSettleWay()).getMessage()+"收款"+money.toString()+"元"); + wxBillSettleRecordService.saveOrUpdate(settleRecord,null,wxBillSettle.getId()); + + wxBillSettle.setUpdatetime(new Date()); + wxBillSettle.setStatus(EnumSettleStatus.FINISH.getCode()); + wxBillSettleMapper.updateByPrimaryKeySelective(wxBillSettle); } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxBillAllServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxBillAllServiceImpl.java index 3027b0711..797ce3978 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxBillAllServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxBillAllServiceImpl.java @@ -268,8 +268,11 @@ public class WxBillAllServiceImpl implements WxBillAllService { settleRecord.setDetail(EnumSettleRecordWay.getEnum(settleRecord.getSettleWay()).getMessage()+"收款"+money.toString()+"元"); wxBillSettleRecordService.saveOrUpdate(settleRecord,null,(Long)bill.get("userId")); + wxBillSettle.setUpdatetime(new Date()); wxBillSettle.setStatus(EnumSettleStatus.FINISH.getCode()); wxBillSettleMapper.updateByPrimaryKeySelective(wxBillSettle); + + logger.info("更新结算单success"); }catch (Exception e){ logger.error("结算单error",e); e.printStackTrace(); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxBillSettleRecordServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxBillSettleRecordServiceImpl.java index 1402be3f6..78c924715 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxBillSettleRecordServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxBillSettleRecordServiceImpl.java @@ -61,7 +61,8 @@ public class WxBillSettleRecordServiceImpl implements WxBillSettleRecordService record.setUserName(mallUserInfo.getName()); }else if(bUserId != null){ WxMerchantBUser wxMerchantBUser = wxMerchantBUserMapper.selectByPrimaryKey(bUserId); - record.setUserName(wxMerchantBUser.getName()); + if(wxMerchantBUser!=null) + record.setUserName(wxMerchantBUser.getName()); } wxBillSettleRecordMapper.insertSelective(record); }else{