123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142 |
- package com.ruoyi.demo.service.impl;
- import cn.dev33.satoken.annotation.SaIgnore;
- import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
- import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
- import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
- import com.ruoyi.common.core.validate.AddGroup;
- import com.ruoyi.common.core.validate.EditGroup;
- import com.ruoyi.demo.entity.App;
- import com.ruoyi.demo.entity.Commercial;
- import com.ruoyi.demo.entity.bo.CommercialBo;
- import com.ruoyi.demo.entity.vo.CommercialVo;
- import com.ruoyi.demo.mapper.AppMapper;
- import com.ruoyi.demo.mapper.CommercialMapper;
- import com.ruoyi.demo.service.CommericalService;
- import com.ruoyi.demo.utils.InitMapUtil;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Service;
- import javax.validation.constraints.NotBlank;
- import java.time.LocalDateTime;
- import java.util.ArrayList;
- import java.util.Arrays;
- import java.util.HashMap;
- import java.util.List;
- import java.util.stream.Collectors;
- @Service
- public class CommercialServiceImpl implements CommericalService {
- @Autowired
- CommercialMapper commercialMapper;
- @Autowired
- InitMapUtil initMapUtil;
- @Autowired
- AppMapper appMapper;
- @Override
- public void addCommercial(CommercialVo commercialVo) {
- Commercial commercial = new Commercial(commercialVo);
- commercial.setCreateTime(LocalDateTime.now());
- commercial.setAddrCodeInfo(initMapUtil.getInitAddrCodeMap(commercial.getAddrCode()));
- commercialMapper.insert(commercial);
- }
- @Override
- public String deleteCommercial(String[] commercialIds) {
- //1.判断旗下是否有小程序
- QueryWrapper<App> queryWrapper = new QueryWrapper<>();
- queryWrapper.in("commercial_id",commercialIds);
- Long aLong = appMapper.selectCount(queryWrapper);
- if (aLong != 0L)
- return "待删除的商户中存在App";
- commercialMapper.deleteBatchIds(Arrays.asList(commercialIds));
- return "删除成功";
- }
- @Override
- public Commercial getCommercial(String commercialId) {
- return commercialMapper.selectById(commercialId);
- }
- @Override
- public HashMap getCommercialList(CommercialVo commercialVo) {
- QueryWrapper<Commercial> queryWrapper = new QueryWrapper<>();
- if(commercialVo.getSearchText() != null && !commercialVo.getSearchText().equals("")){
- queryWrapper.likeRight("commercial_id",commercialVo.getSearchText());
- queryWrapper.or().like("commercial_name",commercialVo.getSearchText());
- queryWrapper.or().like("principal_name",commercialVo.getSearchText());
- queryWrapper.or().likeRight("principal_telephone",commercialVo.getSearchText());
- }
- Page<Commercial> page = new Page<>();
- page.setCurrent(commercialVo.getPageNum());
- page.setSize(commercialVo.getPageSize());
- Page<Commercial> commercialPage = commercialMapper.selectPage(page, queryWrapper);
- //1.找到需要关联的小程序
- ArrayList<String> commercialIds = new ArrayList<>();
- List<CommercialBo> result = new ArrayList<>();
- for (Commercial commercial : commercialPage.getRecords()) {
- commercialIds.add(commercial.getCommercialId());
- CommercialBo commercialBo = new CommercialBo(commercial);
- commercialBo.setApps(new ArrayList<>());
- result.add(commercialBo);
- }
- QueryWrapper<App> queryWrapper1 = new QueryWrapper<>();
- queryWrapper1.select("commercial_id","app_name");
- queryWrapper1.in("commercial_id",commercialIds);
- List<App> apps = appMapper.selectList(queryWrapper1);
- //2.组装Bo
- for (CommercialBo commercialBo : result) {
- ArrayList<String> list = new ArrayList<>();
- apps.stream().forEach(item -> {
- if(item.getCommercialId().equals(commercialBo.getCommercialId()))
- list.add(item.getAppName());
- });
- commercialBo.setApps(list);
- }
- commercialPage.setRecords(null);
- HashMap<String, Object> objectObjectHashMap = new HashMap<>();
- objectObjectHashMap.put("page",commercialPage);
- objectObjectHashMap.put("data",result);
- return objectObjectHashMap;
- }
- @Override
- public List<Commercial> getCommercialName() {
- QueryWrapper<Commercial> queryWrapper = new QueryWrapper<>();
- queryWrapper.select("commercial_name","commercial_id");
- List<Commercial> commercials = commercialMapper.selectList(queryWrapper);
- return commercials;
- }
- @Override
- public void updateCommercial(CommercialVo commercialVo) {
- //1.修改商户
- UpdateWrapper<Commercial> updateWrapper = new UpdateWrapper<>();
- updateWrapper.eq("commercial_id",commercialVo.getCommercialId())
- .set("commercial_name",commercialVo.getCommercialName())
- .set("code",commercialVo.getCode())
- .set("principal_name",commercialVo.getPrincipalName())
- .set("principal_telephone",commercialVo.getPrincipalTelephone())
- .set("prove_1",commercialVo.getProve1())
- .set("prove_2",commercialVo.getProve2())
- .set("prove_3",commercialVo.getProve3())
- .set("prove_4",commercialVo.getProve4())
- .set("prove_5",commercialVo.getProve5())
- .set("addr_code",commercialVo.getAddrCode())
- .set("addr_code_info",initMapUtil.getInitAddrCodeMap(commercialVo.getAddrCode()))
- .set("addr_info",commercialVo.getAddrInfo());
- commercialMapper.update(null,updateWrapper);
- //2.修改app中的商户名字
- UpdateWrapper<App> updateWrapper1 = new UpdateWrapper<>();
- updateWrapper1.eq("commercial_id",commercialVo.getCommercialId())
- .set("commercial_name",commercialVo.getCommercialName());
- appMapper.update(null,updateWrapper1);
- }
- }
|