Browse Source

热点分组create页面两个删除方法

jun.zhou 9 years ago
parent
commit
434177eb94

+ 4 - 0
src/main/java/com/cloudcross/ssp/model/mapper/wifi.sql.xml

@@ -414,4 +414,8 @@
 				and loc.cn_city = #{cnCity}
 				and loc.cn_city = #{cnCity}
 			</if>
 			</if>
 	</select>
 	</select>
+	
+	<select id="queryWifiNameById" resultType="java.lang.String" parameterType="java.lang.Long">
+		select name from t_wifi where id = #{id}
+	</select>
 </mapper>
 </mapper>

+ 17 - 0
src/main/java/com/cloudcross/ssp/model/mapper/wifiGroup.sql.xml

@@ -33,4 +33,21 @@
         </trim>
         </trim>
 	</insert>
 	</insert>
 	
 	
+	<!-- 将wifi移除分组 -->
+	<update id="updateWifiGroupStatus" parameterType="java.util.Map">
+		update t_wifi_group 
+			set status = #{status},supdated = #{supdated}
+			where t_wifi_group.wifi_id in
+			<foreach item="id" collection="idList"
+		      open="(" separator="," close=")">
+		        #{id}
+			</foreach>
+	</update>
+	
+	<!-- 根据分组名将wifi移除分组 -->
+	<select id="updateStatusById" parameterType="java.util.Map">
+		update t_wifi_group 
+			set status = #{status},supdated = #{supdated}
+			where t_wifi_group.group_id = ${id}
+	</select>
 </mapper>
 </mapper>

+ 7 - 0
src/main/java/com/cloudcross/ssp/model/mapper/wifiGroupInfo.sql.xml

@@ -60,4 +60,11 @@
 	<select id="queryGroupNameAll" resultType="com.cloudcross.ssp.model.WifiGroupInfo" parameterType="java.util.Map">
 	<select id="queryGroupNameAll" resultType="com.cloudcross.ssp.model.WifiGroupInfo" parameterType="java.util.Map">
 		select <include refid="column"/> from t_wifi_group_info where status != -1 and operator_id = #{operatorId} 
 		select <include refid="column"/> from t_wifi_group_info where status != -1 and operator_id = #{operatorId} 
 	</select>
 	</select>
+	
+	<!-- 删除分组 -->
+	<update id="updateStatusById" parameterType="java.util.Map">
+		update t_wifi_group_info 
+			set status = #{status},updated = #{updated}
+			where t_wifi_group_info.id = ${id}
+	</update>
 </mapper>
 </mapper>

+ 1 - 0
src/main/java/com/cloudcross/ssp/service/IWifiGroupInfoService.java

@@ -25,4 +25,5 @@ public interface IWifiGroupInfoService extends IGenericService<WifiGroupInfo>{
 	public List<WifiGroupInfo> queryWifiGroupInfoByCondition(Map<String,Object>condition,Pager1 pager);
 	public List<WifiGroupInfo> queryWifiGroupInfoByCondition(Map<String,Object>condition,Pager1 pager);
 	public Integer queryWifiGroupInfoCountByCondition(Map<String,Object>condition);
 	public Integer queryWifiGroupInfoCountByCondition(Map<String,Object>condition);
 	public List<WifiGroupInfo> queryGroupNameAll(Map<String,Object>map);
 	public List<WifiGroupInfo> queryGroupNameAll(Map<String,Object>map);
+	public boolean updateStatusById(Long id, int status);
 }
 }

+ 1 - 0
src/main/java/com/cloudcross/ssp/service/IWifiGroupService.java

@@ -16,5 +16,6 @@ import com.cloudcross.ssp.model.WifiGroup;
  *
  *
  */
  */
 public interface IWifiGroupService extends IGenericService<WifiGroup>{
 public interface IWifiGroupService extends IGenericService<WifiGroup>{
+	public boolean updateStatusById(Long id, int status);
 
 
 }
 }

+ 2 - 0
src/main/java/com/cloudcross/ssp/service/IWifiService.java

