Commit cb720a7afe390af265a9ed765fd47b43c45a7863

Authored by yangfan
2 parents 5f41a972 7c177029
src/main/java/com/diligrp/xtrade/order/domain/builder/DefaultOrderCreator.java
... ... @@ -33,21 +33,32 @@ public class DefaultOrderCreator {
33 33  
34 34 private OrderCreateRequestDto orderCreateDto;
35 35  
36   - private DefaultOrderCreator(AccountDto saccountDto, OrderCreateRequestDto orderCreateDto) {
  36 + private DefaultOrderCreator(AccountDto saccountDto, AccountDto baccountDto, OrderCreateRequestDto orderCreateDto) {
37 37 this.saccountDto = saccountDto;
38 38 this.orderCreateDto = orderCreateDto;
  39 + this.baccountDto = baccountDto;
39 40 }
40 41  
41 42 public static DefaultOrderCreator builder(AccountDto saccountDto, OrderCreateRequestDto orderCreateDto,
42 43 Long orderId) {
43 44 orderCreateDto.setOrderId(orderId);
44   - return new DefaultOrderCreator(saccountDto, orderCreateDto);
  45 + return new DefaultOrderCreator(saccountDto, null, orderCreateDto);
  46 + }
  47 +
  48 + public static DefaultOrderCreator builder(AccountDto saccountDto, AccountDto baccountDto,
  49 + OrderCreateRequestDto orderCreateDto, Long orderId) {
  50 + orderCreateDto.setOrderId(orderId);
  51 + return new DefaultOrderCreator(saccountDto, baccountDto, orderCreateDto);
  52 + }
  53 +
  54 + public static DefaultOrderCreator builder(AccountDto baccountDto) {
  55 + return new DefaultOrderCreator(null, baccountDto, null);
45 56 }
46 57  
47 58 public OrderDo createOrder() {
48 59 return this.orderDo;
49 60 }
50   -
  61 +
51 62 public List<OrderItemDo> createOrderItems() {
52 63 return this.items;
53 64 }
... ...
src/main/java/com/diligrp/xtrade/order/domain/dto/OrderQueryResponseDto.java
... ... @@ -82,6 +82,9 @@ public class OrderQueryResponseDto {
82 82 //支付时间
83 83 private LocalDateTime payTime;
84 84  
  85 + //创建时间
  86 + private LocalDateTime createdTime;
  87 +
85 88 //订单详情
86 89 private List<OrderItemDto> items = new ArrayList<OrderItemDto>();
87 90  
... ... @@ -280,5 +283,13 @@ public class OrderQueryResponseDto {
280 283 public void setOrderType(Integer orderType) {
281 284 this.orderType = orderType;
282 285 }
  286 +
  287 + public LocalDateTime getCreatedTime() {
  288 + return createdTime;
  289 + }
  290 +
  291 + public void setCreatedTime(LocalDateTime createdTime) {
  292 + this.createdTime = createdTime;
  293 + }
283 294  
284 295 }
... ...
src/main/java/com/diligrp/xtrade/order/rpc/feign/AccountResolver.java
1   -package com.diligrp.xtrade.order.rpc.feign;
2   -
3   -import javax.annotation.Resource;
4   -
5   -import org.springframework.http.HttpStatus;
6   -import org.springframework.stereotype.Component;
7   -
8   -import com.diligrp.xtrade.order.domain.dto.AccountDto;
9   -import com.diligrp.xtrade.order.exception.OrderException;
10   -import com.diligrp.xtrade.shared.domain.Message;
11   -
12   -/**
13   - * @ClassName: AccountResolver
14   - * @Description 远程卡务调用解析
15   - * @author zhangxing
16   - * @date 2020年4月22日
17   - */
18   -@Component
19   -public class AccountResolver {
20   -
21   - @Resource
22   - private AccountRPC accountRPC;
23   -
24   - /**
25   - * 根据id获取账户信息
26   - */
27   - public AccountDto getAccount(Long accountId) {
28   - Message<AccountDto> message = accountRPC.getDltAccount(accountId);
29   - if (!HttpStatus.OK.equals(message.getCode())) {
30   - throw new OrderException(message.getMessage());
31   - }
32   - return message.getData();
33   - }
34   -}
  1 +package com.diligrp.xtrade.order.rpc.feign;
  2 +
  3 +import javax.annotation.Resource;
  4 +
  5 +import org.springframework.http.HttpStatus;
  6 +import org.springframework.stereotype.Component;
  7 +
  8 +import com.diligrp.xtrade.order.domain.dto.AccountDto;
  9 +import com.diligrp.xtrade.order.exception.OrderException;
  10 +import com.diligrp.xtrade.shared.domain.Message;
  11 +
  12 +/**
  13 + * @ClassName: AccountResolver
  14 + * @Description 远程卡务调用解析
  15 + * @author zhangxing
  16 + * @date 2020年4月22日
  17 + */
  18 +@Component
  19 +public class AccountResolver {
  20 +
  21 + @Resource
  22 + private AccountRPC accountRPC;
  23 +
  24 + /**
  25 + * 根据id获取账户信息
  26 + */
  27 + public AccountDto getAccount(Long accountId) {
  28 + Message<AccountDto> message = accountRPC.getDltAccount(accountId);
  29 + if (HttpStatus.OK.value() != message.getCode()) {
  30 + throw new OrderException(message.getMessage());
  31 + }
  32 + return message.getData();
  33 + }
  34 +}
... ...
src/main/java/com/diligrp/xtrade/order/service/OrderService.java
1 1 package com.diligrp.xtrade.order.service;
2 2  
3   -import java.util.List;
4   -
5 3 import com.diligrp.xtrade.order.domain.dto.OrderCreateRequestDto;
6 4 import com.diligrp.xtrade.order.domain.dto.OrderQueryRequestDto;
7 5 import com.diligrp.xtrade.order.domain.dto.OrderQueryResponseDto;
  6 +import com.diligrp.xtrade.shared.domain.Page;
8 7  
9 8 /**
10 9 *
... ... @@ -25,7 +24,7 @@ public interface OrderService {
25 24 * @Title orderLists
26 25 * @Description 获取订单列表
27 26 */
28   - List<OrderQueryResponseDto> orderLists(OrderQueryRequestDto orderQueryRequestDto);
  27 + Page<OrderQueryResponseDto> orderLists(OrderQueryRequestDto orderQueryRequestDto);
29 28  
30 29 /**
31 30 * @Title orderDetail
... ...
src/main/java/com/diligrp/xtrade/order/service/impl/OrderServiceImpl.java
... ... @@ -22,6 +22,7 @@ import com.diligrp.xtrade.order.domain.emuns.IdGenerator;
22 22 import com.diligrp.xtrade.order.domain.entity.OrderDo;
23 23 import com.diligrp.xtrade.order.rpc.feign.AccountResolver;
24 24 import com.diligrp.xtrade.order.service.OrderService;
  25 +import com.diligrp.xtrade.shared.domain.Page;
25 26 import com.diligrp.xtrade.shared.sequence.KeyGeneratorManager;
26 27  
27 28 @Service("orderService")
... ... @@ -67,17 +68,23 @@ public class OrderServiceImpl implements OrderService {
67 68  
68 69 // TODO need modify because of change
69 70 @Override
70   - public List<OrderQueryResponseDto> orderLists(OrderQueryRequestDto orderQueryRequestDto) {
  71 + public Page<OrderQueryResponseDto> orderLists(OrderQueryRequestDto orderQueryRequestDto) {
  72 + Page<OrderQueryResponseDto> orderPage = new Page<OrderQueryResponseDto>();
  73 + List<OrderQueryResponseDto> roResponseDtos = new ArrayList<OrderQueryResponseDto>();
  74 + orderPage.setData(roResponseDtos);
71 75 OrderDo order = new OrderDo();
72 76 BeanUtils.copyProperties(orderQueryRequestDto, order);
  77 + int total = orderDao.selectEntryListCount(order);
  78 + if (total == 0) {
  79 + return orderPage;
  80 + }
73 81 List<OrderDo> orderDos = orderDao.selectEntryList(order);
74   - List<OrderQueryResponseDto> roResponseDtos = new ArrayList<OrderQueryResponseDto>();
75 82 for (OrderDo orderDo : orderDos) {
76 83 OrderQueryResponseDto orderQueryResponseDto = new OrderQueryResponseDto();
77 84 BeanUtils.copyProperties(orderDo, orderQueryResponseDto);
78 85 roResponseDtos.add(orderQueryResponseDto);
79 86 }
80   - return roResponseDtos;
  87 + return orderPage;
81 88 }
82 89  
83 90 // TODO need modify because of change
... ...
src/main/java/com/diligrp/xtrade/product/dao/ShopDao.java
... ... @@ -6,24 +6,26 @@ import org.apache.ibatis.annotations.Mapper;
6 6  
7 7 import com.diligrp.xtrade.product.domain.dto.ShopQueryDto;
8 8 import com.diligrp.xtrade.product.domain.entity.ShopDo;
  9 +import org.apache.ibatis.annotations.Param;
  10 +
9 11 /**
10   - *
  12 + * @author yangfan
11 13 * @ClassName: ShopDao
12 14 * @Description 店铺dao
13   - * @author yangfan
14 15 * @date 2020年4月21日
15 16 */
16 17 @Mapper
17 18 public interface ShopDao {
18   -
19   - void insert(ShopDo shop);
20   -
21   - void update(ShopDo shop);
22   -
23   - ShopDo selectByShopId(Long shopId);
24   -
25   - List<ShopDo> selectByMerId(Long merId);
26   -
27   - List<ShopDo> selectShop(ShopQueryDto shopQueryDto);
28   -
  19 +
  20 + void insert(ShopDo shop);
  21 +
  22 + void update(ShopDo shop);
  23 +
  24 + ShopDo selectByShopId(Long shopId);
  25 +
  26 + List<ShopDo> selectByMerId(Long merId);
  27 +
  28 + List<ShopDo> selectShop(ShopQueryDto shopQueryDto);
  29 +
  30 + void updateTypeByMerId(@Param("type") Integer type, @Param("merId") Long merId);
29 31 }
... ...
src/main/java/com/diligrp/xtrade/product/domain/builder/MerchantAccountBuilder.java 0 → 100644
  1 +package com.diligrp.xtrade.product.domain.builder;
  2 +
  3 +import com.alibaba.nacos.common.utils.Md5Utils;
  4 +import com.diligrp.xtrade.product.domain.dto.MerchantRequestDto;
  5 +import com.diligrp.xtrade.product.domain.emuns.AccountStatus;
  6 +import com.diligrp.xtrade.product.domain.entity.AccountDo;
  7 +
  8 +import java.time.LocalDateTime;
  9 +
  10 +/**
  11 + * @Auther: miaoguoxin
  12 + * @Date: 2020/4/23 09:23
  13 + */
  14 +public class MerchantAccountBuilder {
  15 +
  16 + public static AccountDo buildDoFromMerchant(MerchantRequestDto requestDto, Long merId) {
  17 + String password = String.format("%s_%s",
  18 + requestDto.getAccountName(), requestDto.getPassword());
  19 + AccountDo newAccountDo = new AccountDo();
  20 + newAccountDo.setName(requestDto.getAccountName());
  21 + newAccountDo.setRealName(requestDto.getRealName());
  22 + newAccountDo.setPassword(Md5Utils.getMD5(password, "UTF-8"));
  23 + newAccountDo.setMobile(requestDto.getMobile());
  24 + newAccountDo.setStatus(AccountStatus.NORMAL.getCode());
  25 + newAccountDo.setIsAdmin(1);
  26 + newAccountDo.setMerId(merId);
  27 + newAccountDo.setCreatedTime(LocalDateTime.now());
  28 + return newAccountDo;
  29 + }
  30 +}
... ...
src/main/java/com/diligrp/xtrade/product/domain/builder/MerchantBuilder.java
... ... @@ -16,10 +16,10 @@ import java.util.Optional;
16 16 */
17 17 public class MerchantBuilder {
18 18  
19   - public static MerchantDo request2Entity(MerchantRequestDto requestDto) {
  19 + public static MerchantDo buildDoFromRequest(MerchantRequestDto requestDto) {
20 20 Integer type = Optional.ofNullable(requestDto.getAccountType())
21 21 .map(AccountType::getCode)
22   - .orElse(0);
  22 + .orElse(null);
23 23 MerchantDo merchantDo = new MerchantDo();
24 24 merchantDo.setMerName(requestDto.getMerchantName());
25 25 merchantDo.setAccountId(requestDto.getAccountId());
... ... @@ -30,7 +30,7 @@ public class MerchantBuilder {
30 30 return merchantDo;
31 31 }
32 32  
33   - public static MerchantResponseDto entity2Response(MerchantDo merchantDo){
  33 + public static MerchantResponseDto buildResponseFromDo(MerchantDo merchantDo){
34 34 MerchantResponseDto responseDto = new MerchantResponseDto();
35 35 BeanUtils.copyProperties(merchantDo,responseDto);
36 36 responseDto.setType(AccountType.getAccountType(merchantDo.getType()));
... ...
src/main/java/com/diligrp/xtrade/product/repository/AccountRepository.java
1 1 package com.diligrp.xtrade.product.repository;
2 2  
  3 +import com.diligrp.xtrade.product.domain.emuns.IKeyGeneratorKeys;
3 4 import com.diligrp.xtrade.product.domain.entity.AccountDo;
4 5 import com.diligrp.xtrade.product.domain.entity.OperatorDo;
  6 +import com.diligrp.xtrade.shared.sequence.IKeyGenerator;
  7 +import com.diligrp.xtrade.shared.sequence.KeyGeneratorManager;
  8 +import org.springframework.beans.factory.annotation.Autowired;
5 9 import org.springframework.stereotype.Repository;
6 10  
7 11 import java.util.ArrayList;
... ... @@ -15,6 +19,8 @@ import java.util.List;
15 19 @Repository
16 20 public class AccountRepository implements IAccountRepository {
17 21 private final static List<AccountDo> ACCOUNT_DOS = new ArrayList<>();
  22 + @Autowired
  23 + private KeyGeneratorManager keyGeneratorManager;
18 24 @Override
19 25 public OperatorDo getOperator() {
20 26 OperatorDo operatorDo = new OperatorDo();
... ... @@ -35,6 +41,8 @@ public class AccountRepository implements IAccountRepository {
35 41  
36 42 @Override
37 43 public void add(AccountDo accountDo) {
  44 + IKeyGenerator keyGenerator = keyGeneratorManager.getKeyGenerator(IKeyGeneratorKeys.ACCOUNT_SEQUENCE);
  45 + accountDo.setId(keyGenerator.nextId());
38 46 ACCOUNT_DOS.add(accountDo);
39 47 }
40 48 }
... ...
src/main/java/com/diligrp/xtrade/product/repository/MerchantRepository.java
... ... @@ -42,16 +42,11 @@ public class MerchantRepository implements IMerchantRepository {
42 42 public void add(MerchantDo newMerchantDo) {
43 43 IKeyGenerator keyGenerator = keyGeneratorManager.getKeyGenerator(IKeyGeneratorKeys.MERCHANT_SEQUENCE);
44 44 newMerchantDo.setMerId(keyGenerator.nextId());
45   - newMerchantDo.setMarketId("SY001");
46 45 merchantDao.insert(newMerchantDo);
47 46 }
48 47  
49 48 @Override
50 49 public void update(MerchantDo merchantDo) {
51   - merchantDo.setModifiedTime(LocalDateTime.now());
52   - ShopDo shopDo = new ShopDo();
53   - shopDo.setType(AccountType.PUBLIC.getCode());
54   - shopDo.setMerId(merchantDo.getMerId());
55   - shopDao.update(shopDo);
  50 + merchantDao.update(merchantDo);
56 51 }
57 52 }
... ...
src/main/java/com/diligrp/xtrade/product/service/AccountService.java
... ... @@ -10,7 +10,5 @@ import com.diligrp.xtrade.product.domain.entity.MerchantDo;
10 10 */
11 11 public interface AccountService {
12 12  
13   - AccountDo build(MerchantRequestDto requestDto, MerchantDo merchantDo) throws Exception;
14   -
15   - void create(MerchantRequestDto requestDto, MerchantDo merchantDo) throws Exception;
  13 + void create(MerchantRequestDto requestDto, MerchantDo merchantDo);
16 14 }
... ...
src/main/java/com/diligrp/xtrade/product/service/ShopService.java
... ... @@ -4,10 +4,11 @@ import java.util.List;
4 4  
5 5 import com.diligrp.xtrade.product.domain.dto.ShopDto;
6 6 import com.diligrp.xtrade.product.domain.dto.ShopQueryDto;
  7 +import com.diligrp.xtrade.product.domain.entity.MerchantDo;
7 8 import com.diligrp.xtrade.product.domain.entity.ShopDo;
8 9  
9 10 public interface ShopService {
10   -
  11 +
11 12 /**
12 13 * @Title insert
13 14 * @Description 保存shop
... ... @@ -15,18 +16,18 @@ public interface ShopService {
15 16 * @throws
16 17 */
17 18 void insert(ShopDto shop);
18   -
  19 +
19 20 /**
20   - *
  21 + *
21 22 * @Title update
22 23 * @Description 修改
23 24 * @param shop
24 25 * @throws
25 26 */
26 27 void update(ShopDto shop);
27   -
  28 +
28 29 /**
29   - *
  30 + *
30 31 * @Title selectByMerId
31 32 * @Description 店铺id查询
32 33 * @param merId
... ... @@ -34,9 +35,9 @@ public interface ShopService {
34 35 * @throws
35 36 */
36 37 ShopDo selectByShopId(Long shopId);
37   -
  38 +
38 39 /**
39   - *
  40 + *
40 41 * @Title selectByMerId
41 42 * @Description 根据商户id获取名下全部商铺
42 43 * @param merId
... ... @@ -44,9 +45,9 @@ public interface ShopService {
44 45 * @throws
45 46 */
46 47 List<ShopDo> selectShopByMerId(Long merId);
47   -
  48 +
48 49 /**
49   - *
  50 + *
50 51 * @Title selectShop
51 52 * @Description 商铺查询
52 53 * @param shopQuery
... ... @@ -54,4 +55,6 @@ public interface ShopService {
54 55 * @throws
55 56 */
56 57 List<ShopDo> selectShop(ShopQueryDto shopQuery);
  58 +
  59 + void updateShopTypeWithMerchant(MerchantDo merchantDo);
57 60 }
... ...
src/main/java/com/diligrp/xtrade/product/service/impl/AccountServiceImpl.java
1 1 package com.diligrp.xtrade.product.service.impl;
2 2  
3   -import com.alibaba.nacos.common.utils.Md5Utils;
  3 +import com.diligrp.xtrade.product.domain.builder.MerchantAccountBuilder;
4 4 import com.diligrp.xtrade.product.domain.dto.MerchantRequestDto;
5   -import com.diligrp.xtrade.product.domain.emuns.AccountStatus;
6   -import com.diligrp.xtrade.product.domain.emuns.IKeyGeneratorKeys;
7 5 import com.diligrp.xtrade.product.domain.entity.AccountDo;
8 6 import com.diligrp.xtrade.product.domain.entity.MerchantDo;
9 7 import com.diligrp.xtrade.product.repository.IAccountRepository;
10 8 import com.diligrp.xtrade.product.service.AccountService;
11   -import com.diligrp.xtrade.shared.sequence.IKeyGenerator;
12   -import com.diligrp.xtrade.shared.sequence.KeyGeneratorManager;
13 9 import org.springframework.beans.factory.annotation.Autowired;
14 10 import org.springframework.stereotype.Service;
15 11  
16   -import java.time.LocalDateTime;
17   -
18 12 /**
19 13 * @Auther: miaoguoxin
20 14 * @Date: 2020/4/22 11:10
... ... @@ -23,30 +17,10 @@ import java.time.LocalDateTime;
23 17 public class AccountServiceImpl implements AccountService {
24 18 @Autowired
25 19 private IAccountRepository accountRepository;
26   - @Autowired
27   - private KeyGeneratorManager keyGeneratorManager;
28   -
29   - @Override
30   - public AccountDo build(MerchantRequestDto requestDto, MerchantDo merchantDo) throws Exception {
31   - String password = String.format("%s_%s",
32   - requestDto.getAccountName(), requestDto.getPassword());
33   - AccountDo newAccountDo = new AccountDo();
34   - newAccountDo.setName(requestDto.getAccountName());
35   - newAccountDo.setRealName(requestDto.getRealName());
36   - newAccountDo.setPassword(Md5Utils.getMD5(password, "UTF-8"));
37   - newAccountDo.setMobile(requestDto.getMobile());
38   - newAccountDo.setStatus(AccountStatus.NORMAL.getCode());
39   - newAccountDo.setIsAdmin(1);
40   - newAccountDo.setMerId(merchantDo.getMerId());
41   - newAccountDo.setCreatedTime(LocalDateTime.now());
42   - IKeyGenerator keyGenerator = keyGeneratorManager.getKeyGenerator(IKeyGeneratorKeys.ACCOUNT_SEQUENCE);
43   - newAccountDo.setId(keyGenerator.nextId());
44   - return newAccountDo;
45   - }
46 20  
47 21 @Override
48   - public void create(MerchantRequestDto requestDto, MerchantDo merchantDo) throws Exception {
49   - AccountDo newAccountDo = this.build(requestDto, merchantDo);
  22 + public void create(MerchantRequestDto requestDto, MerchantDo merchantDo) {
  23 + AccountDo newAccountDo = MerchantAccountBuilder.buildDoFromMerchant(requestDto, merchantDo.getMerId());
50 24 accountRepository.add(newAccountDo);
51 25 }
52 26  
... ...
src/main/java/com/diligrp/xtrade/product/service/impl/MerchantServiceImpl.java
... ... @@ -13,10 +13,13 @@ import com.diligrp.xtrade.product.repository.IAccountRepository;
13 13 import com.diligrp.xtrade.product.repository.IMerchantRepository;
14 14 import com.diligrp.xtrade.product.service.AccountService;
15 15 import com.diligrp.xtrade.product.service.MerchantService;
  16 +import com.diligrp.xtrade.product.service.ShopService;
16 17 import org.springframework.beans.factory.annotation.Autowired;
17 18 import org.springframework.stereotype.Service;
18 19 import org.springframework.transaction.annotation.Transactional;
19 20  
  21 +import java.util.Optional;
  22 +
20 23 @Service
21 24 public class MerchantServiceImpl implements MerchantService {
22 25 @Autowired
... ... @@ -25,6 +28,8 @@ public class MerchantServiceImpl implements MerchantService {
25 28 private IMerchantRepository merchantRepository;
26 29 @Autowired
27 30 private AccountService accountService;
  31 + @Autowired
  32 + private ShopService shopService;
28 33  
29 34 @Override
30 35 @Transactional(rollbackFor = Exception.class)
... ... @@ -38,17 +43,28 @@ public class MerchantServiceImpl implements MerchantService {
38 43 }
39 44 MerchantDo merchantDo = merchantRepository.getByAccountId(requestDto.getAccountId());
40 45 if (merchantDo == null){
41   - merchantDo = MerchantBuilder.request2Entity(requestDto);
  46 + merchantDo = MerchantBuilder.buildDoFromRequest(requestDto);
  47 + merchantDo.setMarketId("SYSGDL");
42 48 merchantRepository.add(merchantDo);
43 49 } else {
44 50 if (AccountType.PERSONAL.getCode() != merchantDo.getType()){
45 51 throw new ProductException(ExceptionEnum.CARD_MERCHANT_CREATED);
46 52 }
  53 + this.updateMerchant(merchantDo, requestDto);
47 54 merchantRepository.update(merchantDo);
  55 + shopService.updateShopTypeWithMerchant(merchantDo);
48 56 }
49 57 //创建市场管理员账户
50 58 accountService.create(requestDto, merchantDo);
51   - return MerchantBuilder.entity2Response(merchantDo);
  59 + return MerchantBuilder.buildResponseFromDo(merchantDo);
52 60 }
53 61  
  62 + private void updateMerchant(MerchantDo merchantDo, MerchantRequestDto requestDto) {
  63 + Integer accountType = Optional.ofNullable(requestDto.getAccountType())
  64 + .map(AccountType::getCode).orElse(null);
  65 + merchantDo.setMerName(requestDto.getMerchantName());
  66 + merchantDo.setAccountId(requestDto.getAccountId());
  67 + merchantDo.setType(accountType);
  68 + merchantDo.setDescription(requestDto.getAddress());
  69 + }
54 70 }
... ...
src/main/java/com/diligrp/xtrade/product/service/impl/ShopServiceImpl.java
1 1 package com.diligrp.xtrade.product.service.impl;
2 2  
  3 +import java.time.LocalDateTime;
3 4 import java.util.List;
4 5  
  6 +import com.diligrp.xtrade.product.domain.emuns.AccountType;
  7 +import com.diligrp.xtrade.product.domain.entity.MerchantDo;
5 8 import org.springframework.beans.BeanUtils;
6 9 import org.springframework.beans.factory.annotation.Autowired;
7 10 import org.springframework.stereotype.Service;
... ... @@ -68,4 +71,9 @@ public class ShopServiceImpl implements ShopService {
68 71 return shops;
69 72 }
70 73  
  74 + @Override
  75 + public void updateShopTypeWithMerchant(MerchantDo merchantDo) {
  76 + shopDao.updateTypeByMerId(AccountType.PUBLIC.getCode(), merchantDo.getMerId());
  77 + }
  78 +
71 79 }
... ...
src/main/resources/mapping/com/diligrp/xtrade/product/ShopDao.xml
1 1 <?xml version="1.0" encoding="UTF-8"?>
2 2 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3 3 <mapper namespace="com.diligrp.xtrade.product.dao.ShopDao">
4   -
  4 +
5 5 <sql id="QUERY_COLUMN_LIST">
6 6 <![CDATA[
7 7 `id`, `shop_id` AS shopId, `shop_name` AS shopName, `address`, `mer_id` AS merId, `type`, `status`,
... ... @@ -33,7 +33,7 @@
33 33 <if test="selfShop != null and selfShop != ''"><![CDATA[AND self_shop = #{selfShop}]]></if>
34 34 </where>
35 35 </sql>
36   -
  36 +
37 37 <insert id="insert" parameterType="com.diligrp.xtrade.product.domain.entity.ShopDo">
38 38 <![CDATA[
39 39 INSERT INTO `xt_shop`(`id`, `shop_id`, `shop_name`, `self_shop`, `mer_id`, `main_biz`, `type`, `status`, `address`, `description`, `created_time`, `modified_time`)
... ... @@ -42,21 +42,27 @@
42 42 </insert>
43 43 <select id="selectByShopId" parameterType="long" resultType="com.diligrp.xtrade.product.domain.entity.ShopDo">
44 44 <![CDATA[
45   - SELECT
  45 + SELECT
46 46 ]]>
47 47 <include refid="QUERY_COLUMN_LIST" />
48 48 <![CDATA[
49 49 FROM `xt_shop` WHERE shop_id = #{shopId}
50 50 ]]>
51 51 </select>
52   - <update id="update" parameterType="com.diligrp.xtrade.product.domain.entity.ShopDo">
  52 + <update id="update" parameterType="com.diligrp.xtrade.product.domain.entity.ShopDo">
53 53 <![CDATA[UPDATE `xt_shop`]]>
54 54 <include refid="UPDATE_COLUMN_SET" />
55 55 <![CDATA[WHERE shop_id = #{shopId}]]>
56 56 </update>
57   - <select id="selectByMerId" parameterType="long" resultType="com.diligrp.xtrade.product.domain.entity.ShopDo">
  57 + <update id="updateTypeByMerId">
  58 + UPDATE xt_shop
  59 + SET type = #{type},
  60 + modified_time = now()
  61 + WHERE mer_id = #{merId}
  62 + </update>
  63 + <select id="selectByMerId" parameterType="long" resultType="com.diligrp.xtrade.product.domain.entity.ShopDo">
58 64 <![CDATA[
59   - SELECT
  65 + SELECT
60 66 ]]>
61 67 <include refid="QUERY_COLUMN_LIST" />
62 68 <![CDATA[
... ... @@ -65,12 +71,12 @@
65 71 </select>
66 72 <select id="selectShop" parameterType="com.diligrp.xtrade.product.domain.dto.ShopQueryDto" resultType="com.diligrp.xtrade.product.domain.entity.ShopDo">
67 73 <![CDATA[
68   - SELECT
  74 + SELECT
69 75 ]]>
70 76 <include refid="QUERY_COLUMN_LIST" />
71 77 <![CDATA[
72   - FROM `xt_shop`
  78 + FROM `xt_shop`
73 79 ]]>
74 80 <include refid="QUERY_WHERE_CLAUSE" />
75 81 </select>
76   -</mapper>
77 82 \ No newline at end of file
  83 +</mapper>
... ...