From 6c5a9e94f11c5ce05336303129a21886383967a6 Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Wed, 07 Jul 2021 09:58:09 +0800 Subject: [PATCH] 20210707 积分拨付 --- gc-shop/src/main/java/com/xzx/gc/shop/controller/AdminOrderController.java | 24 ++ gc-core/src/main/java/com/xzx/gc/entity/JhyOrder.java | 2 gc-user/src/main/java/com/xzx/gc/user/dto/UpdateJhyInfoDto.java | 20 ++ gc-user/src/main/resources/mapper/user/UserLoginInfoMapper.xml | 7 gc-user/src/main/java/com/xzx/gc/user/service/UserService.java | 40 ++++ gc-user/src/main/java/com/xzx/gc/user/mapper/AccountMapper.java | 2 gc-user/src/main/java/com/xzx/gc/user/vo/ViewJhyInfoVo.java | 44 ++++ gc-user/src/main/resources/mapper/user/OrderMapper.xml | 162 +++++++++++++++-- gc-user/src/main/java/com/xzx/gc/user/dto/ViewJhyInfoDto.java | 8 gc-user/src/main/java/com/xzx/gc/user/mapper/OrderMapper.java | 3 gc-shop/src/main/java/com/xzx/gc/shop/dto/CancelJhyOrderDto.java | 11 + gc-user/src/main/java/com/xzx/gc/user/mapper/UserLoginInfoMapper.java | 2 gc-user/src/main/java/com/xzx/gc/user/service/JhyInfoService.java | 64 ++++++ gc-user/src/main/resources/mapper/user/AccountMapper.xml | 6 gc-user/src/main/java/com/xzx/gc/user/controller/AdminJhyInfoController.java | 36 +++ gc-shop/src/main/java/com/xzx/gc/shop/service/JhyService.java | 9 + gc-core/src/main/java/com/xzx/gc/model/admin/UserModel.java | 11 + gc-user/src/main/resources/mapper/user/UserMapper.xml | 2 gc-shop/src/main/java/com/xzx/gc/shop/controller/AdminJhyOrderController.java | 37 +++ gc-user/src/main/java/com/xzx/gc/user/vo/JhyInfoListVo.java | 4 20 files changed, 454 insertions(+), 40 deletions(-) diff --git a/gc-core/src/main/java/com/xzx/gc/entity/JhyOrder.java b/gc-core/src/main/java/com/xzx/gc/entity/JhyOrder.java index 72d3d33..c0b3a2b 100644 --- a/gc-core/src/main/java/com/xzx/gc/entity/JhyOrder.java +++ b/gc-core/src/main/java/com/xzx/gc/entity/JhyOrder.java @@ -36,7 +36,7 @@ private String weight; /** - * 订单状态 状态 1-待接单2-已接单3-已完成(用户)/待入库(集物员)4-已完成5-已取消 + * 订单状态 状态 1-待接单2-已接单3-已完成(用户)/待入库(集物员)5-已取消 */ private Integer status; public static final Integer ORDER_STATUS_WAITING = 1; diff --git a/gc-core/src/main/java/com/xzx/gc/model/admin/UserModel.java b/gc-core/src/main/java/com/xzx/gc/model/admin/UserModel.java index 8a73c42..71e7cba 100644 --- a/gc-core/src/main/java/com/xzx/gc/model/admin/UserModel.java +++ b/gc-core/src/main/java/com/xzx/gc/model/admin/UserModel.java @@ -5,6 +5,7 @@ import lombok.Data; import java.io.Serializable; +import java.math.BigDecimal; import java.util.List; @Data @@ -77,10 +78,18 @@ * 登陆时间 */ String loginTime; + @ApiModelProperty("推广人数") + Integer extensionNum; + @ApiModelProperty("订单数") + Integer allOrderNum; + @ApiModelProperty("环保金") + BigDecimal money; + @ApiModelProperty("积分数") + BigDecimal collectScore; @ApiModelProperty("1:已删除 0:未删除") String delFlag; - + @ApiModelProperty("1:已删除 0:未删除") Integer orderStatus3; Integer orderStatus5; //入库重量 diff --git a/gc-shop/src/main/java/com/xzx/gc/shop/controller/AdminJhyOrderController.java b/gc-shop/src/main/java/com/xzx/gc/shop/controller/AdminJhyOrderController.java index 8afc9bb..4c5fb50 100644 --- a/gc-shop/src/main/java/com/xzx/gc/shop/controller/AdminJhyOrderController.java +++ b/gc-shop/src/main/java/com/xzx/gc/shop/controller/AdminJhyOrderController.java @@ -1,12 +1,15 @@ package com.xzx.gc.shop.controller; +import cn.hutool.core.util.ObjectUtil; +import com.xzx.gc.common.constant.CommonEnum; import com.xzx.gc.common.constant.Constants; +import com.xzx.gc.common.dto.log.OperationAppLog; import com.xzx.gc.common.request.BaseController; +import com.xzx.gc.entity.JhyInfo; +import com.xzx.gc.entity.JhyOrder; import com.xzx.gc.model.JsonResult; -import com.xzx.gc.shop.dto.QueryGoodsListDto; -import com.xzx.gc.shop.dto.QueryJhyOrderListDto; -import com.xzx.gc.shop.dto.ViewGoodsDto; -import com.xzx.gc.shop.dto.ViewJhyOrderDto; +import com.xzx.gc.shop.dto.*; +import com.xzx.gc.shop.mapper.JhyOrderMapper; import com.xzx.gc.shop.service.JhyService; import com.xzx.gc.shop.vo.*; import io.swagger.annotations.Api; @@ -19,6 +22,7 @@ import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; import java.util.Map; @RestController @@ -28,6 +32,9 @@ @Resource JhyService jhyService; + + @Resource + JhyOrderMapper jhyOrderMapper; /** * 订单列表 @@ -53,5 +60,27 @@ return JsonResult.success(viewJhyOrderVo); } + /** + * 取消订单 + */ + @PostMapping(Constants.ADMIN_VIEW_PREFIX + "/score/jhy/cancelJhyOrder.json") + @ApiOperation(value="集物员订单管理-取消订单", notes="test: 仅0有正确返回") + public JsonResult cancelJhyOrder(@RequestBody CancelJhyOrderDto model, HttpServletRequest request) { + long id = model.getId(); + JhyOrder jhyOrder = jhyOrderMapper.selectByPrimaryKey(id); + if(ObjectUtil.isEmpty(jhyOrder)){ + return JsonResult.failMessage("当前记录不存在!"); + } + Integer status = jhyOrder.getStatus(); + if(JhyOrder.ORDER_STATUS_WAITING != status){ + return JsonResult.failMessage("订单不是待接单状态,不允许取消!"); + } + jhyService.cancelJhyOrder(model); + OperationAppLog build = OperationAppLog.builder().appPrograme(CommonEnum.后台.getValue()).opreateName(getAdminName(request)) + .methodName(Constants.SCORESHOP_MODUL_NAME).operateAction("集物员管理-取消订单-" + id).build(); + mqUtil.sendApp(build); + return JsonResult.success("操作成功!"); + } + } diff --git a/gc-shop/src/main/java/com/xzx/gc/shop/controller/AdminOrderController.java b/gc-shop/src/main/java/com/xzx/gc/shop/controller/AdminOrderController.java index 45e5c60..1c6c463 100644 --- a/gc-shop/src/main/java/com/xzx/gc/shop/controller/AdminOrderController.java +++ b/gc-shop/src/main/java/com/xzx/gc/shop/controller/AdminOrderController.java @@ -151,12 +151,26 @@ if(ScoreOrder.STATUS_READY != status){ return JsonResult.failMessage("当前订单不是待发货状态!"); } + ScoreOrder order = scoreOrderMapper.selectByPrimaryKey(model.getId()); + Example exampleDetails = new Example(ScoreDetails.class); + Example.Criteria criteriaDetails = exampleDetails.createCriteria(); + criteriaDetails.andEqualTo("orderNo",order.getOrderNo()); + criteriaDetails.andEqualTo("userId",order.getUserId()); + criteriaDetails.andEqualTo("type",ScoreDetails.SCORE_TYPE_SHOPPING_RETURN); - orderService.cancelOrder(id,scoreOrder.getUserId()); - OperationAppLog build = OperationAppLog.builder().appPrograme(CommonEnum.后台.getValue()).opreateName(getAdminName(request)) - .methodName(Constants.SCORESHOP_MODUL_NAME).operateAction("订单管理-取消-" + id).build(); - mqUtil.sendApp(build); - return JsonResult.success("操作成功!"); + List<ScoreDetails> scoreDetails = scoreDetailsMapper.selectByExample(exampleDetails); + if(CollUtil.isNotEmpty(scoreDetails)){ + return JsonResult.failMessage("当前订单已经取消过了!"); + } + Long aLong = orderService.cancelOrder(model); + if(aLong > 0){ + OperationAppLog build = OperationAppLog.builder().appPrograme(CommonEnum.后台.getValue()).opreateName(getAdminName(request)) + .methodName(Constants.SCORESHOP_MODUL_NAME).operateAction("订单管理-取消-" + id).build(); + mqUtil.sendApp(build); + return JsonResult.success("操作成功!"); + }else{ + return JsonResult.success("操作失败!"); + } } diff --git a/gc-shop/src/main/java/com/xzx/gc/shop/dto/CancelJhyOrderDto.java b/gc-shop/src/main/java/com/xzx/gc/shop/dto/CancelJhyOrderDto.java new file mode 100644 index 0000000..eaf8f07 --- /dev/null +++ b/gc-shop/src/main/java/com/xzx/gc/shop/dto/CancelJhyOrderDto.java @@ -0,0 +1,11 @@ +package com.xzx.gc.shop.dto; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class CancelJhyOrderDto { + + @ApiModelProperty(value="订单ID") + private Long id; +} diff --git a/gc-shop/src/main/java/com/xzx/gc/shop/service/JhyService.java b/gc-shop/src/main/java/com/xzx/gc/shop/service/JhyService.java index 15c5f5d..f7dafef 100644 --- a/gc-shop/src/main/java/com/xzx/gc/shop/service/JhyService.java +++ b/gc-shop/src/main/java/com/xzx/gc/shop/service/JhyService.java @@ -7,8 +7,10 @@ import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.xzx.gc.common.utils.StringUtils; +import com.xzx.gc.entity.JhyOrder; import com.xzx.gc.entity.JhyOrderItems; import com.xzx.gc.entity.ScoreOrderDetails; +import com.xzx.gc.shop.dto.CancelJhyOrderDto; import com.xzx.gc.shop.dto.QueryJhyOrderListDto; import com.xzx.gc.shop.mapper.JhyOrderItemsMapper; import com.xzx.gc.shop.mapper.JhyOrderMapper; @@ -86,4 +88,11 @@ return viewJhyOrderVo; } + + public void cancelJhyOrder(CancelJhyOrderDto model) { + Long id = model.getId(); + JhyOrder jhyOrder = jhyOrderMapper.selectByPrimaryKey(id); + jhyOrder.setStatus(JhyOrder.ORDER_STATUS_CANCEL); + jhyOrderMapper.updateByPrimaryKey(jhyOrder); + } } diff --git a/gc-user/src/main/java/com/xzx/gc/user/controller/AdminJhyInfoController.java b/gc-user/src/main/java/com/xzx/gc/user/controller/AdminJhyInfoController.java index 4a012a4..8e9be1e 100644 --- a/gc-user/src/main/java/com/xzx/gc/user/controller/AdminJhyInfoController.java +++ b/gc-user/src/main/java/com/xzx/gc/user/controller/AdminJhyInfoController.java @@ -12,16 +12,14 @@ import com.xzx.gc.entity.ScoreOrder; import com.xzx.gc.entity.UserInfo; import com.xzx.gc.model.JsonResult; -import com.xzx.gc.user.dto.AddScoreNumDto; -import com.xzx.gc.user.dto.ExamineJwyDto; -import com.xzx.gc.user.dto.GetScoreNumDto; -import com.xzx.gc.user.dto.JhyInfoListDto; +import com.xzx.gc.user.dto.*; import com.xzx.gc.user.mapper.AccountMapper; import com.xzx.gc.user.mapper.JhyInfoMapper; import com.xzx.gc.user.mapper.UserMapper; import com.xzx.gc.user.service.JhyInfoService; import com.xzx.gc.user.vo.GetScoreNumVo; import com.xzx.gc.user.vo.JhyInfoListVo; +import com.xzx.gc.user.vo.ViewJhyInfoVo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiResponse; @@ -59,6 +57,36 @@ } /** + * 查看集货员信息详情 + */ + @PostMapping(Constants.ADMIN_VIEW_PREFIX + "/jhy/viewJhyInfo.json") + @ApiResponses({@ApiResponse( code = 200, message = "success", response = ViewJhyInfoVo.class)}) + @ApiOperation(value="集物员管理-查看集货员信息详情", notes="test: 仅0有正确返回") + public JsonResult<ViewJhyInfoVo> viewJhyInfo(@RequestBody ViewJhyInfoDto viewJhyInfoDto) { + Long id = viewJhyInfoDto.getId(); + ViewJhyInfoVo viewJhyInfoVo = jhyInfoService.viewJhyInfo(id); + return JsonResult.success(viewJhyInfoVo); + } + + /** + * 编辑集货员信息 + */ + @PostMapping(Constants.ADMIN_VIEW_PREFIX + "/jhy/updateJhyInfo.json") + @ApiOperation(value="集物员管理--编辑集货员信息", notes="test: 仅0有正确返回") + public JsonResult updateJhyInfo(@RequestBody UpdateJhyInfoDto model, HttpServletRequest request) { + long id = model.getId(); + JhyInfo jhyInfo = jhyInfoMapper.selectByPrimaryKey(id); + if(ObjectUtil.isEmpty(jhyInfo)){ + return JsonResult.failMessage("当前记录不存在!"); + } + jhyInfoService.updateJhyInfo(model); + OperationAppLog build = OperationAppLog.builder().appPrograme(CommonEnum.后台.getValue()).opreateName(getAdminName(request)) + .methodName(Constants.SCORESHOP_MODUL_NAME).operateAction("集物员管理--编辑集货员信息-" + id).build(); + mqUtil.sendApp(build); + return JsonResult.success("操作成功!"); + } + + /** * 获取积分 */ @PostMapping(Constants.ADMIN_VIEW_PREFIX + "/jhy/getScoreNum.json") diff --git a/gc-user/src/main/java/com/xzx/gc/user/dto/UpdateJhyInfoDto.java b/gc-user/src/main/java/com/xzx/gc/user/dto/UpdateJhyInfoDto.java new file mode 100644 index 0000000..0df5b16 --- /dev/null +++ b/gc-user/src/main/java/com/xzx/gc/user/dto/UpdateJhyInfoDto.java @@ -0,0 +1,20 @@ +package com.xzx.gc.user.dto; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +@Data +public class UpdateJhyInfoDto { + + private Long id; + + @ApiModelProperty("手机号") + @NotBlank(message = "手机号不能为空") + private String mobile; + + @NotBlank(message = "是否集物员 1-是 2-否") + private String isJhy; + +} diff --git a/gc-user/src/main/java/com/xzx/gc/user/dto/ViewJhyInfoDto.java b/gc-user/src/main/java/com/xzx/gc/user/dto/ViewJhyInfoDto.java new file mode 100644 index 0000000..3019bea --- /dev/null +++ b/gc-user/src/main/java/com/xzx/gc/user/dto/ViewJhyInfoDto.java @@ -0,0 +1,8 @@ +package com.xzx.gc.user.dto; + +import lombok.Data; + +@Data +public class ViewJhyInfoDto { + private Long id; +} diff --git a/gc-user/src/main/java/com/xzx/gc/user/mapper/AccountMapper.java b/gc-user/src/main/java/com/xzx/gc/user/mapper/AccountMapper.java index dc7697a..452b81f 100644 --- a/gc-user/src/main/java/com/xzx/gc/user/mapper/AccountMapper.java +++ b/gc-user/src/main/java/com/xzx/gc/user/mapper/AccountMapper.java @@ -48,5 +48,7 @@ List<OrderInfo> findArea(); void insertScoreDetailsRet(ScoreDetails scoreDetailsRet); + + AccountInfo selectOneByUserId(@Param("userId")String userId); } diff --git a/gc-user/src/main/java/com/xzx/gc/user/mapper/OrderMapper.java b/gc-user/src/main/java/com/xzx/gc/user/mapper/OrderMapper.java index 996a42e..c4e82c9 100644 --- a/gc-user/src/main/java/com/xzx/gc/user/mapper/OrderMapper.java +++ b/gc-user/src/main/java/com/xzx/gc/user/mapper/OrderMapper.java @@ -1,5 +1,6 @@ package com.xzx.gc.user.mapper; +import com.xzx.gc.entity.JhyOrder; import com.xzx.gc.entity.OrderInfo; import com.xzx.gc.entity.OrderItemInfo; import com.xzx.gc.model.admin.PromoterModel; @@ -56,5 +57,7 @@ List<OrderInfo> findListOrderReceiveTime(@Param("receiver")String receiver); + List<JhyOrder> selectJhyOrderByUserId(@Param("userId")String userId); + } diff --git a/gc-user/src/main/java/com/xzx/gc/user/mapper/UserLoginInfoMapper.java b/gc-user/src/main/java/com/xzx/gc/user/mapper/UserLoginInfoMapper.java index 84891f4..5883c75 100644 --- a/gc-user/src/main/java/com/xzx/gc/user/mapper/UserLoginInfoMapper.java +++ b/gc-user/src/main/java/com/xzx/gc/user/mapper/UserLoginInfoMapper.java @@ -14,4 +14,6 @@ Map<String, Object> queryUserDayCount1(); Map<String, Object> queryUserDayCount(@Param("townIds") List<String> townIds); + + List<UserLoginInfo> selectOneByUserId(@Param("userId")String userId); } diff --git a/gc-user/src/main/java/com/xzx/gc/user/service/JhyInfoService.java b/gc-user/src/main/java/com/xzx/gc/user/service/JhyInfoService.java index b803ccc..f61ca1a 100644 --- a/gc-user/src/main/java/com/xzx/gc/user/service/JhyInfoService.java +++ b/gc-user/src/main/java/com/xzx/gc/user/service/JhyInfoService.java @@ -7,14 +7,16 @@ import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.xzx.gc.common.exception.RestException; -import com.xzx.gc.entity.AccountInfo; -import com.xzx.gc.entity.JhyInfo; -import com.xzx.gc.entity.ScoreDetails; +import com.xzx.gc.common.utils.StringUtils; +import com.xzx.gc.entity.*; import com.xzx.gc.user.dto.*; import com.xzx.gc.user.mapper.AccountMapper; import com.xzx.gc.user.mapper.JhyInfoMapper; +import com.xzx.gc.user.mapper.UserLoginInfoMapper; +import com.xzx.gc.user.mapper.UserMapper; import com.xzx.gc.user.vo.GetScoreNumVo; import com.xzx.gc.user.vo.JhyInfoListVo; +import com.xzx.gc.user.vo.ViewJhyInfoVo; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -34,6 +36,12 @@ @Autowired private JhyInfoMapper jhyInfoMapper; + + @Autowired + private UserMapper userMapper; + + @Autowired + private UserLoginInfoMapper userLoginInfoMapper; @Autowired private AccountMapper accountMapper; @@ -88,6 +96,16 @@ public Map<String, Object> queryList(JhyInfoListDto jhyInfoListDto) { PageHelper.startPage(jhyInfoListDto.getPage(), jhyInfoListDto.getLimit()); List<JhyInfoListVo> jhyInfoListVos = jhyInfoMapper.selectJhyInfoList(jhyInfoListDto); + if(CollUtil.isNotEmpty(jhyInfoListVos)){ + for(JhyInfoListVo jhyInfoListVo : jhyInfoListVos){ + String userId = jhyInfoListVo.getUserId(); + if(StrUtil.isNotEmpty(userId)){ + AccountInfo accountInfo = accountMapper.selectOneByUserId(userId); + String collectScore = StrUtil.isEmpty(accountInfo.getCollectScore()) ? "0" : accountInfo.getCollectScore(); + jhyInfoListVo.setScore(new BigDecimal(collectScore).setScale( 2, BigDecimal.ROUND_DOWN )); + } + } + } PageInfo<JhyInfoListVo> pageInfo = new PageInfo<>(jhyInfoListVos); Map<String, Object> data = new HashMap<>(); @@ -147,4 +165,44 @@ } return getScoreNumVo; } + + public ViewJhyInfoVo viewJhyInfo(Long id) { + JhyInfo jhyInfo = jhyInfoMapper.selectByPrimaryKey(id); + ViewJhyInfoVo viewJhyInfoVo = new ViewJhyInfoVo(); + viewJhyInfoVo.setIsJhy(jhyInfo.getIsJhy()); + viewJhyInfoVo.setUsername(jhyInfo.getUsername()); + viewJhyInfoVo.setMobile(jhyInfo.getMobile()); + viewJhyInfoVo.setIdCard(jhyInfo.getIdentity()); + viewJhyInfoVo.setIdCardImg(jhyInfo.getCardPos()); + viewJhyInfoVo.setAddress(jhyInfo.getAddress()); + String userId = jhyInfo.getUserId(); + AccountInfo accountInfo = accountMapper.selectOneByUserId(userId); + String collectScore = accountInfo.getCollectScore(); + BigDecimal bigDecimal = new BigDecimal(StrUtil.isEmpty(collectScore) ? "0" : collectScore).setScale( 2, BigDecimal.ROUND_DOWN ); + viewJhyInfoVo.setScore(bigDecimal); + viewJhyInfoVo.setCreateTime(jhyInfo.getCreatedTime().toString()); + + UserInfo userInfo = userMapper.selectByPrimaryKey(userId); + String nickName = userInfo.getNickName(); + if(StrUtil.isNotEmpty(nickName)){ + String decode = StringUtils.decode(nickName); + viewJhyInfoVo.setNickname(decode); + } + + List<UserLoginInfo> userLoginInfos = userLoginInfoMapper.selectOneByUserId(userId); + if(CollUtil.isNotEmpty(userLoginInfos)){ + String loginTime = userLoginInfos.get(0).getLoginTime(); + viewJhyInfoVo.setLoginTime(loginTime); + } + return viewJhyInfoVo; + } + + public void updateJhyInfo(UpdateJhyInfoDto model) { + JhyInfo jhyInfo = jhyInfoMapper.selectByPrimaryKey(model.getId()); + String mobile = model.getMobile(); + String isJhy = model.getIsJhy(); + jhyInfo.setIsJhy(isJhy); + jhyInfo.setMobile(mobile); + jhyInfoMapper.updateByPrimaryKey(jhyInfo); + } } diff --git a/gc-user/src/main/java/com/xzx/gc/user/service/UserService.java b/gc-user/src/main/java/com/xzx/gc/user/service/UserService.java index f61698c..f7a6efb 100644 --- a/gc-user/src/main/java/com/xzx/gc/user/service/UserService.java +++ b/gc-user/src/main/java/com/xzx/gc/user/service/UserService.java @@ -5,6 +5,7 @@ import cn.hutool.core.convert.Convert; import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.NumberUtil; +import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; import cn.hutool.json.JSONUtil; import com.github.pagehelper.PageHelper; @@ -401,6 +402,36 @@ orderStatus2.add("5"); orderStatus2.add("7"); for (UserModel mx : map) { + + //推广人数(暂时没有推广关系为空),订单数,环保金,积分 + if (userModel.getExportFlag() == 0) { + //订单数 + Integer orderNum = 0; + Example exampleOrder = new Example(OrderInfo.class); + Example.Criteria criteriaOrder = exampleOrder.createCriteria(); + criteriaOrder.andEqualTo("userId",mx.getUserId()); + criteriaOrder.andNotEqualTo("orderStatus",6); + List<OrderInfo> orderInfos = orderMapper.selectByExample(exampleOrder); + if(CollUtil.isNotEmpty(orderInfos)){ + orderNum = orderNum + orderInfos.size(); + } + + List<JhyOrder> jhyOrders = orderMapper.selectJhyOrderByUserId(mx.getUserId()); + if(CollUtil.isNotEmpty(jhyOrders)){ + orderNum = orderNum + jhyOrders.size(); + } + mx.setAllOrderNum(orderNum); + //环保金,积分 + AccountInfo accountInfo = accountService.findByUserId(mx.getUserId()); + if(ObjectUtil.isNotEmpty(accountInfo)){ + String money = accountInfo.getMoney(); + mx.setMoney(new BigDecimal(StrUtil.isEmpty(money) ? "0" : money).setScale( 2, BigDecimal.ROUND_DOWN )); + + String collectScore = StrUtil.isEmpty(accountInfo.getCollectScore()) ? "0":accountInfo.getCollectScore(); + mx.setCollectScore(new BigDecimal(collectScore).setScale( 2, BigDecimal.ROUND_DOWN )); + } + + } //设置登录时间 if (userModel.getExportFlag() == 0) { @@ -819,9 +850,14 @@ List<Map<String, Object>> odlist = orderMapper.queryCuserOrderFinishList(userId, x); PageInfo<Map<String, Object>> pageInfo = new PageInfo<>(odlist); for (Map<String, Object> map : odlist) { - map.put("money", DoubleUtil.roundTwo(map.get("money").toString())); - map.put("weight", DoubleUtil.roundThree(map.get("weight").toString())); map.put("orderid", map.get("orderId").toString()); + map.put("address", map.get("address").toString()); + map.put("status", map.get("status")); + map.put("type", map.get("type")); + map.put("money", DoubleUtil.roundTwo(map.get("money").toString())); + map.put("score", DoubleUtil.roundTwo(map.get("score").toString())); + map.put("weight", DoubleUtil.roundThree(map.get("weight").toString())); + map.put("name", map.get("name").toString()); map.put("createtime", map.get("createTime").toString()); } m.put("orderList", odlist); diff --git a/gc-user/src/main/java/com/xzx/gc/user/vo/JhyInfoListVo.java b/gc-user/src/main/java/com/xzx/gc/user/vo/JhyInfoListVo.java index 123aed7..37173a4 100644 --- a/gc-user/src/main/java/com/xzx/gc/user/vo/JhyInfoListVo.java +++ b/gc-user/src/main/java/com/xzx/gc/user/vo/JhyInfoListVo.java @@ -5,6 +5,7 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import java.math.BigDecimal; import java.util.Date; @Data @@ -40,6 +41,9 @@ @ApiModelProperty(value = "审核状态 1-待审核 2-审核通过 3-审核拒绝") private Integer status; + @ApiModelProperty(value = "集物员积分数") + private BigDecimal score; + @ApiModelProperty(value = "申请时间") private String createTime; diff --git a/gc-user/src/main/java/com/xzx/gc/user/vo/ViewJhyInfoVo.java b/gc-user/src/main/java/com/xzx/gc/user/vo/ViewJhyInfoVo.java new file mode 100644 index 0000000..4f01eb6 --- /dev/null +++ b/gc-user/src/main/java/com/xzx/gc/user/vo/ViewJhyInfoVo.java @@ -0,0 +1,44 @@ +package com.xzx.gc.user.vo; + +import io.swagger.annotations.ApiModel; +import lombok.Data; + +import java.math.BigDecimal; + +@Data +@ApiModel(value = "ViewJhyInfoVo", description = "集物员详情") +public class ViewJhyInfoVo { + + //微信昵称 + private String nickname; + + //注册时间 + private String createTime; + + //最近登录时间 + private String loginTime; + + //账户积分 + private BigDecimal Score; + + //姓名 + private String username; + + //手机号码 + private String mobile; + + //身份证号码 + private String idCard; + + //身份证图片 + private String idCardImg; + + //地址(微信地址) + private String address; + + /** + * 是否集物员 1-是 2-否 + */ + private String isJhy; + +} diff --git a/gc-user/src/main/resources/mapper/user/AccountMapper.xml b/gc-user/src/main/resources/mapper/user/AccountMapper.xml index 5b06173..2cd6409 100644 --- a/gc-user/src/main/resources/mapper/user/AccountMapper.xml +++ b/gc-user/src/main/resources/mapper/user/AccountMapper.xml @@ -141,4 +141,10 @@ ) </insert> + + + <select id="selectOneByUserId" resultType="com.xzx.gc.entity.AccountInfo"> + select * from xzx_account_info where user_id = #{userId} + </select> + </mapper> diff --git a/gc-user/src/main/resources/mapper/user/OrderMapper.xml b/gc-user/src/main/resources/mapper/user/OrderMapper.xml index f61e067..fa58ed8 100644 --- a/gc-user/src/main/resources/mapper/user/OrderMapper.xml +++ b/gc-user/src/main/resources/mapper/user/OrderMapper.xml @@ -120,14 +120,65 @@ GROUP BY a.order_id order by a.create_time </select> +<!-- <select id="queryCuserOrderCount" resultType="java.util.HashMap">--> +<!-- SELECT COUNT(*) as count FROM xzx_order_info WHERE create_user_id=#{userId}--> +<!-- <if test="status != null">--> +<!-- and order_status in--> +<!-- <foreach collection="status" index="index" item="id" open="(" separator="," close=")">--> +<!-- #{id}--> +<!-- </foreach>--> +<!-- </if>--> +<!-- GROUP BY order_type--> +<!-- </select>--> + <select id="queryCuserOrderCount" resultType="java.util.HashMap"> - SELECT COUNT(*) as count FROM xzx_order_info WHERE create_user_id=#{userId} - <if test="status != null"> - and order_status in - <foreach collection="status" index="index" item="id" open="(" separator="," close=")"> - #{id} - </foreach> - </if> + SELECT + COUNT(*) as count + FROM + ( + ( + SELECT + a.order_id orderId, + a.order_status STATUS, + '1' type, + ifnull(sum(d.money), 0) money, + '0' score, + a.address address, + ifnull(sum(d.weight), 0) weight, + e. NAME NAME, + a.create_time createTime + FROM + xzx_order_info a + LEFT JOIN xzx_order_item_info d ON a.order_id = d.order_id + LEFT JOIN xzx_user_info e ON e.user_id = a.receiver + WHERE + a.create_user_id=#{userId} + GROUP BY + a.order_id + ) + UNION + ( + SELECT + a.id orderId, + a. STATUS STATUS, + '2' type, + '0' money, + ifnull(sum(d.score), 0) score, + a.address address, + ifnull(sum(d.weight), 0) weight, + a.username NAME, + a.CREATED_TIME createTime + FROM + xzx_jhy_order a + LEFT JOIN xzx_jhy_order_items d ON a.id = d.order_id + WHERE + a.user_id = #{userId} + GROUP BY + a.id + ) + ) v + ORDER BY + createTime DESC GROUP BY order_type </select> @@ -257,19 +308,83 @@ </if> </select> - <select id="queryCuserOrderFinishList" resultType="java.util.HashMap"> - SELECT a.order_id as orderId, sum(d.money) as money,sum(d.weight) as weight,a.create_time as createTime FROM - xzx_order_info a - LEFT JOIN xzx_order_item_info d on a.order_id = d.order_id - WHERE a.create_user_id=#{userId} - <if test="status != null"> - and a.order_status in - <foreach collection="status" index="index" item="id" open="(" separator="," close=")"> - #{id} - </foreach> - </if> +<!-- <select id="queryCuserOrderFinishList" resultType="java.util.HashMap">--> +<!-- SELECT a.order_id as orderId,--> +<!-- sum(d.money) as money,--> +<!-- a.address as address,--> +<!-- a.order_type as orderType,--> +<!-- sum(d.weight) as weight,--> +<!-- a.create_time as createTime--> +<!-- FROM--> +<!-- xzx_order_info a--> +<!-- LEFT JOIN xzx_order_item_info d on a.order_id = d.order_id--> +<!-- WHERE a.create_user_id=#{userId}--> +<!-- <if test="status != null">--> +<!-- and a.order_status in--> +<!-- <foreach collection="status" index="index" item="id" open="(" separator="," close=")">--> +<!-- #{id}--> +<!-- </foreach>--> +<!-- </if>--> - GROUP BY a.order_id +<!-- GROUP BY a.order_id--> +<!-- </select>--> + <select id="queryCuserOrderFinishList" resultType="java.util.HashMap"> + SELECT + orderId, + address, + status, + type, + money, + score, + weight, + name, + createTime + FROM + ( + ( + SELECT + a.order_id orderId, + a.order_status STATUS, + '1' type, + ifnull(sum(d.money), 0) money, + '0' score, + a.address address, + ifnull(sum(d.weight), 0) weight, + e. NAME NAME, + a.create_time createTime + FROM + xzx_order_info a + LEFT JOIN xzx_order_item_info d ON a.order_id = d.order_id + LEFT JOIN xzx_user_info e ON e.user_id = a.receiver + WHERE + a.create_user_id = #{userId} + GROUP BY + a.order_id + ) + UNION + ( + SELECT + a.id orderId, + a. STATUS STATUS, + '2' type, + '0' money, + ifnull(sum(d.score), 0) score, + a.address address, + ifnull(sum(d.weight), 0) weight, + a.username NAME, + a.CREATED_TIME createTime + FROM + xzx_jhy_order a + LEFT JOIN xzx_jhy_order_items d ON a.id = d.order_id + WHERE + a.user_id = #{userId} + GROUP BY + a.id + ) + ) v + ORDER BY + createTime DESC + </select> @@ -399,4 +514,13 @@ b.receive_time ASC </select> + <select id="selectJhyOrderByUserId" resultType="com.xzx.gc.entity.JhyOrder"> + SELECT + a.* + FROM + xzx_jhy_order a + WHERE + a.status != '5' + and a.user_id = #{userId} + </select> </mapper> diff --git a/gc-user/src/main/resources/mapper/user/UserLoginInfoMapper.xml b/gc-user/src/main/resources/mapper/user/UserLoginInfoMapper.xml index f1b6a24..e1ddf74 100644 --- a/gc-user/src/main/resources/mapper/user/UserLoginInfoMapper.xml +++ b/gc-user/src/main/resources/mapper/user/UserLoginInfoMapper.xml @@ -24,4 +24,11 @@ AND DATE_FORMAT(a.login_time, '%Y-%m-%d')=DATE_FORMAT(CURDATE()-1, '%Y-%m-%d') GROUP BY DATE_FORMAT(a.login_time, '%Y-%m-%d') ORDER BY a.login_id DESC </select> + + <select id="selectOneByUserId" resultType="com.xzx.gc.entity.UserLoginInfo"> + SELECT * + FROM xzx_user_login_info + where user_id = #{userId} + ORDER BY login_time desc + </select> </mapper> diff --git a/gc-user/src/main/resources/mapper/user/UserMapper.xml b/gc-user/src/main/resources/mapper/user/UserMapper.xml index fc7665b..06dc6e0 100644 --- a/gc-user/src/main/resources/mapper/user/UserMapper.xml +++ b/gc-user/src/main/resources/mapper/user/UserMapper.xml @@ -250,7 +250,7 @@ </update> <select id="queryCuserDetail" resultType="java.util.HashMap"> - SELECT a.*, b.money, b.withdraw_money, c.pay_type, SUM(c.money) as moneyx FROM xzx_user_info a + SELECT a.*, b.money,b.collect_score collectScore, b.withdraw_money, c.pay_type, SUM(c.money) as moneyx FROM xzx_user_info a LEFT JOIN xzx_account_info b ON a.user_id=b.user_id LEFT JOIN xzx_pay_info c ON b.account_id=c.account_id LEFT JOIN xzx_sys_config_info d ON c.pay_type=d.config_value AND d.config_type_code='PAY_TYPE' -- Gitblit v1.9.1