@@ -35,4 +35,6 @@ public interface IWifiService extends IGenericService<Wifi> {
 	
 	
 	public int findWifiCountByCondition(Map<String,Object>condition);
 	public int findWifiCountByCondition(Map<String,Object>condition);
 	public List<Wifi>findWifiByCondition(Map<String,Object>condition,Pager pager);
 	public List<Wifi>findWifiByCondition(Map<String,Object>condition,Pager pager);
+	
+	public String queryWifiNameById(Long id);
 }
 }

+ 12 - 0
src/main/java/com/cloudcross/ssp/service/impl/WifiGroupInfoService.java

@@ -1,5 +1,6 @@
 package com.cloudcross.ssp.service.impl;
 package com.cloudcross.ssp.service.impl;
 
 
+import java.util.Date;
 import java.util.HashMap;
 import java.util.HashMap;
 import java.util.List;
 import java.util.List;
 import java.util.Map;
 import java.util.Map;
@@ -8,6 +9,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 
 
 import com.cloudcross.ssp.base.dao.GenericIBatisDao;
 import com.cloudcross.ssp.base.dao.GenericIBatisDao;
+import com.cloudcross.ssp.common.utils.MapBuilder;
 import com.cloudcross.ssp.common.utils.Pager;
 import com.cloudcross.ssp.common.utils.Pager;
 import com.cloudcross.ssp.common.utils.Pager1;
 import com.cloudcross.ssp.common.utils.Pager1;
 import com.cloudcross.ssp.model.WifiGroupInfo;
 import com.cloudcross.ssp.model.WifiGroupInfo;
@@ -86,4 +88,14 @@ public class WifiGroupInfoService implements IWifiGroupInfoService{
 	public Integer queryWifiGroupInfoCountByCondition(Map<String, Object> condition) {
 	public Integer queryWifiGroupInfoCountByCondition(Map<String, Object> condition) {
 		return myBatisDao.get("wifiGroupInfoSqlMapper.queryGroupNamesCount",condition);
 		return myBatisDao.get("wifiGroupInfoSqlMapper.queryGroupNamesCount",condition);
 	}
 	}
+	
+	public boolean updateStatusById(Long id, int status) {
+		myBatisDao.save("wifiGroupInfoSqlMapper.updateStatusById",
+				MapBuilder.create(HashMap.class)
+					.add("id", id)
+					.add("updated", new Date())
+					.add("status", status).map());
+		return true;
+	}
+	
 }
 }

+ 19 - 2
src/main/java/com/cloudcross/ssp/service/impl/WifiGroupService.java

@@ -1,5 +1,7 @@
 package com.cloudcross.ssp.service.impl;
 package com.cloudcross.ssp.service.impl;
 
 
+import java.util.Date;
+import java.util.HashMap;
 import java.util.List;
 import java.util.List;
 import java.util.Map;
 import java.util.Map;
 
 
@@ -7,6 +9,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 
 
 import com.cloudcross.ssp.base.dao.GenericIBatisDao;
 import com.cloudcross.ssp.base.dao.GenericIBatisDao;
+import com.cloudcross.ssp.common.utils.MapBuilder;
 import com.cloudcross.ssp.common.utils.Pager;
 import com.cloudcross.ssp.common.utils.Pager;
 import com.cloudcross.ssp.model.WifiGroup;
 import com.cloudcross.ssp.model.WifiGroup;
 import com.cloudcross.ssp.service.IWifiGroupService;
 import com.cloudcross.ssp.service.IWifiGroupService;
