|
@@ -5,14 +5,12 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
|
|
+import com.storlead.framework.common.util.StringUtil;
|
|
|
|
|
+import com.storlead.trade.controller.MarketingCampaignSopDetailController;
|
|
|
import com.storlead.trade.dto.MarketingCampaignDTO;
|
|
import com.storlead.trade.dto.MarketingCampaignDTO;
|
|
|
-import com.storlead.trade.entity.CustomerAnalysisResultEntity;
|
|
|
|
|
-import com.storlead.trade.entity.CustomerBaseEntity;
|
|
|
|
|
-import com.storlead.trade.entity.MarketingCampaignEntity;
|
|
|
|
|
|
|
+import com.storlead.trade.entity.*;
|
|
|
import com.storlead.trade.mapper.MarketingCampaignEntityMapper;
|
|
import com.storlead.trade.mapper.MarketingCampaignEntityMapper;
|
|
|
-import com.storlead.trade.service.CustomerAnalysisResultEntityService;
|
|
|
|
|
-import com.storlead.trade.service.CustomerBaseEntityService;
|
|
|
|
|
-import com.storlead.trade.service.MarketingCampaignEntityService;
|
|
|
|
|
|
|
+import com.storlead.trade.service.*;
|
|
|
import com.storlead.trade.vo.MarketingCampaignVO;
|
|
import com.storlead.trade.vo.MarketingCampaignVO;
|
|
|
import com.storlead.framework.common.constant.CommonConstant;
|
|
import com.storlead.framework.common.constant.CommonConstant;
|
|
|
import com.storlead.framework.common.result.Result;
|
|
import com.storlead.framework.common.result.Result;
|
|
@@ -20,6 +18,7 @@ import com.storlead.framework.mybatis.service.impl.MyBaseServiceImpl;
|
|
|
import org.springframework.beans.BeanUtils;
|
|
import org.springframework.beans.BeanUtils;
|
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.util.CollectionUtils;
|
|
import org.springframework.util.CollectionUtils;
|
|
|
|
|
+import org.springframework.util.StringUtils;
|
|
|
|
|
|
|
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
import javax.annotation.Resource;
|
|
@@ -36,6 +35,10 @@ public class MarketingCampaignEntityServiceImpl
|
|
|
private CustomerBaseEntityService customerBaseEntityService;
|
|
private CustomerBaseEntityService customerBaseEntityService;
|
|
|
@Resource
|
|
@Resource
|
|
|
private CustomerAnalysisResultEntityService customerAnalysisResultEntityService;
|
|
private CustomerAnalysisResultEntityService customerAnalysisResultEntityService;
|
|
|
|
|
+ @Resource
|
|
|
|
|
+ private SopDetailService sopDetailService;
|
|
|
|
|
+ @Resource
|
|
|
|
|
+ private MarketingCampaignSopDetailService marketingCampaignSopDetailService;
|
|
|
@Override
|
|
@Override
|
|
|
public Result<Object> getList(MarketingCampaignDTO marketingCampaignDTO) {
|
|
public Result<Object> getList(MarketingCampaignDTO marketingCampaignDTO) {
|
|
|
IPage<MarketingCampaignVO> pageVO = new Page<>(marketingCampaignDTO.getPageIndex(), marketingCampaignDTO.getPageSize());
|
|
IPage<MarketingCampaignVO> pageVO = new Page<>(marketingCampaignDTO.getPageIndex(), marketingCampaignDTO.getPageSize());
|
|
@@ -112,6 +115,36 @@ public class MarketingCampaignEntityServiceImpl
|
|
|
return Result.error("添加失败");
|
|
return Result.error("添加失败");
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
+ //添加关联sopDetailIdList,并调取ai生成邮件内容
|
|
|
|
|
+ List<Long> sopDetailIdList = marketingCampaignDTO.getSopDetailIdList();
|
|
|
|
|
+ if (!CollectionUtils.isEmpty(sopDetailIdList)) {
|
|
|
|
|
+ //将sopDetailIdList转为 逗号分隔的字符串
|
|
|
|
|
+ String sopDetailIdListString = StringUtil.longListToString(sopDetailIdList);
|
|
|
|
|
+ //判断是否和原有的相同
|
|
|
|
|
+ if (!StringUtils.isEmpty(marketingCampaignEntity.getSopDetailIds()) && !marketingCampaignEntity.getSopDetailIds().equals(sopDetailIdListString)) {
|
|
|
|
|
+
|
|
|
|
|
+ marketingCampaignEntity.setSopDetailIds(sopDetailIdListString);
|
|
|
|
|
+ this.updateById(marketingCampaignEntity);
|
|
|
|
|
+ //删除原有关联sopDetail
|
|
|
|
|
+ LambdaUpdateWrapper<MarketingCampaignSopDetailEntity> MarketingCampaignSopDetailUpdateWrapper = new LambdaUpdateWrapper<>();
|
|
|
|
|
+ MarketingCampaignSopDetailUpdateWrapper.eq(MarketingCampaignSopDetailEntity::getMarketingCampaignId, marketingCampaignEntity.getId());
|
|
|
|
|
+ MarketingCampaignSopDetailUpdateWrapper.set(MarketingCampaignSopDetailEntity::getIsDelete, 1);
|
|
|
|
|
+ marketingCampaignSopDetailService.update(MarketingCampaignSopDetailUpdateWrapper);
|
|
|
|
|
+
|
|
|
|
|
+ List<SopDetailEntity> sopDetailEntityList = sopDetailService.listByIds(sopDetailIdList).stream().toList();
|
|
|
|
|
+ List<MarketingCampaignSopDetailEntity> marketingCampaignSopDetailEntityList = new ArrayList<>();
|
|
|
|
|
+ for (SopDetailEntity sopDetailEntity : sopDetailEntityList) {
|
|
|
|
|
+ MarketingCampaignSopDetailEntity marketingCampaignSopDetailEntity = new MarketingCampaignSopDetailEntity();
|
|
|
|
|
+ marketingCampaignSopDetailEntity.setMarketingCampaignId(marketingCampaignEntity.getId());
|
|
|
|
|
+ marketingCampaignSopDetailEntity.setSopDetailId(sopDetailEntity.getId());
|
|
|
|
|
+ //预留补充ai生成的邮件内容模板
|
|
|
|
|
+// marketingCampaignSopDetailEntity.setEmailContent();
|
|
|
|
|
+ marketingCampaignSopDetailEntityList.add(marketingCampaignSopDetailEntity);
|
|
|
|
|
+ }
|
|
|
|
|
+ boolean saveOk = marketingCampaignSopDetailService.saveBatch(marketingCampaignSopDetailEntityList);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
return Result.ok();
|
|
return Result.ok();
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -141,6 +174,36 @@ public class MarketingCampaignEntityServiceImpl
|
|
|
return Result.error("修改失败");
|
|
return Result.error("修改失败");
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
+ //添加关联sopDetailIdList,并调取ai生成邮件内容
|
|
|
|
|
+ List<Long> sopDetailIdList = marketingCampaignDTO.getSopDetailIdList();
|
|
|
|
|
+ if (!CollectionUtils.isEmpty(sopDetailIdList)) {
|
|
|
|
|
+ //将sopDetailIdList转为 逗号分隔的字符串
|
|
|
|
|
+ String sopDetailIdListString = StringUtil.longListToString(sopDetailIdList);
|
|
|
|
|
+ //判断是否和原有的相同
|
|
|
|
|
+ if (!StringUtils.isEmpty(marketingCampaignEntity.getSopDetailIds()) && !marketingCampaignEntity.getSopDetailIds().equals(sopDetailIdListString)) {
|
|
|
|
|
+
|
|
|
|
|
+ marketingCampaignEntity.setSopDetailIds(sopDetailIdListString);
|
|
|
|
|
+ this.updateById(marketingCampaignEntity);
|
|
|
|
|
+ //删除原有关联sopDetail
|
|
|
|
|
+ LambdaUpdateWrapper<MarketingCampaignSopDetailEntity> MarketingCampaignSopDetailUpdateWrapper = new LambdaUpdateWrapper<>();
|
|
|
|
|
+ MarketingCampaignSopDetailUpdateWrapper.eq(MarketingCampaignSopDetailEntity::getMarketingCampaignId, marketingCampaignEntity.getId());
|
|
|
|
|
+ MarketingCampaignSopDetailUpdateWrapper.set(MarketingCampaignSopDetailEntity::getIsDelete, 1);
|
|
|
|
|
+ marketingCampaignSopDetailService.update(MarketingCampaignSopDetailUpdateWrapper);
|
|
|
|
|
+
|
|
|
|
|
+ List<SopDetailEntity> sopDetailEntityList = sopDetailService.listByIds(sopDetailIdList).stream().toList();
|
|
|
|
|
+ List<MarketingCampaignSopDetailEntity> marketingCampaignSopDetailEntityList = new ArrayList<>();
|
|
|
|
|
+ for (SopDetailEntity sopDetailEntity : sopDetailEntityList) {
|
|
|
|
|
+ MarketingCampaignSopDetailEntity marketingCampaignSopDetailEntity = new MarketingCampaignSopDetailEntity();
|
|
|
|
|
+ marketingCampaignSopDetailEntity.setMarketingCampaignId(marketingCampaignEntity.getId());
|
|
|
|
|
+ marketingCampaignSopDetailEntity.setSopDetailId(sopDetailEntity.getId());
|
|
|
|
|
+ //预留补充ai生成的邮件内容模板
|
|
|
|
|
+// marketingCampaignSopDetailEntity.setEmailContent();
|
|
|
|
|
+ marketingCampaignSopDetailEntityList.add(marketingCampaignSopDetailEntity);
|
|
|
|
|
+ }
|
|
|
|
|
+ boolean saveOk = marketingCampaignSopDetailService.saveBatch(marketingCampaignSopDetailEntityList);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
return Result.ok();
|
|
return Result.ok();
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|