Browse Source

crm的内容

wuwen 5 years ago
parent
commit
61efd65468

+ 3 - 1
src/main/java/com/ssj/dao/sys/analysis/dao/AnalysisQueryDao.java

@@ -61,9 +61,11 @@ public interface AnalysisQueryDao {
 	
 	
 	//新签机构1周内账号开通数(校长&教师)
 	//新签机构1周内账号开通数(校长&教师)
 	public List<Map<String, Object>> countLibJoinCountCommonByCountDate(Map<String, Object> params);
 	public List<Map<String, Object>> countLibJoinCountCommonByCountDate(Map<String, Object> params);
+	public List<Map<String, Object>> countLibJoinCountCommonByCountDateExport(Map<String, Object> params);
 	
 	
-	//新签机构2周内学生账号激活
+	//新签机构2周内学生账号激活	
 	public Map<String, Object> countVipActivateCountCommonByCountDate(Map<String, Object> params);
 	public Map<String, Object> countVipActivateCountCommonByCountDate(Map<String, Object> params);
+	public List<Map<String, Object>> countVipActivateCountCommonByCountDateExport(Map<String, Object> params);
 	
 	
 	//统计时间的type数量
 	//统计时间的type数量
 	public List<Map<String, Object>> countAnalysisCountCommonByCountTask();
 	public List<Map<String, Object>> countAnalysisCountCommonByCountTask();

+ 27 - 3
src/main/java/com/ssj/dao/sys/analysis/dao/impl/AnalysisQueryDaoImpl.java

@@ -296,8 +296,8 @@ public class AnalysisQueryDaoImpl  implements AnalysisQueryDao {
 		StringBuilder sb = new StringBuilder();
 		StringBuilder sb = new StringBuilder();
 		List<Object> param = new ArrayList<>();
 		List<Object> param = new ArrayList<>();
         sb.append("	SELECT 	");
         sb.append("	SELECT 	");
-      	sb.append("	IFNULL((SELECT COUNT(lib_id) from tb_analysis_count a WHERE a.day_time>=? AND a.day_time<=? GROUP BY a.lib_id),0)  as count_0, " );
-    	sb.append(" IFNULL((SELECT COUNT(lib_id) from tb_analysis_count a WHERE a.day_time>=? AND a.day_time<=? GROUP BY a.lib_id),0)  as count_1 ");
+      	sb.append("	IFNULL((SELECT COUNT(1) FROM(SELECT COUNT(lib_id) from tb_analysis_count a WHERE a.day_time>=? AND a.day_time<=? GROUP BY a.lib_id) as d),0)  as count_0, " );
+    	sb.append(" IFNULL((SELECT COUNT(1) FROM(SELECT COUNT(lib_id) from tb_analysis_count a WHERE a.day_time>=? AND a.day_time<=? GROUP BY a.lib_id) as d),0)  as count_1 LIMIT 1");
       	param.add(params.get("date"));
       	param.add(params.get("date"));
     	param.add(params.get("date2"));
     	param.add(params.get("date2"));
     	param.add(params.get("date3"));
     	param.add(params.get("date3"));
@@ -313,7 +313,7 @@ public class AnalysisQueryDaoImpl  implements AnalysisQueryDao {
 		List<Object> param = new ArrayList<>();
 		List<Object> param = new ArrayList<>();
         sb.append("	SELECT  	");
         sb.append("	SELECT  	");
       	sb.append("	 (SELECT IFNULL(count(1),0) from (SELECT t.vip_id,count(t.day_time) as count from tb_analysis t WHERE t.type=3 AND t.day_time>=? AND t.day_time<=? GROUP BY t.vip_id HAVING count>=3) as tmp) as count_0, " );
       	sb.append("	 (SELECT IFNULL(count(1),0) from (SELECT t.vip_id,count(t.day_time) as count from tb_analysis t WHERE t.type=3 AND t.day_time>=? AND t.day_time<=? GROUP BY t.vip_id HAVING count>=3) as tmp) as count_0, " );
-    	sb.append("  (SELECT IFNULL(count(1),0) from (SELECT t.vip_id,count(t.day_time) as count from tb_analysis t WHERE t.type=3 AND t.day_time>=? AND t.day_time<=? GROUP BY t.vip_id HAVING count>=3) as tmp) as count_1 ");
+    	sb.append("  (SELECT IFNULL(count(1),0) from (SELECT t.vip_id,count(t.day_time) as count from tb_analysis t WHERE t.type=3 AND t.day_time>=? AND t.day_time<=? GROUP BY t.vip_id HAVING count>=3) as tmp) as count_1  LIMIT 1");
       	param.add(params.get("date"));
       	param.add(params.get("date"));
     	param.add(params.get("date2"));
     	param.add(params.get("date2"));
     	param.add(params.get("date3"));
     	param.add(params.get("date3"));
@@ -378,6 +378,19 @@ public class AnalysisQueryDaoImpl  implements AnalysisQueryDao {
     	param.add(params.get("date2"));
     	param.add(params.get("date2"));
     	return dao.findMap(sb.toString(),param.toArray());
     	return dao.findMap(sb.toString(),param.toArray());
 	}
 	}
+	
+	@Override
+	public List<Map<String, Object>> countLibJoinCountCommonByCountDateExport(Map<String, Object> params) {
+		StringBuilder sb = new StringBuilder();
+		List<Object> param = new ArrayList<>();
+      	sb.append("	SELECT t.*,COUNT(m.id) as count from tb_lib_join t LEFT JOIN tb_lib_manager m ON t.id=m.lib_id " );
+       	sb.append("	WHERE TO_DAYS(t.create_time) >=TO_DAYS(?) AND TO_DAYS(t.create_time) <=TO_DAYS(?) ");
+       	sb.append(" GROUP BY t.id HAVING count<=0  ORDER BY t.create_time desc	");
+      	param.add(params.get("date"));
+    	param.add(params.get("date2"));
+    	return dao.findMap(sb.toString(),param.toArray());
+	}
+	
 
 
 	@Override
 	@Override
 	public Map<String, Object> countVipActivateCountCommonByCountDate(Map<String, Object> params) {
 	public Map<String, Object> countVipActivateCountCommonByCountDate(Map<String, Object> params) {
@@ -391,6 +404,17 @@ public class AnalysisQueryDaoImpl  implements AnalysisQueryDao {
     	List<Map<String, Object>>  list=dao.findMap(sb.toString(),param.toArray());
     	List<Map<String, Object>>  list=dao.findMap(sb.toString(),param.toArray());
         return list!=null && list.size()>0 ? list.get(0) : new HashMap<String, Object>();
         return list!=null && list.size()>0 ? list.get(0) : new HashMap<String, Object>();
 	}
 	}
+	
+	@Override
+	public List<Map<String, Object>> countVipActivateCountCommonByCountDateExport(Map<String, Object> params) {
+		StringBuilder sb = new StringBuilder();
+		List<Object> param = new ArrayList<>();
+       	sb.append(" SELECT j.league_name,t.* from tb_lib_vip t  LEFT JOIN tb_lib_join j ON t.lib_id=j.id WHERE TO_DAYS(t.activate_time)>=TO_DAYS(?) AND TO_DAYS(t.activate_time)>=TO_DAYS(?) ORDER BY t.activate_time desc ");
+      	param.add(params.get("date"));
+    	param.add(params.get("date2"));
+    	return dao.findMap(sb.toString(),param.toArray());
+	}
+	
 
 
 	@Override
 	@Override
 	public List<Map<String, Object>> countAnalysisCountCommonByCountTask() {
 	public List<Map<String, Object>> countAnalysisCountCommonByCountTask() {

+ 7 - 0
src/main/java/com/ssj/service/sys/analysis/service/AnalysisWeekService.java

@@ -1,5 +1,6 @@
 package com.ssj.service.sys.analysis.service;
 package com.ssj.service.sys.analysis.service;
 
 
+import java.util.List;
 import java.util.Map;
 import java.util.Map;
 
 
 import com.ssj.bean.sys.analysis.bean.AnalysisWeek;
 import com.ssj.bean.sys.analysis.bean.AnalysisWeek;
@@ -15,6 +16,12 @@ public interface AnalysisWeekService extends BaseService<AnalysisWeek, String> {
 	
 	
 	public Map<String, Object> countLibJoinCountCommonByCountDate(Map<String, Object> params);
 	public Map<String, Object> countLibJoinCountCommonByCountDate(Map<String, Object> params);
 	
 	
+	public List<Map<String, Object>> countLibJoinCountCommonByCountDateExport(Map<String, Object> params);
+	
 	public Map<String, Object> countVipActivateCountCommonByCountDate(Map<String, Object> params);
 	public Map<String, Object> countVipActivateCountCommonByCountDate(Map<String, Object> params);
 	
 	
+	public List<Map<String, Object>> countVipActivateCountCommonByCountDateExport(Map<String, Object> params);
+	
+	
+	
 }
 }

+ 10 - 0
src/main/java/com/ssj/service/sys/analysis/service/impl/AnalysisWeekServiceImpl.java

@@ -101,4 +101,14 @@ public class AnalysisWeekServiceImpl extends BaseServiceImpl<AnalysisWeek, Strin
 		return analysisQueryDao.countVipActivateCountCommonByCountDate(params);
 		return analysisQueryDao.countVipActivateCountCommonByCountDate(params);
 	}
 	}
 
 
+	@Override
+	public List<Map<String, Object>> countLibJoinCountCommonByCountDateExport(Map<String, Object> params) {
+		return analysisQueryDao.countLibJoinCountCommonByCountDateExport(params);
+	}
+
+	@Override
+	public List<Map<String, Object>> countVipActivateCountCommonByCountDateExport(Map<String, Object> params) {
+		return analysisQueryDao.countVipActivateCountCommonByCountDateExport(params);
+	}
+
 }
 }

