| | |
| | | import com.doumee.core.model.PageData; |
| | | import com.doumee.core.model.PageWrap; |
| | | import com.doumee.dao.business.model.BikeRepair; |
| | | import com.doumee.dao.business.model.Multifile; |
| | | import com.doumee.dao.business.web.request.BikeRepairDTO; |
| | | import com.doumee.dao.business.web.request.BikeRepairQuery; |
| | | import com.doumee.service.business.BikeRepairService; |
| | |
| | | return ApiResponse.success(null); |
| | | } |
| | | |
| | | @ApiOperation("分页查询") |
| | | @ApiOperation("坏车上报_分页查询") |
| | | @PostMapping("/page") |
| | | @RequiresPermissions("business:bikerepair:query") |
| | | public ApiResponse<PageData<BikeRepairDTO>> findPage (@RequestBody PageWrap<BikeRepairQuery> pageWrap) { |
| | | return ApiResponse.success(bikeRepairService.findPage(pageWrap)); |
| | | } |
| | | @ApiOperation("坏车上报_查询问题附件列表") |
| | | @GetMapping("/getFileList/{id}") |
| | | @RequiresPermissions("business:bikerepair:query") |
| | | public ApiResponse<List<Multifile>> getFileList (@PathVariable String id) { |
| | | return ApiResponse.success(bikeRepairService.getBikeRepairProblemDTO(id)); |
| | | } |
| | | |
| | | @ApiOperation("导出Excel") |
| | | @PostMapping("/exportExcel") |
| | |
| | | import com.doumee.dao.business.model.WxBillDetail; |
| | | import com.doumee.dao.business.vo.GoodsorderExportVO; |
| | | import com.doumee.dao.business.vo.GoodsorderTotalDataVO; |
| | | import com.doumee.dao.business.web.response.GoodsorderDetailDTO; |
| | | import com.doumee.service.business.GoodsorderService; |
| | | import com.doumee.service.business.GoodsorderService; |
| | | import io.swagger.annotations.Api; |
| | |
| | | return ApiResponse.success(null); |
| | | } |
| | | |
| | | @ApiOperation("分页查询") |
| | | @ApiOperation("订单列表-分页查询") |
| | | @PostMapping("/page") |
| | | @RequiresPermissions("business:goodsorder:query") |
| | | public ApiResponse<PageData<Goodsorder>> findPage (@RequestBody PageWrap<Goodsorder> pageWrap) { |
| | |
| | | return ApiResponse.success(goodsorderService.getTotalData(pageWrap)); |
| | | } |
| | | |
| | | @ApiOperation("导出Excel") |
| | | @ApiOperation("订单列表-导出Excel") |
| | | @PostMapping("/exportExcel") |
| | | @RequiresPermissions("business:goodsorder:exportExcel") |
| | | public void exportExcel (@RequestBody PageWrap<Goodsorder> pageWrap, HttpServletResponse response) { |
| | | ExcelExporter.build(Goodsorder.class).export(goodsorderService.findPage(pageWrap).getRecords(), "自行车信息表", response); |
| | | } |
| | | ExcelExporter.build(Goodsorder.class).exportWithFirstAndEnd(goodsorderService.findPage(pageWrap).getRecords(), "订单列表_"+System.currentTimeMillis(),"订单列表_"+ DateUtil.getPlusTime2(DateUtil.getCurrentDate()),null, response); |
| | | |
| | | @ApiOperation("账单收款明细_导出Excel") |
| | | @PostMapping("/exportNotBikeExcel") |
| | | @RequiresPermissions("business:wxbilldetail:exportExcel") |
| | | public void exportNotBikeExcel (@RequestBody PageWrap<Goodsorder> pageWrap, HttpServletResponse response) { |
| | | ExcelExporter.build(GoodsorderExportVO.class).exportWithFirstAndEnd(goodsorderService.findExportNotBikPage(pageWrap.getModel()), "账单收款明细_"+System.currentTimeMillis(),"账单收款明细_"+ DateUtil.getPlusTime2(DateUtil.getCurrentDate()),null, response); |
| | | } |
| | | @ApiOperation("收款明细(微信对账明细)_分页查询") |
| | | @PostMapping("/pageAccountDetail") |
| | | @RequiresPermissions("business:goodsorder:query") |
| | | public ApiResponse<PageData<GoodsorderExportVO>> findPageAccountDetail(@RequestBody PageWrap<Goodsorder> pageWrap) { |
| | | return ApiResponse.success(goodsorderService.findAccountDetailPage(pageWrap)); |
| | | } |
| | | @ApiOperation("收款明细(微信对账明细)_导出Excel") |
| | | @PostMapping("/exportAccountDetailExcel") |
| | | @RequiresPermissions("business:goodsorder:exportExcel") |
| | | public void exportAccountDetailExcel (@RequestBody PageWrap<Goodsorder> pageWrap, HttpServletResponse response) { |
| | | ExcelExporter.build(GoodsorderExportVO.class).exportWithFirstAndEnd(goodsorderService.findExportAccountDetailPage(pageWrap.getModel()), "账单收款明细_"+System.currentTimeMillis(),"账单收款明细_"+ DateUtil.getPlusTime2(DateUtil.getCurrentDate()),null, response); |
| | | } |
| | | @ApiOperation("根据ID查询") |
| | | @GetMapping("/{id}") |
| | | @RequiresPermissions("business:goodsorder:query") |
| | | public ApiResponse findById(@PathVariable String id) { |
| | | return ApiResponse.success(goodsorderService.findById(id)); |
| | | public ApiResponse<GoodsorderDetailDTO> findById(@PathVariable String id) { |
| | | return ApiResponse.success(goodsorderService.getGoodsorderDetailDTO(id)); |
| | | } |
| | | } |
| | |
| | | return ApiResponse.success(null); |
| | | } |
| | | |
| | | @ApiOperation("根据ID修改卡信息") |
| | | @PostMapping("/updateById") |
| | | @ApiOperation("管理员配置_根据ID修改信息") |
| | | @PostMapping("/updateMangerById") |
| | | @RequiresPermissions("business:member:update") |
| | | public ApiResponse update(@RequestBody Member member){ |
| | | public ApiResponse updateMangerById(@RequestBody Member member){ |
| | | memberService.update(member); |
| | | return ApiResponse.success(null); |
| | | } |
| | |
| | | memberRidesService.forceBack(memberRides); |
| | | return ApiResponse.success(null); |
| | | } |
| | | @ApiOperation("强制还车") |
| | | @ApiOperation("修改骑行时长") |
| | | @PostMapping("/updateDuration") |
| | | @RequiresPermissions("business:memberrides:updateDuration") |
| | | public ApiResponse updateDuration(@RequestBody MemberRides memberRides) { |
| | |
| | | return ApiResponse.success(null); |
| | | } |
| | | |
| | | @ApiOperation("分页查询") |
| | | @ApiOperation("用户骑行记录_分页查询") |
| | | @PostMapping("/page") |
| | | @RequiresPermissions("business:memberrides:query") |
| | | public ApiResponse<PageData<MemberRidesDTO>> findPage (@RequestBody PageWrap<MemberRidesQuery> pageWrap) { |
| | | return ApiResponse.success(memberRidesService.findPage(pageWrap)); |
| | | } |
| | | @ApiOperation("车辆取还记录_分页查询") |
| | | @PostMapping("/pageBikeLog") |
| | | @RequiresPermissions("business:memberrides:query") |
| | | public ApiResponse<PageData<BikeLogDTO>> findPageBikeLog (@RequestBody PageWrap<MemberRidesQuery> pageWrap) { |
| | | return ApiResponse.success(memberRidesService.findBikeLog(pageWrap)); |
| | | } |
| | | |
| | | @ApiOperation("导出Excel") |
| | |
| | | ExcelExporter.build(MemberRidesDTO.class).export(memberRidesService.findPage(pageWrap).getRecords(), "用户骑行记录表", response); |
| | | } |
| | | |
| | | @ApiOperation("用户骑行记录导出excel") |
| | | @ApiOperation("用户骑行记录_导出excel") |
| | | @PostMapping("/exportMemberRidesExcel") |
| | | @RequiresPermissions("business:memberrides:exportExcel") |
| | | public void exportMemberRidesExcel (@RequestBody PageWrap<MemberRidesQuery> pageWrap, HttpServletResponse response) { |
| | | ExcelExporter.build(MemberRidesDTO.class).exportWithFirstAndEnd(memberRidesService.findPage(pageWrap).getRecords(),"用户骑行记录_"+System.currentTimeMillis(),"用户骑行记录_"+ DateUtil.getPlusTime2(DateUtil.getCurrentDate()),null, response); |
| | | } |
| | | @ApiOperation("车辆取还记录导出excel") |
| | | @ApiOperation("车辆取还记录_导出excel") |
| | | @PostMapping("/exportBikeLogExcel") |
| | | @RequiresPermissions("business:memberrides:exportExcel") |
| | | public void exportBikeLogExcel (@RequestBody PageWrap<MemberRidesQuery> pageWrap, HttpServletResponse response) { |
| | |
| | | public ApiResponse<PageData<Refund>> findPage (@RequestBody PageWrap<Refund> pageWrap) { |
| | | return ApiResponse.success(refundService.findPage(pageWrap)); |
| | | } |
| | | @ApiOperation("后台结算记录") |
| | | @PostMapping("/page") |
| | | @ApiOperation("后台结算记录_分页查询") |
| | | @PostMapping("/pagePlat") |
| | | @RequiresPermissions("business:refund:query") |
| | | public ApiResponse<PageData<Refund>> findPlatPage (@RequestBody PageWrap<Refund> pageWrap) { |
| | | return ApiResponse.success(refundService.findPlatPage(pageWrap)); |
| | |
| | | return ApiResponse.success(null); |
| | | } |
| | | |
| | | @ApiOperation("分页查询") |
| | | @ApiOperation("微信对账汇总_分页查询") |
| | | @PostMapping("/page") |
| | | // @RequiresPermissions("business:wxbill:query") |
| | | @RequiresPermissions("business:wxbill:query") |
| | | public ApiResponse<PageData<WxBill>> findPage (@RequestBody PageWrap<WxBill> pageWrap) { |
| | | return ApiResponse.success(wxBillService.findPage(pageWrap)); |
| | | } |
| | |
| | | ExcelExporter.build(WxBill.class).export(wxBillService.findPage(pageWrap).getRecords(), "WxBillController", response); |
| | | } |
| | | |
| | | @ApiOperation("微信对账明细统计查询") |
| | | @PostMapping("/getTotalBill") |
| | | // @RequiresPermissions("business:wxbilldetail:query") |
| | | @ApiOperation("微信对账明细_查询") |
| | | @PostMapping("/getTotalBillDetail") |
| | | @RequiresPermissions("business:wxbilldetail:query") |
| | | public ApiResponse<List<WxBill>> getTotalBill (@RequestBody WxBill param) { |
| | | return ApiResponse.success(wxBillService.getTotalBill(param)); |
| | | } |
| | |
| | | } |
| | | |
| | | |
| | | public static BigDecimal translateMoney(BigDecimal money){ |
| | | return Constants.formatDecimalNum(money).divide(new BigDecimal(100), 2, BigDecimal.ROUND_UP); |
| | | |
| | | } |
| | | } |
| | |
| | | @ApiModelProperty(value = "强制还车操作人(关联system_user)") |
| | | private String backUserid; |
| | | |
| | | @ApiModelProperty(value = "骑行时长") |
| | | @TableField(exist = false) |
| | | private Integer rideTime; |
| | | |
| | | } |
| | |
| | | * @date 2023/09/27 18:06 |
| | | */ |
| | | @Data |
| | | @ApiModel("账单导入明细") |
| | | @ApiModel("账单导出明细") |
| | | public class GoodsorderExportVO { |
| | | |
| | | @ApiModelProperty(value = "编码") |
| | |
| | | private String code; |
| | | @ApiModelProperty(value = "用户编码(关联member表)") |
| | | @ExcelColumn(name="用户",width = 10,index = 2,align = HorizontalAlignment.CENTER) |
| | | private String openid; |
| | | private String memberOpenid; |
| | | |
| | | @ApiModelProperty(value = "交易金额") |
| | | @ExcelColumn(name="支付金额",width = 10,index = 3,align = HorizontalAlignment.CENTER) |
| | |
| | | @Data |
| | | @ApiModel("车辆问题上报问题描述") |
| | | public class BikeRepairProblemDTO { |
| | | |
| | | |
| | | @ApiModelProperty(value = "用户上报问题") |
| | | private String param; |
| | | |
| | | @ApiModelProperty(value = "附件信息") |
| | | private List<Multifile> list; |
| | | } |
| | |
| | | private String openid; |
| | | |
| | | @ApiModelProperty(value = "车辆编号") |
| | | private String bikeId; |
| | | private String bikeCode; |
| | | |
| | | @ApiModelProperty(value = "是否处理") |
| | | private Integer status; |
| | | |
| | | @ApiModelProperty(value = "创建时间开始") |
| | | private Date createDateStart; |
| | | |
| | | private Date startDate; |
| | | @ApiModelProperty(value = "创建时间结束") |
| | | private Date createDateEnd; |
| | | private Date endDate; |
| | | } |
| | |
| | | |
| | | @ApiModelProperty(value = "是否归还 [车辆取还记录(站点) 入参]") |
| | | private Boolean hasBack; |
| | | @ApiModelProperty(value = "结算订单号") |
| | | private String goodsorderId; |
| | | } |
| | |
| | | @ApiModelProperty(value = "骑行时长") |
| | | @ExcelColumn(name="骑行时长",index = 8,width = 10,align = HorizontalAlignment.CENTER) |
| | | private Integer rideTime; |
| | | @ApiModelProperty(value = "计费时长") |
| | | // @ExcelColumn(name="计费时长",index = 8,width = 10,align = HorizontalAlignment.CENTER) |
| | | private Integer duration; |
| | | |
| | | @ApiModelProperty(value = "借出时间") |
| | | @ExcelColumn(name="借出时间",index = 9,width = 10,align = HorizontalAlignment.CENTER) |
| | |
| | | package com.doumee.dao.business.web.response; |
| | | |
| | | import com.doumee.dao.business.model.Goodsorder; |
| | | import com.doumee.dao.business.model.MemberRides; |
| | | import io.swagger.annotations.ApiModel; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | |
| | | @Data |
| | | @ApiModel("订单详情") |
| | | public class GoodsorderDetailDTO { |
| | | @ApiModelProperty(value = "订单本身信息") |
| | | private Goodsorder model; |
| | | |
| | | @ApiModelProperty(value = "支付明细") |
| | | private List<PayOrderDTO> payOrderDTOList; |
| | | |
| | | @ApiModelProperty(value = "骑行记录") |
| | | private List<MemberRides> memberRidesList; |
| | | private List<BikeLogDTO> memberRidesList; |
| | | |
| | | } |
| | |
| | | @ExcelColumn(name="计费时长(分)",index = 7,width = 10,align = HorizontalAlignment.CENTER) |
| | | private Integer duration; |
| | | |
| | | @ApiModelProperty(value = "租车时间")) |
| | | @ApiModelProperty(value = "租车时间") |
| | | @ExcelColumn(name="租车时间",index = 8,width = 10,align = HorizontalAlignment.CENTER) |
| | | private Date rentDate; |
| | | |
| | |
| | | |
| | | @ApiModelProperty(value = "订单编码") |
| | | private String orderCode; |
| | | @ApiModelProperty(value = "交易单号") |
| | | private String onlineorderId; |
| | | @ApiModelProperty(value = "订单主键") |
| | | private String id; |
| | | |
| | | @ApiModelProperty(value = "支付方式 0微信 1支付宝") |
| | | private Integer payWay; |
| | |
| | | import com.doumee.core.model.PageData; |
| | | import com.doumee.core.model.PageWrap; |
| | | import com.doumee.dao.business.model.BikeRepair; |
| | | import com.doumee.dao.business.model.Multifile; |
| | | import com.doumee.dao.business.web.request.BikeRepairDTO; |
| | | import com.doumee.dao.business.web.request.BikeRepairProblemDTO; |
| | | import com.doumee.dao.business.web.request.BikeRepairQuery; |
| | |
| | | * 获取上报人的保修信息 |
| | | * @return BikeRepairProblemDTO |
| | | */ |
| | | BikeRepairProblemDTO getBikeRepairProblemDTO(String id); |
| | | List<Multifile> getBikeRepairProblemDTO(String id); |
| | | |
| | | /** |
| | | * 条件统计 |
| | |
| | | * @return PageData<Goodsorder> |
| | | */ |
| | | PageData<Goodsorder> findPage(PageWrap<Goodsorder> pageWrap); |
| | | |
| | | PageData<GoodsorderExportVO> findAccountDetailPage(PageWrap<Goodsorder> pageWrap); |
| | | /** |
| | | * 条件统计 |
| | | * |
| | |
| | | |
| | | Goodsorder findOneByWrapper(QueryWrapper<Goodsorder> wrapper); |
| | | |
| | | List<GoodsorderExportVO> findExportNotBikPage(Goodsorder model); |
| | | List<GoodsorderExportVO> findExportAccountDetailPage(Goodsorder model); |
| | | |
| | | void goodsOrderSettlement(String orderId); |
| | | } |
| | |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.github.yulichang.wrapper.MPJLambdaWrapper; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.util.CollectionUtils; |
| | | import org.springframework.util.StringUtils; |
| | | |
| | | import java.util.Date; |
| | | import java.util.List; |
| | |
| | | IPage<BikeRepair> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); |
| | | MPJLambdaWrapper<BikeRepair> queryWrapper = new MPJLambdaWrapper<>(); |
| | | Utils.MP.blankToNull(pageWrap.getModel()); |
| | | if (pageWrap.getModel().getCreateDateStart() != null |
| | | && pageWrap.getModel().getCreateDateEnd() != null) { |
| | | queryWrapper.ge(BikeRepair::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDateStart())); |
| | | queryWrapper.le(BikeRepair::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDateEnd())); |
| | | } |
| | | if (pageWrap.getModel().getStatus() != null) { |
| | | queryWrapper.eq(BikeRepair::getStatus, pageWrap.getModel().getStatus()); |
| | | } |
| | | queryWrapper.leftJoin(Member.class,Member::getId,BikeRepair::getMemberId) |
| | | .leftJoin(Bikes.class,Bikes::getId,BikeRepair::getBinkeId) |
| | | .leftJoin(BaseParam.class,BaseParam::getId,Bikes::getParamId) |
| | | .leftJoin("base_param bpp on b.param_id = bp.id and bp.type = 1"); |
| | | queryWrapper.selectAs(Member::getOpenid,BikeRepairDTO::getOpenid) |
| | | .selectAs(BikeRepair::getLinkname,BikeRepairDTO::getLinkname) |
| | | .selectAs(BikeRepair::getLinkphone,BikeRepairDTO::getLinkphone) |
| | | .leftJoin(BaseParam.class,BaseParam::getId,Bikes::getParamId); |
| | | queryWrapper.selectAll(BikeRepair.class) |
| | | .selectAs(Member::getOpenid,BikeRepairDTO::getOpenid) |
| | | .selectAs(Bikes::getCode,BikeRepairDTO::getBikeCode) |
| | | .selectAs(BikeRepair::getCreateDate,BikeRepairDTO::getCreateDate) |
| | | .selectAs(BikeRepair::getStatus,BikeRepairDTO::getStatus) |
| | | .selectAs(BaseParam::getName,BikeRepairDTO::getBikeTypeName) |
| | | .select("bpp.name as problemName"); |
| | | queryWrapper.like(!StringUtils.isEmpty(pageWrap.getModel().getOpenid()),Member::getOpenid,pageWrap.getModel().getOpenid()) |
| | | .like(!StringUtils.isEmpty(pageWrap.getModel().getBikeId()),Bikes::getId,pageWrap.getModel().getBikeId()) |
| | | .eq(!StringUtils.isEmpty(pageWrap.getModel().getStatus()),BikeRepair::getStatus,pageWrap.getModel().getStatus()) |
| | | .ge(Objects.nonNull(pageWrap.getModel().getCreateDateStart()), |
| | | BikeRepair::getCreateDate, |
| | | Utils.Date.getStart(pageWrap.getModel().getCreateDateStart())) |
| | | .le(Objects.nonNull(pageWrap.getModel().getCreateDateEnd()), |
| | | BikeRepair::getCreateDate, |
| | | Utils.Date.getStart(pageWrap.getModel().getCreateDateEnd())); |
| | | .selectAs(BaseParam::getName,BikeRepairDTO::getBikeTypeName); |
| | | queryWrapper.like(StringUtils.isNotEmpty(pageWrap.getModel().getOpenid()),Member::getOpenid,pageWrap.getModel().getOpenid()) |
| | | .like(StringUtils.isNotEmpty(pageWrap.getModel().getBikeCode()),Bikes::getCode,pageWrap.getModel().getBikeCode()) |
| | | .eq( pageWrap.getModel().getStatus() !=null,BikeRepair::getStatus,pageWrap.getModel().getStatus()) |
| | | .ge(Objects.nonNull(pageWrap.getModel().getStartDate()),BikeRepair::getCreateDate,pageWrap.getModel().getStartDate()) |
| | | .le(Objects.nonNull(pageWrap.getModel().getEndDate()),BikeRepair::getCreateDate,pageWrap.getModel().getEndDate()); |
| | | return PageData.from(bikeRepairJoinMapper.selectJoinPage(page, BikeRepairDTO.class,queryWrapper)); |
| | | } |
| | | |
| | | @Override |
| | | public BikeRepairProblemDTO getBikeRepairProblemDTO(String id) { |
| | | BikeRepairProblemDTO bikeRepairProblemDTO = new BikeRepairProblemDTO(); |
| | | |
| | | BikeRepair bikeRepair = bikeRepairMapper.selectById(id); |
| | | bikeRepairProblemDTO.setParam(bikeRepair.getParam()); |
| | | |
| | | // multifileMapper.multifile); |
| | | public List<Multifile> getBikeRepairProblemDTO(String id) { |
| | | QueryWrapper<Multifile> wrapper = new QueryWrapper<>(); |
| | | wrapper.lambda() |
| | | .eq(Multifile::getObjId,id) |
| | |
| | | .eq(Multifile::getIsdeleted,Constants.ZERO); |
| | | List<Multifile> multifiles = multifileMapper.selectList(wrapper); |
| | | //TODO 需要修改 |
| | | String path =systemDictDataBiz.queryByCode(Constants.OSS,Constants.RESOURCE_PATH).getCode(); |
| | | String projectFile = systemDictDataBiz.queryByCode(Constants.OSS, Constants.PROJECT_FILE).getCode(); |
| | | String path =systemDictDataBiz.queryByCode(Constants.OSS,Constants.RESOURCE_PATH).getCode()+ systemDictDataBiz.queryByCode(Constants.OSS, Constants.PROJECT_FILE).getCode(); |
| | | if (!CollectionUtils.isEmpty(multifiles)){ |
| | | multifiles.forEach(s->{ |
| | | s.setFileurlfull(path+projectFile+s.getFileurl()); |
| | | if(StringUtils.isNotBlank(s.getFileurl())){ |
| | | //完整附件地址 |
| | | s.setFileurlfull(path+s.getFileurl()); |
| | | } |
| | | }); |
| | | bikeRepairProblemDTO.setList(multifiles); |
| | | } |
| | | |
| | | return null; |
| | | return multifiles; |
| | | } |
| | | |
| | | @Override |
| | |
| | | import com.doumee.dao.business.model.MemberRides; |
| | | import com.doumee.dao.business.vo.GoodsorderExportVO; |
| | | import com.doumee.dao.business.vo.GoodsorderTotalDataVO; |
| | | import com.doumee.dao.business.web.request.MemberRidesQuery; |
| | | import com.doumee.dao.business.web.request.RefundDTO; |
| | | import com.doumee.dao.business.web.response.*; |
| | | import com.doumee.dao.business.join.MemberRidesJoinMapper; |
| | | import com.doumee.dao.business.model.*; |
| | | import com.doumee.service.business.GoodsorderService; |
| | | import com.doumee.service.business.MemberRidesService; |
| | | import com.doumee.service.business.PricingRuleService; |
| | | import com.github.binarywang.wxpay.bean.notify.WxPayNotifyResponse; |
| | | import com.github.binarywang.wxpay.bean.request.BaseWxPayRequest; |
| | |
| | | return goodsorderMapper.selectList(wrapper); |
| | | } |
| | | @Override |
| | | public List<GoodsorderExportVO> findExportNotBikPage(Goodsorder model){ |
| | | List<GoodsorderExportVO> list = new ArrayList<>(); |
| | | public PageData<GoodsorderExportVO> findAccountDetailPage(PageWrap<Goodsorder> pageWrap) { |
| | | IPage<Goodsorder> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); |
| | | pageWrap.getModel().setPayStatus(Constants.ONE); //只查询支付成功的 |
| | | MPJLambdaWrapper<Goodsorder> queryWrapper = initQueryParamByModel(pageWrap.getModel()); |
| | | return PageData.from(goodsorderJoinMapper.selectJoinPage(page, GoodsorderExportVO.class,queryWrapper)); |
| | | } |
| | | @Override |
| | | public List<GoodsorderExportVO> findExportAccountDetailPage(Goodsorder model){ |
| | | // List<GoodsorderExportVO> list = new ArrayList<>(); |
| | | model.setPayStatus(Constants.ONE); //只查询支付成功的 |
| | | MPJLambdaWrapper<Goodsorder> queryWrapper = initQueryParamByModel(model); |
| | | List<Goodsorder> goodsorderList = goodsorderJoinMapper.selectJoinList(Goodsorder.class,queryWrapper); |
| | | if(goodsorderList!=null){ |
| | | List<GoodsorderExportVO> goodsorderList = goodsorderJoinMapper.selectJoinList(GoodsorderExportVO.class,queryWrapper); |
| | | /* if(goodsorderList!=null){ |
| | | for(Goodsorder order : goodsorderList){ |
| | | GoodsorderExportVO vo = new GoodsorderExportVO(); |
| | | vo.setId(order.getId()); |
| | | vo.setCode(order.getCode()); |
| | | vo.setOpenid(order.getMemberOpenid()); |
| | | vo.setPayDate(order.getPayDate()); |
| | | vo.setCloseDate(order.getCloseDate()); |
| | | vo.setCloseDate(order.getCloseDate()); |
| | | vo.setCloseMoney(Constants.formatDecimalNum(order.getCloseMoney()).divide(new BigDecimal(100), 2, BigDecimal.ROUND_UP)); |
| | | vo.setMoney(Constants.translateMoney(order.getMoney())); |
| | | vo.setCloseMoney(Constants.translateMoney(order.getCloseMoney())); |
| | | vo.setRefundDate(order.getRefundDate()); |
| | | vo.setRefundMoney(Constants.formatDecimalNum(order.getRefundMoney()).divide(new BigDecimal(100), 2, BigDecimal.ROUND_UP)); |
| | | vo.setRefundMoney(Constants.translateMoney(order.getRefundMoney())); |
| | | list.add(vo); |
| | | } |
| | | } |
| | | return list; |
| | | }*/ |
| | | return goodsorderList; |
| | | } |
| | | private MPJLambdaWrapper<Goodsorder> initQueryParamByModel(Goodsorder model) { |
| | | MPJLambdaWrapper<Goodsorder> queryWrapper = new MPJLambdaWrapper<>(); |
| | | Utils.MP.blankToNull(model); |
| | | |
| | | queryWrapper.selectAll(Goodsorder.class); |
| | | queryWrapper.selectAs(Member::getOpenid, Goodsorder::getMemberOpenid); |
| | | queryWrapper.leftJoin(Member.class, Member::getId ,Goodsorder::getMemberId); |
| | | queryWrapper.select("select max(r.done_date) from refund r where t1.obj_id=t.id and r.status=2 ) as refund_date"); |
| | | queryWrapper.select("select sum(r.money) from refund r where t1.obj_id=t.id and r.status=2) as refund_money"); |
| | | queryWrapper.select("(select max(r.done_date) from refund r where r.obj_id=t.id and r.status=2 ) as refund_date"); |
| | | queryWrapper.select("(select sum(r.money) from refund r where r.obj_id=t.id and r.status=2) as refund_money"); |
| | | //时间段筛选 |
| | | queryWrapper.ge(model.getStartDate()!=null, Goodsorder::getPayDate, model.getStartDate()); |
| | | queryWrapper.le(model.getEndDate()!=null, Goodsorder::getPayDate, model.getEndDate()); |
| | | queryWrapper.eq(model.getPayStatus() !=null,Goodsorder::getPayStatus,model.getPayStatus()); |
| | | queryWrapper.eq(model.getCode() !=null,Goodsorder::getCode,model.getCode()); |
| | | 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.eq(model.getOnlineOrderid() !=null,Goodsorder::getOnlineOrderid,model.getOnlineOrderid()); |
| | | queryWrapper.like(model.getOnlineOrderid() !=null,Goodsorder::getOnlineOrderid,model.getOnlineOrderid()); |
| | | queryWrapper.like(model.getMemberOpenid() !=null,Member::getOpenid,model.getMemberOpenid()); |
| | | queryWrapper.eq(Goodsorder::getIsdeleted,Constants.ZERO); |
| | | queryWrapper.orderByDesc(Goodsorder::getPayDate); |
| | |
| | | MPJLambdaWrapper<Goodsorder> queryWrapper = initQueryParamByModel(pageWrap.getModel()); |
| | | return PageData.from(goodsorderJoinMapper.selectJoinPage(page, Goodsorder.class,queryWrapper)); |
| | | } |
| | | |
| | | |
| | | @Override |
| | | public long count(Goodsorder goodsorder) { |
| | |
| | | |
| | | List<PayOrderDTO> payOrderDTOList = new ArrayList<>(); |
| | | Goodsorder goodsorder = goodsorderMapper.selectById(id); |
| | | if(goodsorder == null){ |
| | | throw new BusinessException(ResponseStatus.DATA_EMPTY ); |
| | | } |
| | | QueryWrapper<Refund> refundQuery = new QueryWrapper<>(); |
| | | refundQuery.lambda() |
| | | .eq(Refund::getObjId,id); |
| | | .eq(Refund::getObjId,id) |
| | | .orderByAsc(Refund::getDoneDate); |
| | | //查询所有有退款记录 |
| | | List<Refund> refunds = refundMapper.selectList(refundQuery); |
| | | |
| | | PayOrderDTO payOrderDTO = new PayOrderDTO(); |
| | | payOrderDTO.setId(goodsorder.getId()); |
| | | payOrderDTO.setOrderCode(goodsorder.getCode()); |
| | | payOrderDTO.setPayWay(goodsorder.getPayWay()); |
| | | payOrderDTO.setMoney(goodsorder.getMoney()); |
| | | payOrderDTO.setMoney(Constants.translateMoney(goodsorder.getMoney())); |
| | | payOrderDTO.setPayDate(goodsorder.getPayDate()); |
| | | payOrderDTO.setOnlineorderId(goodsorder.getOnlineOrderid()); |
| | | payOrderDTOList.add(0,payOrderDTO); |
| | | if (!CollectionUtils.isEmpty(refunds)){ |
| | | refunds.forEach(s->{ |
| | | PayOrderDTO refundOrderDTO = new PayOrderDTO(); |
| | | refundOrderDTO.setOrderCode(s.getCode()); |
| | | refundOrderDTO.setId(s.getId()); |
| | | refundOrderDTO.setPayWay(s.getPayWay()); |
| | | refundOrderDTO.setRefundType(s.getType()); |
| | | refundOrderDTO.setMoney(s.getMoney()); |
| | | refundOrderDTO.setMoney(Constants.translateMoney(s.getMoney())); |
| | | refundOrderDTO.setPayDate(s.getDoneDate()); |
| | | payOrderDTOList.add(refundOrderDTO); |
| | | }); |
| | | } |
| | | MPJLambdaWrapper<MemberRides> wrapper = new MPJLambdaWrapper<>(); |
| | | wrapper.leftJoin(BaseParam.class,BaseParam::getId,MemberRides::getParamId) |
| | | .eq(BaseParam::getType, Constants.THREE); |
| | | List<MemberRides> memberRides = memberRidesJoinMapper.selectJoinList(MemberRides.class, wrapper); |
| | | MemberRidesQuery query = new MemberRidesQuery(); |
| | | query.setGoodsorderId(goodsorder.getId()); |
| | | List<BikeLogDTO> memberRides = MemberRidesServiceImpl.findBikeLogList(memberRidesJoinMapper,query); |
| | | GoodsorderDetailDTO goodsorderDetailDTO = new GoodsorderDetailDTO(); |
| | | goodsorderDetailDTO.setPayOrderDTOList(payOrderDTOList); |
| | | goodsorderDetailDTO.setMemberRidesList(memberRides); |
| | | goodsorderDetailDTO.setPayOrderDTOList(payOrderDTOList);//交易明细 |
| | | goodsorderDetailDTO.setMemberRidesList(memberRides);//骑行记录 |
| | | goodsorderDetailDTO.setModel(goodsorder);//订单对象 |
| | | return goodsorderDetailDTO; |
| | | } |
| | | |
| | |
| | | package com.doumee.service.business.impl; |
| | | |
| | | import com.alibaba.fastjson.JSONObject; |
| | | 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.doumee.core.constants.Constants; |
| | | import com.doumee.core.constants.ResponseStatus; |
| | | import com.doumee.core.exception.BusinessException; |
| | | import com.doumee.core.constants.ResponseStatus; |
| | | import com.doumee.core.exception.BusinessException; |
| | | import com.doumee.core.model.LoginUserInfo; |
| | |
| | | import com.doumee.core.model.PageWrap; |
| | | import com.doumee.core.utils.DateUtil; |
| | | import com.doumee.core.utils.Utils; |
| | | import com.doumee.dao.business.GoodsorderMapper; |
| | | import com.doumee.dao.business.LocksMapper; |
| | | import com.doumee.dao.business.ActionLogMapper; |
| | | import com.doumee.dao.business.LocksMapper; |
| | | import com.doumee.dao.business.MemberRidesMapper; |
| | | import com.doumee.dao.business.join.MemberRidesJoinMapper; |
| | | import com.doumee.dao.business.model.*; |
| | | import com.doumee.dao.business.model.BaseParam; |
| | | 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.model.*; |
| | | import com.doumee.dao.business.web.request.MemberRidesQuery; |
| | | import com.doumee.dao.business.web.response.BikeLogDTO; |
| | |
| | | import com.doumee.service.business.DeviceService; |
| | | import com.doumee.service.business.GoodsorderService; |
| | | import com.doumee.service.business.MemberRidesService; |
| | | 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.apache.commons.lang3.StringUtils; |
| | | import org.apache.shiro.SecurityUtils; |
| | | import org.checkerframework.checker.units.qual.C; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import java.util.Objects; |
| | | import java.util.UUID; |
| | | |
| | | /** |
| | | * 用户骑行记录表Service实现 |
| | |
| | | IPage<MemberRides> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); |
| | | MPJLambdaWrapper<MemberRides> queryWrapper = initQueryParamByModel(pageWrap.getModel()); |
| | | IPage<BikeLogDTO> bikeLogDTOIPage = memberRidesJoinMapper.selectJoinPage(page, BikeLogDTO.class, queryWrapper); |
| | | if (!CollectionUtils.isEmpty(bikeLogDTOIPage.getRecords())){ |
| | | bikeLogDTOIPage.getRecords().forEach(s->{ |
| | | initBikeLogObj(bikeLogDTOIPage.getRecords()); |
| | | return PageData.from(bikeLogDTOIPage); |
| | | } |
| | | public static List<BikeLogDTO> findBikeLogList( MemberRidesJoinMapper mrJoinMapper,MemberRidesQuery pageWrap) { |
| | | MPJLambdaWrapper<MemberRides> queryWrapper = initQueryParamByModel(pageWrap); |
| | | List<BikeLogDTO> list = mrJoinMapper.selectJoinList( BikeLogDTO.class, queryWrapper); |
| | | initBikeLogObj(list); |
| | | return list; |
| | | } |
| | | |
| | | public static void initBikeLogObj(List<BikeLogDTO> list){ |
| | | if (!CollectionUtils.isEmpty(list)){ |
| | | list.forEach(s->{ |
| | | if (Objects.nonNull(s.getBackDate())){ |
| | | s.setRideTime(DateUtil.betweenMin(s.getRentDate(),s.getBackDate())); |
| | | } |
| | | }); |
| | | } |
| | | return PageData.from(bikeLogDTOIPage); |
| | | } |
| | | |
| | | private MPJLambdaWrapper<MemberRides> initQueryParamByModel(MemberRidesQuery model) { |
| | | public static MPJLambdaWrapper<MemberRides> initQueryParamByModel(MemberRidesQuery model) { |
| | | MPJLambdaWrapper<MemberRides> queryWrapper = new MPJLambdaWrapper<>(); |
| | | Utils.MP.blankToNull(model); |
| | | queryWrapper.orderByDesc(MemberRides::getCreateDate); |
| | | queryWrapper.leftJoin(Member.class,Member::getId,MemberRides::getMemberId) |
| | | .leftJoin(BaseParam.class,BaseParam::getId,MemberRides::getParamId) |
| | | .eq(BaseParam::getType, Constants.THREE) |
| | | .like(StringUtils.isNotBlank(model.getOpenid()),Member::getOpenid,model.getOpenid()) |
| | | .like(StringUtils.isNotBlank(model.getBikeCode()),MemberRides::getBikeCode,model.getBikeCode()); |
| | | queryWrapper.ge(model.getRentDateStart()!=null, MemberRides::getRentDate,model.getRentDateStart()); |
| | | queryWrapper.le(model.getRentDateEnd()!=null, MemberRides::getRentDate,model.getRentDateEnd()); |
| | | queryWrapper.eq(model.getCloseStatus()!=null,MemberRides::getCloseStatus, model.getCloseStatus()); |
| | | queryWrapper.eq(model.getGoodsorderId()!=null,MemberRides::getOrdreId, model.getGoodsorderId()); |
| | | queryWrapper.selectAs(Member::getOpenid,MemberRidesDTO::getOpenid) |
| | | .selectAs(MemberRides::getBikeCode,MemberRidesDTO::getBikeCode) |
| | | .selectAs(MemberRides::getCloseStatus,MemberRidesDTO::getCloseStatus) |