From 23de097da907c28a727830e5eb9bc167c226b64d Mon Sep 17 00:00:00 2001 From: zhenghuang <236220500@qq.com> Date: Tue, 26 May 2020 16:24:38 +0800 Subject: [PATCH] swagger mysql --- .../ic/activity/bean/ActivityInstanceVO.java | 11 +++++++ .../ic/activity/bean/PromotionSrcVO.java | 3 +- .../ic/activity/bean/RemoveStaffVO.java | 18 ++++++++++ .../controller/WebAppActivityController.java | 20 ++++++++++- .../entity/PmnActivityStoreRelation.java | 2 ++ .../impl/PmnActivityInstanceServiceImpl.java | 7 ++++ .../impl/PmnPromotionSrcServiceImpl.java | 33 +++++++++++++------ .../activity/PmnActivityInstanceDOMapper.xml | 31 ++++++++++++----- src/test/java/test/Test.java | 20 +++++++++++ 9 files changed, 125 insertions(+), 20 deletions(-) create mode 100644 src/main/java/com/kiisoo/ic/activity/bean/RemoveStaffVO.java diff --git a/src/main/java/com/kiisoo/ic/activity/bean/ActivityInstanceVO.java b/src/main/java/com/kiisoo/ic/activity/bean/ActivityInstanceVO.java index 750d918..6f48edc 100644 --- a/src/main/java/com/kiisoo/ic/activity/bean/ActivityInstanceVO.java +++ b/src/main/java/com/kiisoo/ic/activity/bean/ActivityInstanceVO.java @@ -53,6 +53,17 @@ public class ActivityInstanceVO { // @Size(min = 1, message = "请选择企业列表") private List organizations; + @ApiModelProperty(value = "第一个店铺名", hidden = true) + private String storeName; + @ApiModelProperty(value = "所有店铺数", hidden = true) + private String storeCount; + + @ApiModelProperty(value = "第一个公司名", hidden = true) + private String companyName; + @ApiModelProperty(value = "所有公司数", hidden = true) + private String companyCount; + + @ApiModelProperty(value = "选择的店铺列表", required = true) @NotNull(message = "请选择店铺列表") @Size(min = 1, message = "请选择店铺列表") diff --git a/src/main/java/com/kiisoo/ic/activity/bean/PromotionSrcVO.java b/src/main/java/com/kiisoo/ic/activity/bean/PromotionSrcVO.java index db23da5..05a4153 100644 --- a/src/main/java/com/kiisoo/ic/activity/bean/PromotionSrcVO.java +++ b/src/main/java/com/kiisoo/ic/activity/bean/PromotionSrcVO.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.annotation.TableName; import com.kiisoo.ic.generalize.entity.PrivilageOrganizational; import com.kiisoo.ic.store.entity.PoiStore; import com.kiisoo.ic.store.entity.PoiStoreStaff; +import com.kiisoo.ic.store.entity.PoiStoreStaffVO; import lombok.Data; import java.util.Date; @@ -31,7 +32,7 @@ public class PromotionSrcVO { private PromotionFriendsSrcVO friendsSrc; - private List storeStaffs; + private List storeStaffs; private PoiStore store; diff --git a/src/main/java/com/kiisoo/ic/activity/bean/RemoveStaffVO.java b/src/main/java/com/kiisoo/ic/activity/bean/RemoveStaffVO.java new file mode 100644 index 0000000..afe9487 --- /dev/null +++ b/src/main/java/com/kiisoo/ic/activity/bean/RemoveStaffVO.java @@ -0,0 +1,18 @@ +package com.kiisoo.ic.activity.bean; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@ApiModel("移除活动导购") +@Data +public class RemoveStaffVO { + @ApiModelProperty(value = "要移除导购的userId", required = true) + Long user; + + @ApiModelProperty(value = "当前登录用户id", required = true) + Long userId; + + @ApiModelProperty(value = "活动实例ID", required = true) + Long instanceId; +} diff --git a/src/main/java/com/kiisoo/ic/activity/controller/WebAppActivityController.java b/src/main/java/com/kiisoo/ic/activity/controller/WebAppActivityController.java index 300461f..dfabd6a 100644 --- a/src/main/java/com/kiisoo/ic/activity/controller/WebAppActivityController.java +++ b/src/main/java/com/kiisoo/ic/activity/controller/WebAppActivityController.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.kiisoo.ic.activity.bean.ActivityInstanceVO; import com.kiisoo.ic.activity.bean.PromotionSrcVO; import com.kiisoo.ic.activity.bean.PushPromotionsVO; +import com.kiisoo.ic.activity.bean.RemoveStaffVO; import com.kiisoo.ic.activity.entity.PmnActivityInstance; import com.kiisoo.ic.activity.entity.PmnPromotionFriendsSrc; import com.kiisoo.ic.activity.entity.PmnPromotionSrc; @@ -89,7 +90,7 @@ public class WebAppActivityController extends BaseController { List staffs = poiStoreStaffDOMapper.selectBatchIds(ids); for (PoiStoreStaff staff : staffs) { PmnPromotionSrc create = pmnPromotionSrcService.createCode(staff, instanceId); - if (create != null) { + if (create == null) { fails.add(staff); } else { success.add(staff); @@ -112,6 +113,23 @@ public class WebAppActivityController extends BaseController { } } + @ApiOperation(value = "店长-移除活动导购") + @PostMapping("/removeStaff") + @ApiImplicitParams({ + @ApiImplicitParam(name = "userId", value = "当前登录用户ID", dataType = "int", paramType = "form"), + @ApiImplicitParam(name = "user", value = "要移除导购的userId", dataType = "array", paramType = "form"), + @ApiImplicitParam(name = "instanceId", value = "活动ID", dataType = "array", paramType = "form"), + }) + public Map removeStaff(@RequestBody RemoveStaffVO removeStaffVO){ + try{ + boolean remove = pmnPromotionSrcService.remove(Wrappers.lambdaQuery().eq(PmnPromotionSrc::getPromoterId, removeStaffVO.getUser()).eq(PmnPromotionSrc::getType, 1).eq(PmnPromotionSrc::getInstanceId, removeStaffVO.getInstanceId())); + return remove ? success() : fail(); + } catch (Exception e) { + log.error("获取用户信息异常", e); + return fail(); + } + } + @ApiOperation(value = "好友添加回调通知") @PostMapping("/cb") public Map turnBack(@RequestBody List turnBackDTOS) { diff --git a/src/main/java/com/kiisoo/ic/activity/entity/PmnActivityStoreRelation.java b/src/main/java/com/kiisoo/ic/activity/entity/PmnActivityStoreRelation.java index 3503bfd..0239ff5 100644 --- a/src/main/java/com/kiisoo/ic/activity/entity/PmnActivityStoreRelation.java +++ b/src/main/java/com/kiisoo/ic/activity/entity/PmnActivityStoreRelation.java @@ -23,6 +23,8 @@ public class PmnActivityStoreRelation { private int status; + private Long orgId; + private Date createTime; private Date updateTime; diff --git a/src/main/java/com/kiisoo/ic/activity/service/impl/PmnActivityInstanceServiceImpl.java b/src/main/java/com/kiisoo/ic/activity/service/impl/PmnActivityInstanceServiceImpl.java index daa39dc..c7af4b9 100644 --- a/src/main/java/com/kiisoo/ic/activity/service/impl/PmnActivityInstanceServiceImpl.java +++ b/src/main/java/com/kiisoo/ic/activity/service/impl/PmnActivityInstanceServiceImpl.java @@ -11,9 +11,11 @@ import com.kiisoo.ic.activity.bean.ActivityInstanceVO; import com.kiisoo.ic.activity.mapper.PmnActivityInstanceDOMapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.kiisoo.ic.domain.service.PrivilageDomainService; +import com.kiisoo.ic.generalize.entity.PrivilageOrganizational; import com.kiisoo.ic.generalize.mapper.RetailCompanyMapper; import com.kiisoo.ic.generalize.service.RetailCompanyService; import com.kiisoo.ic.store.entity.PoiStore; +import com.kiisoo.ic.store.mapper.PoiStoreDOMapper; import org.apache.commons.collections.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.ApplicationContext; @@ -65,6 +67,9 @@ public class PmnActivityInstanceServiceImpl extends ServiceImpl storeIds = new ArrayList<>(); for (PoiStore store : activityInstanceVO.getStores()) { + PrivilageOrganizational org = poiStoreDOMapper.findStoreCompany(store.getId()); PmnActivityStoreRelation pmnActivityStoreRelation = new PmnActivityStoreRelation(); pmnActivityStoreRelation.setUpdateTime(new Date()); pmnActivityStoreRelation.setStoreId(store.getId()); @@ -130,6 +136,7 @@ public class PmnActivityInstanceServiceImpl extends ServiceImpllambdaQuery().eq(PmnActivityStoreRelation::getInstanceId, pmnActivityInstance.getId()).eq(PmnActivityStoreRelation::getStoreId, store.getId())); storeIds.add(store.getId()); } diff --git a/src/main/java/com/kiisoo/ic/activity/service/impl/PmnPromotionSrcServiceImpl.java b/src/main/java/com/kiisoo/ic/activity/service/impl/PmnPromotionSrcServiceImpl.java index dbf191c..645bd78 100644 --- a/src/main/java/com/kiisoo/ic/activity/service/impl/PmnPromotionSrcServiceImpl.java +++ b/src/main/java/com/kiisoo/ic/activity/service/impl/PmnPromotionSrcServiceImpl.java @@ -19,9 +19,11 @@ import com.kiisoo.ic.activity.service.IPmnPromotionSrcService; import com.kiisoo.ic.constants.Constants; import com.kiisoo.ic.store.entity.PoiStore; import com.kiisoo.ic.store.entity.PoiStoreStaff; +import com.kiisoo.ic.store.entity.PoiStoreStaffVO; import com.kiisoo.ic.store.mapper.PoiStoreDOMapper; import com.kiisoo.ic.store.mapper.PoiStoreStaffDOMapper; import com.kiisoo.ic.store.service.StoreEmployeeService; +import com.kiisoo.ic.system.bean.PrivilageUserBean; import com.kiisoo.ic.system.entity.PrivilageAccountDO; import com.kiisoo.ic.system.entity.PrivilageRoleDO; import com.kiisoo.ic.system.entity.PrivilageUserDO; @@ -98,7 +100,7 @@ public class PmnPromotionSrcServiceImpl extends ServiceImpl srcs = list(Wrappers.lambdaQuery().eq(PmnPromotionSrc::getPromoterId, userId).eq(PmnPromotionSrc::getType, type)); @@ -126,7 +128,7 @@ public class PmnPromotionSrcServiceImpl extends ServiceImpl wrapper = new QueryWrapper<>(); //如果有店铺则查店铺 wrapper.eq("store_id", staff.getStoreId()); @@ -134,16 +136,27 @@ public class PmnPromotionSrcServiceImpl extends ServiceImpl poiStoreStaffs = poiStoreStaffDOMapper.selectList(wrapper); - List userIds = poiStoreStaffs.stream().map(PoiStoreStaff::getId).collect(Collectors.toList()); + List userIds = poiStoreStaffs.stream().map(PoiStoreStaff::getUserId).collect(Collectors.toList()); List staffSrcs = pmnPromotionSrcService.list(Wrappers.lambdaQuery().in(PmnPromotionSrc::getPromoterId, userIds).eq(PmnPromotionSrc::getType, 1).select(PmnPromotionSrc::getPromoterId).eq(PmnPromotionSrc::getInstanceId, src.getInstanceId())); List staffSrcUsers = staffSrcs.stream().map(PmnPromotionSrc::getPromoterId).collect(Collectors.toList()); List storeStaffs; - if(staffSrcUsers.size() > 0) { - storeStaffs = poiStoreStaffDOMapper.selectBatchIds(staffSrcUsers); - vo.setStoreStaffs(storeStaffs); + if (staffSrcUsers.size() > 0) { + storeStaffs = poiStoreStaffDOMapper.selectList(Wrappers.lambdaQuery().in(PoiStoreStaff::getUserId, staffSrcUsers)); + List staffVOs = new ArrayList<>(); + for (PoiStoreStaff s : storeStaffs) { + PoiStoreStaffVO staffVO = new PoiStoreStaffVO(); + BeanUtils.copyProperties(s, staffVO); + PrivilageUserBean privilageUserBean = privilageUserDOMapper.selectUserInfoAndRoleInfo(s.getUserId()); + if(null != privilageUserBean){ + staffVO.setName(privilageUserBean.getName()); + staffVO.setMobil(privilageUserBean.getMobil()); + } + staffVOs.add(staffVO); + } + vo.setStoreStaffs(staffVOs); } } lists.add(vo); @@ -157,7 +170,7 @@ public class PmnPromotionSrcServiceImpl extends ServiceImpl srcs = new ArrayList<>(); for (PmnActivityStoreRelation store : storeRelations.getRecords()) { PmnPromotionSrc src = getOne(Wrappers.lambdaQuery().eq(PmnPromotionSrc::getPromoterId, store.getStoreId()).eq(PmnPromotionSrc::getInstanceId, instanceId).eq(PmnPromotionSrc::getType, 2).last("limit 0,1")); - if(src == null || src.getCode() == null) { + if (src == null || src.getCode() == null) { PoiStoreStaff staff = poiStoreStaffDOMapper.selectOne(Wrappers.lambdaQuery().eq(PoiStoreStaff::getStoreId, store.getStoreId()).eq(PoiStoreStaff::getType, 1).ne(PoiStoreStaff::getUserId, 0).eq(PoiStoreStaff::getDeleted, 0).eq(PoiStoreStaff::getStatus, 1)); src = createCode(staff, instanceId); } diff --git a/src/main/resources/mapper/activity/PmnActivityInstanceDOMapper.xml b/src/main/resources/mapper/activity/PmnActivityInstanceDOMapper.xml index 321557f..5cf21ae 100644 --- a/src/main/resources/mapper/activity/PmnActivityInstanceDOMapper.xml +++ b/src/main/resources/mapper/activity/PmnActivityInstanceDOMapper.xml @@ -9,14 +9,18 @@ + + + + - - + + + + diff --git a/src/test/java/test/Test.java b/src/test/java/test/Test.java index e7550a7..dc3d543 100644 --- a/src/test/java/test/Test.java +++ b/src/test/java/test/Test.java @@ -1,18 +1,38 @@ package test; +import com.kiisoo.ic.activity.entity.PmnActivityStoreRelation; +import com.kiisoo.ic.activity.service.IPmnActivityStoreRelationService; import com.kiisoo.ic.app.IcApplication; +import com.kiisoo.ic.generalize.entity.PrivilageOrganizational; +import com.kiisoo.ic.store.mapper.PoiStoreDOMapper; import com.kiisoo.ic.wx.service.AddWXService; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner; +import java.util.List; + @RunWith(SpringRunner.class) @SpringBootTest(classes = IcApplication.class) public class Test { @Autowired AddWXService addWXService; + @Autowired + PoiStoreDOMapper poiStoreDOMapper; + @Autowired + IPmnActivityStoreRelationService pmnActivityStoreRelationService; + + @org.junit.Test + public void fillStoreCompany(){ + List relations = pmnActivityStoreRelationService.list(); + relations.stream().forEach(item -> { + PrivilageOrganizational org = poiStoreDOMapper.findStoreCompany(item.getStoreId()); + item.setOrgId(org.getId()); + pmnActivityStoreRelationService.updateById(item); + }); + } @org.junit.Test public void te(){