package com.kiisoo.ic.activity.controller; import com.kiisoo.ic.common.BaseController; import com.kiisoo.ic.employee.mapper.PrivilageCpUserDOMapper; import com.kiisoo.ic.store.entity.PoiStoreStaff; import com.kiisoo.ic.store.mapper.PoiStoreStaffDOMapper; import com.kiisoo.ic.store.mapper.PrivilageCpUserStoreDOMapper; import com.kiisoo.ic.store.service.StoreEmployeeService; import com.kiisoo.ic.synchronous.entity.TurnBackDTO; import com.kiisoo.ic.system.entity.PrivilageAccountDO; import com.kiisoo.ic.system.entity.PrivilageRoleDO; import com.kiisoo.ic.system.entity.PrivilageUserDO; import com.kiisoo.ic.system.mapper.PrivilageRoleDOMapper; import com.kiisoo.ic.system.mapper.PrivilageUserDOMapper; import com.kiisoo.ic.system.service.PrivilageAccountService; import com.kiisoo.ic.webappmy.service.WebAppService; import com.kiisoo.ic.webappmy.vo.StafferInfoVO; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.List; import java.util.Map; @Api(value = "小程序-我的活动推广", tags = {"小程序-我的活动推广"}) @RestController @RequestMapping("/webapp/my") @Slf4j public class WebAppActivityController extends BaseController { @Autowired private PoiStoreStaffDOMapper poiStoreStaffDOMapper; @Autowired private PrivilageCpUserStoreDOMapper privilageCpUserStoreDOMapper; @Autowired private PrivilageCpUserDOMapper privilageCpUserDOMapper; @Autowired private StoreEmployeeService storeEmployeeService; @Autowired private WebAppService webAppService; /** * 用户 mapper */ @Autowired private PrivilageUserDOMapper privilageUserDOMapper; /** * 角色 mapper */ @Autowired private PrivilageRoleDOMapper privilageRoleDOMapper; /** * 账号service */ @Autowired private PrivilageAccountService privilageAccountService; @ApiOperation(value = "我的活动推广列表") @GetMapping("/get/promotions") public Map myPromotions(long userId) { // TODO 查询当前小程序用户,在活动有效期间的有效活动,包含活动名称,活动二维码 // TODO 从 promotion_src 获取当前导购的推广关系,并关联 activity_instance等表获取活动详情(注意活动有效性) // TODO 需要附加这个活动已经推广的客户列表 promotion_friends_src try { List info = poiStoreStaffDOMapper.selectInfoById(userId); if(info.size() > 0){ PrivilageUserDO privilageUserDO = privilageUserDOMapper.selectById(userId); // 用户不存在 if(null == privilageUserDO){ return fail(com.kiisoo.ic.constants.Constants.ERROR_USER_NO_PERMISSION); } PrivilageAccountDO result = privilageAccountService.getAccountByUserId(userId); // 该账号已暂停,请联系店长 if(null != result && result.getStatus().equals(2)){ return fail(com.kiisoo.ic.constants.Constants.ERROR_ACCOUNT_STOP); } PrivilageRoleDO roleDO = privilageRoleDOMapper.selectRoleName(userId); Long storeId = privilageUserDOMapper.selectStoreIdByUserId(userId); return data(info.get(0)); }else { // 用户不存在 return fail("0009"); } }catch (Exception e){ log.error("获取用户信息异常",e); return fail(); } } @ApiOperation(value = "我的活动推广列表") @PostMapping("/post/promotions") public Map pushPromotion(long userId, List list, long promotionId) { // TODO 将活动推广给单个或多个用户 promotion_friends_src // TODO 如果已经推广过了,则忽略 return data(null); } @ApiOperation(value = "好友添加回调通知") @PostMapping("/cb") public Map turnBack(@RequestBody List turnBackDTOS) { // TODO 待调查 return data(null); } }