From 3d58925015cfd3da9a899d440333437d6f7c80ac Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期一, 06 十一月 2023 17:16:24 +0800 Subject: [PATCH] bug --- server/services/src/main/java/com/doumee/core/utils/DateUtil.java | 2 server/services/src/main/java/com/doumee/service/business/impl/BikeRepairServiceImpl.java | 21 +++++ server/platform/src/main/java/com/doumee/api/business/GoodsorderController.java | 8 + server/platform/src/main/java/com/doumee/api/business/WxBillController.java | 2 server/web/pom.xml | 3 server/platform/src/main/java/com/doumee/api/business/BikeRepairController.java | 7 + server/services/src/main/resources/application-dev.yml | 10 +- server/services/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java | 130 ++++++++++++++++++++------------ server/platform/src/main/resources/application.yml | 2 server/services/src/main/java/com/doumee/service/business/BikeRepairService.java | 2 10 files changed, 126 insertions(+), 61 deletions(-) diff --git a/server/platform/src/main/java/com/doumee/api/business/BikeRepairController.java b/server/platform/src/main/java/com/doumee/api/business/BikeRepairController.java index 567a2d9..abc740e 100644 --- a/server/platform/src/main/java/com/doumee/api/business/BikeRepairController.java +++ b/server/platform/src/main/java/com/doumee/api/business/BikeRepairController.java @@ -69,6 +69,13 @@ bikeRepairService.updateById(bikeRepair); return ApiResponse.success(null); } + @ApiOperation("鏍规嵁ID淇敼") + @PostMapping("/deal") + @RequiresPermissions("business:bikerepair:update") + public ApiResponse deal(@RequestBody BikeRepair bikeRepair) { + bikeRepairService.dealDo(bikeRepair); + return ApiResponse.success(null); + } @ApiOperation("鍧忚溅涓婃姤_鍒嗛〉鏌ヨ") @PostMapping("/page") diff --git a/server/platform/src/main/java/com/doumee/api/business/GoodsorderController.java b/server/platform/src/main/java/com/doumee/api/business/GoodsorderController.java index bd350df..dda97c7 100644 --- a/server/platform/src/main/java/com/doumee/api/business/GoodsorderController.java +++ b/server/platform/src/main/java/com/doumee/api/business/GoodsorderController.java @@ -17,9 +17,11 @@ import com.doumee.dao.business.web.response.GoodsorderDetailDTO; import com.doumee.service.business.GoodsorderService; import com.doumee.service.business.GoodsorderService; +import com.doumee.service.business.RefundService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.apache.shiro.authz.annotation.RequiresPermissions; +import org.checkerframework.checker.units.qual.C; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -40,6 +42,8 @@ @Autowired private GoodsorderService goodsorderService; + @Autowired + private RefundService refundService; @PreventRepeat @@ -105,13 +109,13 @@ @PostMapping("/pageAccountDetail") @RequiresPermissions("business:goodsorder:query") public ApiResponse<PageData<GoodsorderExportVO>> findPageAccountDetail(@RequestBody PageWrap<Goodsorder> pageWrap) { - return ApiResponse.success(goodsorderService.findAccountDetailPage(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); + ExcelExporter.build(GoodsorderExportVO.class).exportWithFirstAndEnd(goodsorderService.findExportAccountDetailPage(pageWrap.getModel()), "璐﹀崟鏀舵鏄庣粏_"+System.currentTimeMillis(),"璐﹀崟鏀舵鏄庣粏_"+ DateUtil.getPlusTime2(DateUtil.getCurrentDate()),null, response); } @ApiOperation("鏍规嵁ID鏌ヨ") @GetMapping("/{id}") diff --git a/server/platform/src/main/java/com/doumee/api/business/WxBillController.java b/server/platform/src/main/java/com/doumee/api/business/WxBillController.java index 0167cfa..cce5384 100644 --- a/server/platform/src/main/java/com/doumee/api/business/WxBillController.java +++ b/server/platform/src/main/java/com/doumee/api/business/WxBillController.java @@ -46,7 +46,7 @@ // @RequiresPermissions("business:wxbill:create") public ApiResponse syncWxBill(@RequestBody WxBill wxBill) { wxBillService.getWxBill(wxBill.getCreateDate()); - return ApiResponse.success(wxBillService.create(wxBill)); + return ApiResponse.success(null); } @ApiOperation("鏍规嵁ID鍒犻櫎") diff --git a/server/platform/src/main/resources/application.yml b/server/platform/src/main/resources/application.yml index 82e580e..e56a8ac 100644 --- a/server/platform/src/main/resources/application.yml +++ b/server/platform/src/main/resources/application.yml @@ -9,7 +9,7 @@ # application: # name: parkbike profiles: - active: test + active: dev # JSON杩斿洖閰嶇疆 jackson: # 榛樿鏃跺尯 diff --git a/server/services/src/main/java/com/doumee/core/utils/DateUtil.java b/server/services/src/main/java/com/doumee/core/utils/DateUtil.java index dec08d8..4beed80 100644 --- a/server/services/src/main/java/com/doumee/core/utils/DateUtil.java +++ b/server/services/src/main/java/com/doumee/core/utils/DateUtil.java @@ -2309,7 +2309,7 @@ } public static Date getDateFromString2(String strDate) { if (StringUtils.isEmpty(strDate)) { - return new Date(System.currentTimeMillis()); + return null; } try { return sdfLongTimePlus.parse(strDate); diff --git a/server/services/src/main/java/com/doumee/service/business/BikeRepairService.java b/server/services/src/main/java/com/doumee/service/business/BikeRepairService.java index be6e5f3..6fc2d40 100644 --- a/server/services/src/main/java/com/doumee/service/business/BikeRepairService.java +++ b/server/services/src/main/java/com/doumee/service/business/BikeRepairService.java @@ -109,4 +109,6 @@ long count(BikeRepair bikeRepair); void saveRepair(RepairRequest repairRequest) throws Exception; + + void dealDo(BikeRepair bikeRepair); } diff --git a/server/services/src/main/java/com/doumee/service/business/impl/BikeRepairServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/BikeRepairServiceImpl.java index d9371e5..6adcb52 100644 --- a/server/services/src/main/java/com/doumee/service/business/impl/BikeRepairServiceImpl.java +++ b/server/services/src/main/java/com/doumee/service/business/impl/BikeRepairServiceImpl.java @@ -1,5 +1,8 @@ package com.doumee.service.business.impl; import com.doumee.biz.system.SystemDictDataBiz; +import com.doumee.core.constants.ResponseStatus; +import com.doumee.core.exception.BusinessException; +import com.doumee.core.model.LoginUserInfo; import com.google.common.collect.Lists; import com.doumee.biz.system.SystemDictDataBiz; @@ -23,6 +26,7 @@ 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.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -82,6 +86,23 @@ public void updateById(BikeRepair bikeRepair) { bikeRepairMapper.updateById(bikeRepair); } + @Override + public void dealDo(BikeRepair param){ + + BikeRepair bikeRepair = findById(param.getId()); + if(bikeRepair == null ){ + throw new BusinessException(ResponseStatus.DATA_EMPTY); + } + if(Constants.formatIntegerNum(bikeRepair.getStatus()) != Constants.ZERO ){ + throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"璇ヤ笂鎶ュ凡澶勭悊锛屾棤闇�閲嶅澶勭悊锛�"); + } + LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); + bikeRepair.setDealInfo(param.getDealInfo()); + bikeRepair.setDealUser(user.getId()); + bikeRepair.setStatus(Constants.ONE); + bikeRepair.setDealDate(new Date()); + bikeRepairMapper.updateById(bikeRepair); + } @Override public void updateByIdInBatch(List<BikeRepair> bikeRepairs) { diff --git a/server/services/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java index f18226c..a5e4e76 100644 --- a/server/services/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java +++ b/server/services/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java @@ -20,6 +20,7 @@ import com.doumee.dao.business.*; import com.doumee.dao.business.MemberRidesMapper; import com.doumee.dao.business.join.GoodsorderJoinMapper; +import com.doumee.dao.business.join.RefundJoinMapper; import com.doumee.dao.business.model.Bikes; import com.doumee.dao.business.model.Goodsorder; import com.doumee.dao.business.model.Member; @@ -86,6 +87,8 @@ @Autowired private RefundMapper refundMapper; + @Autowired + private RefundJoinMapper refundJoinMapper; @Autowired private MemberRidesJoinMapper memberRidesJoinMapper; @@ -170,39 +173,59 @@ 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()); - - MPJLambdaWrapper<Goodsorder> queryWrapper = new MPJLambdaWrapper<>(); Goodsorder model = pageWrap.getModel(); Utils.MP.blankToNull(model); - queryWrapper.selectAll(Goodsorder.class); - queryWrapper.selectAs(Member::getOpenid, Goodsorder::getOpenid); - queryWrapper.leftJoin(Member.class, Member::getId ,Goodsorder::getMemberId); - 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"); - //鏃堕棿娈电瓫閫� - if (Objects.nonNull(model.getStartDate())){ - queryWrapper.ge(Goodsorder::getPayDate, Utils.Date.getStart(model.getStartDate())); - } - if (Objects.nonNull(model.getEndDate())){ - queryWrapper.le( Goodsorder::getPayDate, Utils.Date.getEnd(model.getEndDate())); + IPage<GoodsorderExportVO> goodsorderExportVOIPage = null; + if (Constants.formatIntegerNum(model.getType())==Constants.ZERO){ + MPJLambdaWrapper<Goodsorder> queryWrapper = new MPJLambdaWrapper<>(); + queryWrapper.selectAll(Goodsorder.class); + queryWrapper.selectAs(Member::getOpenid, Goodsorder::getOpenid); + queryWrapper.leftJoin(Member.class, Member::getId ,Goodsorder::getMemberId); + 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"); + //鏃堕棿娈电瓫閫� + if (Objects.nonNull(model.getStartDate())){ + queryWrapper.ge(Goodsorder::getPayDate, Utils.Date.getStart(model.getStartDate())); + } + 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); + goodsorderExportVOIPage = goodsorderJoinMapper.selectJoinPage(page, GoodsorderExportVO.class, queryWrapper); + }else{ + MPJLambdaWrapper<Refund> queryWrapper = new MPJLambdaWrapper<>(); + queryWrapper.selectAs(Refund::getMoney,GoodsorderExportVO::getRefundMoney); + queryWrapper.selectAs(Refund::getDoneDate,GoodsorderExportVO::getRefundDate); + queryWrapper.selectAs(Goodsorder::getCloseMoney,GoodsorderExportVO::getCloseMoney); + queryWrapper.selectAs(Goodsorder::getMoney,GoodsorderExportVO::getMoney); + queryWrapper.selectAs(Goodsorder::getId,GoodsorderExportVO::getId); + queryWrapper.selectAs(Goodsorder::getCode,GoodsorderExportVO::getCode); + queryWrapper.selectAs(Goodsorder::getPayDate,GoodsorderExportVO::getPayDate); + queryWrapper.selectAs(Member::getOpenid, GoodsorderExportVO::getOpenid); + queryWrapper.leftJoin(Goodsorder.class, Goodsorder::getId ,Refund::getObjId); + queryWrapper.leftJoin(Goodsorder.class, Goodsorder::getId ,Refund::getObjId); + queryWrapper.leftJoin(Member.class, Member::getId ,Goodsorder::getMemberId); + //鏃堕棿娈电瓫閫� + if (Objects.nonNull(model.getStartDate())){ + queryWrapper.ge(Refund::getDoneDate, Utils.Date.getStart(model.getStartDate())); + } + if (Objects.nonNull(model.getEndDate())){ + queryWrapper.le( Refund::getDoneDate, Utils.Date.getEnd(model.getEndDate())); + } + queryWrapper.eq(Refund::getStatus,Constants.TWO);//閫�娆惧畬鎴� + queryWrapper.orderByAsc(Refund::getDoneDate); + goodsorderExportVOIPage = refundJoinMapper.selectJoinPage(page, GoodsorderExportVO.class, queryWrapper); } - 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); - //type 1 涓洪��娆捐褰� - if (Objects.equals(model.getType(),Constants.ONE)){ - queryWrapper.exists("select * from refund re where re.obj_id = t.id"); - } - IPage<GoodsorderExportVO> goodsorderExportVOIPage = goodsorderJoinMapper.selectJoinPage(page, GoodsorderExportVO.class, queryWrapper); if (!CollectionUtils.isEmpty(goodsorderExportVOIPage.getRecords())){ goodsorderExportVOIPage.getRecords().forEach(s->{ s.setMoney(Constants.translateMoney(s.getMoney())); @@ -215,8 +238,35 @@ @Override public List<GoodsorderExportVO> findExportAccountDetailPage(Goodsorder model){ model.setPayStatus(Constants.ONE); //鍙煡璇㈡敮浠樻垚鍔熺殑 - MPJLambdaWrapper<Goodsorder> queryWrapper = initQueryParamByModel(model); - List<GoodsorderExportVO> goodsorderList = goodsorderJoinMapper.selectJoinList(GoodsorderExportVO.class,queryWrapper); + List<GoodsorderExportVO> goodsorderList = null; + if(Constants.formatIntegerNum(model.getType())==Constants.ZERO){ + MPJLambdaWrapper<Goodsorder> queryWrapper = initQueryParamByModel(model); + goodsorderList = goodsorderJoinMapper.selectJoinList(GoodsorderExportVO.class,queryWrapper); + + }else{ + MPJLambdaWrapper<Refund> queryWrapper = new MPJLambdaWrapper<>(); + queryWrapper.selectAs(Refund::getMoney,GoodsorderExportVO::getRefundMoney); + queryWrapper.selectAs(Refund::getDoneDate,GoodsorderExportVO::getRefundDate); + queryWrapper.selectAs(Goodsorder::getCode,GoodsorderExportVO::getCode); + queryWrapper.selectAs(Goodsorder::getId,GoodsorderExportVO::getId); + queryWrapper.selectAs(Goodsorder::getPayDate,GoodsorderExportVO::getPayDate); + queryWrapper.selectAs(Goodsorder::getCloseMoney,GoodsorderExportVO::getCloseMoney); + queryWrapper.selectAs(Goodsorder::getMoney,GoodsorderExportVO::getMoney); + queryWrapper.selectAs(Member::getOpenid, GoodsorderExportVO::getOpenid); + queryWrapper.leftJoin(Goodsorder.class, Goodsorder::getId ,Refund::getObjId); + queryWrapper.leftJoin(Goodsorder.class, Goodsorder::getId ,Refund::getObjId); + queryWrapper.leftJoin(Member.class, Member::getId ,Goodsorder::getMemberId); + //鏃堕棿娈电瓫閫� + if (Objects.nonNull(model.getStartDate())){ + queryWrapper.ge(Refund::getDoneDate, Utils.Date.getStart(model.getStartDate())); + } + if (Objects.nonNull(model.getEndDate())){ + queryWrapper.le( Refund::getDoneDate, Utils.Date.getEnd(model.getEndDate())); + } + queryWrapper.eq(Refund::getStatus,Constants.TWO);//閫�娆惧畬鎴� + queryWrapper.orderByAsc(Refund::getDoneDate); + goodsorderList = refundJoinMapper.selectJoinList(GoodsorderExportVO.class,queryWrapper); + } if (!CollectionUtils.isEmpty(goodsorderList)){ goodsorderList.forEach(s->{ s.setMoney(Constants.translateMoney(s.getMoney())); @@ -224,27 +274,11 @@ s.setRefundMoney(Constants.translateMoney(s.getRefundMoney())); }); } - /* List<GoodsorderExportVO> list = new ArrayList<>(); - 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.setMoney(Constants.translateMoney(order.getMoney())); - vo.setCloseMoney(Constants.translateMoney(order.getCloseMoney())); - vo.setRefundDate(order.getRefundDate()); - vo.setRefundMoney(Constants.translateMoney(order.getRefundMoney())); - list.add(vo); - } - }*/ return goodsorderList; } private MPJLambdaWrapper<Goodsorder> initQueryParamByModel(Goodsorder model) { - MPJLambdaWrapper<Goodsorder> queryWrapper = new MPJLambdaWrapper<>(); Utils.MP.blankToNull(model); + MPJLambdaWrapper<Goodsorder> queryWrapper = new MPJLambdaWrapper<>(); queryWrapper.selectAll(Goodsorder.class); queryWrapper.selectAs(Member::getOpenid, Goodsorder::getOpenid); queryWrapper.leftJoin(Member.class, Member::getId ,Goodsorder::getMemberId); diff --git a/server/services/src/main/resources/application-dev.yml b/server/services/src/main/resources/application-dev.yml index 38a3e17..1217ac8 100644 --- a/server/services/src/main/resources/application-dev.yml +++ b/server/services/src/main/resources/application-dev.yml @@ -9,8 +9,8 @@ properties: hibernate: dialect: org.hibernate.dialect.PostgreSQLDialect - # hbm2ddl: - # auto: update + #hbm2ddl: + #auto: update temp: use_jdbc_metadata_defaults: false redis: @@ -18,8 +18,8 @@ host: localhost port: 6379 password: -# password: r-uf6is6x17arnu44bem:tlt_2022 - timeout: 5000 # 杩炴帴姹犱腑鐨勬渶灏忕┖闂茶繛鎺� + # password: r-uf6is6x17arnu44bem:tlt_2022 + timeout: 5000 # 杩炴帴姹犱腑鐨勬渶灏忕┖闂茶繛鎺� knife4j: enable: true @@ -57,7 +57,7 @@ host: tcp://175.27.187.84:1883 username: doumee1 password: doumee@168 - version: 001 + version: 003 tencent: map: diff --git a/server/web/pom.xml b/server/web/pom.xml index c443239..83b8027 100644 --- a/server/web/pom.xml +++ b/server/web/pom.xml @@ -8,15 +8,12 @@ <artifactId>parkbike</artifactId> <version>1.0.0-SNAPSHOT</version> </parent> - <artifactId>web</artifactId> - <properties> <maven.compiler.source>8</maven.compiler.source> <maven.compiler.target>8</maven.compiler.target> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties> - <dependencies> <dependency> <groupId>com.doumee</groupId> -- Gitblit v1.9.3