Commit c8fe7b5c by Wangmin

新增

1.查询商户信息
2.修改商户名称/头像
parent 67c47c19
......@@ -2,21 +2,17 @@ package com.pz.merchant.controller.applet;
import cn.dev33.satoken.annotation.SaIgnore;
import com.pz.common.core.controller.BaseController;
import com.pz.common.core.domain.PageQuery;
import com.pz.common.core.domain.R;
import com.pz.common.core.page.TableDataInfo;
import com.pz.common.core.validate.EditGroup;
import com.pz.merchant.domain.bo.EmployeesListBo;
import com.pz.merchant.domain.bo.SetEmployeeWorkingHourBo;
import com.pz.merchant.domain.vo.EmployeesListVo;
import com.pz.merchant.domain.bo.ModifyCompanyInfoBo;
import com.pz.merchant.domain.vo.CompanyAppVo;
import com.pz.merchant.service.ICompanyService;
import com.pz.merchant.service.IEmployeesService;
import lombok.RequiredArgsConstructor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.validation.constraints.NotNull;
/**
* 商户[小程序]
*
......@@ -32,6 +28,26 @@ public class CompanyController extends BaseController {
private final ICompanyService companyService;
/**
* 修改商户名称/头像
*
* @param bo 商户参数
* @return 操作结果
*/
@PutMapping("/modify")
public R<Boolean> modifyCompanySimpleData(@Validated(EditGroup.class) @RequestBody ModifyCompanyInfoBo bo) {
return R.ok(companyService.modifyCompanySimpleInfo(bo));
}
/**
* 查询商户信息
*
* @param companyId 商户ID
* @return 商户信息
*/
@GetMapping("/info")
public R<CompanyAppVo> getCompanyInfo(@NotNull(message = "商户ID不能为空") Integer companyId) {
return R.ok(companyService.queryCompanyDataForApp(companyId));
}
}
package com.pz.merchant.domain.bo;
import com.pz.common.core.validate.EditGroup;
import lombok.Data;
import javax.validation.constraints.NotNull;
/**
* <p>created in 2023/9/12 14:11
*
......@@ -7,5 +12,23 @@ package com.pz.merchant.domain.bo;
* @version 1.0
*/
@Data
public class ModifyCompanyInfoBo {
/**
* 商户ID
*/
@NotNull(groups = EditGroup.class, message = "商户ID不能为空")
private Integer companyId;
/**
* 用户名称
*/
private String companyName;
/**
* 用户头像
*/
private String avatar;
}
package com.pz.merchant.domain.vo;
import lombok.Data;
/**
* 小程序商户信息返回数据实体
* <p>created in 2023/9/12 14:37
*
* @author WangMin
* @version 1.0
*/
@Data
public class CompanyAppVo {
/**
* 商户名称
*/
private String name;
/**
* 头像
*/
private String avatar;
/**
* 手机号
*/
private String phone;
/**
* 商户地址
*/
private String address;
/**
* 商户状态 0审核 1正常 2禁用
*/
private Integer status;
/**
* 营业执照
*/
private String businessLicense;
}
......@@ -3,6 +3,7 @@ package com.pz.merchant.mapper;
import com.pz.common.core.mapper.BaseMapperPlus;
import com.pz.merchant.domain.Company;
import com.pz.merchant.domain.vo.CompanyAppVo;
import com.pz.merchant.domain.vo.CompanyVo;
import org.apache.ibatis.annotations.Mapper;
......@@ -15,4 +16,12 @@ import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface CompanyMapper extends BaseMapperPlus<CompanyMapper, Company, CompanyVo> {
/**
* 查询商户信息
*
* @param companyId 商户ID
* @return 商户信息
*/
CompanyAppVo selectCompanyDataForApp(Integer companyId);
}
......@@ -4,6 +4,8 @@ package com.pz.merchant.service;
import com.pz.common.core.domain.PageQuery;
import com.pz.common.core.page.TableDataInfo;
import com.pz.merchant.domain.bo.CompanyBo;
import com.pz.merchant.domain.bo.ModifyCompanyInfoBo;
import com.pz.merchant.domain.vo.CompanyAppVo;
import com.pz.merchant.domain.vo.CompanyVo;
import java.util.Collection;
......@@ -46,4 +48,20 @@ public interface ICompanyService {
* 校验并批量删除商户信息
*/
Boolean deleteWithValidByIds(Collection<Integer> ids, Boolean isValid);
/**
* 修改商户名称/头像 信息
*
* @param bo 商户信息
* @return 操作结果
*/
boolean modifyCompanySimpleInfo(ModifyCompanyInfoBo bo);
/**
* 查询商户信息
*
* @param companyId 商户ID
* @return 商户信息
*/
CompanyAppVo queryCompanyDataForApp(Integer companyId);
}
......@@ -2,25 +2,27 @@ package com.pz.merchant.service.impl;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.pz.common.core.domain.entity.SysUser;
import com.pz.common.core.page.TableDataInfo;
import com.pz.common.core.domain.PageQuery;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.pz.common.utils.StringUtils;
import com.pz.merchant.domain.Company;
import com.pz.merchant.domain.bo.CompanyBo;
import com.pz.merchant.domain.bo.ModifyCompanyInfoBo;
import com.pz.merchant.domain.vo.CompanyAppVo;
import com.pz.merchant.domain.vo.CompanyVo;
import com.pz.merchant.mapper.CompanyMapper;
import com.pz.merchant.service.ICompanyService;
import com.pz.system.mapper.CityMapper;
import com.pz.system.mapper.SysUserMapper;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Map;
import java.util.Collection;
import java.util.Optional;
import java.util.*;
/**
* 商户Service业务层处理
......@@ -36,11 +38,13 @@ public class CompanyServiceImpl implements ICompanyService {
private final CityMapper cityMapper;
private final SysUserMapper userMapper;
/**
* 查询商户
*/
@Override
public CompanyVo queryById(Integer id){
public CompanyVo queryById(Integer id) {
return baseMapper.selectVoById(id);
}
......@@ -107,8 +111,8 @@ public class CompanyServiceImpl implements ICompanyService {
/**
* 保存前的数据校验
*/
private void validEntityBeforeSave(Company entity){
//TODO 做一些数据校验,如唯一约束
private void validEntityBeforeSave(Company entity) {
// TODO 做一些数据校验,如唯一约束
}
/**
......@@ -116,9 +120,41 @@ public class CompanyServiceImpl implements ICompanyService {
*/
@Override
public Boolean deleteWithValidByIds(Collection<Integer> ids, Boolean isValid) {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
if (isValid) {
// TODO 做一些业务上的校验,判断是否需要校验
}
return baseMapper.deleteBatchIds(ids) > 0;
}
/**
* 修改商户名称/头像 信息
*
* @param bo 商户信息
* @return 操作结果
*/
@Override
public boolean modifyCompanySimpleInfo(ModifyCompanyInfoBo bo) {
CompanyVo companyVo = baseMapper.selectVoById(bo.getCompanyId());
Objects.requireNonNull(companyVo, "该商户不存在");
boolean companyFlag = true;
if (StringUtils.isNotEmpty(bo.getCompanyName())) {
LambdaUpdateWrapper<Company> companyWrapper = Wrappers.lambdaUpdate();
companyWrapper.set(Company::getName, bo.getCompanyName())
.eq(Company::getId, companyVo.getId());
companyFlag = baseMapper.update(null, companyWrapper) > 0;
}
boolean userFlag = true;
if (StringUtils.isNotEmpty(bo.getAvatar())) {
LambdaUpdateWrapper<SysUser> userWrapper = Wrappers.lambdaUpdate();
userWrapper.set(SysUser::getAvatar, bo.getAvatar())
.eq(SysUser::getUserId, companyVo.getUid());
userFlag = userMapper.update(null, userWrapper) > 0;
}
return companyFlag && userFlag;
}
@Override
public CompanyAppVo queryCompanyDataForApp(Integer companyId) {
return baseMapper.selectCompanyDataForApp(companyId);
}
}
......@@ -26,5 +26,17 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="delFlag" column="del_flag"/>
</resultMap>
<select id="selectCompanyDataForApp" resultType="com.pz.merchant.domain.vo.CompanyAppVo">
select company.name,
company.phone,
company.address,
company.status,
company.business_license,
user.avatar
from company
left join sys_user as user on user.user_id = company.uid
where company.id = #{id}
</select>
</mapper>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment