From d7d6facdf81c4d666c8c71e44121116079d96700 Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期二, 10 十月 2023 14:40:21 +0800 Subject: [PATCH] 后台结算记录 --- server/services/src/main/java/com/doumee/service/business/impl/RefundServiceImpl.java | 145 ++++++++++++++++++++++++++---------------------- 1 files changed, 78 insertions(+), 67 deletions(-) diff --git a/server/services/src/main/java/com/doumee/service/business/impl/RefundServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/RefundServiceImpl.java index b02ea96..44f2f74 100644 --- a/server/services/src/main/java/com/doumee/service/business/impl/RefundServiceImpl.java +++ b/server/services/src/main/java/com/doumee/service/business/impl/RefundServiceImpl.java @@ -1,19 +1,30 @@ package com.doumee.service.business.impl; +import com.doumee.core.constants.Constants; import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.core.utils.Utils; import com.doumee.dao.business.RefundMapper; +import com.doumee.dao.business.join.RefundJoinMapper; +import com.doumee.dao.business.model.Goodsorder; +import com.doumee.dao.business.model.Member; import com.doumee.dao.business.model.Refund; +import com.doumee.dao.business.model.RefundPlatExportVO; +import com.doumee.dao.business.vo.GoodsorderExportVO; +import com.doumee.dao.system.model.SystemUser; import com.doumee.service.business.RefundService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.github.yulichang.wrapper.MPJLambdaWrapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; +import java.math.BigDecimal; +import java.sql.Ref; +import java.util.ArrayList; import java.util.List; /** @@ -26,6 +37,8 @@ @Autowired private RefundMapper refundMapper; + @Autowired + private RefundJoinMapper refundJoinMapper; @Override public String create(Refund refund) { @@ -85,75 +98,73 @@ } @Override - public PageData<Refund> findPage(PageWrap<Refund> pageWrap) { - IPage<Refund> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); - QueryWrapper<Refund> queryWrapper = new QueryWrapper<>(); - Utils.MP.blankToNull(pageWrap.getModel()); - if (pageWrap.getModel().getId() != null) { - queryWrapper.lambda().eq(Refund::getId, pageWrap.getModel().getId()); - } - if (pageWrap.getModel().getCreateDate() != null) { - queryWrapper.lambda().ge(Refund::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate())); - queryWrapper.lambda().le(Refund::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate())); - } - if (pageWrap.getModel().getCreator() != null) { - queryWrapper.lambda().eq(Refund::getCreator, pageWrap.getModel().getCreator()); - } - if (pageWrap.getModel().getEditDate() != null) { - queryWrapper.lambda().ge(Refund::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate())); - queryWrapper.lambda().le(Refund::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate())); - } - if (pageWrap.getModel().getEditor() != null) { - queryWrapper.lambda().eq(Refund::getEditor, pageWrap.getModel().getEditor()); - } - if (pageWrap.getModel().getIsdeleted() != null) { - queryWrapper.lambda().eq(Refund::getIsdeleted, pageWrap.getModel().getIsdeleted()); - } - if (pageWrap.getModel().getInfo() != null) { - queryWrapper.lambda().eq(Refund::getInfo, pageWrap.getModel().getInfo()); - } - if (pageWrap.getModel().getCode() != null) { - queryWrapper.lambda().eq(Refund::getCode, pageWrap.getModel().getCode()); - } - if (pageWrap.getModel().getMemberId() != null) { - queryWrapper.lambda().eq(Refund::getMemberId, pageWrap.getModel().getMemberId()); - } - if (pageWrap.getModel().getMoney() != null) { - queryWrapper.lambda().eq(Refund::getMoney, pageWrap.getModel().getMoney()); - } - if (pageWrap.getModel().getStatus() != null) { - queryWrapper.lambda().eq(Refund::getStatus, pageWrap.getModel().getStatus()); - } - if (pageWrap.getModel().getPreOrderid() != null) { - queryWrapper.lambda().eq(Refund::getPreOrderid, pageWrap.getModel().getPreOrderid()); - } - if (pageWrap.getModel().getOnlineOrderid() != null) { - queryWrapper.lambda().eq(Refund::getOnlineOrderid, pageWrap.getModel().getOnlineOrderid()); - } - if (pageWrap.getModel().getPayWay() != null) { - queryWrapper.lambda().eq(Refund::getPayWay, pageWrap.getModel().getPayWay()); - } - if (pageWrap.getModel().getDoneDate() != null) { - queryWrapper.lambda().ge(Refund::getDoneDate, Utils.Date.getStart(pageWrap.getModel().getDoneDate())); - queryWrapper.lambda().le(Refund::getDoneDate, Utils.Date.getEnd(pageWrap.getModel().getDoneDate())); - } - if (pageWrap.getModel().getType() != null) { - queryWrapper.lambda().eq(Refund::getType, pageWrap.getModel().getType()); - } - if (pageWrap.getModel().getObjId() != null) { - queryWrapper.lambda().eq(Refund::getObjId, pageWrap.getModel().getObjId()); - } - if (pageWrap.getModel().getReason() != null) { - queryWrapper.lambda().eq(Refund::getReason, pageWrap.getModel().getReason()); - } - for(PageWrap.SortData sortData: pageWrap.getSorts()) { - if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) { - queryWrapper.orderByDesc(sortData.getProperty()); - } else { - queryWrapper.orderByAsc(sortData.getProperty()); + public PageData<Refund> findPlatPage(PageWrap<Refund> pageWrap) { + pageWrap.getModel().setTypeList(new ArrayList<>()); + //寮哄埗缁撶畻閫�娆� 鍜� 缁撶畻鍚庨��娆� + pageWrap.getModel().getTypeList().add(Constants.REFUND_TYPE.PLAT_FORCE.getKey()); + pageWrap.getModel().getTypeList().add(Constants.REFUND_TYPE.BACK.getKey()); + pageWrap.getModel().setStatus(Constants.TWO); + IPage<Goodsorder> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); + MPJLambdaWrapper<Refund> queryWrapper = initQueryParamByModel(pageWrap.getModel()); + return PageData.from(refundJoinMapper.selectJoinPage(page, Refund.class,queryWrapper)); + } + @Override + public List<RefundPlatExportVO> findPlatExportPage( Refund pageWrap) { + pageWrap.setTypeList(new ArrayList<>()); + //寮哄埗缁撶畻閫�娆� 鍜� 缁撶畻鍚庨��娆� + pageWrap.getTypeList().add(Constants.REFUND_TYPE.PLAT_FORCE.getKey()); + pageWrap.getTypeList().add(Constants.REFUND_TYPE.BACK.getKey()); + pageWrap.setStatus(Constants.TWO); + MPJLambdaWrapper<Refund> queryWrapper = initQueryParamByModel(pageWrap); + + List<Refund> list = refundJoinMapper.selectJoinList( Refund.class,queryWrapper); + List<RefundPlatExportVO> result = new ArrayList<>(); + + if(list!=null){ + for(Refund order : list){ + RefundPlatExportVO vo = new RefundPlatExportVO(); + vo.setId(order.getId()); + vo.setOpenid(order.getOpenid()); + vo.setDoneDate(order.getDoneDate()); + vo.setMoney(Constants.formatDecimalNum(order.getMoney()).divide(new BigDecimal(100), 2, BigDecimal.ROUND_UP)); + vo.setCanBanlance(Constants.formatDecimalNum(order.getCanBanlance()).divide(new BigDecimal(100), 2, BigDecimal.ROUND_UP)); + vo.setOnlineOrderid(order.getOnlineOrderid()); + vo.setPayOnlineOrderid(order.getPayOnlineOrderid()); + vo.setCreatorName(order.getCreatorName()); + vo.setReason(order.getReason()); + result.add(vo); } } - return PageData.from(refundMapper.selectPage(page, queryWrapper)); + return result; + } + + private MPJLambdaWrapper<Refund> initQueryParamByModel(Refund model) { + MPJLambdaWrapper<Refund> queryWrapper = new MPJLambdaWrapper<>(); + Utils.MP.blankToNull(model); + //鍙煡璇㈡敮浠樻垚鍔熺殑 + queryWrapper.selectAll(Refund.class); + queryWrapper.selectAs(SystemUser::getRealname, Refund::getCreatorName); + queryWrapper.selectAs(Member::getOpenid, Refund::getOpenid); + queryWrapper.leftJoin(Goodsorder.class, Goodsorder::getId ,Refund::getObjId); + queryWrapper.leftJoin(Member.class, Member::getId ,Goodsorder::getMemberId); + queryWrapper.leftJoin(SystemUser.class, SystemUser::getId ,Refund::getCreator); + //鏃堕棿娈电瓫閫� + queryWrapper.ge(model.getStartDate()!=null, Refund::getDoneDate, model.getStartDate()); + queryWrapper.le(model.getEndDate()!=null, Refund::getDoneDate, model.getEndDate()); + queryWrapper.eq(model.getCreator() !=null,Refund::getCreator,model.getCreator()); + queryWrapper.eq(model.getStatus() !=null,Refund::getStatus,model.getStatus()); + queryWrapper.like(model.getPayOnlineOrderid() !=null,Goodsorder::getOnlineOrderid,model.getPayOnlineOrderid()); + queryWrapper.like(model.getOnlineOrderid() !=null,Refund::getOnlineOrderid,model.getOnlineOrderid()); + queryWrapper.like(model.getOpenid() !=null,Member::getOpenid,model.getOpenid()); + queryWrapper.eq(Goodsorder::getIsdeleted,Constants.ZERO); + queryWrapper.orderByDesc(Refund::getDoneDate); + return queryWrapper; + } + @Override + public PageData<Refund> findPage(PageWrap<Refund> pageWrap) { + IPage<Goodsorder> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); + MPJLambdaWrapper<Refund> queryWrapper = initQueryParamByModel(pageWrap.getModel()); + return PageData.from(refundJoinMapper.selectJoinPage(page, Refund.class,queryWrapper)); } @Override -- Gitblit v1.9.3