From 0fe94ada8ffb65e60372227d4c1c8f5bf98ddb8b Mon Sep 17 00:00:00 2001 From: CeDo <cedoogle@gmail.com> Date: 星期二, 20 四月 2021 14:45:26 +0800 Subject: [PATCH] add: 订单详细信息订单日志,商家后台登陆时返回关联店铺信息 --- springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/shop/ComShopOrderOperateVO.java | 31 ++++++ springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopOrderServiceImpl.java | 12 ++ springcloud_k8s_panzhihuazhihuishequ/shop_backstage/src/main/java/com/panzhihua/shop_backstage/api/LoginApi.java | 29 +++++ springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComShopOrderDAO.java | 11 ++ springcloud_k8s_panzhihuazhihuishequ/shop_backstage/src/main/java/com/panzhihua/shop_backstage/api/OrderApi.java | 5 springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/shop/ComShopOrderPageVO.java | 6 + springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/shop/ComShopOrderExportDTO.java | 5 springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/shop/PageComShopOrderSearchDTO.java | 6 + springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/shop/LoginStoreUserInfoVO.java | 171 ++++++++++++++++++++++++++++++++++ 9 files changed, 269 insertions(+), 7 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/shop/ComShopOrderExportDTO.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/shop/ComShopOrderExportDTO.java index 9c7e161..3eddddb 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/shop/ComShopOrderExportDTO.java +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/shop/ComShopOrderExportDTO.java @@ -39,6 +39,9 @@ private Date createAtEnd; @ApiModelProperty(value = "订单ID-如果指定了订单ID,只导出指定订单,其它搜索条件将被忽略", notes = "") private Long[] orderIds; - @JsonIgnore + @ApiModelProperty(hidden = true) private Long userId; + @ApiModelProperty(hidden = true) + private Long storeUserId; + } diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/shop/PageComShopOrderSearchDTO.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/shop/PageComShopOrderSearchDTO.java index 5cec7cc..013cbf3 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/shop/PageComShopOrderSearchDTO.java +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/shop/PageComShopOrderSearchDTO.java @@ -41,6 +41,10 @@ private Long pageNum; @ApiModelProperty(value = "分页-每页记录数",example = "10", required = true) private Long pageSize; - @JsonIgnore + @ApiModelProperty(hidden = true) private Long userId; + @ApiModelProperty(hidden = true) + private Long storeId; + @ApiModelProperty(hidden = true) + private Long storeUserId; } diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/shop/ComShopOrderOperateVO.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/shop/ComShopOrderOperateVO.java new file mode 100644 index 0000000..ac483ef --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/shop/ComShopOrderOperateVO.java @@ -0,0 +1,31 @@ +package com.panzhihua.common.model.vos.shop; + +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; + +@Data +@ApiModel("订单操作日志") +public class ComShopOrderOperateVO { + + @ApiModelProperty(value = "订单号") + private String orderNo; + + @ApiModelProperty(value = "操作人") + private String operationBy; + + @ApiModelProperty(value = "操作时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date operationTime; + + @ApiModelProperty(value = "操作类型(1.创建订单 2.取消订单 3.订单支付 4.订单发货 5.订单完成)") + private Integer operationType; + + @ApiModelProperty(value = "操作内容") + private String operationContent; + +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/shop/ComShopOrderPageVO.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/shop/ComShopOrderPageVO.java index 52570ea..b4ff08c 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/shop/ComShopOrderPageVO.java +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/shop/ComShopOrderPageVO.java @@ -72,4 +72,10 @@ @ApiModelProperty(value = "用户收货地址id") private ComShopUserAddressVO userAddressVO; + @ApiModelProperty(value = "商品名称") + private String goodsName; + + @ApiModelProperty(value = "订单日志") + private List<ComShopOrderOperateVO> logs; + } diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/shop/LoginStoreUserInfoVO.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/shop/LoginStoreUserInfoVO.java new file mode 100644 index 0000000..ba184e1 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/shop/LoginStoreUserInfoVO.java @@ -0,0 +1,171 @@ +package com.panzhihua.common.model.vos.shop; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.panzhihua.common.model.vos.community.ComActVO; +import com.panzhihua.common.model.vos.community.ComMngStructAreaVO; +import com.panzhihua.common.model.vos.community.ComMngStructHouseVO; +import com.panzhihua.common.model.vos.user.ComMngFamilyInfoVO; +import com.panzhihua.common.validated.AddGroup; +import com.panzhihua.common.validated.PutGroup; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.Min; +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.util.Date; +import java.util.List; +import java.util.Set; + +/** + * @program: springcloud_k8s_panzhihuazhihuishequ + * @description: 登录用户信息 + * @author: huang.hongfa weixin hhf9596 qq 959656820 + * @create: 2020-11-24 09:35 + **/ +@Data +@ApiModel(value = "用户信息") +public class LoginStoreUserInfoVO { + + @ApiModelProperty("user_id") + private Long userId; + + @ApiModelProperty("微信会话密钥") + private String sessionKey; + + @ApiModelProperty("用户在开放平台的唯一标识符") + private String unionid; + + @ApiModelProperty("登录账户") + private String account; + + @ApiModelProperty("登录密码") + private String password; + + @ApiModelProperty("微信小程序唯一标识") + private String openid; + + @ApiModelProperty("手机号") + private String phone; + + @ApiModelProperty("昵称") + private String nickName; + + @ApiModelProperty("真实名字") + @NotBlank(groups = {AddGroup.class},message = "真实名字不能为空") + private String name; + + @ApiModelProperty("社区id") + @Min(value = 1,groups = {PutGroup.class},message = "社区id不能为空") + @NotNull(groups = {PutGroup.class},message = "社区id不能为空") + private Long communityId; + + @ApiModelProperty("社区名字") + private String communityName; + + @ApiModelProperty("性别 1 男 2 女") + private Integer sex; + + @ApiModelProperty("是否社区团队或者党委或系统管理人员 1 是 2 否") + private Integer ismemberrole; + + @ApiModelProperty("生日") + @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") + private Date birthday; + + @ApiModelProperty("头像") + private String imageUrl; + + @ApiModelProperty(value = "用户类型 1 小程序 2 运营平台 3 社区平台") + private Integer type; + + @ApiModelProperty("职业") + private String job; + + @ApiModelProperty("是否志愿者 0否 1 是") + private Integer isVolunteer; + + @ApiModelProperty("是否党员 0 否 1 是") + private Integer isPartymember; + + @ApiModelProperty("1 启用 2 禁用") + private Integer status; + + @ApiModelProperty("创建时间") + private Date createAt; + + @ApiModelProperty("最后登录时间") + private Date lastLoginTime; + + @ApiModelProperty("角色集合") + private Set<String> roles; + + @ApiModelProperty("权限集合") + private Set<String> permissions; + + @ApiModelProperty("人脸采集照片url") + private String faceUrl; + + @ApiModelProperty("驳回原因") + private String rejectReson; + + @ApiModelProperty("身份证号") + @NotBlank(groups = {AddGroup.class},message = "身份证号不能为空") + private String idCard; + + @ApiModelProperty("标签 多个用,隔开") + private String tags; + + @ApiModelProperty("家庭id") + private Long familyId; + + @ApiModelProperty(value = "分页每页数量",example = "10") + private Long pageSize; + + @ApiModelProperty(value = "分页当前记录数",example = "1") + private Long pageNum; + + @ApiModelProperty("人脸采集审核状态 0 待审核 1 审核通过 2驳回") + private Integer faceState; + + @ApiModelProperty("操作类型 1通过 2驳回 3删除") + private Integer operationType; + + @ApiModelProperty("家庭成员") + private List<ComMngFamilyInfoVO> comMngFamilyInfoVOS; + + @ApiModelProperty("房屋信息") + private List<ComMngStructHouseVO> comMngStructHouseVOS; + + @ApiModelProperty("用户小区id") + @Min(value = 1,groups = {PutGroup.class},message = "用户小区id不能为空") + @NotNull(groups = {PutGroup.class},message = "用户小区id不能为空") + private Long areaId; + + @ApiModelProperty("用户所在社区信息") + private ComActVO comActVO; + + @ApiModelProperty("小区信息") + private ComMngStructAreaVO comMngStructAreaVO; + + @ApiModelProperty("0 未申请 1 申请中 2 通过 3 驳回") + private Integer volunteerStatus; + + + @ApiModelProperty("是否注册 0 否 1 是") + private Integer isRegister; + + @ApiModelProperty("年龄") + private Integer age; + + @ApiModelProperty("政治面貌:1 - 党员;2 - 团员;3 - 群众") + private Integer politicalOutlook; + + + @ApiModelProperty("用户商铺信息") + private ShopStoreVO storeInfo; + + + +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComShopOrderDAO.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComShopOrderDAO.java index 904a96e..7c3583f 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComShopOrderDAO.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComShopOrderDAO.java @@ -75,6 +75,12 @@ "<if test='pageComShopOrderSearchDTO.storeName != null '>" + " AND ss.name like concat('%', #{pageComShopOrderSearchDTO.storeName}, '%') " + " </if> " + + "<if test='pageComShopOrderSearchDTO.storeId != null '>" + + " AND ss.id = #{pageComShopOrderSearchDTO.storeId} " + + " </if> " + + "<if test='pageComShopOrderSearchDTO.storeUserId != null '>" + + " AND ss.sys_user_id = #{pageComShopOrderSearchDTO.storeUserId} " + + " </if> " + " GROUP BY sr.id " + " ORDER BY sr.create_at "+ "</script>") @@ -102,7 +108,10 @@ " LEFT JOIN com_shop_store ss ON sr.store_id = ss.id \n" + " WHERE sr.delete_status = 1" + "<if test='comShopOrderExportDTO.userId != null'>" + - " AND ss.user_id = #{comShopOrderExportDTO.userId} " + + " AND sr.user_id = #{comShopOrderExportDTO.userId} " + + " </if> " + + "<if test='comShopOrderExportDTO.storeUserId != null '>" + + " AND ss.sys_user_id = #{comShopOrderExportDTO.storeUserId} " + " </if> " + "<if test='comShopOrderExportDTO.orderIds != null and comShopOrderExportDTO.orderIds.length>0 '>" + " AND sr.id in " + diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopOrderServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopOrderServiceImpl.java index be8fa71..dc59a90 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopOrderServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopOrderServiceImpl.java @@ -350,6 +350,7 @@ //查询订单下商品信息 List<ComShopOrderGoodsDO> orderGoodsDOList = comShopOrderGoodsDAO.selectList(new QueryWrapper<ComShopOrderGoodsDO>() .eq("order_no",shopOrderDO.getOrderNo())); + StringBuilder sbr = new StringBuilder(""); if(!orderGoodsDOList.isEmpty()){ orderGoodsDOList.forEach(orderGoods -> { ComShopOrderGoodsVO orderGoodsVO = new ComShopOrderGoodsVO(); @@ -358,9 +359,11 @@ orderGoodsVO.setGoodsPic(orderGoods.getGoodsAttrPic()); orderGoodsVO.setPrice(orderGoods.getGoodsAttrPrice()); orderGoodsVOS.add(orderGoodsVO); + sbr.append(orderGoods.getGoodsName() + " " ); }); } orderVO.setOrderGoodsVOList(orderGoodsVOS); + orderVO.setGoodsName(sbr.toString()); ComShopUserAddressVO userAddressVO = new ComShopUserAddressVO(); //查询用户收货地址 @@ -370,6 +373,15 @@ orderVO.setUserAddressVO(userAddressVO); } + //操作日志 + List<ComShopOrderOperateDO> listOperLog = comShopOrderOperateDAO.selectList(new LambdaQueryWrapper<ComShopOrderOperateDO>().eq(ComShopOrderOperateDO::getOrderNo, shopOrderDO.getOrderNo())); + List<ComShopOrderOperateVO> listOperLogVO = new ArrayList<>(listOperLog.size()); + listOperLog.forEach(logDO ->{ + ComShopOrderOperateVO copyVO = new ComShopOrderOperateVO(); + BeanUtils.copyProperties(logDO,copyVO); + listOperLogVO.add(copyVO); + }); + orderVO.setLogs(listOperLogVO); return R.ok(orderVO); } diff --git a/springcloud_k8s_panzhihuazhihuishequ/shop_backstage/src/main/java/com/panzhihua/shop_backstage/api/LoginApi.java b/springcloud_k8s_panzhihuazhihuishequ/shop_backstage/src/main/java/com/panzhihua/shop_backstage/api/LoginApi.java index e087e89..f6880e7 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/shop_backstage/src/main/java/com/panzhihua/shop_backstage/api/LoginApi.java +++ b/springcloud_k8s_panzhihuazhihuishequ/shop_backstage/src/main/java/com/panzhihua/shop_backstage/api/LoginApi.java @@ -1,16 +1,21 @@ package com.panzhihua.shop_backstage.api; +import com.alibaba.fastjson.JSONObject; import com.panzhihua.common.controller.BaseController; import com.panzhihua.common.model.vos.LoginUserInfoVO; import com.panzhihua.common.model.vos.R; +import com.panzhihua.common.model.vos.shop.LoginStoreUserInfoVO; +import com.panzhihua.common.model.vos.shop.ShopStoreVO; import com.panzhihua.common.model.vos.user.ChangePasswordVO; import com.panzhihua.common.service.auth.TokenService; +import com.panzhihua.common.service.community.CommunityService; import com.panzhihua.common.service.user.UserService; import com.panzhihua.common.interfaces.ShopOperLog; import com.panzhihua.shop_backstage.model.vos.LoginBody; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.BeanUtils; import org.springframework.util.ObjectUtils; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -26,6 +31,8 @@ private TokenService tokenService; @Resource private UserService userService; + @Resource + private CommunityService communityService; @ApiOperation(value = "商家后台登录") @ShopOperLog(operType = 1) @@ -57,11 +64,29 @@ return userService.changePassword(changePasswordVO); } - @ApiOperation(value = "当前登录用户信息",response = LoginUserInfoVO.class) + @ApiOperation(value = "当前登录用户信息",response = LoginStoreUserInfoVO.class) @GetMapping("user") public R detailUser(){ Long userId = this.getUserId(); - return userService.detailUser(userId); + R<LoginUserInfoVO> loginUserInfoVOR = userService.detailUser(userId); + + try { + LoginUserInfoVO loginUserInfoVO = JSONObject.parseObject(JSONObject.toJSONString(loginUserInfoVOR.getData()), LoginUserInfoVO.class); + loginUserInfoVO.setPassword("******"); + + R<ShopStoreVO> storeR = communityService.getUserStoreInfo(userId); + + LoginStoreUserInfoVO loginStoreUserInfoVO = new LoginStoreUserInfoVO(); + BeanUtils.copyProperties(loginUserInfoVO, loginStoreUserInfoVO); + if (R.isOk(storeR)&& storeR.getData()!=null) { + ShopStoreVO shopStoreVO = JSONObject.parseObject(JSONObject.toJSONString(storeR.getData()), ShopStoreVO.class); + loginStoreUserInfoVO.setStoreInfo(shopStoreVO); + } + return R.ok(loginStoreUserInfoVO); + }catch (Exception e){ + e.printStackTrace(); + return R.fail("获取登陆商家用户信息失败"); + } } } diff --git a/springcloud_k8s_panzhihuazhihuishequ/shop_backstage/src/main/java/com/panzhihua/shop_backstage/api/OrderApi.java b/springcloud_k8s_panzhihuazhihuishequ/shop_backstage/src/main/java/com/panzhihua/shop_backstage/api/OrderApi.java index 577a5d2..2fe2bc7 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/shop_backstage/src/main/java/com/panzhihua/shop_backstage/api/OrderApi.java +++ b/springcloud_k8s_panzhihuazhihuishequ/shop_backstage/src/main/java/com/panzhihua/shop_backstage/api/OrderApi.java @@ -69,8 +69,8 @@ @ApiOperation(value = "订单分页", response = ComShopOrderSearchVO.class) @PostMapping("") public R page(@RequestBody @Validated PageComShopOrderSearchDTO pageComShopOrderSearchDTO){ - pageComShopOrderSearchDTO.setUserId(this.getUserId()); ClazzUtils.setIfStringIsEmpty(pageComShopOrderSearchDTO); + pageComShopOrderSearchDTO.setStoreUserId(this.getUserId()); return communityService.pageShopOrder(pageComShopOrderSearchDTO); } @@ -113,6 +113,7 @@ @ShopOperLog(operType = 12) public R export(@RequestBody ComShopOrderExportDTO comShopOrderExportDTO){ ClazzUtils.setIfStringIsEmpty(comShopOrderExportDTO); + comShopOrderExportDTO.setStoreUserId(getUserId()); String url=excelUrl; String uuid= UUID.randomUUID().toString().replace("-",""); //String name=uuid+".xlsx"; @@ -126,7 +127,7 @@ ShopStoreVO shopStoreVO = JSONObject.parseObject(JSONObject.toJSONString(storeR.getData()),ShopStoreVO.class); Long userId = this.getUserId(); - comShopOrderExportDTO.setUserId(userId); + comShopOrderExportDTO.setStoreUserId(userId); R r=communityService.shopOrderExportData(comShopOrderExportDTO); if (R.isOk(r)) { List<ExcelShopOrderDTO> excelShopOrderDTO = JSONArray.parseArray(JSONArray.toJSONString(r.getData()),ExcelShopOrderDTO.class); -- Gitblit v1.7.1