Browse Source

账号关联

原志强 9 years ago
parent
commit
2ac5392067

+ 197 - 75
src/main/java/com/cloudcross/ssp/model/mapper/correlation.sql.xml

@@ -29,116 +29,238 @@
 		where operator_id = #{operatorId} and t_operator.id = t_adv_agent.operator_id
 	</select>
 	
-	<update id="addCorrelation1" parameterType="com.cloudcross.ssp.model.Correlation">
+	<update id="addCorrelation11" parameterType="com.cloudcross.ssp.model.Correlation">
+		update 
+		t_account
+		set 
+		t_account.operator_id= #{operatorId}
+		where 
+		t_account.agent_id = #{agentId}
+	</update>
+	
+	<update id="addCorrelation12" parameterType="com.cloudcross.ssp.model.Correlation">
+		update 
+		t_adv_agent a
+		set 
+		a.operator_id=#{operatorId}
+		where 
+		a.id = #{agentId} 
+	</update>
+	
+	<update id="addCorrelation13" parameterType="com.cloudcross.ssp.model.Correlation">
+		update 
+		t_advertiser b
+		set 
+		b.operator_id=#{operatorId},b.updated = NOW()
+		where 
+		b.agent_id = #{agentId}
+	</update>
+	<update id="addCorrelation14" parameterType="com.cloudcross.ssp.model.Correlation">
+		update 
+		t_order c
+		set 
+		c.operator_id=#{operatorId},c.updated = NOW()
+		where 
+		c.agent_id = #{agentId}
+	</update>
+	<update id="addCorrelation15" parameterType="com.cloudcross.ssp.model.Correlation">
+		update 
+		t_campaign d
+		set 
+		d.operator_id=#{operatorId},d.updated = NOW()
+		where 
+		d.agent_id = #{agentId} 
+	</update>
+	<update id="addCorrelation16" parameterType="com.cloudcross.ssp.model.Correlation">
 		update 
-		t_account,
-		t_adv_agent a, 
-		t_advertiser b,
-		t_order c,
-		t_campaign d,
 		t_adgroup e
-		
 		set 
-		t_account.operator_id= #{operatorId},
-		a.operator_id=#{operatorId},
-		b.operator_id=#{operatorId},b.updated = NOW(),
-		c.operator_id=#{operatorId},c.updated = NOW(),
-		d.operator_id=#{operatorId},d.updated = NOW(),
 		e.operator_id=#{operatorId},e.updated = NOW()
-
 		where 
-		t_account.agent_id = #{agentId}
-		and	a.id = #{agentId} 
-		and b.agent_id = #{agentId} 
-		and c.agent_id = #{agentId} 
-		and d.agent_id = #{agentId} 
-		and e.agent_id = #{agentId} 
+		e.agent_id = #{agentId} 
 	</update>
 	
