server/platform/src/main/java/com/doumee/api/business/GoodsorderController.java
@@ -7,6 +7,7 @@ import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.dao.business.model.Goodsorder; import com.doumee.dao.business.vo.GoodsorderTotalDataVO; import com.doumee.service.business.GoodsorderService; import com.doumee.service.business.GoodsorderService; import io.swagger.annotations.Api; @@ -76,6 +77,12 @@ public ApiResponse<PageData<Goodsorder>> findPage (@RequestBody PageWrap<Goodsorder> pageWrap) { return ApiResponse.success(goodsorderService.findPage(pageWrap)); } @ApiOperation("线ä¸äº¤ææ±æ»æ°æ®æ¥å£") @PostMapping("/getTotalData") @RequiresPermissions("business:goodsorder:query") public ApiResponse<GoodsorderTotalDataVO> getTotalData (@RequestBody Goodsorder pageWrap) { return ApiResponse.success(goodsorderService.getTotalData(pageWrap)); } @ApiOperation("导åºExcel") @PostMapping("/exportExcel") server/services/src/main/java/com/doumee/core/constants/Constants.java
@@ -58,6 +58,7 @@ public interface transactionsType{ int deposit =0; int consumption =1; int refund =2; int platformRefund = 3; } server/services/src/main/java/com/doumee/dao/business/model/Goodsorder.java
@@ -122,4 +122,18 @@ @ApiModelProperty(value = "ç»ç®ç±»å 0èªå¨ç»ç® 1å¹³å°äººå·¥ç»ç® 2ç³»ç»èªå¨ç»ç®") @ExcelColumn(name="ç»ç®ç±»å 0èªå¨ç»ç® 1å¹³å°äººå·¥ç»ç® 2ç³»ç»èªå¨ç»ç®") private Integer closeType; @ApiModelProperty(value = "æ¥è¯¢å¼å§æ¥æï¼å å«ï¼", example = "2023-10-01 15:12:01") @TableField(exist = false) @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date startDate; @ApiModelProperty(value = "æ¥è¯¢æªæ¢æ¥æï¼å å«ï¼", example = "2023-10-09 15:12:05") @TableField(exist = false) @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date endDate; @ApiModelProperty(value = "交æç¬æ°", example = "0") @TableField(exist = false) private int countNum; } server/services/src/main/java/com/doumee/dao/business/model/Refund.java
@@ -1,12 +1,9 @@ package com.doumee.dao.business.model; import com.baomidou.mybatisplus.annotation.TableLogic; import com.baomidou.mybatisplus.annotation.*; import com.doumee.core.annotation.excel.ExcelColumn; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import com.fasterxml.jackson.annotation.JsonFormat; import java.util.Date; @@ -98,4 +95,9 @@ @ExcelColumn(name="鿬¾åå ") private String reason; @ApiModelProperty(value = "交æç¬æ°", example = "0") @TableField(exist = false) private int countNum; } server/services/src/main/java/com/doumee/dao/business/vo/GoodsorderTotalDataVO.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,39 @@ package com.doumee.dao.business.vo; import com.doumee.dao.system.model.SystemDepartment; import com.doumee.dao.system.model.SystemUser; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.math.BigDecimal; import java.util.List; /** * @author Eva.Caesar Liu * @date 2022/03/15 09:54 */ @Data @ApiModel("线ä¸äº¤ææ±æ»ç»è®¡å¯¹è±¡è¿å") public class GoodsorderTotalDataVO { @ApiModelProperty(value = "æ¯ä»æ¼é",example = "0") private BigDecimal payMoney; @ApiModelProperty(value = "æ¯ä»äº¤æç¬æ°",example = "0") private int payNum; @ApiModelProperty(value = "鿬¾",example = "0") private BigDecimal refundMoney; @ApiModelProperty(value = "鿬¾ç¬æ°",example = "0") private int refundNum; @ApiModelProperty(value = "æªç»ç®",example = "0") private BigDecimal unClosedMoney; @ApiModelProperty(value = "æªç»ç®ç¬æ°",example = "0") private int unClosedNum; @ApiModelProperty(value = "ç»ç®æ¶å ¥",example = "0") private BigDecimal closedMoney; @ApiModelProperty(value = "ç»ç®æ¶å ¥ç¬æ°",example = "0") private int closedNum; } server/services/src/main/java/com/doumee/dao/business/vo/WxBillDetailTotalVO.java
ÎļþÒÑɾ³ý server/services/src/main/java/com/doumee/service/business/GoodsorderService.java
@@ -5,6 +5,7 @@ import com.doumee.core.model.PageWrap; import com.doumee.dao.business.model.Bikes; import com.doumee.dao.business.model.Goodsorder; import com.doumee.dao.business.vo.GoodsorderTotalDataVO; import com.doumee.dao.business.web.response.HomeResponse; import com.doumee.dao.business.web.response.GoodsorderDetailDTO; import com.doumee.dao.business.web.response.RidesDetailResponse; @@ -143,4 +144,6 @@ RidesDetailResponse getRidesDetailResponse(String id); GoodsorderTotalDataVO getTotalData(Goodsorder pageWrap); } server/services/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java
@@ -23,6 +23,7 @@ import com.doumee.dao.business.model.Goodsorder; import com.doumee.dao.business.model.Member; import com.doumee.dao.business.model.MemberRides; import com.doumee.dao.business.vo.GoodsorderTotalDataVO; import com.doumee.dao.business.web.response.*; import com.doumee.dao.business.join.MemberRidesJoinMapper; import com.doumee.dao.business.model.*; @@ -341,7 +342,59 @@ } } @Override public GoodsorderTotalDataVO getTotalData(Goodsorder param){ GoodsorderTotalDataVO model = new GoodsorderTotalDataVO(); model.setPayMoney(new BigDecimal(0.00)); model.setRefundMoney(new BigDecimal(0.00)); model.setClosedMoney(new BigDecimal(0.00)); model.setUnClosedMoney(new BigDecimal(0.00)); model.setClosedNum(0); model.setUnClosedNum(0); model.setPayNum(0); model.setRefundNum(0); QueryWrapper<Goodsorder> queryWrapper = new QueryWrapper<>(); queryWrapper.lambda().ge(param.getStartDate() !=null,Goodsorder::getPayDate,DateUtil.getShortDateStr(param.getStartDate())); queryWrapper.lambda().le(param.getEndDate() !=null,Goodsorder::getPayDate,DateUtil.getShortDateStr(param.getEndDate())); queryWrapper.lambda().eq(Goodsorder::getPayStatus, Constants.ONE);//å·²æ¯ä» queryWrapper.lambda().eq(Goodsorder::getIsdeleted, Constants.ZERO); queryWrapper.lambda().groupBy(Goodsorder::getStatus); queryWrapper.select( "count(id) as count_num" ,"sum(money) as money" ); //æè®¢åç¶æåç»ç»è®¡ List<Goodsorder> detailList = goodsorderMapper.selectList(queryWrapper); for(Goodsorder goodsorder : detailList){ if(Constants.formatIntegerNum(goodsorder.getStatus()) == Constants.GOODSORDER_STATUS.CLOSE.getKey()){ //å·²ç»ç® model.setClosedNum(model.getClosedNum()+goodsorder.getCountNum()); model.setClosedMoney(model.getClosedMoney().add(Constants.formatDecimalNum(goodsorder.getCloseMoney()))); model.setPayNum(model.getPayNum()+goodsorder.getCountNum()); model.setPayMoney(model.getPayMoney().add(Constants.formatDecimalNum(goodsorder.getMoney()))); }else if(Constants.formatIntegerNum(goodsorder.getStatus()) == Constants.GOODSORDER_STATUS.HAVING_PAY.getKey()){ //å·²æ¯ä»æªç»ç® model.setUnClosedNum(model.getUnClosedNum()+goodsorder.getCountNum()); model.setUnClosedMoney(model.getUnClosedMoney().add(Constants.formatDecimalNum(goodsorder.getMoney()))); model.setPayNum(model.getPayNum()+goodsorder.getCountNum()); model.setPayMoney(model.getPayMoney().add(Constants.formatDecimalNum(goodsorder.getMoney()))); } } QueryWrapper<Refund> queryWrapper2 = new QueryWrapper<>(); queryWrapper2.lambda().ge(param.getStartDate() !=null,Refund::getDoneDate,DateUtil.getShortDateStr(param.getStartDate())); queryWrapper2.lambda().le(param.getEndDate() !=null,Refund::getDoneDate,DateUtil.getShortDateStr(param.getEndDate())); queryWrapper2.lambda().eq(Refund::getIsdeleted, Constants.ZERO); queryWrapper2.select( "count(id) as count_num" ,"sum(money) as money" ); //ç»è®¡éæ¬¾æ°æ® Refund refund = refundMapper.selectOne(queryWrapper2.last("limit 1")); if(refund !=null){ model.setRefundNum(Constants.formatIntegerNum(refund.getCountNum())); model.setRefundMoney( Constants.formatDecimalNum(refund.getMoney())); } return model; } @Override public RidesDetailResponse getRidesDetailResponse(String id) { server/services/src/main/java/com/doumee/service/business/impl/PricingRuleServiceImpl.java
@@ -34,9 +34,6 @@ @Autowired PricingParamMapper pricingParamMapper; @Autowired PricingDetailMapper pricingParamMapper; @Autowired MemberRidesMapper memberRidesMapper;