dev_0531
郑皇 5 years ago
parent d37b78f846
commit 9f517cb5ce

@ -1,19 +0,0 @@
package com.kiisoo.ic.activity.controller;
import com.kiisoo.ic.synchronous.entity.TurnBackDTO;
import io.swagger.annotations.Api;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.Map;
@RestController
@Api(value = "活动回调事件", tags = {"活动回调事件"})
@RequestMapping(value = "/activity/event")
@Slf4j
public class EventController {
public Map<String, Object> joinCb(TurnBackDTO turnBackDTOS){
return null;
}
}

@ -16,4 +16,5 @@ import java.util.List;
*/
public interface IPmnPromotionSrcService extends IService<PmnPromotionSrc> {
List<PromotionSrcVO> listUserCodes(Long userId) throws Exception;
String saveCodeFile(String fileUrl, String code);
}

@ -130,7 +130,8 @@ public class PmnPromotionSrcServiceImpl extends ServiceImpl<PmnPromotionSrcDOMap
return lists;
}
private String saveCodeFile(String fileUrl, String code) {
@Override
public String saveCodeFile(String fileUrl, String code) {
try {
File targetPath = new File("activity");
if (!targetPath.exists()) {

@ -1,10 +1,17 @@
package com.kiisoo.ic.customer;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.google.gson.Gson;
import com.kiisoo.ic.activity.bean.ActivityInstanceVO;
import com.kiisoo.ic.activity.entity.PmnActivityInstanceConfig;
import com.kiisoo.ic.activity.entity.PmnPromotionSrc;
import com.kiisoo.ic.activity.service.IPmnActivityInstanceConfigService;
import com.kiisoo.ic.activity.service.IPmnActivityInstanceService;
import com.kiisoo.ic.activity.service.IPmnPromotionSrcService;
import com.kiisoo.ic.constants.Constants;
import com.kiisoo.ic.customer.bean.CustomerDTO;
import com.kiisoo.ic.customer.bean.CustomerModifyDTO;
@ -30,6 +37,7 @@ import com.kiisoo.ic.store.mapper.PoiStoreDOMapper;
import com.kiisoo.ic.store.mapper.PoiStoreStaffDOMapper;
import com.kiisoo.ic.store.mapper.PrivilageCpUserStoreDOMapper;
import com.kiisoo.ic.store.service.PoiStoreService;
import com.kiisoo.ic.store.service.StoreEmployeeService;
import com.kiisoo.ic.synchronous.entity.TurnBackDTO;
import com.kiisoo.ic.system.entity.PrivilageUserDO;
import com.kiisoo.ic.system.enums.RoleEnum;
@ -97,6 +105,15 @@ public class CustomerService {
@Autowired
public PrivilageUserDOMapper privilageUserDOMapper;
@Autowired
private IPmnPromotionSrcService pmnPromotionSrcService;
@Autowired
private IPmnActivityInstanceService pmnActivityInstanceService;
@Autowired
private IPmnActivityInstanceConfigService pmnActivityInstanceConfigService;
@Autowired
private StoreEmployeeService storeEmployeeService;
/**
* token
*/
@ -191,12 +208,38 @@ public class CustomerService {
* @param turnBackDTOS
* @param eaCode state
*/
private void handleActivity(TurnBackDTO turnBackDTOS, String eaCode){
private void handleActivity(TurnBackDTO turnBackDTOS, String eaCode) throws Exception {
String[] strArr = eaCode.split(Constants.LINE);
Long instanceId = Long.parseLong(strArr[1]);
int type = Integer.parseInt(strArr[2]);
Long promoterId = Long.parseLong(strArr[3]);
// 处理逻辑
if(type == 1) {
//导购逻辑
PmnPromotionSrc src = pmnPromotionSrcService.getOne(Wrappers.<PmnPromotionSrc>lambdaQuery().eq(PmnPromotionSrc::getInstanceId, instanceId).eq(PmnPromotionSrc::getType, type).eq(PmnPromotionSrc::getPromoterId, promoterId));
if(src == null) {
PrivilageCpUserDO cpUserDO = privilageCpUserDOMapper.selectOne(Wrappers.<PrivilageCpUserDO>lambdaQuery().eq(PrivilageCpUserDO::getCpUserId, turnBackDTOS.getWxData().getUserId()));
Long storeId = privilageCpUserStoreDOMapper.selectOneByCpUserId(turnBackDTOS.getWxData().getUserId());
String state = Constants.ACTIVITY_QR_CODE_PREFIX + Constants.LINE + instanceId + Constants.LINE + type + Constants.LINE + promoterId;
ActivityInstanceVO instanceVO = pmnActivityInstanceService.getVO(instanceId);
PmnActivityInstanceConfig config = pmnActivityInstanceConfigService.getOne(Wrappers.<PmnActivityInstanceConfig>lambdaQuery().eq(PmnActivityInstanceConfig::getInstanceId, instanceId));
PmnPromotionSrc saveSrc = new PmnPromotionSrc();
saveSrc.setCaseId(config.getCaseId());
saveSrc.setCode(state);
saveSrc.setCreateTime(new Date());
saveSrc.setExpiredTime(instanceVO.getEndTime());
saveSrc.setInstanceId(instanceId);
saveSrc.setPromoterId(cpUserDO.getId());
saveSrc.setIsAddition(2L);
saveSrc.setType(1L);
saveSrc.setUpdateTime(new Date());
saveSrc.setStatus(1L);
PoiStore store = poiStoreDOMapper.selectById(storeId);
String url = storeEmployeeService.createActivityQrCode(turnBackDTOS.getWxData().getUserId(), store.getCode(), 1, instanceId, promoterId);
saveSrc.setQrCode(url);
pmnPromotionSrcService.save(saveSrc);
}
}
}
/**

@ -90,6 +90,21 @@ public class SynchronousController {
return DataImportUtil.fail(e);
}
}
@RequestMapping(value = "/ics/activity/event/cb", method = RequestMethod.POST, consumes = "application/json")
@ResponseBody
public String activityEventCb(@RequestBody List<TurnBackDTO> turnBackDTOS) {
try {
for (TurnBackDTO turnBackDTO : turnBackDTOS) {
customerService.turnBack(turnBackDTO);
}
return DataImportUtil.succ(1);
}catch (Exception e){
log.error("扫码回调报错",e);
String str = JSON.toJSONString(turnBackDTOS);
System.out.println(str);
return DataImportUtil.fail(e);
}
}
/**
*

Loading…
Cancel
Save