@@ -60,8 +63,22 @@ public class WifiGroupService implements IWifiGroupService{
 
 
 	@Override
 	@Override
 	public boolean updateStatus(List<Long> idList, int status) {
 	public boolean updateStatus(List<Long> idList, int status) {
-		// TODO Auto-generated method stub
-		return false;
+		myBatisDao.save("wifiGroupSqlMapper.updateWifiGroupStatus",
+				MapBuilder.create(HashMap.class)
+					.add("idList", idList)
+					.add("supdated", new Date().getTime()/1000)
+					.add("status", status).map());
+		return true;
 	}
 	}
 
 
+	@Override
+	public boolean updateStatusById(Long id, int status) {
+		myBatisDao.save("wifiGroupSqlMapper.updateStatusById",
+				MapBuilder.create(HashMap.class)
+					.add("id", id)
+					.add("supdated", new Date().getTime()/1000)
+					.add("status", status).map());
+		return true;
+	}
+	
 }
 }

+ 3 - 0
src/main/java/com/cloudcross/ssp/service/impl/WifiService.java

@@ -265,6 +265,9 @@ public class WifiService implements IWifiService{
 		return myBatisDao.getList("wifiSqlMapper.queryWifiByCondition", condition);
 		return myBatisDao.getList("wifiSqlMapper.queryWifiByCondition", condition);
 	}
 	}
 	
 	
+	public String queryWifiNameById(Long id){
+		return myBatisDao.get("wifiSqlMapper.queryWifiNameById", id);
+	}
 	
 	
 	
 	
 }
 }

+ 95 - 1
src/main/java/com/cloudcross/ssp/web/operator/main/ap/ApgroupController.java

@@ -6,6 +6,9 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.List;
 import java.util.Map;
 import java.util.Map;
 
 
+import javax.servlet.http.HttpServletRequest;
+
+import org.apache.commons.lang.ArrayUtils;
 import org.apache.log4j.Logger;
 import org.apache.log4j.Logger;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
 import org.springframework.stereotype.Controller;
@@ -15,14 +18,20 @@ import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.ResponseBody;
 import org.springframework.web.bind.annotation.ResponseBody;
 
 
 import com.cloudcross.ssp.base.web.SimpleController;
 import com.cloudcross.ssp.base.web.SimpleController;
+import com.cloudcross.ssp.common.consts.Status;
+import com.cloudcross.ssp.common.utils.Common;
+import com.cloudcross.ssp.common.utils.LangUtil;
 import com.cloudcross.ssp.common.utils.Pager;
 import com.cloudcross.ssp.common.utils.Pager;
 import com.cloudcross.ssp.common.utils.Pager1;
 import com.cloudcross.ssp.common.utils.Pager1;
 import com.cloudcross.ssp.common.utils.SqlHelper;
 import com.cloudcross.ssp.common.utils.SqlHelper;
 import com.cloudcross.ssp.model.Account;
 import com.cloudcross.ssp.model.Account;
+import com.cloudcross.ssp.model.Advertiser;
+import com.cloudcross.ssp.model.Log;
 import com.cloudcross.ssp.model.Wifi;
 import com.cloudcross.ssp.model.Wifi;
 import com.cloudcross.ssp.model.WifiGroup;
 import com.cloudcross.ssp.model.WifiGroup;
 import com.cloudcross.ssp.model.WifiGroupInfo;
 import com.cloudcross.ssp.model.WifiGroupInfo;
 import com.cloudcross.ssp.model.pojo.WifiPojo;
 import com.cloudcross.ssp.model.pojo.WifiPojo;
+import com.cloudcross.ssp.service.ILogService;
 import com.cloudcross.ssp.service.IWifiGroupInfoService;
 import com.cloudcross.ssp.service.IWifiGroupInfoService;
 import com.cloudcross.ssp.service.IWifiGroupService;
 import com.cloudcross.ssp.service.IWifiGroupService;
 import com.cloudcross.ssp.service.IWifiService;
 import com.cloudcross.ssp.service.IWifiService;
