From aa2eae024f8f251c8e2b9eace5351dea7e315ed7 Mon Sep 17 00:00:00 2001
From: jiangqs <jiangqs>
Date: 星期一, 24 四月 2023 11:41:48 +0800
Subject: [PATCH] BUG
---
hrt-modules/hrt-system/src/main/java/com/hrt/system/service/impl/ShopServiceImpl.java | 260 ++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 250 insertions(+), 10 deletions(-)
diff --git a/hrt-modules/hrt-system/src/main/java/com/hrt/system/service/impl/ShopServiceImpl.java b/hrt-modules/hrt-system/src/main/java/com/hrt/system/service/impl/ShopServiceImpl.java
index 2aade65..8cd7f37 100644
--- a/hrt-modules/hrt-system/src/main/java/com/hrt/system/service/impl/ShopServiceImpl.java
+++ b/hrt-modules/hrt-system/src/main/java/com/hrt/system/service/impl/ShopServiceImpl.java
@@ -1,21 +1,30 @@
package com.hrt.system.service.impl;
-import com.hrt.system.domain.poji.shop.Shop;
-import com.hrt.system.domain.poji.shop.ShopCertificate;
-import com.hrt.system.domain.poji.shop.ShopFile;
-import com.hrt.system.domain.poji.shop.ShopRelTag;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.hrt.common.core.utils.StringUtils;
+import com.hrt.system.api.domain.SysUser;
+import com.hrt.system.domain.dto.MgtChangeCoopDto;
+import com.hrt.system.domain.dto.MgtEditShopDto;
+import com.hrt.system.domain.dto.MgtEditShopTagDto;
+import com.hrt.system.domain.dto.MgtShopPageDto;
+import com.hrt.system.domain.poji.shop.*;
+import com.hrt.system.domain.poji.sys.SysTag;
import com.hrt.system.domain.vo.AppShopInfoVo;
+import com.hrt.system.domain.vo.MgtShopInfoVo;
+import com.hrt.system.domain.vo.MgtShopPageVo;
import com.hrt.system.mapper.shop.ShopMapper;
-import com.hrt.system.service.shop.ShopCertificateService;
-import com.hrt.system.service.shop.ShopFileService;
-import com.hrt.system.service.shop.ShopRelTagService;
-import com.hrt.system.service.shop.ShopService;
+import com.hrt.system.service.shop.*;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.hrt.system.service.sys.SysTagService;
+import com.hrt.system.service.user.ISysUserService;
+import com.hrt.system.util.CodeFactoryUtil;
import org.springframework.beans.BeanUtils;
-import org.springframework.context.annotation.Bean;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
import java.util.List;
import java.util.StringJoiner;
@@ -39,13 +48,25 @@
@Resource
private ShopCertificateService shopCertificateService;
+ @Resource
+ private SysTagService sysTagService;
+
+ @Resource
+ private ShopRelTagService shopRelTagService;
+
+ @Resource
+ private ShopRelUserService shopRelUserService;
+
+ @Resource
+ private ISysUserService sysUserService;
+
/**
* 获取商户详情
* @param shopId
* @return
*/
@Override
- public AppShopInfoVo getShopInfo(Long shopId){
+ public AppShopInfoVo getAppShopInfo(Long shopId){
AppShopInfoVo appShopInfoVo = new AppShopInfoVo();
Shop shop = this.getById(shopId);
BeanUtils.copyProperties(shop,appShopInfoVo);
@@ -73,4 +94,223 @@
}
return appShopInfoVo;
}
+
+ /**
+ * 创建商户
+ * @param MGTEditShopDto
+ */
+ @Override
+ public void createShop(MgtEditShopDto MGTEditShopDto){
+ Shop shop = new Shop();
+ if(MGTEditShopDto.getShopId()!=null){
+ shop = this.getById(MGTEditShopDto.getShopId());
+ shop.setUpdateTime(new Date());
+ shop.setUpdateUserId(MGTEditShopDto.getUserId());
+ shop.setShopTags(null);
+ //清空关联记录
+ shopFileService.deleteByShopId(shop.getShopId());
+ shopRelTagService.deleteByShopId(shop.getShopId());
+ shopRelUserService.deleteByShopId(shop.getShopId());
+ }else{
+ shop.setShopStatus(2);
+ shop.setCreateTime(new Date());
+ shop.setCreateUserId(MGTEditShopDto.getUserId());
+ }
+ BeanUtils.copyProperties(MGTEditShopDto,shop);
+ this.saveOrUpdate(shop);
+ //商户编号
+ if(MGTEditShopDto.getShopId()==null){
+ String shopNo = CodeFactoryUtil.getShopNo(shop.getShopId());
+ shop.setShopNumber(shopNo);
+ }
+ //商户标签
+ String shopTagIds = MGTEditShopDto.getShopTagIds();
+ if(StringUtils.isNotBlank(shopTagIds)){
+ String[] shopTagIdArray = shopTagIds.split(",");
+ ShopRelTag shopRelTag;
+ Long tagid;
+ StringJoiner shopTagSj = new StringJoiner(",");
+ SysTag sysTag;
+ for(String str : shopTagIdArray){
+ shopRelTag = new ShopRelTag();
+ tagid = Long.valueOf(str);
+ sysTag = sysTagService.getById(tagid);
+ shopRelTag.setDelFlag(0);
+ shopRelTag.setShopId(shop.getShopId());
+ shopRelTag.setTagId(tagid);
+ shopRelTagService.save(shopRelTag);
+ shopTagSj.add(sysTag.getTagName());
+ }
+ shop.setShopTags(shopTagSj.toString());
+ this.saveOrUpdate(shop);
+ }
+ //商户关联人员
+ String relUserIds = MGTEditShopDto.getRelUserIds();
+ if(StringUtils.isNotBlank(relUserIds)){
+ String[] relUserIdArray = relUserIds.split(",");
+ ShopRelUser shopRelUser;
+ Long userId;
+ SysUser sysUser;
+ for(String str : relUserIdArray){
+ shopRelUser = new ShopRelUser();
+ userId = Long.valueOf(str);
+ sysUser = sysUserService.selectUserById(userId);
+ shopRelUser.setDelFlag(0);
+ shopRelUser.setShopId(shop.getShopId());
+ shopRelUser.setUserId(userId);
+ shopRelUser.setUserName(sysUser.getNickName());
+ shopRelUser.setUserMobile(sysUser.getPhonenumber());
+ shopRelUser.setUserDeptId(sysUser.getDeptId());
+ shopRelUserService.save(shopRelUser);
+ }
+ }
+ //商户封面
+ ShopFile shopFile = new ShopFile();
+ shopFile.setDelFlag(0);
+ shopFile.setFileType(1);
+ shopFile.setFileUrl(MGTEditShopDto.getShopPicture());
+ shopFile.setShopId(shop.getShopId());
+ shopFileService.save(shopFile);
+ //商户banner
+ if(StringUtils.isNotBlank(MGTEditShopDto.getShopBanners())){
+ String shopBanners= MGTEditShopDto.getShopBanners();
+ String[] shopBannerArray = shopBanners.split(",");
+ for(String str : shopBannerArray){
+ shopFile = new ShopFile();
+ shopFile.setDelFlag(0);
+ shopFile.setFileType(2);
+ shopFile.setFileUrl(str);
+ shopFile.setShopId(shop.getShopId());
+ shopFileService.save(shopFile);
+ }
+ }
+ }
+
+ /**
+ * 修改合作时间
+ * @param mgtChangeCoopDto
+ */
+ @Override
+ public void changeCooperationTime(MgtChangeCoopDto mgtChangeCoopDto){
+ Shop shop = this.getById(mgtChangeCoopDto.getShopId());
+ String coopStartTime = mgtChangeCoopDto.getCoopStartTime();
+ String coopEndTime = mgtChangeCoopDto.getCoopEndTime();
+ SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+ try {
+ Date coopStartDate = simpleDateFormat.parse(coopStartTime);
+ Date coopEndDate = simpleDateFormat.parse(coopEndTime);
+ Date nowTime = new Date();
+ shop.setCooperationStartTime(coopStartDate);
+ shop.setCooperationEndTime(coopEndDate);
+ Boolean inTime = false;
+ if(coopStartDate.compareTo(nowTime)<0&&coopEndDate.compareTo(nowTime)>0){
+ inTime = true;
+ }
+ if(shop.getShopStatus()==2&&inTime){
+ shop.setShopStatus(1);
+ }
+ shop.setUpdateTime(nowTime);
+ shop.setUpdateUserId(mgtChangeCoopDto.getUserId());
+ this.saveOrUpdate(shop);
+ } catch (ParseException e) {
+ e.printStackTrace();
+ }
+ }
+
+ /**
+ * 分页获取商户
+ * @param page
+ * @param mgtShopPageDto
+ * @return
+ */
+ @Override
+ public List<MgtShopPageVo> pageShop(Page page, MgtShopPageDto mgtShopPageDto){
+ List<MgtShopPageVo> mgtShopPageVoList = shopMapper.pageShop(page, mgtShopPageDto);
+ return mgtShopPageVoList;
+ }
+
+ /**
+ * 获取商户详情
+ * @param shopId
+ * @return
+ */
+ @Override
+ public MgtShopInfoVo getMgtShopInfo(Long shopId){
+ MgtShopInfoVo mgtShopInfoVo = new MgtShopInfoVo();
+ Shop shop = this.getById(shopId);
+ //基本信息拷贝
+ BeanUtils.copyProperties(shop,mgtShopInfoVo);
+ //商户标签
+ List<ShopRelTag> shopRelTagList = shopRelTagService.listShopRelTagByShopId(shopId);
+ if(shopRelTagList!=null&&!shopRelTagList.isEmpty()){
+ StringJoiner shopTagJs = new StringJoiner(",");
+ for(ShopRelTag shopRelTag : shopRelTagList){
+ shopTagJs.add(shopRelTag.getTagId().toString());
+ }
+ mgtShopInfoVo.setShopTagIds(shopTagJs.toString());
+ }
+ //商户关联用户
+ List<ShopRelUser> shopRelUserList = shopRelUserService.listByShopId(shopId);
+ if(shopRelUserList!=null&&!shopRelUserList.isEmpty()){
+ StringJoiner shopUserJs = new StringJoiner(",");
+ StringJoiner shopUserNameJs = new StringJoiner(",");
+ for(ShopRelUser shopRelUser : shopRelUserList){
+ shopUserJs.add(shopRelUser.getUserId().toString());
+ shopUserNameJs.add(shopRelUser.getUserName());
+ }
+ mgtShopInfoVo.setRelUserIds(shopUserJs.toString());
+ mgtShopInfoVo.setRelUsers(shopUserNameJs.toString());
+ }
+ //商户图片
+ List<ShopFile> shopFileList = shopFileService.listShopFileByShopId(shopId);
+ if(shopFileList!=null&&!shopFileList.isEmpty()){
+ StringJoiner shopBannerJs = new StringJoiner(",");
+ for(ShopFile shopFile : shopFileList){
+ if(shopFile.getFileType()==1){
+ mgtShopInfoVo.setShopPicture(shopFile.getFileUrl());
+ }else{
+ shopBannerJs.add(shopFile.getFileUrl());
+ }
+ }
+ mgtShopInfoVo.setShopBanners(shopBannerJs.toString());
+ }
+ //商户证书
+ List<ShopCertificate> shopCertificateList = shopCertificateService.listShopCertificateByShopId(shopId);
+ mgtShopInfoVo.setShopCertificateList(shopCertificateList);
+ return mgtShopInfoVo;
+ }
+
+ /**
+ * 修改商户标签
+ * @param mgtEditShopTagDto
+ */
+ @Override
+ public void editShopTag(MgtEditShopTagDto mgtEditShopTagDto){
+ Long shopId = Long.valueOf(mgtEditShopTagDto.getId());
+ String shopTagIds = mgtEditShopTagDto.getShopTagIds();
+ String shopTags = null;
+ //删除以前的标签
+ shopRelTagService.deleteByShopId(shopId);
+ if(StringUtils.isNotBlank(shopTagIds)){
+ ShopRelTag shopRelTag;
+ SysTag sysTag;
+ Long tagId;
+ String[] shopTagIdArray = shopTagIds.split(",");
+ StringJoiner shopTagSj = new StringJoiner(",");
+ for(String str : shopTagIdArray){
+ tagId = Long.valueOf(str);
+ sysTag = sysTagService.getById(tagId);
+ shopRelTag = new ShopRelTag();
+ shopRelTag.setDelFlag(0);
+ shopRelTag.setShopId(shopId);
+ shopRelTag.setTagId(tagId);
+ shopRelTagService.save(shopRelTag);
+ shopTagSj.add(sysTag.getTagName());
+ }
+ shopTags = shopTagSj.toString();
+ }
+ Shop shop = this.getById(shopId);
+ shop.setShopTags(shopTags);
+ this.saveOrUpdate(shop);
+ }
}
--
Gitblit v1.7.1