|
@@ -1,18 +1,27 @@
|
|
|
package com.kmall.admin.service.impl.mk;
|
|
|
|
|
|
+import com.kmall.admin.cuspay.aop.AspectWebLog;
|
|
|
import com.kmall.admin.dao.mk.MkActivityFormDao;
|
|
|
+import com.kmall.admin.entity.mk.MkActivitiesAssociationEntity;
|
|
|
import com.kmall.admin.entity.mk.MkActivitiesEntity;
|
|
|
import com.kmall.admin.entity.mk.MkActivityFormEntity;
|
|
|
import com.kmall.admin.fromcomm.entity.SysUserEntity;
|
|
|
+import com.kmall.admin.service.mk.MkActivitiesAssociationService;
|
|
|
+import com.kmall.admin.service.mk.MkActivitiesService;
|
|
|
import com.kmall.admin.service.mk.MkActivityFormService;
|
|
|
import com.kmall.admin.utils.ShiroUtils;
|
|
|
+import com.kmall.admin.utils.jackson.JacksonUtil;
|
|
|
+import com.kmall.common.constant.Dict;
|
|
|
+import com.kmall.common.utils.R;
|
|
|
import com.kmall.common.utils.RRException;
|
|
|
+import org.slf4j.Logger;
|
|
|
+import org.slf4j.LoggerFactory;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
-import java.util.Date;
|
|
|
-import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
+import java.util.*;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
* 活动形式表Service实现类
|
|
@@ -23,8 +32,13 @@ import java.util.Map;
|
|
|
*/
|
|
|
@Service("mkActivityFormService")
|
|
|
public class MkActivityFormServiceImpl implements MkActivityFormService {
|
|
|
+ private static final Logger logger = LoggerFactory.getLogger(MkActivityFormServiceImpl.class);
|
|
|
@Autowired
|
|
|
private MkActivityFormDao mkActivityFormDao;
|
|
|
+ @Autowired
|
|
|
+ private MkActivitiesAssociationService mkActivitiesAssociationService;
|
|
|
+ @Autowired
|
|
|
+ private MkActivitiesService mkActivitiesService;
|
|
|
|
|
|
@Override
|
|
|
public MkActivityFormEntity queryObject(Long mmId) {
|
|
@@ -71,8 +85,44 @@ public class MkActivityFormServiceImpl implements MkActivityFormService {
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public int deleteBatch(Long[]mmIds) {
|
|
|
- return mkActivityFormDao.deleteBatch(mmIds);
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
+ public R deleteBatch(Long[]mmIds) {
|
|
|
+ List<MkActivityFormEntity> mkActivityFormEntities = mkActivityFormDao.listBymmIds(mmIds);
|
|
|
+ logger.debug("活动形式删除数据:{}", JacksonUtil.toJson(mkActivityFormEntities));
|
|
|
+ if (!mkActivityFormEntities.isEmpty()){
|
|
|
+ //不为空说明下一级菜单有
|
|
|
+ for (Long mmid : mmIds) {
|
|
|
+ MkActivityFormEntity mkActivitiesEntity=null;
|
|
|
+ for (MkActivityFormEntity activitiesEntity:
|
|
|
+ mkActivityFormEntities) {
|
|
|
+ if (mmid.equals(activitiesEntity.getMmId())){
|
|
|
+ mkActivitiesEntity=activitiesEntity;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ // mkActivitiesEntity对象为空跳出循环 应该是不会为空
|
|
|
+ if (Objects.isNull(mkActivitiesEntity)){
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ logger.debug("当前删除的活动形式数据:{}",JacksonUtil.toJson(mkActivitiesEntity));
|
|
|
+ String mkCode = mkActivitiesEntity.getMkCode();
|
|
|
+ //第二层 营销活动-活动关联表
|
|
|
+ HashMap<String, Object> map = new HashMap<>();
|
|
|
+ map.put("mkCode",mkCode);
|
|
|
+ List<MkActivitiesAssociationEntity> mkActivitiesAssociationEntities = mkActivitiesAssociationService.queryList(map);
|
|
|
+ logger.debug("营销活动-活动关联表数据:{}",JacksonUtil.toJson(mkActivitiesAssociationEntities));
|
|
|
+ List<Long> mkaIds = mkActivitiesAssociationEntities.stream().map(bean -> bean.getMkaId()).collect(Collectors.toList());
|
|
|
+ Long[] longs = mkaIds.toArray(new Long[]{});
|
|
|
+// mkActivitiesAssociationEntities.stream().map(Long::get).collect(Collectors.toList());
|
|
|
+ //第三层 营销活动表
|
|
|
+ //第四层 营销活动对应具体活动
|
|
|
+ logger.debug("营销活动-活动关联删除数据:{}",JacksonUtil.toJson(longs));
|
|
|
+ mkActivitiesService.deleteBatch(longs);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ //第一层删除 活动形式表
|
|
|
+ mkActivityFormDao.deleteBatch(mmIds);
|
|
|
+ return R.ok("删除成功");
|
|
|
}
|
|
|
|
|
|
@Override
|