codingliang 1 год назад
Родитель
Сommit
3a4dc2e150

+ 7 - 4
src/main/java/com/sqx/modules/shop/controller/AdminShopMessageController.java

@@ -1,15 +1,18 @@
 package com.sqx.modules.shop.controller;
 
 import com.sqx.common.utils.Result;
+import com.sqx.modules.shop.dto.ShopAuditDTO;
 import com.sqx.modules.shop.service.ShopMessageService;
 import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiModelProperty;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.PutMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
+import javax.validation.Valid;
 import java.math.BigDecimal;
 
 @Api(tags={"管理端-商户管理"})
@@ -21,10 +24,10 @@ public class AdminShopMessageController {
     private ShopMessageService shopMessageService;
 
     @ApiOperation("审核商户入驻")
-    @GetMapping(value = "/auditShopAuthentication")
-    public Result auditShopAuthentication(Long shopId, Integer auditStatus, String auditReason){
+    @PutMapping(value = "/audit-shop/{shopId}")
+    public Result auditShopAuthentication(@PathVariable Long shopId, @Valid ShopAuditDTO dto){
 
-        return shopMessageService.auditShopAuthentication(shopId, auditStatus, auditReason);
+        return shopMessageService.auditShopAuthentication(shopId, dto);
     }
 
     @ApiOperation("查看商户列表")

+ 35 - 0
src/main/java/com/sqx/modules/shop/dto/ShopAuditDTO.java

@@ -0,0 +1,35 @@
+package com.sqx.modules.shop.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.Max;
+import javax.validation.constraints.Min;
+import javax.validation.constraints.NotNull;
+import java.math.BigDecimal;
+
+/**
+ * 商户审核dto
+ *
+ * @author : codingliang
+ * @date : 2024-08-20 9:42
+ */
+@Data
+@ApiModel("商户审核DTO")
+public class ShopAuditDTO {
+
+    @ApiModelProperty(value = "审核状态 1通过  2拒绝", required = true)
+    @NotNull(message = "审核状态不能为空")
+    @Max(value = 2, message = "审核状态只能为1或2")
+    @Min(value = 1, message = "审核状态只能为1或2")
+    private Integer auditStatus;
+
+    @ApiModelProperty("审核备注")
+    private String auditReason;
+
+    @ApiModelProperty("商家佣金比例 0-1")
+    @Min(value = 0, message = "商家佣金比例不能小于0")
+    @Max(value = 1, message = "商家佣金比例不能大于1")
+    private BigDecimal shopRate;
+}

+ 2 - 1
src/main/java/com/sqx/modules/shop/service/ShopMessageService.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
 import com.sqx.common.utils.Result;
 import com.sqx.modules.errand.entity.Feedback;
 import com.sqx.modules.goods.entity.GoodsShop;
+import com.sqx.modules.shop.dto.ShopAuditDTO;
 
 import java.math.BigDecimal;
 
@@ -11,7 +12,7 @@ public interface ShopMessageService extends IService<GoodsShop> {
 
     Result insertShopAuthentication(GoodsShop goodsShop);
 
-    Result auditShopAuthentication(Long shopId, Integer auditStatus, String auditReason);
+    Result auditShopAuthentication(Long shopId, ShopAuditDTO dto);
 
     Result selectShopMessage(Long shopId);
 

+ 48 - 47
src/main/java/com/sqx/modules/shop/service/impl/ShopMessageServiceImpl.java

@@ -1,26 +1,21 @@
 package com.sqx.modules.shop.service.impl;
 
+import cn.hutool.core.util.ObjectUtil;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONArray;
-import com.alibaba.fastjson.JSONException;
 import com.alibaba.fastjson.JSONObject;
-import com.aliyun.oss.ClientException;
-import com.aliyuncs.CommonRequest;
-import com.aliyuncs.CommonResponse;
-import com.aliyuncs.DefaultAcsClient;
-import com.aliyuncs.IAcsClient;
-import com.aliyuncs.http.MethodType;
-import com.aliyuncs.profile.DefaultProfile;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.github.qcloudsms.SmsSingleSender;
-import com.github.qcloudsms.SmsSingleSenderResult;
-import com.github.qcloudsms.httpclient.HTTPException;
+import com.sqx.common.utils.Constant;
 import com.sqx.common.utils.PageUtils;
 import com.sqx.common.utils.Result;
-import com.sqx.modules.app.dao.*;
+import com.sqx.modules.app.dao.MsgDao;
+import com.sqx.modules.app.dao.UserBrowseDao;
+import com.sqx.modules.app.dao.UserDao;
+import com.sqx.modules.app.dao.UserMoneyDao;
+import com.sqx.modules.app.dao.UserMoneyDetailsDao;
 import com.sqx.modules.app.entity.Msg;
 import com.sqx.modules.app.entity.UserBrowse;
 import com.sqx.modules.app.entity.UserEntity;
@@ -35,13 +30,13 @@ import com.sqx.modules.errand.dao.ErrandComplaintDao;
 import com.sqx.modules.errand.dao.ErrandEvaluateDao;
 import com.sqx.modules.errand.entity.ErrandComplaint;
 import com.sqx.modules.errand.entity.Feedback;
-import com.sqx.modules.file.utils.Md5Utils;
 import com.sqx.modules.goods.dao.GoodsShopDao;
 import com.sqx.modules.goods.entity.GoodsShop;
 import com.sqx.modules.order.dao.AppOrderDao;
 import com.sqx.modules.order.entity.TbOrder;
 import com.sqx.modules.pay.service.CashOutService;
 import com.sqx.modules.shop.dao.ShopMessageDao;
+import com.sqx.modules.shop.dto.ShopAuditDTO;
 import com.sqx.modules.shop.service.ShopMessageService;
 import com.sqx.modules.sys.dao.SysUserDao;
 import com.sqx.modules.sys.entity.SysUserEntity;
@@ -55,10 +50,12 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
-import java.io.IOException;
 import java.math.BigDecimal;
 import java.text.SimpleDateFormat;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
 import java.util.concurrent.locks.ReentrantReadWriteLock;
 
 @Slf4j
@@ -127,10 +124,10 @@ public class ShopMessageServiceImpl extends ServiceImpl<ShopMessageDao, GoodsSho
     }
 
     @Override
-    public Result auditShopAuthentication(Long shopId, Integer auditStatus, String auditReason) {
+    public Result auditShopAuthentication(Long shopId, ShopAuditDTO dto) {
         reentrantReadWriteLock.writeLock().lock();
         try{
-            return auditAuthentication(shopId, auditStatus, auditReason);
+            return auditAuthentication(shopId, dto);
         }catch (Exception e){
             e.printStackTrace();
             log.error("操作异常:"+e.getMessage(),e);
@@ -141,46 +138,49 @@ public class ShopMessageServiceImpl extends ServiceImpl<ShopMessageDao, GoodsSho
     }
 
     @Transactional
-    public Result auditAuthentication(Long shopId, Integer auditStatus, String auditReason){
-        GoodsShop goodsShop = new GoodsShop();
-        goodsShop.setShopId(shopId);
-        goodsShop.setStatus(auditStatus);
-        goodsShop.setAuditReason(auditReason);
+    public Result auditAuthentication(Long shopId, ShopAuditDTO dto){
+        GoodsShop goodsShop = baseMapper.selectById(shopId);
+        if (ObjectUtil.isNull(goodsShop)) {
+            return Result.error("店铺不存在!");
+        }
+
+        goodsShop.setStatus(dto.getAuditStatus());
+        goodsShop.setAuditReason(dto.getAuditReason());
+        goodsShop.setShopRate(dto.getShopRate());
         goodsShop.setAuditTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
+
+        // 初始化店铺相关配置
         goodsShop.setPutawayFlag(1);
         goodsShop.setBannedFlag(0);
         goodsShop.setShopSales(0);
         goodsShop.setShopScore(Double.valueOf(5));
         baseMapper.updateById(goodsShop);
-        GoodsShop goodsShop1 = baseMapper.selectById(shopId);
-        //管理端审核入驻信息后,发送成功/失败信息给用户
-        CommonInfo one = commonInfoService.findOne(12);
-        if(auditStatus==1){
-            UserEntity userEntity1 = userService.selectUserById(goodsShop1.getUserId());
-            SysUserShop sysUserShop = shopAdminDao.selectOne(new QueryWrapper<SysUserShop>().eq("user_id", userEntity1.getAdminUserId()));
+
+        if (Constant.YES.equals(dto.getAuditStatus())) {
+            UserEntity userEntity = userService.selectUserById(goodsShop.getUserId());
+            SysUserShop sysUserShop = shopAdminDao.selectOne(new QueryWrapper<SysUserShop>().eq("user_id", userEntity.getAdminUserId()));
             if(sysUserShop!=null){
                 sysUserShop.setShopId(shopId);
                 shopAdminDao.updateById(sysUserShop);
             }else{
-                //添加管理员账号
-                SysUserEntity user = sysUserDao.selectOne(new QueryWrapper<SysUserEntity>().eq("username", goodsShop1.getPhone()));
-                if(user==null){
+                // 添加管理员账号
+                SysUserEntity user = sysUserDao.selectOne(new QueryWrapper<SysUserEntity>().eq("username", goodsShop.getPhone()));
+                if(user == null){
                     user = new SysUserEntity();
-                    user.setCreateTime(new Date());
-                    user.setUsername(goodsShop1.getPhone());
-                    user.setPassword(goodsShop1.getPhone());
-                    user.setMobile(goodsShop1.getPhone());
+                    user.setUsername(goodsShop.getPhone());
+                    user.setMobile(goodsShop.getPhone());
                     List<Long> roleIdList = new ArrayList();
                     roleIdList.add(12L);
                     user.setStatus(1);
-                    //sha256加密
+                    // sha256加密
                     String salt = RandomStringUtils.randomAlphanumeric(20);
-                    user.setPassword(new Sha256Hash(user.getPassword(), salt).toHex());
+                    user.setPassword(new Sha256Hash(goodsShop.getPhone(), salt).toHex());
                     user.setSalt(salt);
                     user.setUserType(2);
+                    user.setCreateTime(new Date());
                     sysUserDao.insertSysUser(user);
                     sysUserRoleService.saveOrUpdate(user.getUserId(), roleIdList);
-                    //返回的主键user_id
+                    // 返回的主键user_id
                     Long userId = user.getUserId();
                     //添加管理员—商铺关联表
                     sysUserShop = new SysUserShop();
@@ -188,17 +188,18 @@ public class ShopMessageServiceImpl extends ServiceImpl<ShopMessageDao, GoodsSho
                     sysUserShop.setUserId(userId);
                     shopAdminDao.insert(sysUserShop);
                 }
-                //todo 绑定用户和管理用户
-                UserEntity userEntity = new UserEntity();
-                userEntity.setUserId(goodsShop1.getUserId());
-                userEntity.setAdminUserId(user.getUserId());
-                userEntity.setShopAdminFlag(1);
-                userDao.updateById(userEntity);
+                // todo 绑定用户和管理用户
+                UserEntity newUser = new UserEntity();
+                newUser.setUserId(goodsShop.getUserId());
+                newUser.setAdminUserId(user.getUserId());
+                newUser.setShopAdminFlag(1);
+                userDao.updateById(newUser);
             }
-            userService.sendMsg(goodsShop1.getPhone(),"chenggong");
-        }else if(auditStatus==2){
-            userService.sendMsg(goodsShop1.getPhone(),"shibai");
+            userService.sendMsg(goodsShop.getPhone(),"chenggong");
+        } else {
+            userService.sendMsg(goodsShop.getPhone(),"shibai");
         }
+
         return Result.success();
     }