@@ -49,7 +58,8 @@ public class ApgroupController extends SimpleController{
 	private IWifiGroupService wifiGroupService;
 	private IWifiGroupService wifiGroupService;
 	@Autowired
 	@Autowired
 	private IWifiService wifiService;
 	private IWifiService wifiService;
-	
+	@Autowired
+	private ILogService logService;
 	/**
 	/**
 	 * 媒体自用分组list页数据加载
 	 * 媒体自用分组list页数据加载
 	 * list:(这里用一句话描述这个方法的作用)
 	 * list:(这里用一句话描述这个方法的作用)
@@ -347,4 +357,88 @@ public class ApgroupController extends SimpleController{
 		return result;	
 		return result;	
 	}
 	}
 	
 	
+	/**
+	 * 根据wifiID将热点移除分组
+	 * @param id wifi的id
+	 * @param request
+	 * @return
+	 */
+	@RequestMapping("/removeWifiFromGroupByWifiId")
+	@ResponseBody
+	public String removeWifiFromGroupByWifiId(Long[] id,HttpServletRequest request) {
+		if (ArrayUtils.isNotEmpty(id)) {
+			//循环得到订单名称(批量或者单个都可以)_________为了插入log记录的时候显示订单名称!
+			List<String> list = new ArrayList<String>();
+			
+			for (int i = 0;i < id.length;i++) {
+				String wifiName = this.wifiService.queryWifiNameById(id[i]);
+				list.add(wifiName);
+			}
+			
+			if(wifiGroupService.updateStatus(LangUtil.array2List(id),Status.delete.value) ) {
+				//如果删除订单成功,向log数据库中插入记录!
+				for (int i = 0;i < id.length;i++) {
+				Log logDel= new Log();
+				logDel.setModule("Operator");//对应模块
+				logDel.setTableName("t_wifi_group");//对应的表名
+				logDel.setRecordId(id[i]);//对应广告主id
+				logDel.setActionType("删除");	//操作类型
+				logDel.setAction("将"+list.get(i)+"热点移除分组");//变更详情
+				//下面这几个字段目前后端数据没有得到。所以仅作测试用!
+				logDel.setActionTime("100");
+				logDel.setAccountId(Long.valueOf(getLoginUser().getId()));
+				logDel.setUserIp(Common.toIpAddr(request));
+				logDel.setAccountName(getLoginUser().getAccountName());
+				logService.add(logDel);
+				}
+				
+			}
+		}
+		return OK;
+	}
+	/**
+	 * 根据分组ID移除:1.移除分组中的所有wifi,2.移除分组
+	 * @param id  wifi_group_info.id 
+	 * @param request
+	 * @return
+	 */
+	@RequestMapping("/removeWifiFromGroupByGroupId")
+	@ResponseBody
+	public String removeWifiFromGroupByGroupName(Long id,HttpServletRequest request) {
+		if (null != id && !"".equals(id) && id>0) {
+			if(wifiGroupService.updateStatusById(id,Status.delete.value) ) {
+				if(wifiGroupInfoService.updateStatusById(id, Status.delete.value)){
+					Log log = new Log();
+					log.setModule("Operator");//对应模块
+					log.setTableName("t_wifi_group_info");//对应的表名
+					log.setRecordId(id);//
+					log.setActionType("删除");	//操作类型
+					log.setAction("将ID="+id+"分组删除除");//变更详情
+					//下面这几个字段目前后端数据没有得到。所以仅作测试用!
+					log.setActionTime("100");
+					log.setAccountId(Long.valueOf(getLoginUser().getId()));
+					log.setUserIp(Common.toIpAddr(request));
+					log.setAccountName(getLoginUser().getAccountName());
+					logService.add(log);
+				}
+				
+				Log logDel= new Log();
+				logDel.setModule("Operator");//对应模块
+				logDel.setTableName("t_wifi_group");//对应的表名
+				logDel.setRecordId(id);//
+				logDel.setActionType("删除");	//操作类型
+				logDel.setAction("将ID="+id+"分组的热点移除");//变更详情
+				//下面这几个字段目前后端数据没有得到。所以仅作测试用!
+				logDel.setActionTime("100");
+				logDel.setAccountId(Long.valueOf(getLoginUser().getId()));
+				logDel.setUserIp(Common.toIpAddr(request));
+				logDel.setAccountName(getLoginUser().getAccountName());
+				logService.add(logDel);
+			}
+		}
+		return OK;
+	}
+	
+	
+	
 }
 }