|
@@ -65,6 +65,7 @@ import com.cloudcross.ssp.service.ILogService;
|
|
|
import com.cloudcross.ssp.service.IOrderService;
|
|
|
import com.cloudcross.ssp.service.IPlaceService;
|
|
|
import com.cloudcross.ssp.service.IWifiService;
|
|
|
+import com.cloudcross.ssp.service.impl.AdgroupZoneService;
|
|
|
import com.cloudcross.ssp.service.impl.PlaceClassInformationService;
|
|
|
import com.cloudcross.ssp.service.impl.WifiGroupInfoService;
|
|
|
import com.cloudcross.ssp.service.impl.ZoneService;
|
|
@@ -109,6 +110,8 @@ public class OperatorAdGroupController extends SimpleController{
|
|
|
private WifiGroupInfoService wifiGroupInfoService;
|
|
|
@Autowired
|
|
|
private PlaceClassInformationService placeClassInformationService;
|
|
|
+ @Autowired
|
|
|
+ private AdgroupZoneService adgroupZoneService;
|
|
|
/**
|
|
|
*
|
|
|
* @param model 存放传到前台的参数
|
|
@@ -217,7 +220,7 @@ public class OperatorAdGroupController extends SimpleController{
|
|
|
model.addAttribute("advertiserId", campaign.getAdvertiserId());
|
|
|
model.addAttribute("orderId", campaign.getOrderId());
|
|
|
model.addAttribute("agentId", campaign.getAgentId());
|
|
|
- model.addAttribute("budget", campaign.getOrderBudget());
|
|
|
+ model.addAttribute("budget", campaign.getTotalBudget());
|
|
|
model.addAttribute("placeList",placeList);
|
|
|
model.addAttribute("zoneList",zoneList);
|
|
|
return page("create");
|
|
@@ -284,7 +287,7 @@ public class OperatorAdGroupController extends SimpleController{
|
|
|
//找到这个投放对应的活动,然后保存活动预算
|
|
|
Campaign campaign = campaignService.findById(adGroup.getCampaignId());
|
|
|
model.addAttribute("budget", campaign.getTotalBudget());
|
|
|
-
|
|
|
+
|
|
|
Integer placeStatus = -1;//场景状态 1表示场景,2表示分组
|
|
|
String placeIdStr = "";
|
|
|
int len = 0;
|
|
@@ -332,6 +335,18 @@ public class OperatorAdGroupController extends SimpleController{
|
|
|
|
|
|
//已选广告位
|
|
|
List<Zone> selectZoneList = this.zoneService.queryZoneByAdgroupId(id);
|
|
|
+ if(null != selectZoneList && selectZoneList.size()>0){
|
|
|
+ String zoneId = "";
|
|
|
+ int selectLen = selectZoneList.size();
|
|
|
+ for(int i=0;i<selectLen;i++){
|
|
|
+ if(i<selectLen-1){
|
|
|
+ zoneId = zoneId + selectZoneList.get(i).getId()+",";
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ zoneId = zoneId + selectZoneList.get(i).getId();
|
|
|
+ }
|
|
|
+ model.addAttribute("zoneId", zoneId);
|
|
|
+ }
|
|
|
Map<String,Object> condition = new HashMap<String,Object>();
|
|
|
condition.put("operatorId", getLoginUser().getOperatorId());
|
|
|
//全部广告位
|
|
@@ -402,10 +417,10 @@ public class OperatorAdGroupController extends SimpleController{
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- model.addAttribute("campaignId", campaignId);
|
|
|
- model.addAttribute("advertiserId", campaign.getAdvertiserId());
|
|
|
- model.addAttribute("orderId", campaign.getOrderId());
|
|
|
- model.addAttribute("agentId", campaign.getAgentId());
|
|
|
+ model.addAttribute("campaignId", adGroup.getCampaignId());
|
|
|
+ model.addAttribute("advertiserId", adGroup.getAdvertiserId());
|
|
|
+ model.addAttribute("orderId", adGroup.getOrderId());
|
|
|
+ model.addAttribute("agentId", adGroup.getAgentId());
|
|
|
|
|
|
model.addAttribute("areas", areas);
|
|
|
model.addAttribute("selectedwifi", selectedWifi);
|
|
@@ -440,27 +455,7 @@ public class OperatorAdGroupController extends SimpleController{
|
|
|
return all;
|
|
|
}
|
|
|
|
|
|
- /**
|
|
|
- *已选的场景
|
|
|
- * @param adgroupId
|
|
|
- * @return
|
|
|
- */
|
|
|
- /*@RequestMapping("/selectedPlace")
|
|
|
- @ResponseBody
|
|
|
- public List<PlaceClassInformation> queryPlaceClassInformationByAdgroupId(Long adgroupId){
|
|
|
- return this.placeClassInformationService.queryPlaceClassInformationByAdgroupId(adgroupId);
|
|
|
- }*/
|
|
|
|
|
|
- /**
|
|
|
- * 已选分组
|
|
|
- * @param adgroupId
|
|
|
- * @return
|
|
|
- */
|
|
|
- /*@RequestMapping("/selectedWifigroup")
|
|
|
- @ResponseBody
|
|
|
- public List<WifiGroupInfo> queryWifiGroupInfobByAdgroupId(Long adgroupId){
|
|
|
- return this.wifiGroupInfoService.queryWifiGroupInfoByadgroupId(adgroupId);
|
|
|
- }*/
|
|
|
|
|
|
@RequestMapping("/enable")
|
|
|
@ResponseBody
|
|
@@ -778,6 +773,7 @@ public class OperatorAdGroupController extends SimpleController{
|
|
|
public String saveAdGroup(HttpServletRequest request, Model model,@ModelAttribute("form") AdGroup adGroup
|
|
|
,@RequestParam String areas,@RequestParam Map<String, Object> paramMap){
|
|
|
String placeName = adGroup.getPlaceName();
|
|
|
+ String place = paramMap.get("place").toString();
|
|
|
adGroup.setStatus(0);//开启
|
|
|
|
|
|
/**
|
|
@@ -1026,7 +1022,7 @@ public class OperatorAdGroupController extends SimpleController{
|
|
|
logService.add(log);
|
|
|
}
|
|
|
//将场景或分组保存到数据库中
|
|
|
- adGroupService.front2dbplaceorgroup(adGroup);
|
|
|
+ adGroupService.front2dbplaceorgroup(adGroup,place);
|
|
|
/**
|
|
|
* 保存已选的wifi到数据库t_adgroup_wifi
|
|
|
*/
|
|
@@ -1038,7 +1034,6 @@ public class OperatorAdGroupController extends SimpleController{
|
|
|
* 场景的新增记录
|
|
|
*/
|
|
|
//这里判断一下就是为了知道是不是有场景字符串有就会插入表,如果没有就不会插入表中也就不会有新增记录
|
|
|
- String place = adGroup.getPlace();
|
|
|
if(null != place) {
|
|
|
boolean placeFlag = false;
|
|
|
boolean groupFlag = false;
|
|
@@ -1124,7 +1119,7 @@ public class OperatorAdGroupController extends SimpleController{
|
|
|
|
|
|
//如果之前的有选择wifi删除之前保存的wifi以便编辑之后保存的wifi不冲突
|
|
|
if(formerWifiList != null) {
|
|
|
- wifiService.deleteWifi(adGroup.getId());
|
|
|
+ wifiService.deleteWifi(adGroup.getId());//逻辑删除
|
|
|
}
|
|
|
|
|
|
//保存编辑之后已选wifi
|
|
@@ -1678,7 +1673,6 @@ public class OperatorAdGroupController extends SimpleController{
|
|
|
* 如果以前的场景和现在的场景一个为空一个不为空则说明发生了变化
|
|
|
* 如果都不为空则逐个比较再看是否发生变化
|
|
|
*/
|
|
|
- String place = adGroup.getPlace();
|
|
|
if((0 != formerAdGroupPlaceList.size() && null == place) || (0 == formerAdGroupPlaceList.size() && null != place)) {
|
|
|
updatedMark = true;
|
|
|
|
|
@@ -1708,7 +1702,7 @@ public class OperatorAdGroupController extends SimpleController{
|
|
|
|
|
|
}
|
|
|
|
|
|
- if(0 != formerAdGroupPlaceList.size() && null != place) {
|
|
|
+ /*if(0 != formerAdGroupPlaceList.size() && null != place) {
|
|
|
String[] placeIdString = place.split(",");
|
|
|
Long[] placeId = new Long[placeIdString.length];
|
|
|
Long[] formerPlaceId = new Long[formerAdGroupPlaceList.size()];
|
|
@@ -1723,12 +1717,12 @@ public class OperatorAdGroupController extends SimpleController{
|
|
|
for(int i = 0; i < placeIdString.length; i++) {
|
|
|
placeId[i] = Long.parseLong(placeIdString[i]);
|
|
|
}
|
|
|
- Arrays.sort(placeId);
|
|
|
+ Arrays.sort(placeId);*/
|
|
|
|
|
|
|
|
|
//对比一下编辑前后的广告位id是否发生变化如果发生变化就去更新表并且新增修改记录
|
|
|
//首先对比一下广告位的id数量是不是一样多如果发生变化就说明广告位有了变化否则再一条一条的对比
|
|
|
- if(placeId.length == formerPlaceId.length) {
|
|
|
+ /*if(placeId.length == formerPlaceId.length) {
|
|
|
for(int i = 0; i < placeId.length; i++) {
|
|
|
if(placeId[i] != formerPlaceId[i]) {
|
|
|
updatedMark = true;
|
|
@@ -1737,27 +1731,54 @@ public class OperatorAdGroupController extends SimpleController{
|
|
|
}
|
|
|
} else {
|
|
|
updatedMark = true;
|
|
|
+ }*/
|
|
|
+
|
|
|
+ //分组或场景
|
|
|
+ adGroupService.updatePleaceOrGroup(adGroup,place);
|
|
|
+ //广告位
|
|
|
+ boolean zoneFlag = false;
|
|
|
+ List<Long>zoneIdList = adgroupZoneService.queryZoneIdByAdgroupId(adGroup.getId());
|
|
|
+ String zoneIdStr = String.valueOf(paramMap.get("zoneId"));
|
|
|
+ if(zoneIdStr != null && !"".endsWith(zoneIdStr)){
|
|
|
+ String []zoneId = zoneIdStr.split(",");
|
|
|
+ int len = zoneId.length;
|
|
|
+ int lenList = zoneIdList.size();
|
|
|
+ if(lenList == 0){
|
|
|
+ zoneFlag = true;
|
|
|
+ }else{
|
|
|
+ for(int i=0;i<len;i++){
|
|
|
+ for(int j=0;j<lenList;j++){
|
|
|
+ if(!Long.valueOf(zoneId[i]).equals(zoneIdList.get(j))){
|
|
|
+ zoneFlag = true;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ if(zoneFlag){
|
|
|
+ boolean adgroupZoneFlag = adGroupService.updateAdgroupZone(adGroup,paramMap);
|
|
|
}
|
|
|
-
|
|
|
//存储场景名称
|
|
|
formerPlaceNameString = "编辑之前的场景有:";
|
|
|
updatedPlaceNameString = "编辑之后的场景有:";
|
|
|
|
|
|
- for(int i = 0; i < formerAdGroupPlaceList.size(); i++) {
|
|
|
+ /* for(int i = 0; i < formerAdGroupPlaceList.size(); i++) {
|
|
|
formerPlaceNameString = formerPlaceNameString + placeService.findById(formerAdGroupPlaceList.get(i).getPlaceId()).getName() + ", ";
|
|
|
- }
|
|
|
+ }*/
|
|
|
|
|
|
- for(int i = 0; i < placeId.length; i++) {
|
|
|
+ /* for(int i = 0; i < placeId.length; i++) {
|
|
|
//得到对应的广告位名称
|
|
|
updatedPlaceNameString = updatedPlaceNameString + placeService.findById(placeId[i]).getName() + ", ";
|
|
|
- }
|
|
|
+ }*/
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
- if(updatedMark) {
|
|
|
+ /*if(updatedMark) {
|
|
|
adGroupPlaceService.updateAdgroupPlaceByAdgroupId(adGroup.getId());//删除之前保存的场景
|
|
|
adGroupService.front2dbplace(place,adGroup);//保存编辑之后的场景
|
|
|
//场景进行了改变,将表t_adgroup_place里面的supdated进行更新
|
|
@@ -1769,7 +1790,7 @@ public class OperatorAdGroupController extends SimpleController{
|
|
|
|
|
|
logService.add(log);
|
|
|
}
|
|
|
- }
|
|
|
+ }*/
|
|
|
|
|
|
model.addAttribute("campaignId", adGroup.getCampaignId());
|
|
|
return redirect(page("list"));
|