+ 62 - 14
src/main/java/com/ssj/sys/controller/AnalysisController.java

@@ -133,38 +133,87 @@ public class AnalysisController extends BaseController {
      }
      }
   	
   	
   	
   	
-  	@RequestMapping(value = "/week/data/count_1/export", method = RequestMethod.POST)
+  	@RequestMapping(value = "/week/data/count_1/export_1", method = RequestMethod.POST)
 	@ResponseBody
 	@ResponseBody
-	public void weekDataCount_1_Export(Model model,String weekDate) {
+	public void weekDataCount_1_1_Export(Model model,String weekDate) {
 		ServletOutputStream os = null;
 		ServletOutputStream os = null;
 		try {
 		try {
-			String name="小塾学伴新增数据_"+weekDate;
+			String name="新签机构1周内账号开通数(校长&教师)_"+weekDate;
 			os = response.getOutputStream();response.reset();   
 			os = response.getOutputStream();response.reset();   
 			String fileName = new String(name.getBytes("gb2312"), "ISO8859-1") +".xlsx";
 			String fileName = new String(name.getBytes("gb2312"), "ISO8859-1") +".xlsx";
 			response.setHeader("Content-disposition", "attachment; filename="+ fileName); //设定输出文件头
 			response.setHeader("Content-disposition", "attachment; filename="+ fileName); //设定输出文件头
 			response.setContentType("application/vnd.ms-excel;charset=UTF-8");
 			response.setContentType("application/vnd.ms-excel;charset=UTF-8");
 			response.setCharacterEncoding("utf-8");
 			response.setCharacterEncoding("utf-8");
 			
 			
-			List<Map<String,Object>> list= new ArrayList<Map<String,Object>>();
-			Map<String,Object> map=new HashMap<String, Object>();
-			
 			String[] weeks=getWeekDays(weekDate);
 			String[] weeks=getWeekDays(weekDate);
-     		String[] weekNexts=getNextWeekDays(weekDate);
      		
      		
 			Map<String, Object> params = new HashMap<String, Object>();
 			Map<String, Object> params = new HashMap<String, Object>();
 			params.put("date", weeks[0]);
 			params.put("date", weeks[0]);
 			params.put("date2", weeks[1]);
 			params.put("date2", weeks[1]);
-    		map.put("column_0", analysisWeekService.countLibJoinCountCommonByCountDate(params).get("count_0"));
+    		List<Map<String, Object>> list=analysisWeekService.countLibJoinCountCommonByCountDateExport(params);
     		
     		
-    		params = new HashMap<String, Object>();
+			List<ExcelColumn> myColumns3 = new ArrayList<ExcelColumn>();
+			myColumns3.add(new ExcelColumn("机构名称", "league_name", 20));
+			myColumns3.add(new ExcelColumn("机构code", "league_code", 20));
+			myColumns3.add(new ExcelColumn("机构地址", "league_address", 20));
+			myColumns3.add(new ExcelColumn("机构电话", "leadue_phone", 20));
+			myColumns3.add(new ExcelColumn("机构城市", "league_city", 20));
+			myColumns3.add(new ExcelColumn("创建时间", "create_time", 20));
+			
+			CustomizeToExcel.downFile(myColumns3, list, os);
+		}catch (IOException e) {
+			e.printStackTrace();
+		}catch (Exception e1){
+			e1.printStackTrace();
+		}finally{
+			if(os != null){
+				try {
+					os.flush();
+					os.close();
+				} catch (IOException e) {
+					e.printStackTrace();
+				}
+			}
+		}
+	}
+  	
+  	
+  	
+	@RequestMapping(value = "/week/data/count_1/export_2", method = RequestMethod.POST)
+	@ResponseBody
+	public void weekDataCount_1_2_Export(Model model,String weekDate) {
+		ServletOutputStream os = null;
+		try {
+			String name="新签机构2周内学生账号激活_"+weekDate;
+			os = response.getOutputStream();response.reset();   
+			String fileName = new String(name.getBytes("gb2312"), "ISO8859-1") +".xlsx";
+			response.setHeader("Content-disposition", "attachment; filename="+ fileName); //设定输出文件头
+			response.setContentType("application/vnd.ms-excel;charset=UTF-8");
+			response.setCharacterEncoding("utf-8");
+			
+			String[] weeks=getWeekDays(weekDate);
+     		String[] weekNexts=getNextWeekDays(weekDate);
+     		
+			Map<String, Object> params = new HashMap<String, Object>();
     		params.put("date", weekNexts[0]);
     		params.put("date", weekNexts[0]);
 			params.put("date2", weeks[1]);
 			params.put("date2", weeks[1]);
-			map.put("column_1",analysisWeekService.countVipActivateCountCommonByCountDate(params).get("count_0"));
+			List<Map<String, Object>> list=analysisWeekService.countVipActivateCountCommonByCountDateExport(params);
 			
 			
 			List<ExcelColumn> myColumns3 = new ArrayList<ExcelColumn>();
 			List<ExcelColumn> myColumns3 = new ArrayList<ExcelColumn>();
-			myColumns3.add(new ExcelColumn("新签机构1周内账号开通数(校长&教师)", "column_0", 20));
-			myColumns3.add(new ExcelColumn("新签机构2周内学生账号激活", "column_1", 20));
-			list.add(map);
+			myColumns3.add(new ExcelColumn("所属机构", "league_name", 20));
+			myColumns3.add(new ExcelColumn("学生姓名", "child_name", 20));
+			myColumns3.add(new ExcelColumn("家长姓名", "parent_name", 20));
+			myColumns3.add(new ExcelColumn("联系电话", "phone", 20));
+			myColumns3.add(new ExcelColumn("就读学校", "school", 20));
+			myColumns3.add(new ExcelColumn("学校地区", "area_name", 20));
+			myColumns3.add(new ExcelColumn("生日日期", "birthday", 20));
+			myColumns3.add(new ExcelColumn("年级", "grade", 20));
+			myColumns3.add(new ExcelColumn("家庭地址", "family", 20));
+			myColumns3.add(new ExcelColumn("设备号", "derver", 20));
+			myColumns3.add(new ExcelColumn("科目", "course_name", 20));
+			myColumns3.add(new ExcelColumn("激活时间", "activate_time", 20));
+			myColumns3.add(new ExcelColumn("创建时间", "create_time", 20));
+			
 			CustomizeToExcel.downFile(myColumns3, list, os);
 			CustomizeToExcel.downFile(myColumns3, list, os);
 		}catch (IOException e) {
 		}catch (IOException e) {
 			e.printStackTrace();
 			e.printStackTrace();
@@ -183,7 +232,6 @@ public class AnalysisController extends BaseController {
 	}
 	}
   	
   	
   	
   	
-  	
   	@RequestMapping(value = "/week/data/count_2")
   	@RequestMapping(value = "/week/data/count_2")
     @ResponseBody
     @ResponseBody
     public ResponseEntity weekCount_2(String weekDate) {
     public ResponseEntity weekCount_2(String weekDate) {

+ 9 - 3
src/main/resources/templates/sys/analysis/week.html

@@ -104,7 +104,8 @@
 			<div style="height: 40px;padding-top: 3px;float: left;">
 			<div style="height: 40px;padding-top: 3px;float: left;">
 				<button class="btn btn-large btn-primary" type="button" id="calendarBtu">刷新</button>
 				<button class="btn btn-large btn-primary" type="button" id="calendarBtu">刷新</button>
 				<form id="seachform"  method="post" style="float: right;margin-left: 10px;">
 				<form id="seachform"  method="post" style="float: right;margin-left: 10px;">
-					<input type="button" id="button" class="btn btn-large btn-primary" value="导出" />
+					<input type="button" id="button_1" class="btn btn-large btn-primary" value="导出(1)" />
+					<input type="button" id="button_2" class="btn btn-large btn-primary" value="导出(2)" />
 				</form>
 				</form>
 			</div>
 			</div>
 		</div>
 		</div>
@@ -331,8 +332,13 @@
 
 
 <script type="text/javascript">
 <script type="text/javascript">
 	$(function () {
 	$(function () {
-		$("#button").on('click',function(){
-			document.getElementById("seachform").action = "[[${sysUrl}]]/sys/analysis/week/data/count_1/export.html?weekDate="+$("#calendar").val();
+		$("#button_1").on('click',function(){
+			document.getElementById("seachform").action = "[[${sysUrl}]]/sys/analysis/week/data/count_1/export_1.html?weekDate="+$("#calendar").val();
+			$("#seachform").submit();
+		});
+		
+		$("#button_2").on('click',function(){
+			document.getElementById("seachform").action = "[[${sysUrl}]]/sys/analysis/week/data/count_1/export_2.html?weekDate="+$("#calendar").val();
 			$("#seachform").submit();
 			$("#seachform").submit();
 		});
 		});
 		
 		

+ 23 - 19
src/main/resources/templates/sys/fx/merchantAdd.html

@@ -515,30 +515,34 @@ function funcblurlibId(){
 		parent.layer.msg("此处不支持修改绑定机构,请先解绑机构。",{icon:3});
 		parent.layer.msg("此处不支持修改绑定机构,请先解绑机构。",{icon:3});
 		return;
 		return;
 	}
 	}
-	likejoinlistindex =layer.open({
-		    type: 1,
-		    title: '选择机构',
-		    closeBtn: 1, //不显示关闭按钮
-		    shift: 0.8,
-		    offset: '150px',
-		    area: ['80%', '60%'],
-		    content: $("#likejoinlist")
-	});
+	
+	if($(".layui-layer-shade").length<=0){
+		likejoinlistindex =layer.open({
+			    type: 1,
+			    title: '选择机构',
+			    closeBtn: 1, //不显示关闭按钮
+			    shift: 0.8,
+			    offset: '150px',
+			    area: ['80%', '60%'],
+			    content: $("#likejoinlist")
+		});
+	}
 }
 }
 
 
 function funcblurschooltext(){
 function funcblurschooltext(){
 	
 	
 	funcblurschoollist();
 	funcblurschoollist();
-
-	schoollistindex =layer.open({
-		    type: 1,
-		    title: '选择学校',
-		    closeBtn: 1, //不显示关闭按钮
-		    shift: 0.8,
-		    offset: '150px',
-		    area: ['80%', '60%'],
-		    content: $("#schoollist")
-	});
+	if($(".layui-layer-shade").length<=0){
+		schoollistindex =layer.open({
+			    type: 1,
+			    title: '选择学校',
+			    closeBtn: 1, //不显示关闭按钮
+			    shift: 0.8,
+			    offset: '150px',
+			    area: ['80%', '60%'],
+			    content: $("#schoollist")
+		});
+	}
 }
 }