server/platform/src/main/java/com/doumee/api/business/DiscountMemberController.java
@@ -7,6 +7,7 @@ import com.doumee.core.model.PageWrap; import com.doumee.core.model.PageData; import com.doumee.dao.business.model.DiscountMember; import com.doumee.dao.business.web.request.DiscountMemberDTO; import com.doumee.service.business.DiscountMemberService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -85,6 +86,24 @@ @GetMapping("/{id}") @RequiresPermissions("business:discountmember:query") public ApiResponse findById(@PathVariable String id) { return ApiResponse.success(discountMemberService.findById(id)); return ApiResponse.success(discountMemberService.getDetail(id)); } @ApiOperation("å¥é¤å¡æ¥åº") @PostMapping("/cancel") @RequiresPermissions("business:discountmember:update") public ApiResponse cancel(@RequestBody DiscountMemberDTO model) { discountMemberService.cancel(model); return ApiResponse.success(null); } @ApiOperation("å¥é¤å¡è°æ´") @PostMapping("/adjust") @RequiresPermissions("business:discountmember:update") public ApiResponse adjust(@RequestBody DiscountMemberDTO model) { discountMemberService.adjust(model); return ApiResponse.success(null); } } server/platform/src/main/java/com/doumee/api/business/GoodsorderController.java
@@ -10,11 +10,13 @@ import com.doumee.core.utils.DateUtil; import com.doumee.dao.business.model.Goodsorder; import com.doumee.dao.business.model.WxBillDetail; import com.doumee.dao.business.vo.DiscountGoodsorderExportVO; import com.doumee.dao.business.vo.GoodsorderExportVO; import com.doumee.dao.business.vo.GoodsorderTotalDataVO; import com.doumee.dao.business.web.request.GoodsorderBackDTO; import com.doumee.dao.business.web.request.GoodsorderCanBanlanceDTO; import com.doumee.dao.business.web.response.GoodsorderDetailDTO; import com.doumee.dao.business.web.response.GoodsorderDetailVO; import com.doumee.service.business.GoodsorderService; import com.doumee.service.business.GoodsorderService; import com.doumee.service.business.RefundService; @@ -22,6 +24,7 @@ import io.swagger.annotations.ApiOperation; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.checkerframework.checker.units.qual.C; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -103,8 +106,26 @@ @RequiresPermissions("business:goodsorder:exportExcel") public void exportExcel (@RequestBody PageWrap<Goodsorder> pageWrap, HttpServletResponse response) { ExcelExporter.build(Goodsorder.class).exportWithFirstAndEnd(goodsorderService.findPage(pageWrap).getRecords(), "订åå表_"+System.currentTimeMillis(),"订åå表_"+ DateUtil.getPlusTime2(DateUtil.getCurrentDate()),null, response); } @ApiOperation("å¥é¤å¡è®¢åå表-导åºExcel") @PostMapping("/discountExportExcel") @RequiresPermissions("business:goodsorder:exportExcel") public void discountExportExcel (@RequestBody PageWrap<Goodsorder> pageWrap, HttpServletResponse response) { List<Goodsorder> goodsorders = goodsorderService.findPage(pageWrap).getRecords(); List<DiscountGoodsorderExportVO> discountGoodsorderExportVOList = new ArrayList<>(); for (Goodsorder goodsorder:goodsorders) { DiscountGoodsorderExportVO discountGoodsorderExportVO = new DiscountGoodsorderExportVO(); BeanUtils.copyProperties(goodsorder,discountGoodsorderExportVO); discountGoodsorderExportVO.setPayMoney(discountGoodsorderExportVO.getPayMoney()); discountGoodsorderExportVOList.add(discountGoodsorderExportVO); } ExcelExporter.build(DiscountGoodsorderExportVO.class).exportWithFirstAndEnd(discountGoodsorderExportVOList, "订åå表_"+System.currentTimeMillis(),"订åå表_"+ DateUtil.getPlusTime2(DateUtil.getCurrentDate()),null, response); } @ApiOperation("æ¶æ¬¾æç»ï¼å¾®ä¿¡å¯¹è´¦æç»ï¼_å页æ¥è¯¢") @PostMapping("/pageAccountDetail") @RequiresPermissions("business:goodsorder:query") @@ -124,6 +145,12 @@ return ApiResponse.success(goodsorderService.getGoodsorderDetailDTO(id)); } @ApiOperation("订å详æ -å¥é¤å¡") @GetMapping("/discountOrderDetail") @RequiresPermissions("business:goodsorder:query") public ApiResponse<GoodsorderDetailVO> discountOrderDetail(@RequestParam String id) { return ApiResponse.success(goodsorderService.getGoodsorderDetailForDisCount(id)); } /** * 强å¶ç»ç®è®¢å server/services/src/main/java/com/doumee/core/utils/DateUtil.java
@@ -68,6 +68,15 @@ return dt1; } public static String getXDaysAfter(Date date, Integer days){ Timestamp currentTimestamp = new Timestamp(date.getTime()); Calendar calendar = Calendar.getInstance(); calendar.setTime(currentTimestamp); calendar.add(Calendar.DAY_OF_YEAR, days-1); // å¨å½åæ¶é´åºç¡ä¸æ·»å æå®çå¤©æ° SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd"); return formatter.format(calendar.getTime()); } /** * @author Pablo Descrption:ȡ�õ�ǰ����getgetg get Date format * Exampleï¼2008-05-15 server/services/src/main/java/com/doumee/dao/business/DiscountLogMapper.java
@@ -2,11 +2,12 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.doumee.dao.business.model.DiscountLog; import com.github.yulichang.base.mapper.MPJJoinMapper; /** * @author æ±è¹è¹ * @date 2025/02/17 09:43 */ public interface DiscountLogMapper extends BaseMapper<DiscountLog> { public interface DiscountLogMapper extends MPJJoinMapper<DiscountLog> { } server/services/src/main/java/com/doumee/dao/business/model/DiscountLog.java
@@ -1,5 +1,6 @@ package com.doumee.dao.business.model; import com.baomidou.mybatisplus.annotation.TableField; import com.doumee.core.annotation.excel.ExcelColumn; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -79,4 +80,8 @@ @ExcelColumn(name="å ³è订åç¼ç (å ³ègoodsorderï¼") private String goodsorderId; @ApiModelProperty(value = "å建人åç§°") @TableField(exist = false) private String creatorName; } server/services/src/main/java/com/doumee/dao/business/model/DiscountMember.java
@@ -11,6 +11,7 @@ import com.fasterxml.jackson.annotation.JsonFormat; import java.util.Date; import java.math.BigDecimal; import java.util.List; /** * ç¨æ·éªè¡å¥é¤å¡å ³è表 @@ -144,4 +145,13 @@ @ExcelColumn(name="ä½¿ç¨æ¬¡æ°",index = 4,width = 20) @TableField(exist = false) private Integer useTimes; @ApiModelProperty(value = "éªè¡è®°å½") @TableField(exist = false) private List<DiscountLog> discountLogList; @ApiModelProperty(value = "æä½è®°å½") @TableField(exist = false) private List<DiscountLog> optLogList; } server/services/src/main/java/com/doumee/dao/business/model/Goodsorder.java
@@ -136,6 +136,10 @@ @TableField(exist = false) private Integer closeStatus; @ApiModelProperty(value = "æä½äºº") @ExcelColumn(name="æä½äºº",index = 9,width = 10,align = HorizontalAlignment.CENTER) @TableField(exist = false) private String refundUserName; @ApiModelProperty(value = "å¥é¤åç§°", example = "2023-10-01 15:12:01") @TableField(exist = false) server/services/src/main/java/com/doumee/dao/business/vo/DiscountGoodsorderExportVO.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,66 @@ package com.doumee.dao.business.vo; import com.baomidou.mybatisplus.annotation.TableField; import com.doumee.core.annotation.excel.ExcelColumn; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import org.apache.poi.ss.usermodel.HorizontalAlignment; import java.math.BigDecimal; import java.util.Date; /** * 订åä¿¡æ¯è¡¨ * @author æ±è¹è¹ * @date 2023/09/27 18:06 */ @Data @ApiModel("å¥é¤è®¢å导åºå¯¹è±¡") public class DiscountGoodsorderExportVO { @ApiModelProperty(value = "订åç¼ç ") @ExcelColumn(name="订åç¼å·",width = 10,index = 1,align = HorizontalAlignment.CENTER) private String code; @ApiModelProperty(value = "å¥é¤å¡åç§°") @ExcelColumn(name="å¥é¤å¡",width = 10,index = 2,align = HorizontalAlignment.CENTER) private String discountName; @ApiModelProperty(value = "å计ï¼å ï¼") @ExcelColumn(name="å计ï¼å ï¼",width = 10,index = 3,align = HorizontalAlignment.CENTER) private BigDecimal money; @ApiModelProperty(value = "å®ä»ï¼å ï¼") @ExcelColumn(name="å®ä»ï¼å ï¼",width = 10,index = 4,align = HorizontalAlignment.CENTER) private BigDecimal payMoney; @ApiModelProperty(value = "å·²ééé¢ï¼å ï¼") @ExcelColumn(name="å·²ééé¢ï¼å ï¼",width = 10,index = 5,align = HorizontalAlignment.CENTER) private BigDecimal refundMoney; @ApiModelProperty(value = "ç¨æ·openid" ) @TableField(exist = false) @ExcelColumn(name="ç¨æ·ä¿¡æ¯",index = 6 ,width = 10,align = HorizontalAlignment.CENTER) private String openid; @ApiModelProperty(value = "æ¯ä»æ¹å¼ 0微信 1æ¯ä»å®") @ExcelColumn(name="æ¯ä»æ¹å¼",index = 7 ,width = 10,valueMapping = "0=微信ï¼1=æ¯ä»å®ï¼",align = HorizontalAlignment.CENTER) private Integer payWay; @ApiModelProperty(value = "è®¢åæ¥æº") @ExcelColumn(name="è®¢åæ¥æº",index = 8 ,width = 10,valueMapping = "0=å°ç¨åºç«¯ï¼",align = HorizontalAlignment.CENTER) private Integer origin; @ApiModelProperty(value = "æä½äºº") @ExcelColumn(name="æä½äºº",index = 9,width = 10,align = HorizontalAlignment.CENTER) private String refundUserName; @ApiModelProperty(value = "å建æ¶é´") @ExcelColumn(name="å建æ¶é´",index = 10,width = 16,dateFormat = "yyyy-MM-dd HH:mm:ss",align = HorizontalAlignment.CENTER) private Date createDate; } server/services/src/main/java/com/doumee/dao/business/web/request/DiscountMemberDTO.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,52 @@ package com.doumee.dao.business.web.request; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; import com.doumee.core.annotation.excel.ExcelColumn; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.math.BigDecimal; import java.util.Date; import java.util.List; /** * ç¨æ·éªè¡å¥é¤å¡å ³è表 * @author æ±è¹è¹ * @date 2025/02/17 09:43 */ @Data public class DiscountMemberDTO { @ApiModelProperty(value = "ç¼ç ") private String id; @ApiModelProperty(value = "夿³¨") private String info; @ApiModelProperty(value = "票å·") private String code; @ApiModelProperty(value = "åç§°") private String name; @ApiModelProperty(value = "ç¨æ·opneid") private String openid; @ApiModelProperty(value = "ç¶æ 0æ£å¸¸ 1ä½åº 2è¿ææç¨å®", example = "1") private Integer status; @ApiModelProperty(value = "å¢å 天æ°") private Integer addDays; @ApiModelProperty(value = "é䏿°æ®") private List<String> choseIdList; } server/services/src/main/java/com/doumee/dao/business/web/response/GoodsorderDetailVO.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,32 @@ package com.doumee.dao.business.web.response; import com.doumee.dao.business.model.DiscountMember; import com.doumee.dao.business.model.Goodsorder; import com.doumee.dao.business.model.Member; import com.doumee.dao.business.model.Refund; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.List; /** * @author T14 */ @Data @ApiModel("订å详æ ") public class GoodsorderDetailVO { @ApiModelProperty(value = "订åä¿¡æ¯") private Goodsorder goodsOrder; @ApiModelProperty(value = "ä¹°å®¶ä¿¡æ¯") private Member member; @ApiModelProperty(value = "å¥é¤ä¿¡æ¯") private DiscountMember discountMember; @ApiModelProperty(value = "鿬¾è®°å½") private List<Refund> refundList; } server/services/src/main/java/com/doumee/service/business/DiscountMemberService.java
@@ -3,6 +3,8 @@ import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.dao.business.model.DiscountMember; import com.doumee.dao.business.web.request.DiscountMemberDTO; import java.util.List; /** @@ -63,6 +65,7 @@ */ DiscountMember findById(String id); DiscountMember getDetail(String id); /** * æ¡ä»¶æ¥è¯¢åæ¡è®°å½ * @@ -94,4 +97,8 @@ * @return long */ long count(DiscountMember discountMember); void cancel(DiscountMemberDTO model); void adjust(DiscountMemberDTO model); } server/services/src/main/java/com/doumee/service/business/GoodsorderService.java
@@ -12,6 +12,7 @@ import com.doumee.dao.business.web.request.BackElecBikeRequest; import com.doumee.dao.business.web.request.GoodsorderBackDTO; import com.doumee.dao.business.web.request.GoodsorderCanBanlanceDTO; import com.doumee.dao.business.web.response.GoodsorderDetailVO; 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,7 +144,12 @@ */ GoodsorderDetailDTO getGoodsorderDetailDTO(String id); /** * å¥é¤å¡è®¢å详æ * @param id * @return */ GoodsorderDetailVO getGoodsorderDetailForDisCount(String id); /** * 强å¶ç»ç®è®¢å * @param id server/services/src/main/java/com/doumee/service/business/impl/DiscountMemberServiceImpl.java
@@ -1,13 +1,22 @@ package com.doumee.service.business.impl; import com.doumee.core.constants.Constants; import com.doumee.core.constants.ResponseStatus; import com.doumee.core.exception.BusinessException; import com.doumee.core.model.LoginUserInfo; import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.core.utils.DateUtil; import com.doumee.core.utils.Utils; import com.doumee.dao.business.DiscountLogMapper; import com.doumee.dao.business.DiscountMemberMapper; import com.doumee.dao.business.join.DiscountMemberJoinMapper; import com.doumee.dao.business.model.Discount; import com.doumee.dao.business.model.DiscountLog; import com.doumee.dao.business.model.DiscountMember; import com.doumee.dao.business.model.Member; import com.doumee.dao.business.web.request.DiscountMemberDTO; import com.doumee.dao.system.model.SystemUser; import com.doumee.service.business.DiscountMemberService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; @@ -15,13 +24,16 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.github.yulichang.wrapper.MPJLambdaWrapper; import org.apache.commons.lang3.StringUtils; import org.apache.shiro.SecurityUtils; import org.checkerframework.checker.units.qual.A; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; import java.util.Date; import java.util.List; import java.util.Objects; import java.util.stream.Collectors; /** * ç¨æ·éªè¡å¥é¤å¡å ³è表Serviceå®ç° @@ -36,6 +48,10 @@ @Autowired private DiscountMemberJoinMapper discountMemberJoinMapper; @Autowired private DiscountLogMapper discountLogMapper; @Override public String create(DiscountMember discountMember) { @@ -83,6 +99,27 @@ } @Override public DiscountMember getDetail(String id) { DiscountMember discountMember = discountMemberMapper.selectById(id); if(Objects.isNull(discountMember)){ throw new BusinessException(ResponseStatus.DATA_EMPTY); } List<DiscountLog> discountLogList = discountLogMapper.selectJoinList(DiscountLog.class,new MPJLambdaWrapper<DiscountLog>() .selectAll(DiscountLog.class) .selectAs(SystemUser::getRealname,DiscountLog::getCreatorName) .eq(DiscountLog::getDiscountMemberId,discountMember.getId()) .eq(DiscountLog::getIsdeleted,Constants.ZERO) .orderByDesc(DiscountLog::getId) ); if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(discountLogList)){ discountMember.setDiscountLogList(discountLogList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.ZERO)).collect(Collectors.toList())); discountMember.setOptLogList(discountLogList.stream().filter(i->!Constants.equalsInteger(i.getType(),Constants.ZERO)).collect(Collectors.toList())); discountMember.setUseTimes(discountMember.getDiscountLogList().size()); } return discountMember; } @Override public DiscountMember findOne(DiscountMember discountMember) { QueryWrapper<DiscountMember> wrapper = new QueryWrapper<>(discountMember); return discountMemberMapper.selectOne(wrapper); @@ -110,6 +147,94 @@ return PageData.from(discountMemberJoinMapper.selectJoinPage(page, DiscountMember.class,queryWrapper)); } @Override public void cancel(DiscountMemberDTO model){ LoginUserInfo principal = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); MPJLambdaWrapper<DiscountMember> queryWrapper = new MPJLambdaWrapper<>(); queryWrapper.selectAll(DiscountMember.class) .leftJoin(Member.class,Member::getId,DiscountMember::getMemberId) .eq(DiscountMember::getStatus,Constants.ZERO) .like(StringUtils.isNotBlank(model.getCode()),DiscountMember::getCode,model.getCode()) .like(StringUtils.isNotBlank(model.getName()),DiscountMember::getName,model.getName()) .like(StringUtils.isNotBlank(model.getOpenid()),Member::getOpenid,model.getOpenid()) .eq(Objects.nonNull(model.getId()),DiscountMember::getId,model.getId()) .in(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(model.getChoseIdList()) ,DiscountMember::getId,model.getChoseIdList()) .orderByDesc(DiscountMember::getId); List<DiscountMember> list = discountMemberJoinMapper.selectJoinList(DiscountMember.class,queryWrapper); if(CollectionUtils.isEmpty(list)){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"æªæ¥è¯¢å°å¯æ¥åºçå¥é¤å¡ä¿¡æ¯"); } for (DiscountMember discountMember:list) { discountMemberMapper.update(null,new UpdateWrapper<DiscountMember>().lambda() .set(DiscountMember::getStatus,Constants.ONE) .eq(DiscountMember::getId,discountMember.getId()) ); //æä½æ¥å¿ DiscountLog discountLog = new DiscountLog(); discountLog.setIsdeleted(Constants.ZERO); discountLog.setCreator(principal.getId()); discountLog.setCreateDate(new Date()); discountLog.setDiscountMemberId(discountMember.getId()); discountLog.setType(Constants.ONE); discountLog.setInfo(model.getInfo()); discountLog.setEditInfo("éè´§éå¡"); discountLog.setGoodsorderId(discountMember.getGoodsorderId()); discountLogMapper.insert(discountLog); } } @Override public void adjust(DiscountMemberDTO model){ if(Objects.isNull(model) || Objects.isNull(model.getAddDays())){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } LoginUserInfo principal = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); MPJLambdaWrapper<DiscountMember> queryWrapper = new MPJLambdaWrapper<>(); queryWrapper.selectAll(DiscountMember.class) .leftJoin(Member.class,Member::getId,DiscountMember::getMemberId) .eq(DiscountMember::getStatus,Constants.ZERO) .like(StringUtils.isNotBlank(model.getCode()),DiscountMember::getCode,model.getCode()) .like(StringUtils.isNotBlank(model.getName()),DiscountMember::getName,model.getName()) .like(StringUtils.isNotBlank(model.getOpenid()),Member::getOpenid,model.getOpenid()) .eq(Objects.nonNull(model.getId()),DiscountMember::getId,model.getId()) .in(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(model.getChoseIdList()) ,DiscountMember::getId,model.getChoseIdList()) .orderByDesc(DiscountMember::getId); List<DiscountMember> list = discountMemberJoinMapper.selectJoinList(DiscountMember.class,queryWrapper); if(CollectionUtils.isEmpty(list)){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"æªæ¥è¯¢å°å¯è°æ´çå¥é¤å¡ä¿¡æ¯"); } for (DiscountMember discountMember:list) { if(!Constants.equalsInteger(discountMember.getStatus(),Constants.ZERO)){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"ã"+discountMember.getCode()+"ãå¥é¤å¡å·²ä½åºï¼æ æ³è¿è¡è¯¥æä½"); } String useEndDate = DateUtil.getXDaysAfter(discountMember.getUseEndDate(),model.getAddDays()); discountMemberMapper.update(null,new UpdateWrapper<DiscountMember>().lambda() //.setSql(" use_end_date = use_end_date::date + " + model.getAddDays() ) .set(DiscountMember::getUseEndDate,useEndDate) .eq(DiscountMember::getId,discountMember.getId()) ); //æä½æ¥å¿ DiscountLog discountLog = new DiscountLog(); discountLog.setIsdeleted(Constants.ZERO); discountLog.setCreator(principal.getId()); discountLog.setCreateDate(new Date()); discountLog.setDiscountMemberId(discountMember.getId()); discountLog.setType(Constants.TWO); discountLog.setGoodsorderId(discountMember.getGoodsorderId()); discountLog.setEditInfo(model.getInfo()); discountLog.setEditDays(model.getAddDays()); discountLog.setInfo("å°æææå¢å "+model.getAddDays()+"天, è°æ´åæææè³"+useEndDate); discountLogMapper.insert(discountLog); } } @Override public long count(DiscountMember discountMember) { QueryWrapper<DiscountMember> wrapper = new QueryWrapper<>(discountMember); server/services/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java
@@ -34,6 +34,7 @@ import com.doumee.dao.business.web.response.*; import com.doumee.dao.business.join.MemberRidesJoinMapper; import com.doumee.dao.business.model.*; import com.doumee.dao.system.model.SystemUser; import com.doumee.service.business.GoodsorderService; import com.doumee.service.business.MemberRidesService; import com.doumee.service.business.PricingRuleService; @@ -200,13 +201,6 @@ if (Objects.nonNull(model.getEndDate())){ queryWrapper.le( Goodsorder::getPayDate, Utils.Date.getEnd(model.getEndDate())); } // queryWrapper.eq(model.getPayStatus() !=null,Goodsorder::getPayStatus,model.getPayStatus()); // queryWrapper.like(model.getCode() !=null,Goodsorder::getCode,model.getCode()); // queryWrapper.like(model.getId() !=null,Goodsorder::getId,model.getId()); // queryWrapper.eq(model.getStatus() !=null,Goodsorder::getStatus,model.getStatus()); // queryWrapper.like(model.getOnlineOrderid() !=null,Goodsorder::getOnlineOrderid,model.getOnlineOrderid()); // queryWrapper.like(model.getOpenid() !=null,Member::getOpenid,model.getOpenid()); queryWrapper.eq(Goodsorder::getIsdeleted,Constants.ZERO); queryWrapper.eq(Goodsorder::getPayStatus,Constants.ONE); queryWrapper.orderByAsc(Goodsorder::getPayDate); @@ -328,6 +322,7 @@ queryWrapper.eq(Objects.nonNull(pageWrap.getModel().getType()),Goodsorder::getType,pageWrap.getModel().getType()); queryWrapper.select("(select sum(er.discount_price) from member_rides er where er.ordre_id=t.id and er.isdeleted=0) as discountMoney," + "(select er.status from member_rides er where er.ordre_id=t.id order by er.create_date desc limit 1) as memberRidesStatus"); queryWrapper.select("( select s.realname from refund r left join system_user s on r.creator = s.id where r.obj_id = t.id order by r.id desc limit 1 ) ",Goodsorder::getRefundUserName); if(Objects.nonNull(pageWrap.getModel().getCloseStatus()) && pageWrap.getModel().getCloseStatus().equals(Constants.ZERO)){ queryWrapper.ne(Goodsorder::getStatus,Constants.GOODSORDER_STATUS.CLOSE.getKey()); } @@ -446,7 +441,6 @@ @Override public GoodsorderDetailDTO getGoodsorderDetailDTO(String id) { List<PayOrderDTO> payOrderDTOList = new ArrayList<>(); Goodsorder goodsorder = goodsorderMapper.selectById(id); if(goodsorder == null){ @@ -495,6 +489,45 @@ goodsorderDetailDTO.setModel(goodsorder);//订å对象 return goodsorderDetailDTO; } @Override public GoodsorderDetailVO getGoodsorderDetailForDisCount(String id){ GoodsorderDetailVO goodsorderDetailVO = new GoodsorderDetailVO(); Goodsorder goodsorder = goodsorderMapper.selectById(id); if(goodsorder == null){ throw new BusinessException(ResponseStatus.DATA_EMPTY ); } if(Constants.equalsInteger(goodsorder.getType(),Constants.ZERO)){ throw new BusinessException(ResponseStatus.NOT_ALLOWED); } goodsorderDetailVO.setGoodsOrder(goodsorder); Member member = memberMapper.selectById(goodsorder.getMemberId()); if(Objects.nonNull(member)){ goodsorderDetailVO.setMember(member); } //æ¥è¯¢ååä¿¡æ¯ DiscountMember discountMember = discountMemberMapper.selectById(goodsorder.getObjId()); if(Objects.nonNull(discountMember)){ goodsorderDetailVO.setDiscountMember(discountMember); } //æ¥è¯¢æææéæ¬¾è®°å½ List<Refund> refunds = refundJoinMapper.selectJoinList(Refund.class, new MPJLambdaWrapper<Refund>() .selectAll(Refund.class) .selectAs(SystemUser::getRealname,Refund::getCreatorName) .leftJoin(SystemUser.class,SystemUser::getId,Refund::getCreator) .eq(Refund::getObjId,goodsorder.getId()) .orderByDesc(Refund::getId) ); goodsorderDetailVO.setRefundList(refunds); return goodsorderDetailVO; } @Override public void forceCloseGoodsorder(String orderId) { //æ¥è¯¢è®¢å ä¿¡æ¯ server/web/src/main/java/com/doumee/api/web/HomeApi.java
@@ -49,6 +49,10 @@ HomeResponse homeResponse = goodsorderService.getHome(getMemberId()); return ApiResponse.success("æ¥è¯¢æå",homeResponse); } @ApiOperation(value = "æµè¯çµæ± æ§å¶", notes = "æµè¯çµæ± æ§å¶") @PostMapping("/testControl") public ApiResponse<APIResult<T0201_0500>> testControl(@RequestBody T8500 param) {