-	<update id="addCorrelation2" parameterType="com.cloudcross.ssp.model.Correlation">
+		<update id="addCorrelation21" parameterType="com.cloudcross.ssp.model.Correlation">
+		update 
+		t_rpt_adv_banner f
+		set 
+		f.operator_id=#{operatorId}
+		where 
+		f.advertiser_id in (select id from t_advertiser where agent_id = #{agentId})
+	</update>
+		<update id="addCorrelation22" parameterType="com.cloudcross.ssp.model.Correlation">
 		update 
-		t_rpt_adv_banner f,
-		t_rpt_adv_location g,
-		t_rpt_adv_os h,
-		t_rpt_adv_place i,
+		t_rpt_adv_location g	
+		set 
+		g.operator_id=#{operatorId}
+		where 
 		
-		t_rpt_advertiser k,
+		g.advertiser_id in (select id from t_advertiser where agent_id = #{agentId})
+		
+
+	</update>
+		<update id="addCorrelation23" parameterType="com.cloudcross.ssp.model.Correlation">
+		update 
+
+		t_rpt_adv_os h
+		set 
+		h.operator_id=#{operatorId}
+		where 
+		h.advertiser_id in (select id from t_advertiser where agent_id = #{agentId})
+	</update>
+		<update id="addCorrelation24" parameterType="com.cloudcross.ssp.model.Correlation">
+		update 
+		t_rpt_adv_place i
+		set 
+		i.operator_id=#{operatorId}
+		where 
+		i.advertiser_id in (select id from t_advertiser where agent_id = #{agentId})
+	</update>
+		<update id="addCorrelation25" parameterType="com.cloudcross.ssp.model.Correlation">
+		update 
+		t_rpt_advertiser k
+		set 
+		k.operator_id=#{operatorId}
+		where 
+		k.advertiser_id in (select id from t_advertiser where agent_id = #{agentId})
+	</update>
+	<update id="addCorrelation26" parameterType="com.cloudcross.ssp.model.Correlation">
+		update 
 		t_rpt_advertiser_hour l
+		set 
+		l.operator_id=#{operatorId}
+		where 
+		l.advertiser_id in (select id from t_advertiser where agent_id = #{agentId})
+	</update>
+	
+	<update id="deleteCorrelation11" parameterType="com.cloudcross.ssp.model.Correlation">
+		update 
+		t_account
 		
 		set 
-		f.operator_id=#{operatorId},
-		g.operator_id=#{operatorId},
-		h.operator_id=#{operatorId},
-		i.operator_id=#{operatorId},
+		t_account.operator_id= 0
 		
-		k.operator_id=#{operatorId},
-		l.operator_id=#{operatorId}
-
 		where 
-		f.advertiser_id in (select id from t_advertiser where agent_id = #{agentId})
-		and g.advertiser_id in (select id from t_advertiser where agent_id = #{agentId})
-		and h.advertiser_id in (select id from t_advertiser where agent_id = #{agentId})
-		and i.advertiser_id in (select id from t_advertiser where agent_id = #{agentId})
+		t_account.agent_id = #{agentId}
+		
+	</update>
+	
+	<update id="deleteCorrelation12" parameterType="com.cloudcross.ssp.model.Correlation">
+		update 
+		t_adv_agent a
+		set 
+		a.operator_id=0
+		where 
+		a.id = #{agentId} 
+	</update>
+	
+	<update id="deleteCorrelation13" parameterType="com.cloudcross.ssp.model.Correlation">
+		update 
+		t_advertiser b
+		set 
+		
+		b.operator_id=0,b.updated = NOW()
 
-		and k.advertiser_id in (select id from t_advertiser where agent_id = #{agentId})
-		and l.advertiser_id in (select id from t_advertiser where agent_id = #{agentId})
+		where 
+		
+		b.agent_id = #{agentId} 
 
 	</update>
 	
-	<update id="deleteCorrelation1" parameterType="com.cloudcross.ssp.model.Correlation">
+	<update id="deleteCorrelation14" parameterType="com.cloudcross.ssp.model.Correlation">
 		update 
-		t_account,
-		t_adv_agent a, 
-		t_advertiser b,
-		t_order c,
-		t_campaign d,
-		t_adgroup e
+		
+		t_order c
 		
 		set 
-		t_account.operator_id= 0,
-		a.operator_id=0,
-		b.operator_id=0,b.updated = NOW(),
-		c.operator_id=0,c.updated = NOW(),
-		d.operator_id=0,d.updated = NOW(),
-		e.operator_id=0,e.updated = NOW()
+		
+		c.operator_id=0,c.updated = NOW()
 
 		where 
-		t_account.agent_id = #{agentId}
-		and	a.id = #{agentId} 
-		and b.agent_id = #{agentId} 
-		and c.agent_id = #{agentId} 
-		and d.agent_id = #{agentId} 
-		and e.agent_id = #{agentId} 
+		
+		c.agent_id = #{agentId} 
+		
 	</update>
 	
-	<update id="deleteCorrelation2" parameterType="com.cloudcross.ssp.model.Correlation">
+	<update id="deleteCorrelation15" parameterType="com.cloudcross.ssp.model.Correlation">
 		update 
-		t_rpt_adv_banner f,
-		t_rpt_adv_location g,
-		t_rpt_adv_os h,
-		t_rpt_adv_place i,
 		
-		t_rpt_advertiser k,
-		t_rpt_advertiser_hour l
+		t_campaign d
 		
 		set 
-		f.operator_id=0,
-		g.operator_id=0,
-		h.operator_id=0,
-		i.operator_id=0,
 		
-		k.operator_id=0,
-		l.operator_id=0
+		d.operator_id=0,d.updated = NOW()
+
+		where 
+		
+		d.agent_id = #{agentId} 
+		
+	</update>
+	
+	<update id="deleteCorrelation16" parameterType="com.cloudcross.ssp.model.Correlation">
+		update 
+		t_adgroup e
+		set 
+		e.operator_id=0,e.updated = NOW()
+		where 
+		e.agent_id = #{agentId} 
+	</update>
 
+	<update id="deleteCorrelation21" parameterType="com.cloudcross.ssp.model.Correlation">
+		update 
+		t_rpt_adv_banner f
+		
+		set 
+		f.operator_id=0
 		where 
 		f.advertiser_id in (select id from t_advertiser where agent_id = #{agentId})
-		and g.advertiser_id in (select id from t_advertiser where agent_id = #{agentId})
-		and h.advertiser_id in (select id from t_advertiser where agent_id = #{agentId})
-		and i.advertiser_id in (select id from t_advertiser where agent_id = #{agentId})
 		
-		and k.advertiser_id in (select id from t_advertiser where agent_id = #{agentId})
-		and l.advertiser_id in (select id from t_advertiser where agent_id = #{agentId})
+	</update>
+	<update id="deleteCorrelation22" parameterType="com.cloudcross.ssp.model.Correlation">
+		update 
+		
+		t_rpt_adv_location g
+		set 
+		
+		g.operator_id=0
+		
 
+		where 
+		
+		g.advertiser_id in (select id from t_advertiser where agent_id = #{agentId})
+		
+	</update>
+	<update id="deleteCorrelation23" parameterType="com.cloudcross.ssp.model.Correlation">
+		update 
+		t_rpt_adv_os h
+		set 
+		h.operator_id=0
+		where 
+		h.advertiser_id in (select id from t_advertiser where agent_id = #{agentId})
+	</update>
+	<update id="deleteCorrelation24" parameterType="com.cloudcross.ssp.model.Correlation">
+		update 
+		t_rpt_adv_place i
+		set 
+		i.operator_id=0
+		where 
+		i.advertiser_id in (select id from t_advertiser where agent_id = #{agentId})
+	</update>
+	<update id="deleteCorrelation25" parameterType="com.cloudcross.ssp.model.Correlation">
+		update 
+		t_rpt_advertiser k
+		set 
+		k.operator_id=0
+		where 
+		k.advertiser_id in (select id from t_advertiser where agent_id = #{agentId})
+	</update>
+	<update id="deleteCorrelation26" parameterType="com.cloudcross.ssp.model.Correlation">
+		update 
+		t_rpt_advertiser_hour l
+		set 
+		l.operator_id=0
+		where 
+		l.advertiser_id in (select id from t_advertiser where agent_id = #{agentId})
 	</update>
 	
 </mapper>

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

@@ -8,7 +8,7 @@ import com.cloudcross.ssp.model.Correlation;
 public interface ICorrelationService {
 	public List<Correlation> findAllCorrelation(Pager p);
 	public int countAllCorrelation();
-	public Correlation findCorrelationByOperatorId(Long operatorId);
+	public List<Correlation> findCorrelationByOperatorId(Long operatorId);
 	public boolean addCorrelation(Correlation c);
 	public boolean deleteCorrelation(Correlation c);
 }

+ 26 - 7
src/main/java/com/cloudcross/ssp/service/impl/CorrelationService.java

@@ -26,36 +26,56 @@ public class CorrelationService implements ICorrelationService{
 	}
 
 	@Override
-	public Correlation findCorrelationByOperatorId(Long operatorId) {
+	public List<Correlation> findCorrelationByOperatorId(Long operatorId) {
 		// TODO 通过operatorId查询是否关联代理商
-		return myBatisDao.get("correlationSqlMapper.findCorrelationByOperatorId",operatorId);
+		return myBatisDao.getList("correlationSqlMapper.findCorrelationByOperatorId",operatorId);
 	}
 
 
 	public boolean addCorrelation1(Correlation c) {
 		// TODO 添加所有的账号,代理商,广告主,订单,活动,投放的关联
-		myBatisDao.save("correlationSqlMapper.addCorrelation1", c);
+		myBatisDao.save("correlationSqlMapper.addCorrelation11", c);
+		myBatisDao.save("correlationSqlMapper.addCorrelation12", c);
+		myBatisDao.save("correlationSqlMapper.addCorrelation13", c);
+		myBatisDao.save("correlationSqlMapper.addCorrelation14", c);
+		myBatisDao.save("correlationSqlMapper.addCorrelation15", c);
+		myBatisDao.save("correlationSqlMapper.addCorrelation16", c);
 		return true;
 	}
 
 
 	public boolean deleteCorrelation1(Correlation c) {
 		// TODO 添加所有的账号,代理商,广告主,订单,活动,投放的关联
-		myBatisDao.save("correlationSqlMapper.deleteCorrelation1", c);
+		myBatisDao.save("correlationSqlMapper.deleteCorrelation11", c);
+		myBatisDao.save("correlationSqlMapper.deleteCorrelation12", c);
+		myBatisDao.save("correlationSqlMapper.deleteCorrelation13", c);
+		myBatisDao.save("correlationSqlMapper.deleteCorrelation14", c);
+		myBatisDao.save("correlationSqlMapper.deleteCorrelation15", c);
+		myBatisDao.save("correlationSqlMapper.deleteCorrelation16", c);
 		return true;
 	}
 
 
 	public boolean addCorrelation2(Correlation c) {
 		// TODO 添加所有的报表的operator关联
-		myBatisDao.save("correlationSqlMapper.addCorrelation2", c);
+		myBatisDao.save("correlationSqlMapper.addCorrelation21", c);
+		myBatisDao.save("correlationSqlMapper.addCorrelation22", c);
+		myBatisDao.save("correlationSqlMapper.addCorrelation23", c);
+		myBatisDao.save("correlationSqlMapper.addCorrelation24", c);
+		myBatisDao.save("correlationSqlMapper.addCorrelation25", c);
+		myBatisDao.save("correlationSqlMapper.addCorrelation26", c);
 		return true;
 	}
 
 
 	public boolean deleteCorrelation2(Correlation c) {
 		// TODO Auto-generated method stub
-		myBatisDao.save("correlationSqlMapper.deleteCorrelation2", c);
+		myBatisDao.save("correlationSqlMapper.deleteCorrelation21", c);
+		myBatisDao.save("correlationSqlMapper.deleteCorrelation22", c);
+		myBatisDao.save("correlationSqlMapper.deleteCorrelation23", c);
+		myBatisDao.save("correlationSqlMapper.deleteCorrelation24", c);
+		myBatisDao.save("correlationSqlMapper.deleteCorrelation25", c);
+		myBatisDao.save("correlationSqlMapper.deleteCorrelation26", c);
 		return true;
 	}
 
@@ -80,5 +100,4 @@ public class CorrelationService implements ICorrelationService{
 		// TODO Auto-generated method stub
 		return myBatisDao.get("correlationSqlMapper.countAllCorrelation",null);
 	}
-	
 }

+ 2 - 2
src/main/java/com/cloudcross/ssp/web/back/main/ClientAccountController.java

@@ -470,8 +470,8 @@ public class ClientAccountController extends SimpleController{
 	 */
 	@RequestMapping("is_exit")
 	public @ResponseBody String isExitCorrelation(@RequestParam Long operatorId){
-		Correlation  co = correlationService.findCorrelationByOperatorId(operatorId);
-		if(co!=null){
+		List<Correlation>  co = correlationService.findCorrelationByOperatorId(operatorId);
+		if(co.size()>0){
 			return "YES";
 		}else {
 			return "NO";

+ 1 - 1
src/main/webapp/WEB-INF/pages/back/main/client-account/createcorrelation.ftl

@@ -41,7 +41,7 @@
 					<input type="hidden" name="agentId" id="selectedAgentId" value="${selectedAgentId!}"/>
 			  	</div>
 				<div id="footBtn_other">
-					<button id="btn-correlation-save" class="btn-save" type="submit">保存</button>
+					<div id="btn-correlation-save" class="btn-save" >保存</div>
 					<button id="btn-correlation-cancel" class="btn-cancel" type="button">取消</button>
 				</div>
 			</form>

+ 23 - 1
src/main/webapp/assets/js/back/clientAccount.js

@@ -221,7 +221,9 @@ $(document).ready(function(){
  			bootbox.alert("请选择需要关联的代理商!");
  			return false;
  		}
- 		$("#correlationForm").submit();
+ 		aa();
+ 		
+ 		//$("#correlationForm").submit();
  		return false;
  	});
  	
@@ -283,3 +285,23 @@ function getSelectData(target_spanId,target_sonulId,target_boxId,defaultValue,de
 		$("#"+target_sonulId).removeClass("son_ul_change");
  	});
 }
+function aa(){
+	var c= $("#selectedOperatorId").val();
+	//alert(c);
+	var url = $("#ctx").val()+"/back/main/client-account/is_exit";
+	console.log(url);
+	$.ajax({
+       	type: "POST",
+        url: url,
+        data: {operatorId:c},
+         success: function(data){
+	 		if(data == "YES"){
+	 			bootbox.alert("该运营商已存在关联,请先检查选择是否正确或取消关联");
+	 			return false;
+	 		}else{
+	 			//alert("no");
+	 			$("#correlationForm").submit();
+	 		}
+         }
+	});
+}