From 987d7b550c8de12719cea65bd740ebccd7872fee Mon Sep 17 00:00:00 2001 From: wangfukang <15630117759@163.com> Date: Fri, 6 Sep 2024 15:23:35 +0800 Subject: [PATCH] =?UTF-8?q?=E6=A0=B9=E6=8D=AE=E6=89=8B=E6=9C=BA=E5=8F=B7?= =?UTF-8?q?=E5=92=8C=E5=BA=97=E9=93=BAid=E6=9F=A5=E5=AE=A2=E6=88=B7=20?= =?UTF-8?q?=E4=B8=8B=E6=B8=B8=E5=AE=A2=E6=88=B7=E5=BC=80=E5=8D=95=EF=BC=8C?= =?UTF-8?q?=E5=A6=82=E6=9E=9C=E5=89=8D=E5=8F=B0=E4=BC=A0=E4=BA=86=E5=AE=A2?= =?UTF-8?q?=E6=88=B7id=E4=BA=86=EF=BC=8C=E4=B8=8D=E8=A6=81=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=E5=AE=A2=E6=88=B7=E4=BA=86=20=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E6=9F=A5=E8=AF=A2=E9=9C=80=E8=A6=81=E5=8A=A0?= =?UTF-8?q?=E4=B8=80=E4=B8=AA=E6=98=AF=E5=90=A6=E6=9C=89=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E8=AE=B0=E5=BD=95=E7=9A=84=E7=AD=9B=E9=80=89=20=E7=AB=99?= =?UTF-8?q?=E7=82=B9=E8=90=BD=E5=9C=B0=E8=B4=B9=E8=A7=84=E5=88=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/application.yml | 2 + hiver-admin/test-output/test-report.html | 16 +- .../hiver/core/common/utils/SecurityUtil.java | 23 ++- .../cc/hiver/core/common/vo/TokenCompany.java | 3 + .../LogisticsLandingFeeRulesController.java | 146 +++++++++++++++ .../entity/LogisticsLandingFeeRules.java | 41 +++++ .../LogisticsLandingFeeRulesMapper.java | 34 ++++ .../LogisticsLandingFeeRulesService.java | 31 ++++ .../LogisticsLandingFeeRulesServiceImpl.java | 47 +++++ .../vo/LogisticsLandingFeeRulesQueryVo.java | 24 +++ .../controller/LogisticsOrderController.java | 12 +- .../logisticsorder/entity/LogisticsOrder.java | 46 ++++- .../vo/LogisticsOrderQueryVo.java | 3 + .../mapper/LogisticsLandingFeeRulesMapper.xml | 158 ++++++++++++++++ .../resources/mapper/LogisticsOrderMapper.xml | 8 + .../mall/controller/CustomerController.java | 22 +++ .../hiver/mall/dao/mapper/CustomerMapper.java | 2 + .../cc/hiver/mall/pojo/dto/SaleQueryDTO.java | 3 + .../PurchaseOcrPictureController.java | 2 +- .../mall/service/mybatis/CustomerService.java | 10 ++ .../SalesAndDetailsServiceImpl.java | 169 +++++++++--------- .../mybatis/CustomerServiceImpl.java | 5 + .../main/resources/mapper/CustomerMapper.xml | 9 + 23 files changed, 714 insertions(+), 102 deletions(-) create mode 100644 hiver-core/src/main/java/cc/hiver/core/logisticslandingfeerules/controller/LogisticsLandingFeeRulesController.java create mode 100644 hiver-core/src/main/java/cc/hiver/core/logisticslandingfeerules/entity/LogisticsLandingFeeRules.java create mode 100644 hiver-core/src/main/java/cc/hiver/core/logisticslandingfeerules/mapper/LogisticsLandingFeeRulesMapper.java create mode 100644 hiver-core/src/main/java/cc/hiver/core/logisticslandingfeerules/service/LogisticsLandingFeeRulesService.java create mode 100644 hiver-core/src/main/java/cc/hiver/core/logisticslandingfeerules/service/impl/LogisticsLandingFeeRulesServiceImpl.java create mode 100644 hiver-core/src/main/java/cc/hiver/core/logisticslandingfeerules/vo/LogisticsLandingFeeRulesQueryVo.java create mode 100644 hiver-core/src/main/resources/mapper/LogisticsLandingFeeRulesMapper.xml diff --git a/hiver-admin/src/main/resources/application.yml b/hiver-admin/src/main/resources/application.yml index eadea1d0..0b35670f 100644 --- a/hiver-admin/src/main/resources/application.yml +++ b/hiver-admin/src/main/resources/application.yml @@ -336,11 +336,13 @@ ignored: - /hiver/app/shop/getshopIconById # 物流订单详情 - /hiver/app/logisticsOrder/getLogisticsOrderDetail + - /hiver/app/customer/findByUserPhoneAndShopId # 临时增加 - /hiver/app/logisticsOrder/addLogisticsOrder - /hiver/app/logisticsEntruckingLog/getDateLogisticsEntruckingLogPageList - /hiver/app/logisticsEntruckingLog/batchAddLogisticsEntruckingLog + - /hiver/purchaseOcrPicture/getLogisticsOrderOfAi # 限流及黑名单不拦截的路径 limitUrls: - /**/*.js diff --git a/hiver-admin/test-output/test-report.html b/hiver-admin/test-output/test-report.html index 788db0b3..15225554 100644 --- a/hiver-admin/test-output/test-report.html +++ b/hiver-admin/test-output/test-report.html @@ -35,7 +35,7 @@ Hiver
  • - 05, 2024 13:53:27 + 06, 2024 13:53:46
  • @@ -84,7 +84,7 @@

    passTest

    -

    13:53:28 / 0.024 secs

    +

    13:53:47 / 0.017 secs

    @@ -92,9 +92,9 @@
    #test-id=1
    passTest
    -09.05.2024 13:53:28 -09.05.2024 13:53:28 -0.024 secs +09.06.2024 13:53:47 +09.06.2024 13:53:47 +0.017 secs
    @@ -104,7 +104,7 @@ Pass - 13:53:28 + 13:53:47 Test passed @@ -128,13 +128,13 @@

    Started

    -

    05, 2024 13:53:27

    +

    06, 2024 13:53:46

    Ended

    -

    05, 2024 13:53:28

    +

    06, 2024 13:53:47

    diff --git a/hiver-core/src/main/java/cc/hiver/core/common/utils/SecurityUtil.java b/hiver-core/src/main/java/cc/hiver/core/common/utils/SecurityUtil.java index 0bc735a7..c8f4adbb 100644 --- a/hiver-core/src/main/java/cc/hiver/core/common/utils/SecurityUtil.java +++ b/hiver-core/src/main/java/cc/hiver/core/common/utils/SecurityUtil.java @@ -127,7 +127,21 @@ public class SecurityUtil { if (CharSequenceUtil.isNotBlank(res)) { return new Gson().fromJson(res, LogiticsCompany.class); } - final LogiticsCompany logiticsCompany = logiticsCompanyDao.findByUsername(username); + LogiticsCompany logiticsCompany = logiticsCompanyDao.findByUsername(username); + // 如果没有获取到,那么去搜索公司员工信息 + if (logiticsCompany == null ) { + logiticsCompany = new LogiticsCompany(); + // 物流公司主表中没有查询到信息,查询物流公司员工信息 + final LogisticsUser logisticsUser = logisticsUserService.findByMobile(username); + if(logisticsUser == null){ + return null; + }else{ + // 覆盖物流公司id为当前登录的物流公司员工id + logiticsCompany.setId(logisticsUser.getId()); + logiticsCompany.setUsername(logisticsUser.getMobile()); + logiticsCompany.setPassword(logisticsUser.getPassword()); + } + } // 缓存 redisTemplate.set(key, new Gson().toJson(logiticsCompany), tokenProperties.getSaveLoginTime(), TimeUnit.DAYS); return logiticsCompany; @@ -352,10 +366,6 @@ public class SecurityUtil { public LogiticsCompany getCurrCompany() { final Authentication authentication = SecurityContextHolder.getContext().getAuthentication(); - final boolean authenticated = authentication.isAuthenticated(); - final boolean aa = authentication instanceof AnonymousAuthenticationToken; - final String name = authentication.getName(); - final boolean bb = authentication == null; if (authentication == null || !authentication.isAuthenticated() || authentication.getName() == null || authentication instanceof AnonymousAuthenticationToken) { throw new HiverException("未检测到登录用户"); @@ -670,6 +680,9 @@ public class SecurityUtil { }else{ // 覆盖物流公司id为当前登录的物流公司员工id logiticsCompany.setId(logisticsUser.getId()); + logiticsCompany.setContacts(logisticsUser.getNickName()); + logiticsCompany.setUsername(logisticsUser.getMobile()); + logiticsCompany.setPassword(logisticsUser.getPassword()); } } Boolean saved = false; diff --git a/hiver-core/src/main/java/cc/hiver/core/common/vo/TokenCompany.java b/hiver-core/src/main/java/cc/hiver/core/common/vo/TokenCompany.java index e8606107..5e14b43d 100644 --- a/hiver-core/src/main/java/cc/hiver/core/common/vo/TokenCompany.java +++ b/hiver-core/src/main/java/cc/hiver/core/common/vo/TokenCompany.java @@ -22,6 +22,8 @@ public class TokenCompany implements UserDetails, Serializable { private String username; + private String nickName; + private String password; private Boolean platform; @@ -30,6 +32,7 @@ public class TokenCompany implements UserDetails, Serializable { this.id = logiticsCompany.getId(); this.companyName = logiticsCompany.getCompanyName(); this.username = logiticsCompany.getUsername(); + this.nickName = logiticsCompany.getContacts(); this.password = logiticsCompany.getPassword(); this.platform = platform; } diff --git a/hiver-core/src/main/java/cc/hiver/core/logisticslandingfeerules/controller/LogisticsLandingFeeRulesController.java b/hiver-core/src/main/java/cc/hiver/core/logisticslandingfeerules/controller/LogisticsLandingFeeRulesController.java new file mode 100644 index 00000000..c39f60c6 --- /dev/null +++ b/hiver-core/src/main/java/cc/hiver/core/logisticslandingfeerules/controller/LogisticsLandingFeeRulesController.java @@ -0,0 +1,146 @@ +package cc.hiver.core.logisticslandingfeerules.controller; + +import cc.hiver.core.common.utils.ResultUtil; +import cc.hiver.core.common.vo.Result; +import cc.hiver.core.logisticslandingfeerules.entity.LogisticsLandingFeeRules; +import cc.hiver.core.logisticslandingfeerules.service.LogisticsLandingFeeRulesService; +import cc.hiver.core.logisticslandingfeerules.vo.LogisticsLandingFeeRulesQueryVo; +import com.baomidou.mybatisplus.core.metadata.IPage; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +/** + * 站点落地费规则控制器 + * + * @author 王富康 + * @date 2024/8/24 + */ +@Slf4j +@RestController +@Api(tags = "站点落地费规则接口") +@RequestMapping("/hiver/app/logisticsLandingFeeRules/") +@Transactional +public class LogisticsLandingFeeRulesController { + + @Autowired + private LogisticsLandingFeeRulesService logisticsLandingFeeRulesService; + + /** + * 新增物流站点落地费规则 + * + * @param logisticsLandingFeeRules + * @return Result + * @author 王富康 + * @date 2024/8/24 + */ + @PostMapping(value = "/addLogisticsLandingFeeRules") + @ApiOperation("新增物流站点落地费规则") + public Result addLogisticsLandingFeeRules(@RequestBody LogisticsLandingFeeRules logisticsLandingFeeRules) { + + final boolean b = logisticsLandingFeeRulesService.saveOrUpdate(logisticsLandingFeeRules); + if (b) { + return ResultUtil.success("保存成功!"); + } else { + return ResultUtil.error("保存失败!"); + } + } + + /** + * 更新物流站点落地费规则 + * + * @param logisticsLandingFeeRules + * @return Result + * @author 王富康 + * @date 2024/8/24 + */ + @PostMapping(value = "/updateLogisticsLandingFeeRules") + @ApiOperation("更新物流站点落地费规则") + public Result updateLogisticsLandingFeeRules(@RequestBody LogisticsLandingFeeRules logisticsLandingFeeRules) { + + final boolean b = logisticsLandingFeeRulesService.saveOrUpdate(logisticsLandingFeeRules); + if (b) { + return ResultUtil.success("保存成功!"); + } else { + return ResultUtil.error("保存失败!"); + } + } + + /** + * 删除物流站点落地费规则 + * + * @param id + * @return Result + * @author 王富康 + * @date 2024/8/24 + */ + @PostMapping(value = "/deleteLogisticsLandingFeeRules") + @ApiOperation("删除物流站点落地费规则") + public Result deleteLogisticsLandingFeeRules(String id) { + + final boolean b = logisticsLandingFeeRulesService.removeById(id); + if (b) { + return ResultUtil.success("删除成功!"); + } else { + return ResultUtil.error("删除失败!"); + } + } + + /** + * 分页查询物流站点落地费规则 + * + * @param logisticsRouteQueryVo + * @return Result> + * @author 王富康 + * @date 2024/8/24 + */ + @RequestMapping(value = "/getLogisticsLandingFeeRulesPageList", method = RequestMethod.POST) + @ApiOperation(value = "分页查询物流站点落地费规则") + public Result> getLogisticsLandingFeeRulesPageList(@RequestBody(required = false) LogisticsLandingFeeRulesQueryVo logisticsRouteQueryVo) { + final IPage result = logisticsLandingFeeRulesService.getLogisticsLandingFeeRulesPageList(logisticsRouteQueryVo); + return new ResultUtil>().setData(result); + } + + /** + * 根据站点id查询所有站点信息 + * + * @param stationId + * @return Result> + * @author 王富康 + * @date 2024/8/28 + */ + @RequestMapping(value = "/getLogisticsLandingFeeRulesListByStationId", method = RequestMethod.POST) + @ApiOperation(value = "根据站点id查询所有落地费规则") + public Result> getLogisticsLandingFeeRulesListByStationId(String stationId) { + if (StringUtils.isEmpty(stationId)) { + return ResultUtil.error("站点信息不能为空!"); + } + final List result = logisticsLandingFeeRulesService.getLogisticsLandingFeeRulesListByStationId(stationId); + return new ResultUtil>().setData(result); + } + + /** + * 批量新增物流站点落地费规则 + * @author 王富康 + * @date 2024/9/6 + * @param logisticsLandingFeeRulesList + * @return Result + */ + @PostMapping(value = "/addLogisticsLandingFeeRulesList") + @ApiOperation("批量新增物流站点落地费规则") + public Result addLogisticsLandingFeeRulesList(@RequestBody List logisticsLandingFeeRulesList) { + + final boolean b = logisticsLandingFeeRulesService.saveBatch(logisticsLandingFeeRulesList); + if (b) { + return ResultUtil.success("保存成功!"); + } else { + return ResultUtil.error("保存失败!"); + } + } +} diff --git a/hiver-core/src/main/java/cc/hiver/core/logisticslandingfeerules/entity/LogisticsLandingFeeRules.java b/hiver-core/src/main/java/cc/hiver/core/logisticslandingfeerules/entity/LogisticsLandingFeeRules.java new file mode 100644 index 00000000..e5714330 --- /dev/null +++ b/hiver-core/src/main/java/cc/hiver/core/logisticslandingfeerules/entity/LogisticsLandingFeeRules.java @@ -0,0 +1,41 @@ +package cc.hiver.core.logisticslandingfeerules.entity; + +import cc.hiver.core.base.HiverBaseEntity; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.math.BigDecimal; + +/** + * 物流站点落地费规则实体 + * + * @author 王富康 + * @date 2024/8/24 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@ApiModel(value = "物流站点落地费规则表") +@TableName(value = "t_logistics_landing_fee_rules", autoResultMap = true) +public class LogisticsLandingFeeRules extends HiverBaseEntity { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "站点id") + private String stationId; + + @ApiModelProperty(value = "站点名称") + private String stationName; + + @ApiModelProperty(value = "起收点") + private BigDecimal minWeight; + + @ApiModelProperty(value = "终收点") + private BigDecimal maxWeight; + + @ApiModelProperty(value = "收费金额") + private BigDecimal price; + +} diff --git a/hiver-core/src/main/java/cc/hiver/core/logisticslandingfeerules/mapper/LogisticsLandingFeeRulesMapper.java b/hiver-core/src/main/java/cc/hiver/core/logisticslandingfeerules/mapper/LogisticsLandingFeeRulesMapper.java new file mode 100644 index 00000000..133eebe5 --- /dev/null +++ b/hiver-core/src/main/java/cc/hiver/core/logisticslandingfeerules/mapper/LogisticsLandingFeeRulesMapper.java @@ -0,0 +1,34 @@ +package cc.hiver.core.logisticslandingfeerules.mapper; + +import cc.hiver.core.logisticslandingfeerules.entity.LogisticsLandingFeeRules; +import cc.hiver.core.logisticslandingfeerules.vo.LogisticsLandingFeeRulesQueryVo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +public interface LogisticsLandingFeeRulesMapper extends BaseMapper { + + /** + * 分页查询物流站点落地费规则 + * + * @param page + * @param logisticsRouteQueryVo + * @return IPage + * @author 王富康 + * @date 2024/8/24 + */ + IPage getLogisticsLandingFeeRulesPageList(Page page, @Param("queryParams") LogisticsLandingFeeRulesQueryVo logisticsRouteQueryVo); + + /** + * 根据站点id查询所有落地费规则 + * + * @param stationId + * @return List + * @author 王富康 + * @date 2024/8/28 + */ + List getLogisticsLandingFeeRulesListByStationId(@Param("stationId")String stationId); +} diff --git a/hiver-core/src/main/java/cc/hiver/core/logisticslandingfeerules/service/LogisticsLandingFeeRulesService.java b/hiver-core/src/main/java/cc/hiver/core/logisticslandingfeerules/service/LogisticsLandingFeeRulesService.java new file mode 100644 index 00000000..5da4d7f9 --- /dev/null +++ b/hiver-core/src/main/java/cc/hiver/core/logisticslandingfeerules/service/LogisticsLandingFeeRulesService.java @@ -0,0 +1,31 @@ +package cc.hiver.core.logisticslandingfeerules.service; + +import cc.hiver.core.logisticslandingfeerules.entity.LogisticsLandingFeeRules; +import cc.hiver.core.logisticslandingfeerules.vo.LogisticsLandingFeeRulesQueryVo; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.List; + +public interface LogisticsLandingFeeRulesService extends IService { + + /** + * 分页查询物流站点落地费规则 + * + * @param logisticsRouteQueryVo + * @return IPage + * @author 王富康 + * @date 2024/8/24 + */ + IPage getLogisticsLandingFeeRulesPageList(LogisticsLandingFeeRulesQueryVo logisticsRouteQueryVo); + + /** + * 根据站点id查询所有落地费规则 + * + * @param stationId + * @return List + * @author 王富康 + * @date 2024/8/28 + */ + List getLogisticsLandingFeeRulesListByStationId(String stationId); +} diff --git a/hiver-core/src/main/java/cc/hiver/core/logisticslandingfeerules/service/impl/LogisticsLandingFeeRulesServiceImpl.java b/hiver-core/src/main/java/cc/hiver/core/logisticslandingfeerules/service/impl/LogisticsLandingFeeRulesServiceImpl.java new file mode 100644 index 00000000..ef523001 --- /dev/null +++ b/hiver-core/src/main/java/cc/hiver/core/logisticslandingfeerules/service/impl/LogisticsLandingFeeRulesServiceImpl.java @@ -0,0 +1,47 @@ +package cc.hiver.core.logisticslandingfeerules.service.impl; + +import cc.hiver.core.logisticslandingfeerules.entity.LogisticsLandingFeeRules; +import cc.hiver.core.logisticslandingfeerules.mapper.LogisticsLandingFeeRulesMapper; +import cc.hiver.core.logisticslandingfeerules.service.LogisticsLandingFeeRulesService; +import cc.hiver.core.logisticslandingfeerules.vo.LogisticsLandingFeeRulesQueryVo; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Service +public class LogisticsLandingFeeRulesServiceImpl extends ServiceImpl implements LogisticsLandingFeeRulesService { + + @Autowired + private LogisticsLandingFeeRulesMapper logisticsLandingFeeRulesMapper; + + /** + * 分页查询物流站点落地费规则 + * + * @param logisticsRouteQueryVo + * @return IPage + * @author 王富康 + * @date 2024/8/24 + */ + @Override + public IPage getLogisticsLandingFeeRulesPageList(LogisticsLandingFeeRulesQueryVo logisticsRouteQueryVo) { + final Page page = new Page<>(logisticsRouteQueryVo.getPageNum(), logisticsRouteQueryVo.getPageSize()); + return logisticsLandingFeeRulesMapper.getLogisticsLandingFeeRulesPageList(page, logisticsRouteQueryVo); + } + + /** + * 根据站点id查询所有落地费规则 + * + * @param String stationId + * @return List + * @author 王富康 + * @date 2024/8/28 + */ + @Override + public List getLogisticsLandingFeeRulesListByStationId(String stationId) { + return logisticsLandingFeeRulesMapper.getLogisticsLandingFeeRulesListByStationId(stationId); + } +} diff --git a/hiver-core/src/main/java/cc/hiver/core/logisticslandingfeerules/vo/LogisticsLandingFeeRulesQueryVo.java b/hiver-core/src/main/java/cc/hiver/core/logisticslandingfeerules/vo/LogisticsLandingFeeRulesQueryVo.java new file mode 100644 index 00000000..c22b9011 --- /dev/null +++ b/hiver-core/src/main/java/cc/hiver/core/logisticslandingfeerules/vo/LogisticsLandingFeeRulesQueryVo.java @@ -0,0 +1,24 @@ +package cc.hiver.core.logisticslandingfeerules.vo; + +import cc.hiver.core.base.HiverBasePageQuery; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * 物流站点落地费规则查询参数 + * @author 王富康 + * @date 2024/8/24 + */ +@Data +public class LogisticsLandingFeeRulesQueryVo extends HiverBasePageQuery { + + @ApiModelProperty(value = "站点id") + private String stationId; + + @ApiModelProperty(value = "线路id") + private String circuitId; + + @ApiModelProperty(value = "站点名称") + private String stationName; + +} diff --git a/hiver-core/src/main/java/cc/hiver/core/logisticsorder/controller/LogisticsOrderController.java b/hiver-core/src/main/java/cc/hiver/core/logisticsorder/controller/LogisticsOrderController.java index 2bd38e34..99c119f5 100644 --- a/hiver-core/src/main/java/cc/hiver/core/logisticsorder/controller/LogisticsOrderController.java +++ b/hiver-core/src/main/java/cc/hiver/core/logisticsorder/controller/LogisticsOrderController.java @@ -2,7 +2,9 @@ package cc.hiver.core.logisticsorder.controller; import cc.hiver.core.common.utils.PinYinUtils; import cc.hiver.core.common.utils.ResultUtil; +import cc.hiver.core.common.utils.SecurityUtil; import cc.hiver.core.common.vo.Result; +import cc.hiver.core.entity.LogiticsCompany; import cc.hiver.core.logisticsaddressbook.service.LogisticsAddressBookService; import cc.hiver.core.logisticsorder.entity.LogisticsOrder; import cc.hiver.core.logisticsorder.entity.LogisticsOrderChangeLog; @@ -42,6 +44,9 @@ public class LogisticsOrderController { @Autowired private LogisticsAddressBookService logisticsAddressBookService; + @Autowired + private SecurityUtil securityUtil; + @PostMapping(value = "/addLogisticsOrder") @ApiOperation("新增物流订单") public Result addLogisticsOrder(@RequestBody LogisticsOrder logisticsOrder) { @@ -57,7 +62,9 @@ public class LogisticsOrderController { } logisticsOrder.setOrderNumber(orderNumber); // 设置创建人姓名 - // logisticsOrder.setCreateByName(); + final LogiticsCompany logiticsCompany = securityUtil.getCurrCompany(); + logisticsOrder.setCreateBy(logiticsCompany.getId()); + logisticsOrder.setCreateByName(logiticsCompany.getContacts()); final boolean b = logisticsOrderService.saveOrUpdate(logisticsOrder); if (b) { //保存收发货人地址簿 @@ -84,6 +91,9 @@ public class LogisticsOrderController { } //先查询出旧的数据 LogisticsOrder oldLogisticsOrder = logisticsOrderService.getById(logisticsOrder.getId()); + // 设置创建人姓名 + final LogiticsCompany logiticsCompany = securityUtil.getCurrCompany(); + logisticsOrder.setUpdateBy(logiticsCompany.getId()); final boolean b = logisticsOrderService.saveOrUpdate(logisticsOrder); if (b) { //如果更新成功,把修改记录保存一下 diff --git a/hiver-core/src/main/java/cc/hiver/core/logisticsorder/entity/LogisticsOrder.java b/hiver-core/src/main/java/cc/hiver/core/logisticsorder/entity/LogisticsOrder.java index 8769a445..6d4eea97 100644 --- a/hiver-core/src/main/java/cc/hiver/core/logisticsorder/entity/LogisticsOrder.java +++ b/hiver-core/src/main/java/cc/hiver/core/logisticsorder/entity/LogisticsOrder.java @@ -1,14 +1,23 @@ package cc.hiver.core.logisticsorder.entity; -import cc.hiver.core.base.HiverBaseEntity; +import cc.hiver.core.common.constant.CommonConstant; +import cc.hiver.core.common.utils.SnowFlakeUtil; import cc.hiver.core.logisticsorder.vo.CompareField; +import com.baomidou.mybatisplus.annotation.FieldFill; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import lombok.EqualsAndHashCode; +import org.springframework.data.annotation.CreatedDate; +import org.springframework.data.annotation.LastModifiedDate; +import org.springframework.format.annotation.DateTimeFormat; +import javax.persistence.Id; import java.math.BigDecimal; +import java.util.Date; /** * 物流中转实体 @@ -16,14 +25,43 @@ import java.math.BigDecimal; * @author 王富康 * @date 2024/8/24 */ -@EqualsAndHashCode(callSuper = true) @Data @ApiModel(value = "物流订单表") @TableName(value = "t_logistics_order", autoResultMap = true) -public class LogisticsOrder extends HiverBaseEntity { +public class LogisticsOrder{ private static final long serialVersionUID = 1L; + @Id + @TableId + @ApiModelProperty(value = "唯一标识") + private String id = SnowFlakeUtil.nextId().toString(); + + @ApiModelProperty(value = "创建者") + @TableField(fill = FieldFill.INSERT) + private String createBy; + + @CreatedDate + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "创建时间") + @TableField(fill = FieldFill.INSERT) + private Date createTime; + + @ApiModelProperty(value = "更新者") + @TableField(fill = FieldFill.UPDATE) + private String updateBy; + + @LastModifiedDate + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "更新时间") + @TableField(fill = FieldFill.UPDATE) + private Date updateTime; + + @ApiModelProperty(value = "删除标志 默认0") + private Integer delFlag = CommonConstant.STATUS_NORMAL; + @CompareField(name = "操作人姓名") @ApiModelProperty(value = "操作人姓名") private String createByName; diff --git a/hiver-core/src/main/java/cc/hiver/core/logisticsorder/vo/LogisticsOrderQueryVo.java b/hiver-core/src/main/java/cc/hiver/core/logisticsorder/vo/LogisticsOrderQueryVo.java index 68e0f27b..f56b4f76 100644 --- a/hiver-core/src/main/java/cc/hiver/core/logisticsorder/vo/LogisticsOrderQueryVo.java +++ b/hiver-core/src/main/java/cc/hiver/core/logisticsorder/vo/LogisticsOrderQueryVo.java @@ -75,5 +75,8 @@ public class LogisticsOrderQueryVo extends HiverBasePageQuery { @ApiModelProperty(value = "搜索字段") private String searchStr; + @ApiModelProperty(value = "是否有修改记录的筛选") + private String isUpdate; + } diff --git a/hiver-core/src/main/resources/mapper/LogisticsLandingFeeRulesMapper.xml b/hiver-core/src/main/resources/mapper/LogisticsLandingFeeRulesMapper.xml new file mode 100644 index 00000000..e1c15a9c --- /dev/null +++ b/hiver-core/src/main/resources/mapper/LogisticsLandingFeeRulesMapper.xml @@ -0,0 +1,158 @@ + + + + + + + + + + + + + + + + + + + id, create_by, create_time, del_flag, update_by, update_time, station_id, station_name, min_weight, max_weight, price + + + + + + delete from t_logistics_landing_fee_rules + where id = #{id,jdbcType=VARCHAR} + + + + insert into t_logistics_landing_fee_rules + (id, create_by, create_time, del_flag, update_by, update_time, station_id, station_name, min_weight, max_weight, price) + values (#{id,jdbcType=VARCHAR}, #{createBy,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, + #{delFlag,jdbcType=INTEGER}, #{updateBy,jdbcType=VARCHAR}, #{updateTime,jdbcType=TIMESTAMP}, + #{record.stationId,jdbcType=VARCHAR}, #{record.stationName,jdbcType=VARCHAR}, #{record.minWeight,jdbcType=DECIMAL}, + #{record.maxWeight,jdbcType=DECIMAL}, #{record.price,jdbcType=DECIMAL}) + + + + update t_logistics_landing_fee_rules + + + id = #{record.id,jdbcType=VARCHAR}, + + + create_by = #{record.createBy,jdbcType=VARCHAR}, + + + create_time = #{record.createTime,jdbcType=TIMESTAMP}, + + + del_flag = #{record.delFlag,jdbcType=INTEGER}, + + + update_by = #{record.updateBy,jdbcType=VARCHAR}, + + + update_time = #{record.updateTime,jdbcType=TIMESTAMP}, + + + station_id = #{record.stationId,jdbcType=VARCHAR}, + + + station_name = #{record.stationName,jdbcType=VARCHAR}, + + + min_weight = #{record.minWeight,jdbcType=DECIMAL}, + + + max_weight = #{record.maxWeight,jdbcType=DECIMAL}, + + + price = #{record.price,jdbcType=DECIMAL}, + + + + + + update t_logistics_landing_fee_rules + set id = #{record.id,jdbcType=VARCHAR}, + create_by = #{record.createBy,jdbcType=VARCHAR}, + create_time = #{record.createTime,jdbcType=TIMESTAMP}, + del_flag = #{record.delFlag,jdbcType=INTEGER}, + update_by = #{record.updateBy,jdbcType=VARCHAR}, + update_time = #{record.updateTime,jdbcType=TIMESTAMP}, + station_id = #{record.stationId,jdbcType=VARCHAR}, + station_name = #{record.stationName,jdbcType=VARCHAR}, + min_weight = #{record.minWeight,jdbcType=DECIMAL}, + max_weight = #{record.maxWeight,jdbcType=DECIMAL}, + price = #{record.price,jdbcType=DECIMAL} + where id = #{record.id,jdbcType=VARCHAR} + + + + update t_logistics_landing_fee_rules + + + create_by = #{createBy,jdbcType=VARCHAR}, + + + create_time = #{createTime,jdbcType=TIMESTAMP}, + + + del_flag = #{delFlag,jdbcType=INTEGER}, + + + update_by = #{updateBy,jdbcType=VARCHAR}, + + + update_time = #{updateTime,jdbcType=TIMESTAMP}, + + + station_id = #{stationId,jdbcType=VARCHAR}, + + + station_name = #{stationName,jdbcType=VARCHAR}, + + + min_weight = #{minWeight,jdbcType=DECIMAL}, + + + max_weight = #{maxWeight,jdbcType=DECIMAL}, + + + price = #{price,jdbcType=DECIMAL}, + + + where id = #{id,jdbcType=VARCHAR} + + + + update t_logistics_landing_fee_rules + set create_by = #{createBy,jdbcType=VARCHAR}, + create_time = #{createTime,jdbcType=TIMESTAMP}, + del_flag = #{delFlag,jdbcType=INTEGER}, + update_by = #{updateBy,jdbcType=VARCHAR}, + update_time = #{updateTime,jdbcType=TIMESTAMP}, + station_id = #{stationId,jdbcType=VARCHAR}, + station_name = #{stationName,jdbcType=VARCHAR}, + min_weight = #{minWeight,jdbcType=DECIMAL}, + max_weight = #{maxWeight,jdbcType=DECIMAL}, + price = #{price,jdbcType=DECIMAL} + where id = #{id,jdbcType=VARCHAR} + + + + \ No newline at end of file diff --git a/hiver-core/src/main/resources/mapper/LogisticsOrderMapper.xml b/hiver-core/src/main/resources/mapper/LogisticsOrderMapper.xml index d0885d13..e961a6bd 100644 --- a/hiver-core/src/main/resources/mapper/LogisticsOrderMapper.xml +++ b/hiver-core/src/main/resources/mapper/LogisticsOrderMapper.xml @@ -145,6 +145,14 @@ or receiver_mobile like concat('%',#{queryParams.searchStr},'%') ) + + + and exists ( + select 1 + from t_logistics_order_change_log tloc + where id = tloc.order_id + ) + ORDER BY create_time desc diff --git a/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/controller/CustomerController.java b/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/controller/CustomerController.java index 5c7e1526..ecc5fe12 100644 --- a/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/controller/CustomerController.java +++ b/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/controller/CustomerController.java @@ -227,4 +227,26 @@ public class CustomerController { return new ResultUtil>().setData(list); } + /** + * 根据客户手机号及店铺id精准查询查询客户列表 + * @author 王富康 + * @date 2024/9/6 + * @param userPhone + * @param shopId + * @return Result + */ + @RequestMapping(value = "/findByUserPhoneAndShopId", method = RequestMethod.POST) + @ApiOperation("根据客户手机号及店铺id精准查询查询客户列表") + public Result findByUserPhoneAndShopId(String userPhone, String shopId) { + if(StringUtils.isEmpty(userPhone)){ + return ResultUtil.error("用户手机号不能为空"); + } + if(StringUtils.isEmpty(userPhone)){ + return ResultUtil.error("店铺id不能为空"); + } + // shopId从缓存中设置 + final List list = customerService.findByUserPhoneAndShopId(userPhone, shopId); + return new ResultUtil>().setData(list); + } + } diff --git a/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/dao/mapper/CustomerMapper.java b/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/dao/mapper/CustomerMapper.java index ba203798..692475ec 100644 --- a/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/dao/mapper/CustomerMapper.java +++ b/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/dao/mapper/CustomerMapper.java @@ -48,4 +48,6 @@ public interface CustomerMapper extends BaseMapper { boolean batchDeleteCustomer(@Param("idList") List idList); List findByUserName(@Param("userName") String userName,@Param("shopId") String shopId); + + List findByUserPhoneAndShopId(@Param("userPhone") String userPhone,@Param("shopId") String shopId); } \ No newline at end of file diff --git a/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/pojo/dto/SaleQueryDTO.java b/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/pojo/dto/SaleQueryDTO.java index e18231aa..7ca66e87 100644 --- a/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/pojo/dto/SaleQueryDTO.java +++ b/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/pojo/dto/SaleQueryDTO.java @@ -30,6 +30,9 @@ public class SaleQueryDTO implements Serializable { @ApiModelProperty(value = "客户手机号") private String mobile; + @ApiModelProperty(value = "客户id") + private String userId; + @ApiModelProperty(value = "客户名称") private String username; diff --git a/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/purchaseocr/controller/PurchaseOcrPictureController.java b/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/purchaseocr/controller/PurchaseOcrPictureController.java index 04f34083..794e1fdc 100644 --- a/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/purchaseocr/controller/PurchaseOcrPictureController.java +++ b/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/purchaseocr/controller/PurchaseOcrPictureController.java @@ -24,7 +24,7 @@ import java.util.List; @Slf4j @RestController -@Api(tags = "问题反馈接口") +@Api(tags = "入库AI接口") @RequestMapping("/hiver/purchaseOcrPicture/") @Transactional public class PurchaseOcrPictureController { diff --git a/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/service/mybatis/CustomerService.java b/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/service/mybatis/CustomerService.java index e9ad2548..b3ef00e1 100644 --- a/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/service/mybatis/CustomerService.java +++ b/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/service/mybatis/CustomerService.java @@ -24,4 +24,14 @@ public interface CustomerService extends IService { boolean batchDeleteCustomer(String ids); List findByUserName(String userName); + + /** + * 根据客户手机号及店铺id精准查询查询客户列表 + * @author 王富康 + * @date 2024/9/6 + * @param userPhone + * @param shopId + * @return List + */ + List findByUserPhoneAndShopId(String userPhone, String shopId); } diff --git a/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/serviceimpl/SalesAndDetailsServiceImpl.java b/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/serviceimpl/SalesAndDetailsServiceImpl.java index de1c7995..479bec78 100644 --- a/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/serviceimpl/SalesAndDetailsServiceImpl.java +++ b/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/serviceimpl/SalesAndDetailsServiceImpl.java @@ -451,92 +451,95 @@ public class SalesAndDetailsServiceImpl implements SalesAndDetailsService { User byMobile; String customerId = ""; if (StringUtils.isNotEmpty(saleQueryDTO.getMobile())) { - byMobile = userService.findByMobile(saleQueryDTO.getMobile()); - if (byMobile == null) { - //默认密码 - final String encryptPass = new BCryptPasswordEncoder().encode("123456"); - final User user = new User(); - user.setUsername(saleQueryDTO.getMobile()); - user.setNickname(saleQueryDTO.getUsername()); - user.setAddress(saleQueryDTO.getSale().getReceiveAddress()); - //客户 - user.setType(UserConstant.USER_TYPE_CUSTOM); - user.setMobile(saleQueryDTO.getMobile()); - user.setPassword(encryptPass); - byMobile = userService.save(user); - // 保存用户id - saleQueryDTO.getSale().setUserId(byMobile.getId()); - // 保存用户角色 - final UserRole userRole = new UserRole(); - final PageVo pageVo = new PageVo(); - pageVo.setPageNumber(1); - pageVo.setPageSize(1); - final Page rolePage = roleService.findByCondition("ROLE_CUSTOMER", PageUtil.initPage(pageVo)); - final Role role = rolePage.getContent().get(0); - //客户角色 - userRole.setRoleId(role.getId()); - userRole.setRoleName("客户"); - userRole.setUserId(byMobile.getId()); - userRoleService.save(userRole); - } else { - // 该手机号已存在 - if (!byMobile.getType().contains(UserConstant.USER_TYPE_CUSTOM)) { - //没有客户权限,那么添加客户权限 - final String type = byMobile.getType(); - if (StringUtils.isEmpty(type)) { - byMobile.setType(UserConstant.USER_TYPE_CUSTOM); - } else { - byMobile.setType(byMobile.getType() + ',' + UserConstant.USER_TYPE_CUSTOM); + // 20240906如果前台传了客户id了,不要新增客户了就 + if(StringUtils.isEmpty(saleQueryDTO.getUserId())){ + byMobile = userService.findByMobile(saleQueryDTO.getMobile()); + if (byMobile == null) { + //默认密码 + final String encryptPass = new BCryptPasswordEncoder().encode("123456"); + final User user = new User(); + user.setUsername(saleQueryDTO.getMobile()); + user.setNickname(saleQueryDTO.getUsername()); + user.setAddress(saleQueryDTO.getSale().getReceiveAddress()); + //客户 + user.setType(UserConstant.USER_TYPE_CUSTOM); + user.setMobile(saleQueryDTO.getMobile()); + user.setPassword(encryptPass); + byMobile = userService.save(user); + // 保存用户id + saleQueryDTO.getSale().setUserId(byMobile.getId()); + // 保存用户角色 + final UserRole userRole = new UserRole(); + final PageVo pageVo = new PageVo(); + pageVo.setPageNumber(1); + pageVo.setPageSize(1); + final Page rolePage = roleService.findByCondition("ROLE_CUSTOMER", PageUtil.initPage(pageVo)); + final Role role = rolePage.getContent().get(0); + //客户角色 + userRole.setRoleId(role.getId()); + userRole.setRoleName("客户"); + userRole.setUserId(byMobile.getId()); + userRoleService.save(userRole); + } else { + // 该手机号已存在 + if (!byMobile.getType().contains(UserConstant.USER_TYPE_CUSTOM)) { + //没有客户权限,那么添加客户权限 + final String type = byMobile.getType(); + if (StringUtils.isEmpty(type)) { + byMobile.setType(UserConstant.USER_TYPE_CUSTOM); + } else { + byMobile.setType(byMobile.getType() + ',' + UserConstant.USER_TYPE_CUSTOM); + } + byMobile = userService.save(byMobile); } - byMobile = userService.save(byMobile); } - } - - customer.setUserId(byMobile.getId()); - customer.setCreateTime(new Date()); - customer.setDelFlag(CommonConstant.DEL_FLAG_FALSE); - customer.setName(saleQueryDTO.getUsername()); - customer.setPhone(saleQueryDTO.getMobile()); - customer.setAddress(saleQueryDTO.getSale().getReceiveAddress()); - customer.setProvince(saleQueryDTO.getSale().getProvince()); - customer.setCity(saleQueryDTO.getSale().getCity()); - customer.setArea(saleQueryDTO.getSale().getArea()); - customer.setShopId(saleQueryDTO.getSale().getShopId()); - customerService.save(customer); - // 获取新增的客户id - customerId = customer.getId(); - // 客户欠款信息 - final BigDecimal amountOwed = customer.getAmountOwed() == null ? BigDecimal.ZERO : customer.getAmountOwed(); - - - debt.setCreateTime(new Date()); - debt.setUserId(customer.getId()); - debt.setShopId(saleQueryDTO.getSale().getShopId()); - debt.setUserPhone(customer.getPhone()); - debt.setUserAdress(customer.getAddress()); - debt.setUserName(customer.getName()); - debt.setAmountOwed(amountOwed); - debt.setUserType(DebtConstant.USER_TYPE[0]); - debtService.save(debt); - // 新增交易记录 - dealingsRecord.setCreateTime(new Date()); - dealingsRecord.setDealingsUserId(customer.getId()); - dealingsRecord.setDealingsUserName(customer.getName()); - dealingsRecord.setUserType(DealingsRecordConstant.TYPE[1]); - dealingsRecord.setDealingsWay("新增客户"); - dealingsRecord.setShopId(saleQueryDTO.getSale().getShopId()); - // 销售金额 - dealingsRecord.setSaleAmount(BigDecimal.ZERO); - // 退货金额 - dealingsRecord.setReturnAmount(BigDecimal.ZERO); - // 上次欠款 - dealingsRecord.setLastDebtAmount(BigDecimal.ZERO); - // 最新欠款 - dealingsRecord.setBalanceDue(amountOwed); - dealingsRecord.setAmount(amountOwed); - dealingsRecord.setDealingsType(DealingsRecordConstant.DEALINGS_TYPE[3]); - dealingsRecordService.save(dealingsRecord); + customer.setUserId(byMobile.getId()); + customer.setCreateTime(new Date()); + customer.setDelFlag(CommonConstant.DEL_FLAG_FALSE); + customer.setName(saleQueryDTO.getUsername()); + customer.setPhone(saleQueryDTO.getMobile()); + customer.setAddress(saleQueryDTO.getSale().getReceiveAddress()); + customer.setProvince(saleQueryDTO.getSale().getProvince()); + customer.setCity(saleQueryDTO.getSale().getCity()); + customer.setArea(saleQueryDTO.getSale().getArea()); + customer.setShopId(saleQueryDTO.getSale().getShopId()); + customerService.save(customer); + // 客户id拿新增的 + customerId = customer.getId(); + // 客户欠款信息 + final BigDecimal amountOwed = customer.getAmountOwed() == null ? BigDecimal.ZERO : customer.getAmountOwed(); + debt.setCreateTime(new Date()); + debt.setUserId(customer.getId()); + debt.setShopId(saleQueryDTO.getSale().getShopId()); + debt.setUserPhone(customer.getPhone()); + debt.setUserAdress(customer.getAddress()); + debt.setUserName(customer.getName()); + debt.setAmountOwed(amountOwed); + debt.setUserType(DebtConstant.USER_TYPE[0]); + debtService.save(debt); + // 新增交易记录 + dealingsRecord.setCreateTime(new Date()); + dealingsRecord.setDealingsUserId(customer.getId()); + dealingsRecord.setDealingsUserName(customer.getName()); + dealingsRecord.setUserType(DealingsRecordConstant.TYPE[1]); + dealingsRecord.setDealingsWay("新增客户"); + dealingsRecord.setShopId(saleQueryDTO.getSale().getShopId()); + // 销售金额 + dealingsRecord.setSaleAmount(BigDecimal.ZERO); + // 退货金额 + dealingsRecord.setReturnAmount(BigDecimal.ZERO); + // 上次欠款 + dealingsRecord.setLastDebtAmount(BigDecimal.ZERO); + // 最新欠款 + dealingsRecord.setBalanceDue(amountOwed); + dealingsRecord.setAmount(amountOwed); + dealingsRecord.setDealingsType(DealingsRecordConstant.DEALINGS_TYPE[3]); + dealingsRecordService.save(dealingsRecord); + }else{ + // 客户id拿前台传的 + customerId = saleQueryDTO.getUserId(); + } } else { log.error("下游客户未填写手机号!"); return null; diff --git a/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/serviceimpl/mybatis/CustomerServiceImpl.java b/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/serviceimpl/mybatis/CustomerServiceImpl.java index 39e5da0d..ea202481 100644 --- a/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/serviceimpl/mybatis/CustomerServiceImpl.java +++ b/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/serviceimpl/mybatis/CustomerServiceImpl.java @@ -214,4 +214,9 @@ public class CustomerServiceImpl extends ServiceImpl i String shopId = securityUtil.getShopId(); return customerMapper.findByUserName(userName,shopId); } + + @Override + public List findByUserPhoneAndShopId(String userPhone, String shopId) { + return customerMapper.findByUserPhoneAndShopId(userPhone,shopId); + } } diff --git a/hiver-modules/hiver-mall/src/main/resources/mapper/CustomerMapper.xml b/hiver-modules/hiver-mall/src/main/resources/mapper/CustomerMapper.xml index 2067b6b3..2b5e37d7 100644 --- a/hiver-modules/hiver-mall/src/main/resources/mapper/CustomerMapper.xml +++ b/hiver-modules/hiver-mall/src/main/resources/mapper/CustomerMapper.xml @@ -459,4 +459,13 @@ and a.shop_id = #{shopId,jdbcType=VARCHAR} and a.name = #{userName,jdbcType=VARCHAR} + + \ No newline at end of file