Просмотр исходного кода

Merge branch 'test' of jishutao/kede-server into prod

anderx лет назад: 3
Родитель
Сommit
3637f4baac
34 измененных файлов с 767 добавлено и 240 удалено
  1. 5 5
      src/main/java/com/goafanti/admin/bo/depCountBo.java
  2. 3 6
      src/main/java/com/goafanti/admin/service/AdminService.java
  3. 26 14
      src/main/java/com/goafanti/admin/service/impl/AdminServiceImpl.java
  4. 2 0
      src/main/java/com/goafanti/business/controller/AdminBusinessProjectController.java
  5. 1 2
      src/main/java/com/goafanti/business/service/BusinessProjectService.java
  6. 34 3
      src/main/java/com/goafanti/business/service/impl/BusinessProjectServiceImpl.java
  7. 3 1
      src/main/java/com/goafanti/common/dao/BusinessProjectMapper.java
  8. 3 3
      src/main/java/com/goafanti/common/dao/DepartmentMapper.java
  9. 4 0
      src/main/java/com/goafanti/common/mapper/BusinessProjectMapper.xml
  10. 3 3
      src/main/java/com/goafanti/common/mapper/DepartmentMapper.xml
  11. 52 44
      src/main/java/com/goafanti/common/mapper/TOrderTaskMapper.xml
  12. 3 4
      src/main/java/com/goafanti/common/mapper/UserLockReleaseMapper.xml
  13. 1 1
      src/main/java/com/goafanti/common/mapper/UserMapper.xml
  14. 62 56
      src/main/java/com/goafanti/common/mapper/UserServiceMapper.xml
  15. 7 1
      src/main/java/com/goafanti/common/task/ReleaseUserTask.java
  16. 7 14
      src/main/java/com/goafanti/customer/bo/InputAddCustomer.java
  17. 9 0
      src/main/java/com/goafanti/customer/bo/LockingReleaseBo.java
  18. 15 2
      src/main/java/com/goafanti/customer/service/impl/CustomerServiceImpl.java
  19. 16 10
      src/main/java/com/goafanti/order/bo/InputProjectStatistics.java
  20. 23 23
      src/main/java/com/goafanti/order/bo/InputProvincialStatistics.java
  21. 40 0
      src/main/java/com/goafanti/order/bo/OutProjectStatistics.java
  22. 9 6
      src/main/java/com/goafanti/order/bo/inuptTaskListBo.java
  23. 12 0
      src/main/java/com/goafanti/order/bo/outStatistics/OutProjectStatisticsHighTech.java
  24. 336 0
      src/main/java/com/goafanti/order/bo/outStatistics/OutProjectStatisticsMember.java
  25. 2 1
      src/main/java/com/goafanti/order/controller/StatisticsApiController.java
  26. 8 2
      src/main/java/com/goafanti/order/enums/ProjectType.java
  27. 3 1
      src/main/java/com/goafanti/order/service/impl/OrderProjectServiceImpl.java
  28. 36 8
      src/main/java/com/goafanti/order/service/impl/ProjectStatisticsServiceImpl.java
  29. 11 8
      src/main/java/com/goafanti/user/bo/InputListOrderUserService.java
  30. 12 10
      src/main/java/com/goafanti/user/controller/UserServiceApiController.java
  31. 6 2
      src/main/java/com/goafanti/user/service/impl/UserFollowServiceImpl.java
  32. 11 8
      src/main/java/com/goafanti/user/service/impl/UserServiceServiceImpl.java
  33. 1 1
      src/main/resources/props/config_local.properties
  34. 1 1
      src/main/resources/props/config_test.properties

+ 5 - 5
src/main/java/com/goafanti/admin/bo/depCountBo.java

@@ -3,7 +3,7 @@ package com.goafanti.admin.bo;
 import java.util.ArrayList;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.List;
 
 
-public class depCountBo {
+public class DepCountBo {
 
 
 	private String id;
 	private String id;
 	private String name;
 	private String name;
@@ -15,10 +15,10 @@ public class depCountBo {
 	private Integer newCount;
 	private Integer newCount;
 	private Integer channelNewCount;
 	private Integer channelNewCount;
 	private Integer channelCompleteCount;
 	private Integer channelCompleteCount;
-	private List<depCountBo> list;
+	private List<DepCountBo> list;
 	private List<AdminCustomerBo> aList;
 	private List<AdminCustomerBo> aList;
 
 
-	public depCountBo() {
+	public DepCountBo() {
 		userCount = 0;
 		userCount = 0;
 		receiveCount = 0;
 		receiveCount = 0;
 		completeCount = 0;
 		completeCount = 0;
@@ -93,10 +93,10 @@ public class depCountBo {
 		this.completeCount = completeCount;
 		this.completeCount = completeCount;
 	}
 	}
 
 
-	public List<depCountBo> getList() {
+	public List<DepCountBo> getList() {
 		return list;
 		return list;
 	}
 	}
-	public void setList(List<depCountBo> list) {
+	public void setList(List<DepCountBo> list) {
 		this.list = list;
 		this.list = list;
 	}
 	}
 	public List<AdminCustomerBo> getaList() {
 	public List<AdminCustomerBo> getaList() {

+ 3 - 6
src/main/java/com/goafanti/admin/service/AdminService.java

@@ -3,11 +3,8 @@ package com.goafanti.admin.service;
 import java.util.List;
 import java.util.List;
 import java.util.Map;
 import java.util.Map;
 
 
-import com.goafanti.admin.bo.AdminCustomerBo;
-import com.goafanti.admin.bo.AdminCustomerDetailBo;
-import com.goafanti.admin.bo.AdminDetail;
-import com.goafanti.admin.bo.AdminListBo;
-import com.goafanti.admin.bo.depCountBo;
+import com.goafanti.admin.bo.*;
+import com.goafanti.admin.bo.DepCountBo;
 import com.goafanti.common.model.Admin;
 import com.goafanti.common.model.Admin;
 import com.goafanti.core.mybatis.page.Pagination;
 import com.goafanti.core.mybatis.page.Pagination;
 
 
@@ -86,7 +83,7 @@ public interface AdminService {
 
 
 	int updatePrivateBusinessTransfer(String inputId, String uid, String pid);
 	int updatePrivateBusinessTransfer(String inputId, String uid, String pid);
 
 
-	depCountBo selectAllUser(String depId, String startTime, String endTime, String aName);
+	DepCountBo selectAllUser(String depId, String startTime, String endTime, String aName);
 
 
 
 
 
 

+ 26 - 14
src/main/java/com/goafanti/admin/service/impl/AdminServiceImpl.java

@@ -7,6 +7,7 @@ import javax.annotation.Resource;
 import com.goafanti.admin.service.DepartmentService;
 import com.goafanti.admin.service.DepartmentService;
 import com.goafanti.common.dao.*;
 import com.goafanti.common.dao.*;
 import com.goafanti.common.model.Department;
 import com.goafanti.common.model.Department;
+import com.goafanti.common.utils.RedisUtil;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.cache.annotation.Cacheable;
 import org.springframework.cache.annotation.Cacheable;
@@ -17,7 +18,7 @@ import com.goafanti.admin.bo.AdminCustomerBo;
 import com.goafanti.admin.bo.AdminCustomerDetailBo;
 import com.goafanti.admin.bo.AdminCustomerDetailBo;
 import com.goafanti.admin.bo.AdminDetail;
 import com.goafanti.admin.bo.AdminDetail;
 import com.goafanti.admin.bo.AdminListBo;
 import com.goafanti.admin.bo.AdminListBo;
-import com.goafanti.admin.bo.depCountBo;
+import com.goafanti.admin.bo.DepCountBo;
 import com.goafanti.admin.service.AdminService;
 import com.goafanti.admin.service.AdminService;
 import com.goafanti.common.constant.AFTConstants;
 import com.goafanti.common.constant.AFTConstants;
 import com.goafanti.common.model.Admin;
 import com.goafanti.common.model.Admin;
@@ -50,6 +51,8 @@ public class AdminServiceImpl extends BaseMybatisDao<AdminMapper> implements Adm
 	@Resource(name = "passwordUtil")
 	@Resource(name = "passwordUtil")
 	private PasswordUtil					passwordUtil;
 	private PasswordUtil					passwordUtil;
 
 
+	@Autowired
+	private RedisUtil	redisUtil;
 	@Override
 	@Override
 	public List<Admin> selectAllAdmin() {
 	public List<Admin> selectAllAdmin() {
 		return adminMapper.selectAllAdmin(null);
 		return adminMapper.selectAllAdmin(null);
@@ -360,13 +363,23 @@ public class AdminServiceImpl extends BaseMybatisDao<AdminMapper> implements Adm
 		if (StringUtils.isNotBlank(endTime)) params.put("endTime", endTime+" 23:59:59");
 		if (StringUtils.isNotBlank(endTime)) params.put("endTime", endTime+" 23:59:59");
 		return (Pagination<AdminCustomerBo>)findPage("selectAdminCustomerList", "selectAdminCustomerCount", params, pageNo, pageSize);
 		return (Pagination<AdminCustomerBo>)findPage("selectAdminCustomerList", "selectAdminCustomerCount", params, pageNo, pageSize);
 	}
 	}
-
 	@Override
 	@Override
 	@Cacheable(cacheNames = "selectAllUser#500",key = "'selectAllUser:depId:'+#depId+'startTime:'+#startTime+" +"'endTime:'+#endTime+'aName:'+#aName")
 	@Cacheable(cacheNames = "selectAllUser#500",key = "'selectAllUser:depId:'+#depId+'startTime:'+#startTime+" +"'endTime:'+#endTime+'aName:'+#aName")
-	public depCountBo selectAllUser(String depId, String startTime, String endTime,String aName) {
-		depCountBo acb=new depCountBo();
+	public DepCountBo selectAllUser(String depId, String startTime, String endTime,String aName) {
+    	String str="selectAllUser"+depId+startTime+endTime+aName;
+		DepCountBo depCountBo=redisUtil.getJsonArray(str,DepCountBo.class);
+		if (depCountBo==null){
+			depCountBo=getselectAllUser(depId,startTime,endTime,aName);
+			redisUtil.saveJsonArray(depCountBo,str);
+		}
+		return depCountBo;
+	}
+
+
+	public DepCountBo getselectAllUser(String depId, String startTime, String endTime,String aName) {
+		DepCountBo acb=new DepCountBo();
 		if (endTime!=null)endTime=endTime+" 23:59:59";
 		if (endTime!=null)endTime=endTime+" 23:59:59";
-		List<depCountBo >deps=new ArrayList<>();
+		List<DepCountBo >deps=new ArrayList<>();
 		List<Department> depIds=new ArrayList<>();
 		List<Department> depIds=new ArrayList<>();
 		if (depId==null) {
 		if (depId==null) {
 			acb.setName("科德集团");
 			acb.setName("科德集团");
@@ -382,13 +395,12 @@ public class AdminServiceImpl extends BaseMybatisDao<AdminMapper> implements Adm
 			depIds.add(department);
 			depIds.add(department);
 		}
 		}
 		List<AdminCustomerBo> list =departmentMapper.AlldepCount(depIds,startTime,  endTime);
 		List<AdminCustomerBo> list =departmentMapper.AlldepCount(depIds,startTime,  endTime);
-
-		for(AdminCustomerBo ad:list){
+		for (AdminCustomerBo ad : list) {
 			if (acb.getId().equals(ad.getDepId())){
 			if (acb.getId().equals(ad.getDepId())){
 				acb.getaList().add(ad);
 				acb.getaList().add(ad);
 			}
 			}
 		}
 		}
-		for (depCountBo dep : deps) {
+		for (DepCountBo dep : deps) {
 			dep.setList(iterationDeps(dep.getId(),list));
 			dep.setList(iterationDeps(dep.getId(),list));
 			for (AdminCustomerBo ad : list) {
 			for (AdminCustomerBo ad : list) {
 				if (dep.getId().equals(ad.getDepId())){
 				if (dep.getId().equals(ad.getDepId())){
@@ -403,11 +415,11 @@ public class AdminServiceImpl extends BaseMybatisDao<AdminMapper> implements Adm
 	}
 	}
 
 
 	//迭代获取所有部门与部门员工并计算出部门数量
 	//迭代获取所有部门与部门员工并计算出部门数量
-	private List<depCountBo> iterationDeps(String id,List<AdminCustomerBo> list) {
-		List<depCountBo>  deps =departmentMapper.selectBysuperId(id);
-		for (depCountBo dep : deps) {
+	public List<DepCountBo> iterationDeps(String id,List<AdminCustomerBo> list) {
+		List<DepCountBo>  deps =departmentMapper.selectBysuperId(id);
+		for (DepCountBo dep : deps) {
 			dep.setList(iterationDeps(dep.getId(),list));
 			dep.setList(iterationDeps(dep.getId(),list));
-			for (AdminCustomerBo ad:list){
+			for (AdminCustomerBo ad : list) {
 				if (dep.getId().equals(ad.getDepId())){
 				if (dep.getId().equals(ad.getDepId())){
 					dep.getaList().add(ad);
 					dep.getaList().add(ad);
 				}
 				}
@@ -421,10 +433,10 @@ public class AdminServiceImpl extends BaseMybatisDao<AdminMapper> implements Adm
 	 *
 	 *
 	 * @param ab
 	 * @param ab
 	 */
 	 */
-	private void sumCount(depCountBo ab) {
+	public void sumCount(DepCountBo ab) {
 		int completeCount=0,receiveCount=0,userCount=0,signCount=0,channelCount=0,newCount=0,channelNewCount=0,channelCompleteCount=0;
 		int completeCount=0,receiveCount=0,userCount=0,signCount=0,channelCount=0,newCount=0,channelNewCount=0,channelCompleteCount=0;
 		if (ab.getList()!=null&&!ab.getList().isEmpty()) {
 		if (ab.getList()!=null&&!ab.getList().isEmpty()) {
-			for (depCountBo a : ab.getList()) {
+			for (DepCountBo a : ab.getList()) {
 				if (a.getCompleteCount()!=null&& a.getCompleteCount()!=0) completeCount+=a.getCompleteCount();
 				if (a.getCompleteCount()!=null&& a.getCompleteCount()!=0) completeCount+=a.getCompleteCount();
 				if (a.getReceiveCount()!=null&& a.getReceiveCount()!=0) receiveCount+=a.getReceiveCount();
 				if (a.getReceiveCount()!=null&& a.getReceiveCount()!=0) receiveCount+=a.getReceiveCount();
 				if (a.getUserCount()!=null&& a.getUserCount()!=0) userCount+=a.getUserCount();
 				if (a.getUserCount()!=null&& a.getUserCount()!=0) userCount+=a.getUserCount();

+ 2 - 0
src/main/java/com/goafanti/business/controller/AdminBusinessProjectController.java

@@ -225,4 +225,6 @@ public class AdminBusinessProjectController extends CertifyApiController{
 		res.setData(businessprojectService.updateSotpProjectSize(id));
 		res.setData(businessprojectService.updateSotpProjectSize(id));
 		return res;
 		return res;
 	}
 	}
+
+
 }
 }

+ 1 - 2
src/main/java/com/goafanti/business/service/BusinessProjectService.java

@@ -28,7 +28,7 @@ public interface BusinessProjectService {
 
 
 	BusinessProjectBo orgProjects(String id);
 	BusinessProjectBo orgProjects(String id);
 
 
-	List<Map<String, String>> getAllCnames(Integer flag);
+	List<Map<String, Object>> getAllCnames(Integer flag);
 
 
 	int updateProject(BusinessProject s);
 	int updateProject(BusinessProject s);
 
 
@@ -67,5 +67,4 @@ public interface BusinessProjectService {
 	List<BusinessCategory> selectBusinessProjectCatalog();
 	List<BusinessCategory> selectBusinessProjectCatalog();
 
 
 
 
-
 }
 }

+ 34 - 3
src/main/java/com/goafanti/business/service/impl/BusinessProjectServiceImpl.java

@@ -8,6 +8,7 @@ import java.util.List;
 import java.util.Map;
 import java.util.Map;
 import java.util.UUID;
 import java.util.UUID;
 
 
+import com.goafanti.order.enums.ProjectType;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
@@ -160,14 +161,16 @@ public class BusinessProjectServiceImpl extends BaseMybatisDao<BusinessProjectMa
 	}
 	}
 
 
 	@Override
 	@Override
-	public List<Map<String, String>> getAllCnames(Integer flag) {
-		List<Map<String, String>> list=new ArrayList<Map<String, String>>();
+	public List<Map<String, Object>> getAllCnames(Integer flag) {
+		if (flag==null)flag=0;
+		List<Map<String, Object>> list=new ArrayList<Map<String, Object>>();
 		List<String> listcid=businessVarietiesMapper.getListId();
 		List<String> listcid=businessVarietiesMapper.getListId();
 		for (String s : listcid) {
 		for (String s : listcid) {
-			Map<String, String> map=new HashMap<>();
+			Map<String, Object> map=new HashMap<>();
 			String cname=getAllCname(s);
 			String cname=getAllCname(s);
 			map.put("id", s);
 			map.put("id", s);
 			map.put("cname", cname);
 			map.put("cname", cname);
+			map.put("typeList",selectProjectAndTypeById(s));
 			if (flag==1) {
 			if (flag==1) {
 				if (StringUtils.isBlank(cname)) {
 				if (StringUtils.isBlank(cname)) {
 					map.put("cname", "平台超级业务品类");
 					map.put("cname", "平台超级业务品类");
@@ -457,5 +460,33 @@ public class BusinessProjectServiceImpl extends BaseMybatisDao<BusinessProjectMa
 		return businessProjectMapper.selectBusinessProjectCatalog();
 		return businessProjectMapper.selectBusinessProjectCatalog();
 	}
 	}
 
 
+
+	public List<Map> selectProjectAndTypeById(String id) {
+		List<Map> list=businessProjectMapper.selectProjectAndTypeAll();
+		for (Map map : list) {
+			if (id.equals(map.get("id"))){
+				List<Map> typeList=new ArrayList<>();
+				String groupCount= (String) map.get("groupCount");
+				if (groupCount!=null){
+					String[] ss=groupCount.split(",");
+					Map<String, String> typeBo = new HashMap<>();
+					typeBo.put("id",null);
+					typeBo.put("name", "全部");
+					typeList.add(typeBo);
+					if (ss.length>0){
+						for (String s : ss) {
+							Map<String, String> types = new HashMap<>();
+							types.put("id",s);
+							types.put("name", ProjectType.getValueByCode(Integer.valueOf(s)));
+							typeList.add(types);
+						}
+					}
+					return typeList;
+				}
+			}
+		}
+		return  new ArrayList<>();
+	}
+
 }
 }
 
 

+ 3 - 1
src/main/java/com/goafanti/common/dao/BusinessProjectMapper.java

@@ -9,6 +9,8 @@ import com.goafanti.order.bo.Outproject;
 import com.goafanti.common.model.BusinessCategory;
 import com.goafanti.common.model.BusinessCategory;
 
 
 import java.util.List;
 import java.util.List;
+import java.util.Map;
+
 import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Param;
 
 
 public interface BusinessProjectMapper {
 public interface BusinessProjectMapper {
@@ -46,5 +48,5 @@ public interface BusinessProjectMapper {
 	 List<BusinessCategory> selectBusinessProjectCatalog();
 	 List<BusinessCategory> selectBusinessProjectCatalog();
 
 
 
 
-
+    List<Map> selectProjectAndTypeAll();
 }
 }

+ 3 - 3
src/main/java/com/goafanti/common/dao/DepartmentMapper.java

@@ -2,7 +2,7 @@ package com.goafanti.common.dao;
 
 
 import com.goafanti.admin.bo.AdminCustomerBo;
 import com.goafanti.admin.bo.AdminCustomerBo;
 import com.goafanti.admin.bo.AdminListBo;
 import com.goafanti.admin.bo.AdminListBo;
-import com.goafanti.admin.bo.depCountBo;
+import com.goafanti.admin.bo.DepCountBo;
 import com.goafanti.common.model.Department;
 import com.goafanti.common.model.Department;
 import com.goafanti.organization.bo.DepOut;
 import com.goafanti.organization.bo.DepOut;
 import com.goafanti.organization.bo.OrganizationListOut;
 import com.goafanti.organization.bo.OrganizationListOut;
@@ -87,9 +87,9 @@ public interface DepartmentMapper {
     List<String> selectSubDeps(@Param("superIds")String superIds);
     List<String> selectSubDeps(@Param("superIds")String superIds);
     List<Department> selectSubDepsList(@Param("superIds")String superIds);
     List<Department> selectSubDepsList(@Param("superIds")String superIds);
 
 
-    List<depCountBo> selectBysuperId(String id);
+    List<DepCountBo> selectBysuperId(String id);
 
 
-    List<depCountBo> selectBysuperName(String name);
+    List<DepCountBo> selectBysuperName(String name);
     /**
     /**
      * 查询当前集合
      * 查询当前集合
      * @return
      * @return

+ 4 - 0
src/main/java/com/goafanti/common/mapper/BusinessProjectMapper.xml

@@ -567,5 +567,9 @@
   <select id="selectBusinessProjectCatalog" resultType="com.goafanti.common.model.BusinessCategory">
   <select id="selectBusinessProjectCatalog" resultType="com.goafanti.common.model.BusinessCategory">
   	select id,cname from business_category where delete_sign=0
   	select id,cname from business_category where delete_sign=0
   </select>
   </select>
+    <select id="selectProjectAndTypeAll" resultType="java.util.Map">
+      select bc.id,  group_concat(distinct bp.`type`)groupCount  from business_category bc
+        left join business_project bp on bc.id =bp.cid group by bc.id
+    </select>
 
 
 </mapper>
 </mapper>

+ 3 - 3
src/main/java/com/goafanti/common/mapper/DepartmentMapper.xml

@@ -458,18 +458,18 @@
     select id from department where super_id in (#{superIds,jdbcType=VARCHAR})
     select id from department where super_id in (#{superIds,jdbcType=VARCHAR})
   </select>
   </select>
 
 
-  <select id="selectBysuperId"  resultType="com.goafanti.admin.bo.depCountBo">
+  <select id="selectBysuperId"  resultType="com.goafanti.admin.bo.DepCountBo">
     select a.id ,a.name ,0 userCount,0 inputCount,0 receiveCount, 0 completeCount, 0 interviewCount
     select a.id ,a.name ,0 userCount,0 inputCount,0 receiveCount, 0 completeCount, 0 interviewCount
     from department a  where a.super_id= #{id}
     from department a  where a.super_id= #{id}
   </select>
   </select>
 
 
-  <select id="selectBysuperName" resultType="com.goafanti.admin.bo.depCountBo">
+  <select id="selectBysuperName" resultType="com.goafanti.admin.bo.DepCountBo">
     select a.id ,a.name ,0 userCount,0 inputCount,0 receiveCount, 0 completeCount, 0 interviewCount
     select a.id ,a.name ,0 userCount,0 inputCount,0 receiveCount, 0 completeCount, 0 interviewCount
     from department a left join department b on a.super_id=b.id where b.name= #{name}
     from department a left join department b on a.super_id=b.id where b.name= #{name}
   </select>
   </select>
 
 
   <!-- 查询所有 -->
   <!-- 查询所有 -->
-  <select id="selectAllDeps" resultType="string">
+  <select id="selectAllDeps" resultType="com.goafanti.common.model.Department">
     select id from department
     select id from department
   </select>
   </select>
   <select id="getMaxAbbreviation"  parameterType="java.lang.String" resultType="java.lang.String">
   <select id="getMaxAbbreviation"  parameterType="java.lang.String" resultType="java.lang.String">

+ 52 - 44
src/main/java/com/goafanti/common/mapper/TOrderTaskMapper.xml

@@ -883,8 +883,11 @@
     <if test="projectStatus != null">
     <if test="projectStatus != null">
       and a.project_status = #{projectStatus,jdbcType=INTEGER}
       and a.project_status = #{projectStatus,jdbcType=INTEGER}
     </if>
     </if>
-    <if test="depId != null">
-      and e.order_dep= #{depId,jdbcType=VARCHAR}
+    <if test="deps != null">
+      and e.order_dep in
+      <foreach close=")" collection="deps" item="depId" open="(" separator=",">
+        #{depId}
+      </foreach>
     </if>
     </if>
     <if test="name != null">
     <if test="name != null">
       and f.nickname like CONCAT('%',#{name,jdbcType=VARCHAR},'%')
       and f.nickname like CONCAT('%',#{name,jdbcType=VARCHAR},'%')
@@ -952,8 +955,11 @@
     <if test="projectStatus != null">
     <if test="projectStatus != null">
       and a.project_status = #{projectStatus,jdbcType=INTEGER}
       and a.project_status = #{projectStatus,jdbcType=INTEGER}
     </if>
     </if>
-    <if test="depId != null">
-      and e.order_dep = #{depId,jdbcType=VARCHAR}
+    <if test="deps != null">
+      and e.order_dep in
+      <foreach close=")" collection="deps" item="depId" open="(" separator=",">
+        #{depId}
+      </foreach>
     </if>
     </if>
     <if test="name != null">
     <if test="name != null">
       and f.nickname like CONCAT('%',#{name,jdbcType=VARCHAR},'%')
       and f.nickname like CONCAT('%',#{name,jdbcType=VARCHAR},'%')
@@ -1239,34 +1245,18 @@
 
 
 
 
   <select id="selectProjectStatisticsListByPage" resultType="com.goafanti.order.bo.OutProjectStatistics">
   <select id="selectProjectStatisticsListByPage" resultType="com.goafanti.order.bo.OutProjectStatistics">
-    select  date_format( a.task_distribution_time, '%Y-%m-%d %H:%i:%S' ) distributionTime ,d.name province  ,c.name depName,e.salesman_name salesmanName,
+    select  date_format( a.task_distribution_time, '%Y-%m-%d %H:%i:%S' ) distributionTime ,d.name province , c.name depName,e.salesman_name salesmanName,
     b.contract_no contractNo ,b.order_no orderNo ,e.buyer_name userName,bc.cname ,a.commodity_name pname,ta.name techName,td.name techDepName,
     b.contract_no contractNo ,b.order_no orderNo ,e.buyer_name userName,bc.cname ,a.commodity_name pname,ta.name techName,td.name techDepName,
-    a.project_status projectStatus,a.id,b.order_remarks orderRemarks,
-    <if test="status==1">
-      a.set_up_status setUpStatus , date_format( a.set_up_time , '%Y-%m-%d' ) setUpTime ,a.spot_check_status spotCheckStatus ,b.contact_mobile contactMobile ,
-      b.legal_person_tel legalPersonTel , a.certificate_number certificateNumber,a.declaration_batch declarationBatch,
-    </if>
-    <if test="status==2">
-      date_format(a.licence_time, '%Y-%m-%d' ) licenceTime,
-    </if>
-    <if test="status==3">
-      a.commodity_quantity commodityQuantity ,ttm.certificates_count certificatesCount,ttm.urgent_day urgentDay ,ttm.if_material ifMaterial,
-      date_format(tp.licence_time, '%Y-%m-%d' )  licenceTime,
-      a.certificate_number certificateNumber,ttm.cost_amount costAmount ,
-      (a.commodity_price-ttm.cost_amount)profit,
-    </if>
-    <if test="status==4">
-      ttm.certificates_count certificatesCount,a.high_tech_status highTechStatus,
-      tp.patent_name patentName ,tp.patent_no patentNo ,date_format(tp.accept_time, '%Y-%m-%d ' ) acceptTime ,
-      date_format(tp.licence_time, '%Y-%m-%d' ) licenceTime ,date_format(tp.authorize_time, '%Y-%m-%d ' )  authorizeTime,
-      ttm.reject_count	rejectCount ,ttm.cost_amount costAmount ,(a.commodity_price-ttm.cost_amount)profit,
-    </if>
-
-    a.commodity_quantity commodityQuantity , a.commodity_price commodityPrice ,a.special_comment specialComment,a.task_comment taskComment
-    from t_order_task a left join t_order_new b on a.order_no =b.order_no left join department c on b.order_dep =c.id left join district_glossory d on c.province=d.id
-    <if test="status==3 or status==4">
-      left join task_progress tp  on a.id=tp.task_id
-    </if>
+    a.project_status projectStatus,a.id,b.order_remarks orderRemarks, a.set_up_status setUpStatus , date_format( a.set_up_time , '%Y-%m-%d' ) setUpTime ,
+    a.spot_check_status spotCheckStatus ,b.contact_mobile contactMobile ,b.legal_person_tel legalPersonTel , a.certificate_number certificateNumber,
+    a.declaration_batch declarationBatch, date_format(a.licence_time, '%Y-%m-%d' ) licenceTime, a.commodity_quantity commodityQuantity ,
+    ttm.certificates_count certificatesCount,ttm.urgent_day urgentDay ,ttm.if_material ifMaterial, ttm.cost_amount costAmount ,
+    (a.commodity_price-ttm.cost_amount)profit, a.high_tech_status highTechStatus, tp.patent_name patentName ,tp.patent_no patentNo ,
+    date_format(tp.accept_time, '%Y-%m-%d ' ) acceptTime , date_format(tp.authorize_time, '%Y-%m-%d ' )  authorizeTime, ttm.reject_count rejectCount ,
+    tm.service_life serviceLife,tm.service_year serviceyear, tm.year_sum yearsum,tm.contract_term contractTerm, a.commodity_price commodityPrice ,
+    a.special_comment specialComment,a.task_comment taskComment
+    from t_order_task a left join t_order_new b on a.order_no =b.order_no left join department c on b.order_dep =c.id
+    left join district_glossory d on c.province=d.id left join task_progress tp  on a.id=tp.task_id left join t_task_member tm on a.id=tm.tid
     left join t_order_mid e on b.order_no =e.order_no left join business_project bp on a.commodity_id =bp.id left join business_category bc on bp.cid =bc.id
     left join t_order_mid e on b.order_no =e.order_no left join business_project bp on a.commodity_id =bp.id left join business_category bc on bp.cid =bc.id
     left join t_task_mid ttm on a.id=ttm.tid left join admin ta on a.task_receiver =ta.id left join department td on ta.department_id =td.id
     left join t_task_mid ttm on a.id=ttm.tid left join admin ta on a.task_receiver =ta.id left join department td on ta.department_id =td.id
     <if test="screen ==6">
     <if test="screen ==6">
@@ -1317,11 +1307,17 @@
     <if test="projectId !=null">
     <if test="projectId !=null">
       and a.commodity_id = #{projectId}
       and a.commodity_id = #{projectId}
     </if>
     </if>
-    <if test="depId !=null">
-      and b.order_dep = #{depId}
+    <if test="deps != null">
+      and b.order_dep in
+      <foreach close=")" collection="deps" item="dep" open="(" separator=",">
+        #{dep}
+      </foreach>
     </if>
     </if>
-    <if test="thchDepId !=null">
-      and td.id= #{thchDepId}
+    <if test="thchDeps != null">
+      and td.id in
+      <foreach close=")" collection="thchDeps" item="thchDep" open="(" separator=",">
+        #{thchDep}
+      </foreach>
     </if>
     </if>
     <if test="projectStatus !=null">
     <if test="projectStatus !=null">
       and bp.cid= #{projectStatus}
       and bp.cid= #{projectStatus}
@@ -1367,7 +1363,7 @@
     <if test="projectStatus !=null or projectType !=null">
     <if test="projectStatus !=null or projectType !=null">
       left join business_project bp on a.commodity_id =bp.id
       left join business_project bp on a.commodity_id =bp.id
     </if>
     </if>
-    <if test="thchDepId !=null">
+    <if test="thchDeps !=null">
       left join admin ta on a.task_receiver =ta.id
       left join admin ta on a.task_receiver =ta.id
       left join department td on ta.department_id =td.id
       left join department td on ta.department_id =td.id
     </if>
     </if>
@@ -1422,11 +1418,17 @@
     <if test="projectId !=null">
     <if test="projectId !=null">
       and a.commodity_id = #{projectId}
       and a.commodity_id = #{projectId}
     </if>
     </if>
-    <if test="depId !=null">
-      and b.order_dep = #{depId}
+    <if test="deps != null">
+      and b.order_dep in
+      <foreach close=")" collection="deps" item="dep" open="(" separator=",">
+        #{dep}
+      </foreach>
     </if>
     </if>
-    <if test="thchDepId !=null">
-      and td.id= #{thchDepId}
+    <if test="thchDeps != null">
+      and td.id in
+      <foreach close=")" collection="thchDeps" item="thchDep" open="(" separator=",">
+        #{thchDep}
+      </foreach>
     </if>
     </if>
     <if test="projectStatus !=null">
     <if test="projectStatus !=null">
       and bp.cid= #{projectStatus}
       and bp.cid= #{projectStatus}
@@ -1482,8 +1484,11 @@
     <if test="province !=null">
     <if test="province !=null">
     and b.dispatch_province = #{province}
     and b.dispatch_province = #{province}
     </if>
     </if>
-    <if test="thchDepId !=null">
-    and b.duty_dep = #{thchDepId}
+    <if test="thchDeps !=null">
+    and b.duty_dep in
+      <foreach close=")" collection="thchDeps" item="depId" open="(" separator=",">
+        #{depId}
+      </foreach>
     </if>
     </if>
     <if test="projectType !=null">
     <if test="projectType !=null">
     and bp.`type` = #{projectType}
     and bp.`type` = #{projectType}
@@ -1521,8 +1526,11 @@
     <if test="province !=null">
     <if test="province !=null">
       and b.dispatch_province = #{province}
       and b.dispatch_province = #{province}
     </if>
     </if>
-    <if test="thchDepId !=null">
-      and b.duty_dep = #{thchDepId}
+    <if test="thchDeps !=null">
+      and b.duty_dep in
+      <foreach close=")" collection="thchDeps" item="depId" open="(" separator=",">
+        #{depId}
+      </foreach>
     </if>
     </if>
     <if test="projectType !=null">
     <if test="projectType !=null">
       and bp.`type` = #{projectType}
       and bp.`type` = #{projectType}

+ 3 - 4
src/main/java/com/goafanti/common/mapper/UserLockReleaseMapper.xml

@@ -379,14 +379,13 @@
   <select id="selectWaitReleaseCustomer" resultType="com.goafanti.customer.bo.LockingReleaseBo">
   <select id="selectWaitReleaseCustomer" resultType="com.goafanti.customer.bo.LockingReleaseBo">
 	select
 	select
 		t0.id, t0.uid, t0.aid, t0.lock_time lockTime,u.new_channel newChannel,
 		t0.id, t0.uid, t0.aid, t0.lock_time lockTime,u.new_channel newChannel,
-		t1.last_follow_time lastFollowTime,u.nickname userName
+		t1.last_follow_time lastFollowTime,u.nickname userName ,um.channel_type channelType
 	from
 	from
 		(select id,uid,aid,lock_time from user_lock_release where aid = #{aid} and type = 0 and status = 0)t0
 		(select id,uid,aid,lock_time from user_lock_release where aid = #{aid} and type = 0 and status = 0)t0
 	left join
 	left join
 		(select uid,aid,max(create_time) as last_follow_time from user_follow where aid = #{aid} group by uid)t1
 		(select uid,aid,max(create_time) as last_follow_time from user_follow where aid = #{aid} group by uid)t1
-	on t0.uid = t1.uid
-	left join user u on t0.uid=u.id
-	where u.channel=0 and u.new_channel
+	on t0.uid = t1.uid left join user u on t0.uid=u.id  left join user_mid um on t0.uid=um.uid
+	where u.channel=0
 	 and datediff(now(),if(t0.lock_time &lt; t1.last_follow_time,t1.last_follow_time,t0.lock_time))>30
 	 and datediff(now(),if(t0.lock_time &lt; t1.last_follow_time,t1.last_follow_time,t0.lock_time))>30
   </select>
   </select>
 
 

+ 1 - 1
src/main/java/com/goafanti/common/mapper/UserMapper.xml

@@ -1366,7 +1366,7 @@
   </update>
   </update>
 
 
   <select id="selectUserByRoleName" parameterType="java.lang.String" resultMap="BaseResultMap">
   <select id="selectUserByRoleName" parameterType="java.lang.String" resultMap="BaseResultMap">
-    select c.id from role a left join user_role b on a.id = b.rid left join admin c on b.uid = c.id where a.role_name in(#{roleName1},#{roleName2})
+    select DISTINCT  c.id from role a left join user_role b on a.id = b.rid left join admin c on b.uid = c.id where a.role_name in(#{roleName1},#{roleName2})
   </select>
   </select>
   <update id="updateDimissionTransfer">
   <update id="updateDimissionTransfer">
     update user
     update user

+ 62 - 56
src/main/java/com/goafanti/common/mapper/UserServiceMapper.xml

@@ -28,7 +28,7 @@
       This element is automatically generated by MyBatis Generator, do not modify.
       This element is automatically generated by MyBatis Generator, do not modify.
       This element was generated on Fri May 28 13:36:56 CST 2021.
       This element was generated on Fri May 28 13:36:56 CST 2021.
     -->
     -->
-    id, `uid`, aid, add_wechat, wechat, renewal, renewal_time, sign_project, sign_project_id, 
+    id, `uid`, aid, add_wechat, wechat, renewal, renewal_time, sign_project, sign_project_id,
     new_time, remarks, create_time, tech_satisfaction, business_satisfaction
     new_time, remarks, create_time, tech_satisfaction, business_satisfaction
   </sql>
   </sql>
   <select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
   <select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
@@ -37,7 +37,7 @@
       This element is automatically generated by MyBatis Generator, do not modify.
       This element is automatically generated by MyBatis Generator, do not modify.
       This element was generated on Fri May 28 13:36:56 CST 2021.
       This element was generated on Fri May 28 13:36:56 CST 2021.
     -->
     -->
-    select 
+    select
     <include refid="Base_Column_List" />
     <include refid="Base_Column_List" />
     from user_service
     from user_service
     where id = #{id,jdbcType=INTEGER}
     where id = #{id,jdbcType=INTEGER}
@@ -57,15 +57,15 @@
       This element is automatically generated by MyBatis Generator, do not modify.
       This element is automatically generated by MyBatis Generator, do not modify.
       This element was generated on Fri May 28 13:36:56 CST 2021.
       This element was generated on Fri May 28 13:36:56 CST 2021.
     -->
     -->
-    insert into user_service (id, `uid`, aid, 
-      add_wechat, wechat, renewal, 
-      renewal_time, sign_project, sign_project_id, 
-      new_time, remarks, create_time, 
+    insert into user_service (id, `uid`, aid,
+      add_wechat, wechat, renewal,
+      renewal_time, sign_project, sign_project_id,
+      new_time, remarks, create_time,
       tech_satisfaction, business_satisfaction)
       tech_satisfaction, business_satisfaction)
-    values (#{id,jdbcType=INTEGER}, #{uid,jdbcType=VARCHAR}, #{aid,jdbcType=VARCHAR}, 
-      #{addWechat,jdbcType=INTEGER}, #{wechat,jdbcType=VARCHAR}, #{renewal,jdbcType=INTEGER}, 
-      #{renewalTime,jdbcType=TIMESTAMP}, #{signProject,jdbcType=VARCHAR}, #{signProjectId,jdbcType=VARCHAR}, 
-      #{newTime,jdbcType=TIMESTAMP}, #{remarks,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, 
+    values (#{id,jdbcType=INTEGER}, #{uid,jdbcType=VARCHAR}, #{aid,jdbcType=VARCHAR},
+      #{addWechat,jdbcType=INTEGER}, #{wechat,jdbcType=VARCHAR}, #{renewal,jdbcType=INTEGER},
+      #{renewalTime,jdbcType=TIMESTAMP}, #{signProject,jdbcType=VARCHAR}, #{signProjectId,jdbcType=VARCHAR},
+      #{newTime,jdbcType=TIMESTAMP}, #{remarks,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP},
       #{techSatisfaction,jdbcType=INTEGER}, #{businessSatisfaction,jdbcType=INTEGER})
       #{techSatisfaction,jdbcType=INTEGER}, #{businessSatisfaction,jdbcType=INTEGER})
   </insert>
   </insert>
   <insert id="insertSelective" parameterType="com.goafanti.common.model.UserService">
   <insert id="insertSelective" parameterType="com.goafanti.common.model.UserService">
@@ -239,8 +239,8 @@
   <select id="selectByUid" resultType="java.lang.Integer">
   <select id="selectByUid" resultType="java.lang.Integer">
   select id from user_service where uid= #{uid}
   select id from user_service where uid= #{uid}
   </select>
   </select>
-  
-  
+
+
    <resultMap id="userService" type="com.goafanti.user.bo.OutOrderUserService">
    <resultMap id="userService" type="com.goafanti.user.bo.OutOrderUserService">
       <result column="orderNo" property="orderNo" />
       <result column="orderNo" property="orderNo" />
       <result column="contractNo" property="contractNo" />
       <result column="contractNo" property="contractNo" />
@@ -267,8 +267,8 @@
 		receiver_name receiverName ,certificate_number  certificateNumber
 		receiver_name receiverName ,certificate_number  certificateNumber
 		from t_order_task where split_status in (0,1) and order_no = #{orderNo}
 		from t_order_task where split_status in (0,1) and order_no = #{orderNo}
     </select>
     </select>
-  
-  
+
+
   <select id="OrderUseServiceList" resultMap="userService">
   <select id="OrderUseServiceList" resultMap="userService">
 select a.order_no orderNo,a.contract_no contractNo,b.dep_name depName ,a.buyer_id uid,a.create_time ,b.buyer_name userName,c.new_time ,
 select a.order_no orderNo,a.contract_no contractNo,b.dep_name depName ,a.buyer_id uid,a.create_time ,b.buyer_name userName,c.new_time ,
 date_format(a.create_time,'%Y-%m-%d %H:%i:%S') as orderTimes, date_format(c.new_time,'%Y-%m-%d %H:%i:%S') as newTimes,
 date_format(a.create_time,'%Y-%m-%d %H:%i:%S') as orderTimes, date_format(c.new_time,'%Y-%m-%d %H:%i:%S') as newTimes,
@@ -276,56 +276,62 @@ date_format(c.renewal_time,'%Y-%m-%d') as renewalTimes, date_format(a.sign_time,
 d.name adminName,c.add_wechat addWechat,c.wechat ,c.renewal ,c.renewal_time ,c.sign_project signProject ,c.remarks,
 d.name adminName,c.add_wechat addWechat,c.wechat ,c.renewal ,c.renewal_time ,c.sign_project signProject ,c.remarks,
 c.tech_satisfaction techSatisfaction, c.business_satisfaction businessSatisfaction
 c.tech_satisfaction techSatisfaction, c.business_satisfaction businessSatisfaction
 from t_order_new a
 from t_order_new a
-left join t_order_mid b on a.order_no =b.order_no  left join user_service c on a.buyer_id =c.uid 
-left join admin d on c.aid =d.id  
+left join t_order_mid b on a.order_no =b.order_no  left join user_service c on a.buyer_id =c.uid
+left join admin d on c.aid =d.id
 where a.delete_sign in(0,2,3)
 where a.delete_sign in(0,2,3)
-<if test="userName != null">
-and b.buyer_name like CONCAT('%', #{userName},'%') 
-</if>
-<if test="depId != null">
-and a.order_dep = #{depId}
-</if>
-<if test="addWechat != null">
-and c.add_wechat = #{addWechat}
-</if>
-<if test="renewal != null">
-and c.renewal = #{renewal}
-</if>
-<if test="startFollowTimes != null">
-and c.new_time  BETWEEN #{startFollowTimes} and #{endFollowTimes}
-</if>
-<if test="startSignTimes != null">
-and a.create_time BETWEEN #{startSignTimes} and #{endSignTimes}
-</if>
+  <if test="userName != null">
+  and b.buyer_name like CONCAT('%', #{userName},'%')
+  </if>
+  <if test="deps != null">
+  and a.order_dep in
+    <foreach close=")" collection="deps" item="depId" open="(" separator=",">
+      #{depId}
+    </foreach>
+  </if>
+  <if test="addWechat != null">
+  and c.add_wechat = #{addWechat}
+  </if>
+  <if test="renewal != null">
+  and c.renewal = #{renewal}
+  </if>
+  <if test="startFollowTimes != null">
+  and c.new_time  BETWEEN #{startFollowTimes} and #{endFollowTimes}
+  </if>
+  <if test="startSignTimes != null">
+  and a.create_time BETWEEN #{startSignTimes} and #{endSignTimes}
+  </if>
 order by c.new_time,a.create_time
 order by c.new_time,a.create_time
   <if test="page_sql != null">
   <if test="page_sql != null">
     		${page_sql}
     		${page_sql}
    </if>
    </if>
  </select>
  </select>
- 
+
  <select id="OrderUseServiceCount" resultType="java.lang.Integer">
  <select id="OrderUseServiceCount" resultType="java.lang.Integer">
   select count(*)
   select count(*)
 from t_order_new a
 from t_order_new a
-left join t_order_mid b on a.order_no =b.order_no  left join user_service c on a.buyer_id =c.uid 
-left join admin d on c.aid =d.id 
+left join t_order_mid b on a.order_no =b.order_no  left join user_service c on a.buyer_id =c.uid
+left join admin d on c.aid =d.id
 where a.delete_sign in(0,2,3)
 where a.delete_sign in(0,2,3)
-<if test="userName != null">
-and b.buyer_name like CONCAT('%', #{userName},'%') 
-</if>
-<if test="depId != null">
-and a.order_dep = #{depId}
-</if>
-<if test="addWechat != null">
-and c.add_wechat = #{addWechat}
-</if>
-<if test="renewal != null">
-and c.renewal = #{renewal}
-</if>
-<if test="startFollowTimes != null">
-and c.new_time  BETWEEN #{startFollowTimes} and #{endFollowTimes}
-</if>
-<if test="startSignTimes != null">
-and a.create_time BETWEEN #{startSignTimes} and #{endSignTimes}
-</if>
+    <if test="userName != null">
+    and b.buyer_name like CONCAT('%', #{userName},'%')
+    </if>
+   <if test="deps != null">
+     and a.order_dep in
+     <foreach close=")" collection="deps" item="depId" open="(" separator=",">
+       #{depId}
+     </foreach>
+   </if>
+    <if test="addWechat != null">
+    and c.add_wechat = #{addWechat}
+    </if>
+    <if test="renewal != null">
+    and c.renewal = #{renewal}
+    </if>
+    <if test="startFollowTimes != null">
+    and c.new_time  BETWEEN #{startFollowTimes} and #{endFollowTimes}
+    </if>
+    <if test="startSignTimes != null">
+    and a.create_time BETWEEN #{startSignTimes} and #{endSignTimes}
+    </if>
  </select>
  </select>
-</mapper>
+</mapper>

+ 7 - 1
src/main/java/com/goafanti/common/task/ReleaseUserTask.java

@@ -159,6 +159,13 @@ public class ReleaseUserTask {
 		}
 		}
 		LoggerUtils.debug(getClass(), "==============客户释放完成============");
 		LoggerUtils.debug(getClass(), "==============客户释放完成============");
 	}
 	}
+
+	/**
+	 * 处理外联
+	 * @param releaseTime
+	 * @param userList
+	 * @throws InterruptedException
+	 */
 	private void pushChannel(Date releaseTime, List<User> userList) throws InterruptedException {
 	private void pushChannel(Date releaseTime, List<User> userList) throws InterruptedException {
 		// 获取超过90天客户,判断是否回收过,未回收则回收,已回收则释放为公共客户
 		// 获取超过90天客户,判断是否回收过,未回收则回收,已回收则释放为公共客户
 		List<userDaysBo> userChannelList =null;
 		List<userDaysBo> userChannelList =null;
@@ -237,7 +244,6 @@ public class ReleaseUserTask {
 						u.getUid()));
 						u.getUid()));
 			}
 			}
 		}
 		}
-
 		if(!nl.isEmpty())addNoticeBatch(nl);
 		if(!nl.isEmpty())addNoticeBatch(nl);
 	}
 	}
 
 

+ 7 - 14
src/main/java/com/goafanti/customer/bo/InputAddCustomer.java

@@ -10,27 +10,21 @@ public class InputAddCustomer {
     @NotNull(message = "{"+ ErrorConstants.PARAM_EMPTY_ERROR+"}")
     @NotNull(message = "{"+ ErrorConstants.PARAM_EMPTY_ERROR+"}")
     @Param(name = "名称")
     @Param(name = "名称")
     private String name;
     private String name;
-    @NotNull(message = "{"+ ErrorConstants.PARAM_EMPTY_ERROR+"}")
-    @Param(name = "联系人")
+
     private String contacts;
     private String contacts;
-    @NotNull(message = "{"+ ErrorConstants.PARAM_EMPTY_ERROR+"}")
-    @Param(name = "联系人电话")
+
     private String contactMobile;
     private String contactMobile;
 
 
     private Integer type;
     private Integer type;
-    @NotNull(message = "{"+ ErrorConstants.PARAM_EMPTY_ERROR+"}")
-    @Param(name = "省")
+
     private Integer province;
     private Integer province;
-    @NotNull(message = "{"+ ErrorConstants.PARAM_EMPTY_ERROR+"}")
-    @Param(name = "市")
+
     private Integer city;
     private Integer city;
-    @NotNull(message = "{"+ ErrorConstants.PARAM_EMPTY_ERROR+"}")
-    @Param(name = "区")
+
     private Integer area;
     private Integer area;
     private Integer source;
     private Integer source;
     private String societyTag;
     private String societyTag;
-    @NotNull(message = "{"+ ErrorConstants.PARAM_EMPTY_ERROR+"}")
-    @Param(name = "职位")
+
     private String position;
     private String position;
     private Integer industry;
     private Integer industry;
     private String businessScope;
     private String businessScope;
@@ -40,8 +34,7 @@ public class InputAddCustomer {
     /**
     /**
      * 简介
      * 简介
      */
      */
-    @NotNull(message = "{"+ ErrorConstants.PARAM_EMPTY_ERROR+"}")
-    @Param(name = "简介")
+
     private String introduction;
     private String introduction;
 
 
     /**
     /**

+ 9 - 0
src/main/java/com/goafanti/customer/bo/LockingReleaseBo.java

@@ -14,6 +14,15 @@ public class LockingReleaseBo {
 	private String userName;
 	private String userName;
 	private Integer mySign;
 	private Integer mySign;
 	private Integer newChannel;
 	private Integer newChannel;
+	private Integer channelType;
+
+	public Integer getChannelType() {
+		return channelType;
+	}
+
+	public void setChannelType(Integer channelType) {
+		this.channelType = channelType;
+	}
 
 
 	public Integer getNewChannel() {
 	public Integer getNewChannel() {
 		return newChannel;
 		return newChannel;

+ 15 - 2
src/main/java/com/goafanti/customer/service/impl/CustomerServiceImpl.java

@@ -1865,7 +1865,14 @@ public class CustomerServiceImpl extends BaseMybatisDao<UserMapper> implements C
 
 
 	@Override
 	@Override
 	public List<LockingReleaseBo> selectWaitReleaseCustomer(String uid) {
 	public List<LockingReleaseBo> selectWaitReleaseCustomer(String uid) {
-		return userLockReleaseMapper.selectWaitReleaseCustomer(uid);
+		List list = new ArrayList();
+		List<LockingReleaseBo> lockingReleaseBos = userLockReleaseMapper.selectWaitReleaseCustomer(uid);
+		for (LockingReleaseBo bo : lockingReleaseBos) {
+			if (bo.getChannelType()==null||bo.getChannelType()!=1){
+				list.add(bo);
+			}
+		}
+		return list;
 	}
 	}
 
 
 	/**
 	/**
@@ -2488,7 +2495,13 @@ public class CustomerServiceImpl extends BaseMybatisDao<UserMapper> implements C
 		if (in.getShareType()==null || in.getShareType()!=1){
 		if (in.getShareType()==null || in.getShareType()!=1){
 			List<OutChannelListBo> list = (List<OutChannelListBo>) p.getList();
 			List<OutChannelListBo> list = (List<OutChannelListBo>) p.getList();
 			for (OutChannelListBo out : list) {
 			for (OutChannelListBo out : list) {
-				out.setRemainingDays(getRemainingDays(out));
+				if(out.getType()!=null&&out.getType()==1){
+					out.setaName(null);
+					out.setCreateTime(null);
+					out.setLastFollowTime(null);
+				}else {
+					out.setRemainingDays(getRemainingDays(out));
+				}
 			}
 			}
 		}
 		}
 		return p;
 		return p;

+ 16 - 10
src/main/java/com/goafanti/order/bo/InputProjectStatistics.java

@@ -4,8 +4,8 @@ public class InputProjectStatistics {
 
 
 	private String startDate;
 	private String startDate;
 	private String endDate;
 	private String endDate;
-	private String depId;
-	private String thchDepId;
+	private String deps;
+	private String thchDeps;
 	private String projectStatus;
 	private String projectStatus;
 	private Integer projectType;
 	private Integer projectType;
 	private String orderNo;
 	private String orderNo;
@@ -17,6 +17,7 @@ public class InputProjectStatistics {
 	private Integer pageNo;
 	private Integer pageNo;
 	private Integer pageSize;
 	private Integer pageSize;
 
 
+	/** 双软=2,软著=3,专利=4,高新=1,其他=0 */
 	private Integer status;
 	private Integer status;
 	private String depName;
 	private String depName;
 	private String thchDepName;
 	private String thchDepName;
@@ -69,18 +70,23 @@ public class InputProjectStatistics {
 	public void setEndDate(String endDate) {
 	public void setEndDate(String endDate) {
 		this.endDate = endDate;
 		this.endDate = endDate;
 	}
 	}
-	public String getDepId() {
-		return depId;
+
+	public String getDeps() {
+		return deps;
 	}
 	}
-	public void setDepId(String depId) {
-		this.depId = depId;
+
+	public void setDeps(String deps) {
+		this.deps = deps;
 	}
 	}
-	public String getThchDepId() {
-		return thchDepId;
+
+	public String getThchDeps() {
+		return thchDeps;
 	}
 	}
-	public void setThchDepId(String thchDepId) {
-		this.thchDepId = thchDepId;
+
+	public void setThchDeps(String thchDeps) {
+		this.thchDeps = thchDeps;
 	}
 	}
+
 	public String getProjectStatus() {
 	public String getProjectStatus() {
 		return projectStatus;
 		return projectStatus;
 	}
 	}

+ 23 - 23
src/main/java/com/goafanti/order/bo/InputProvincialStatistics.java

@@ -3,37 +3,37 @@ package com.goafanti.order.bo;
 public class InputProvincialStatistics {
 public class InputProvincialStatistics {
 
 
 	private String startDate;
 	private String startDate;
-	
+
 	private String endDate;
 	private String endDate;
-	
+
 	private Integer province;
 	private Integer province;
-	
-	private String thchDepId;
-	
+
+	private String thchDeps;
+
 	private String projectStatus;
 	private String projectStatus;
-	
+
 	private Integer projectType;
 	private Integer projectType;
-	
+
 	private String projectId;
 	private String projectId;
-	
+
 	private Integer pageSize;
 	private Integer pageSize;
-	
+
 	private Integer pageNo;
 	private Integer pageNo;
-	
+
 	private String provinceName;
 	private String provinceName;
 
 
 	private String thchDepName;
 	private String thchDepName;
-	
+
 	private String projectStatusName;
 	private String projectStatusName;
-	
+
 	private String projectTypeName;
 	private String projectTypeName;
-	
+
 	private String projectName;
 	private String projectName;
-	
+
 	private Integer status;
 	private Integer status;
-	
-	
-	
+
+
+
 
 
 	public String getThchDepName() {
 	public String getThchDepName() {
 		return thchDepName;
 		return thchDepName;
@@ -75,12 +75,12 @@ public class InputProvincialStatistics {
 		this.province = province;
 		this.province = province;
 	}
 	}
 
 
-	public String getThchDepId() {
-		return thchDepId;
+	public String getThchDeps() {
+		return thchDeps;
 	}
 	}
 
 
-	public void setThchDepId(String thchDepId) {
-		this.thchDepId = thchDepId;
+	public void setThchDeps(String thchDeps) {
+		this.thchDeps = thchDeps;
 	}
 	}
 
 
 	public String getProjectStatus() {
 	public String getProjectStatus() {
@@ -154,6 +154,6 @@ public class InputProvincialStatistics {
 	public void setProvinceName(String provinceName) {
 	public void setProvinceName(String provinceName) {
 		this.provinceName = provinceName;
 		this.provinceName = provinceName;
 	}
 	}
-	
-	
+
+
 }
 }

+ 40 - 0
src/main/java/com/goafanti/order/bo/OutProjectStatistics.java

@@ -1,5 +1,7 @@
 package com.goafanti.order.bo;
 package com.goafanti.order.bo;
 
 
+import com.goafanti.common.utils.excel.Excel;
+
 import java.math.BigDecimal;
 import java.math.BigDecimal;
 
 
 
 
@@ -59,6 +61,44 @@ public class OutProjectStatistics {
 
 
 	private String orderRemarks;
 	private String orderRemarks;
 
 
+	//会员
+	private String serviceLife;
+	private String serviceYear;
+	private Integer yearSum;
+	private String contractTerm;
+
+	public String getServiceLife() {
+		return serviceLife;
+	}
+
+	public void setServiceLife(String serviceLife) {
+		this.serviceLife = serviceLife;
+	}
+
+	public String getServiceYear() {
+		return serviceYear;
+	}
+
+	public void setServiceYear(String serviceYear) {
+		this.serviceYear = serviceYear;
+	}
+
+	public Integer getYearSum() {
+		return yearSum;
+	}
+
+	public void setYearSum(Integer yearSum) {
+		this.yearSum = yearSum;
+	}
+
+	public String getContractTerm() {
+		return contractTerm;
+	}
+
+	public void setContractTerm(String contractTerm) {
+		this.contractTerm = contractTerm;
+	}
+
 	public String getOrderRemarks() {
 	public String getOrderRemarks() {
 		return orderRemarks;
 		return orderRemarks;
 	}
 	}

+ 9 - 6
src/main/java/com/goafanti/order/bo/inuptTaskListBo.java

@@ -7,7 +7,7 @@ public class inuptTaskListBo {
 	private Integer taskStatus;
 	private Integer taskStatus;
 	private String adminName;
 	private String adminName;
 	private Integer specially;
 	private Integer specially;
-	private String depId;
+	private String deps;
 	private  String contractNo;
 	private  String contractNo;
 	private Integer projectStatus;
 	private Integer projectStatus;
 	private  Integer approval;
 	private  Integer approval;
@@ -63,12 +63,15 @@ public class inuptTaskListBo {
 	public void setSpecially(Integer specially) {
 	public void setSpecially(Integer specially) {
 		this.specially = specially;
 		this.specially = specially;
 	}
 	}
-	public String getDepId() {
-		return depId;
+
+	public String getDeps() {
+		return deps;
 	}
 	}
-	public void setDepId(String depId) {
-		this.depId = depId;
+
+	public void setDeps(String deps) {
+		this.deps = deps;
 	}
 	}
+
 	public String getContractNo() {
 	public String getContractNo() {
 		return contractNo;
 		return contractNo;
 	}
 	}
@@ -123,5 +126,5 @@ public class inuptTaskListBo {
 	public void setPageSize(Integer pageSize) {
 	public void setPageSize(Integer pageSize) {
 		this.pageSize = pageSize;
 		this.pageSize = pageSize;
 	}
 	}
-	
+
 }
 }

+ 12 - 0
src/main/java/com/goafanti/order/bo/outStatistics/OutProjectStatisticsHighTech.java

@@ -47,6 +47,8 @@ public class OutProjectStatisticsHighTech extends OutProjectStatistics {
     private String  legalPersonTel;
     private String  legalPersonTel;
     @Excel(name = "证书编号")
     @Excel(name = "证书编号")
     private String  certificateNumber;
     private String  certificateNumber;
+    @Excel(name = "申报年份")
+    private String serviceYear;
     @Excel(name = "申请批次")
     @Excel(name = "申请批次")
     private String  declarationBatch;
     private String  declarationBatch;
     @Excel(name = "项目金额")
     @Excel(name = "项目金额")
@@ -75,6 +77,16 @@ public class OutProjectStatisticsHighTech extends OutProjectStatistics {
 
 
     private Integer	certificatesCount;
     private Integer	certificatesCount;
 
 
+    @Override
+    public String getServiceYear() {
+        return serviceYear;
+    }
+
+    @Override
+    public void setServiceYear(String serviceYear) {
+        this.serviceYear = serviceYear;
+    }
+
     public String getOrderRemarks() {
     public String getOrderRemarks() {
         return orderRemarks;
         return orderRemarks;
     }
     }

+ 336 - 0
src/main/java/com/goafanti/order/bo/outStatistics/OutProjectStatisticsMember.java

@@ -0,0 +1,336 @@
+package com.goafanti.order.bo.outStatistics;
+
+import com.goafanti.common.utils.excel.Excel;
+import com.goafanti.order.bo.OutProjectStatistics;
+
+import java.math.BigDecimal;
+
+public class OutProjectStatisticsMember extends OutProjectStatistics {
+    private Integer id;
+    @Excel(name = "派单时间")
+    private String distributionTime;
+    @Excel(name = "派单省份")
+    private String province;
+    @Excel(name = "订单部门")
+    private String depName;
+    @Excel(name = "营销员")
+    private String salesmanName;
+    @Excel(name = "合同编号")
+    private String contractNo;
+    @Excel(name = "订单编号")
+    private String orderNo;
+    @Excel(name = "客户名称")
+    private String  userName;
+    @Excel(name = "项目类型")
+    private String cname;
+    @Excel(name = "项目名称")
+    private String  pname;
+    @Excel(name = "数量")
+    private Integer  commodityQuantity;
+    @Excel(name = "负责部门")
+    private String techDepName;
+    @Excel(name = "咨询师/咨询师经理")
+    private String techName;
+    @Excel(name = "项目状态" ,enumsName = "com.goafanti.order.enums.NewProjectStatus")
+    private Integer projectStatus;
+    @Excel(name = "项目金额",scale = 6)
+    private BigDecimal  commodityPrice;
+    @Excel(name = "特别说明")
+    private String	specialComment;
+    @Excel(name = "项目说明")
+    private String	taskComment;
+    @Excel(name = "订单说明")
+    private String orderRemarks;
+
+    private Integer  setUpStatus;
+    private String setUpTime;
+    private Integer  spotCheckStatus;
+    private String  contactMobile;
+    private String  legalPersonTel;
+    private String  certificateNumber;
+    private String  declarationBatch;
+    private String	licenceTime;
+    private Integer	ifMaterial;
+    private Integer	urgentDay;
+    private BigDecimal	costAmount;
+    private BigDecimal	profit;
+    private Integer  highTechstatus;
+    private Integer	rejectCount;
+    private String	patentNo;
+    private String	patentName;
+    private String	acceptTime;
+
+
+
+    private Integer	certificatesCount;
+    @Excel(name = "服务年限")
+    private String serviceLife;
+    @Excel(name = "本次年份")
+    private String serviceYear;
+    @Excel(name = "服务年数")
+    private Integer yearSum;
+    @Excel(name = "合同期")
+    private String contractTerm;
+
+    @Override
+    public String getServiceLife() {
+        return serviceLife;
+    }
+
+    @Override
+    public void setServiceLife(String serviceLife) {
+        this.serviceLife = serviceLife;
+    }
+
+    public String getServiceYear() {
+        return serviceYear;
+    }
+
+    public void setServiceYear(String serviceYear) {
+        this.serviceYear = serviceYear;
+    }
+
+    public Integer getYearSum() {
+        return yearSum;
+    }
+
+    public void setYearSum(Integer yearSum) {
+        this.yearSum = yearSum;
+    }
+
+    @Override
+    public String getContractTerm() {
+        return contractTerm;
+    }
+
+    @Override
+    public void setContractTerm(String contractTerm) {
+        this.contractTerm = contractTerm;
+    }
+
+    public String getOrderRemarks() {
+        return orderRemarks;
+    }
+
+    public void setOrderRemarks(String orderRemarks) {
+        this.orderRemarks = orderRemarks;
+    }
+
+    public Integer getSetUpStatus() {
+        return setUpStatus;
+    }
+    public void setSetUpStatus(Integer setUpStatus) {
+        this.setUpStatus = setUpStatus;
+    }
+    public String getSetUpTime() {
+        return setUpTime;
+    }
+    public void setSetUpTime(String setUpTime) {
+        this.setUpTime = setUpTime;
+    }
+    public Integer getSpotCheckStatus() {
+        return spotCheckStatus;
+    }
+    public void setSpotCheckStatus(Integer spotCheckStatus) {
+        this.spotCheckStatus = spotCheckStatus;
+    }
+    public String getContactMobile() {
+        return contactMobile;
+    }
+    public void setContactMobile(String contactMobile) {
+        this.contactMobile = contactMobile;
+    }
+    public String getLegalPersonTel() {
+        return legalPersonTel;
+    }
+    public void setLegalPersonTel(String legalPersonTel) {
+        this.legalPersonTel = legalPersonTel;
+    }
+    public String getCertificateNumber() {
+        return certificateNumber;
+    }
+    public void setCertificateNumber(String certificateNumber) {
+        this.certificateNumber = certificateNumber;
+    }
+    public String getDeclarationBatch() {
+        return declarationBatch;
+    }
+    public void setDeclarationBatch(String declarationBatch) {
+        this.declarationBatch = declarationBatch;
+    }
+    public Integer getCommodityQuantity() {
+        return commodityQuantity;
+    }
+    public void setCommodityQuantity(Integer commodityQuantity) {
+        this.commodityQuantity = commodityQuantity;
+    }
+    public BigDecimal getCommodityPrice() {
+        return commodityPrice;
+    }
+    public void setCommodityPrice(BigDecimal commodityPrice) {
+        this.commodityPrice = commodityPrice;
+    }
+
+
+
+    public String getDistributionTime() {
+        return distributionTime;
+    }
+    public void setDistributionTime(String distributionTime) {
+        this.distributionTime = distributionTime;
+    }
+    public String getProvince() {
+        return province;
+    }
+    public void setProvince(String province) {
+        this.province = province;
+    }
+    public String getDepName() {
+        return depName;
+    }
+    public void setDepName(String depName) {
+        this.depName = depName;
+    }
+    public String getSalesmanName() {
+        return salesmanName;
+    }
+    public void setSalesmanName(String salesmanName) {
+        this.salesmanName = salesmanName;
+    }
+    public String getContractNo() {
+        return contractNo;
+    }
+    public void setContractNo(String contractNo) {
+        this.contractNo = contractNo;
+    }
+    public String getOrderNo() {
+        return orderNo;
+    }
+    public void setOrderNo(String orderNo) {
+        this.orderNo = orderNo;
+    }
+    public String getUserName() {
+        return userName;
+    }
+    public void setUserName(String userName) {
+        this.userName = userName;
+    }
+    public String getCname() {
+        return cname;
+    }
+    public void setCname(String cname) {
+        this.cname = cname;
+    }
+    public String getPname() {
+        return pname;
+    }
+    public void setPname(String pname) {
+        this.pname = pname;
+    }
+    public String getTechName() {
+        return techName;
+    }
+    public void setTechName(String techName) {
+        this.techName = techName;
+    }
+    public String getTechDepName() {
+        return techDepName;
+    }
+    public void setTechDepName(String techDepName) {
+        this.techDepName = techDepName;
+    }
+    public Integer getProjectStatus() {
+        return projectStatus;
+    }
+    public void setProjectStatus(Integer projectStatus) {
+        this.projectStatus = projectStatus;
+    }
+    public String getLicenceTime() {
+        return licenceTime;
+    }
+    public void setLicenceTime(String licenceTime) {
+        this.licenceTime = licenceTime;
+    }
+    public String getTaskComment() {
+        return taskComment;
+    }
+    public void setTaskComment(String taskComment) {
+        this.taskComment = taskComment;
+    }
+    public Integer getCertificatesCount() {
+        return certificatesCount;
+    }
+    public void setCertificatesCount(Integer certificatesCount) {
+        this.certificatesCount = certificatesCount;
+    }
+    public Integer getUrgentDay() {
+        return urgentDay;
+    }
+    public void setUrgentDay(Integer urgentDay) {
+        this.urgentDay = urgentDay;
+    }
+    public Integer getIfMaterial() {
+        return ifMaterial;
+    }
+    public void setIfMaterial(Integer ifMaterial) {
+        this.ifMaterial = ifMaterial;
+    }
+    public BigDecimal getCostAmount() {
+        return costAmount;
+    }
+    public void setCostAmount(BigDecimal costAmount) {
+        this.costAmount = costAmount;
+    }
+    public BigDecimal getProfit() {
+        if (profit==null&&commodityPrice!=null&&costAmount!=null) {
+            return  commodityPrice.subtract(costAmount);
+        }
+        return profit;
+    }
+    public void setProfit(BigDecimal profit) {
+        this.profit = profit;
+    }
+    public Integer getRejectCount() {
+        return rejectCount;
+    }
+    public void setRejectCount(Integer rejectCount) {
+        this.rejectCount = rejectCount;
+    }
+    public String getPatentName() {
+        return patentName;
+    }
+    public void setPatentName(String patentName) {
+        this.patentName = patentName;
+    }
+    public String getAcceptTime() {
+        return acceptTime;
+    }
+    public void setAcceptTime(String acceptTime) {
+        this.acceptTime = acceptTime;
+    }
+    public Integer getHighTechstatus() {
+        return highTechstatus;
+    }
+    public void setHighTechstatus(Integer highTechstatus) {
+        this.highTechstatus = highTechstatus;
+    }
+    public Integer getId() {
+        return id;
+    }
+    public void setId(Integer id) {
+        this.id = id;
+    }
+    public String getSpecialComment() {
+        return specialComment;
+    }
+    public void setSpecialComment(String specialComment) {
+        this.specialComment = specialComment;
+    }
+    public String getPatentNo() {
+        return patentNo;
+    }
+    public void setPatentNo(String patentNo) {
+        this.patentNo = patentNo;
+    }
+
+}

+ 2 - 1
src/main/java/com/goafanti/order/controller/StatisticsApiController.java

@@ -7,6 +7,7 @@ import java.util.List;
 
 
 import javax.servlet.http.HttpServletResponse;
 import javax.servlet.http.HttpServletResponse;
 
 
+import com.alibaba.fastjson.JSONObject;
 import com.goafanti.common.utils.excel.NewExcelUtil;
 import com.goafanti.common.utils.excel.NewExcelUtil;
 import com.goafanti.order.bo.*;
 import com.goafanti.order.bo.*;
 import com.goafanti.order.service.OrderStatisticsService;
 import com.goafanti.order.service.OrderStatisticsService;
@@ -75,7 +76,6 @@ public class StatisticsApiController extends CertifyApiController {
 	 */
 	 */
 	@RequestMapping(value = "/exporProvincialList", method = RequestMethod.GET)
 	@RequestMapping(value = "/exporProvincialList", method = RequestMethod.GET)
 	public Result exporProvincialList(InputProvincialStatistics ib){
 	public Result exporProvincialList(InputProvincialStatistics ib){
-		Result res=new Result();
 		return projectStatisticsService.exporProvincialList(ib);
 		return projectStatisticsService.exporProvincialList(ib);
 		}
 		}
 
 
@@ -164,4 +164,5 @@ public class StatisticsApiController extends CertifyApiController {
 		res.data(userStaticticsService.signStatisticsOrderList(in));
 		res.data(userStaticticsService.signStatisticsOrderList(in));
 		return res;
 		return res;
 	}
 	}
+
 }
 }

+ 8 - 2
src/main/java/com/goafanti/order/enums/ProjectType.java

@@ -19,9 +19,15 @@ public enum ProjectType {
 	SJ(3,"审计"),
 	SJ(3,"审计"),
 	/** 已撤项 **/
 	/** 已撤项 **/
 	SR(4,"双软"),
 	SR(4,"双软"),
+	/** 已撤项 **/
+	GX(5,"高新"),
+	/** 已撤项 **/
+	SB(6,"商标"),
+	/** 已撤项 **/
+	HY(7,"会员"),
 	/** 无效 **/
 	/** 无效 **/
 	INVALID(10, "INVALID");
 	INVALID(10, "INVALID");
-	
+
 	private ProjectType(Integer code, String desc) {
 	private ProjectType(Integer code, String desc) {
 		this.code = code;
 		this.code = code;
 		this.desc = desc;
 		this.desc = desc;
@@ -37,7 +43,7 @@ public enum ProjectType {
         }
         }
         return  null;
         return  null;
     }
     }
-	
+
 	static {
 	static {
 		for (ProjectType value : ProjectType.values()) {
 		for (ProjectType value : ProjectType.values()) {
 			status.put(value.getCode(), value);
 			status.put(value.getCode(), value);

+ 3 - 1
src/main/java/com/goafanti/order/service/impl/OrderProjectServiceImpl.java

@@ -303,6 +303,8 @@ public class OrderProjectServiceImpl extends BaseMybatisDao<TOrderTaskMapper> im
 		return processStatus;
 		return processStatus;
 	}
 	}
 
 
+
+
 	private void insetLog(Integer taskId, String taskReceiverId) {
 	private void insetLog(Integer taskId, String taskReceiverId) {
 		TTaskLog tl=new TTaskLog();
 		TTaskLog tl=new TTaskLog();
 		tl.setCreateTime(new Date());
 		tl.setCreateTime(new Date());
@@ -321,7 +323,7 @@ public class OrderProjectServiceImpl extends BaseMybatisDao<TOrderTaskMapper> im
 		params.put("outsource", ib.getOutsource()==null?0:ib.getOutsource());
 		params.put("outsource", ib.getOutsource()==null?0:ib.getOutsource());
 		if (null!=ib.getSpecially()) params.put("specially", ib.getSpecially());
 		if (null!=ib.getSpecially()) params.put("specially", ib.getSpecially());
 		if (StringUtils.isNotBlank(ib.getName())) params.put("name", ib.getName());
 		if (StringUtils.isNotBlank(ib.getName())) params.put("name", ib.getName());
-		if (StringUtils.isNotBlank(ib.getDepId())) params.put("depId", ib.getDepId());
+		if (StringUtils.isNotBlank(ib.getDeps())) params.put("deps", departmentService.parseArray(ib.getDeps()));
 		if (StringUtils.isNotBlank(ib.getOrderNo())) params.put("orderNo", ib.getOrderNo());
 		if (StringUtils.isNotBlank(ib.getOrderNo())) params.put("orderNo", ib.getOrderNo());
 		if (StringUtils.isNotBlank(ib.getContractNo())) params.put("contractNo", ib.getContractNo());
 		if (StringUtils.isNotBlank(ib.getContractNo())) params.put("contractNo", ib.getContractNo());
 		if (ib.getProjectStatus() !=null ) params.put("projectStatus", ib.getProjectStatus());
 		if (ib.getProjectStatus() !=null ) params.put("projectStatus", ib.getProjectStatus());

+ 36 - 8
src/main/java/com/goafanti/order/service/impl/ProjectStatisticsServiceImpl.java

@@ -10,10 +10,16 @@ import java.util.*;
 import javax.servlet.http.HttpServletResponse;
 import javax.servlet.http.HttpServletResponse;
 import javax.servlet.http.HttpServletResponseWrapper;
 import javax.servlet.http.HttpServletResponseWrapper;
 
 
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.goafanti.admin.service.DepartmentService;
 import com.goafanti.common.bo.Result;
 import com.goafanti.common.bo.Result;
 import com.goafanti.common.utils.excel.NewExcelUtil;
 import com.goafanti.common.utils.excel.NewExcelUtil;
 import com.goafanti.order.bo.*;
 import com.goafanti.order.bo.*;
 import com.goafanti.order.bo.outStatistics.*;
 import com.goafanti.order.bo.outStatistics.*;
+import com.google.gson.JsonArray;
+import com.google.gson.JsonObject;
 import groovy.util.logging.Log4j;
 import groovy.util.logging.Log4j;
 import org.apache.commons.collections4.map.HashedMap;
 import org.apache.commons.collections4.map.HashedMap;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.StringUtils;
@@ -23,6 +29,7 @@ import org.apache.poi.xssf.usermodel.XSSFRow;
 import org.apache.poi.xssf.usermodel.XSSFSheet;
 import org.apache.poi.xssf.usermodel.XSSFSheet;
 import org.apache.poi.xssf.usermodel.XSSFWorkbook;
 import org.apache.poi.xssf.usermodel.XSSFWorkbook;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 
 
@@ -41,6 +48,8 @@ public class ProjectStatisticsServiceImpl extends BaseMybatisDao<TOrderTaskMappe
 
 
 	@Value("${upload.path}")
 	@Value("${upload.path}")
 	private String downloadPath;
 	private String downloadPath;
+	@Autowired
+	private DepartmentService departmentService;
 
 
 
 
 	@SuppressWarnings("unchecked")
 	@SuppressWarnings("unchecked")
@@ -50,8 +59,8 @@ public class ProjectStatisticsServiceImpl extends BaseMybatisDao<TOrderTaskMappe
 		Integer pageNo=1,pageSize=10;
 		Integer pageNo=1,pageSize=10;
 		if(ps.getStartDate()!=null)params.put("startDate", ps.getStartDate());
 		if(ps.getStartDate()!=null)params.put("startDate", ps.getStartDate());
 		if(ps.getEndDate()!=null)params.put("endDate", ps.getEndDate()+" 23:59:59");
 		if(ps.getEndDate()!=null)params.put("endDate", ps.getEndDate()+" 23:59:59");
-		if(ps.getDepId()!=null)params.put("depId", ps.getDepId());
-		if(ps.getThchDepId()!=null)params.put("thchDepId", ps.getThchDepId());
+		if(ps.getDeps()!=null)params.put("deps", departmentService.parseArray(ps.getDeps()));
+		if(ps.getThchDeps()!=null)params.put("thchDeps", departmentService.parseArray(ps.getThchDeps()));
 		if(ps.getProjectStatus()!=null)params.put("projectStatus", ps.getProjectStatus());
 		if(ps.getProjectStatus()!=null)params.put("projectStatus", ps.getProjectStatus());
 		if(ps.getProjectType()!=null)params.put("projectType", ps.getProjectType());
 		if(ps.getProjectType()!=null)params.put("projectType", ps.getProjectType());
 		if(ps.getOrderNo()!=null)params.put("orderNo", ps.getOrderNo());
 		if(ps.getOrderNo()!=null)params.put("orderNo", ps.getOrderNo());
@@ -78,8 +87,6 @@ public class ProjectStatisticsServiceImpl extends BaseMybatisDao<TOrderTaskMappe
 			params.put("amountEnd", e);
 			params.put("amountEnd", e);
 		}
 		}
 		params.put("status",ps.getStatus()==null?0:ps.getStatus());
 		params.put("status",ps.getStatus()==null?0:ps.getStatus());
-
-
 		if(ps.getProvince()!=null)	params.put("province", ps.getProvince());
 		if(ps.getProvince()!=null)	params.put("province", ps.getProvince());
 		if(ps.getProjectId()!=null) params.put("projectId", ps.getProjectId());
 		if(ps.getProjectId()!=null) params.put("projectId", ps.getProjectId());
 		if(ps.getScreen()!=null) params.put("screen", ps.getScreen());
 		if(ps.getScreen()!=null) params.put("screen", ps.getScreen());
@@ -151,11 +158,32 @@ public class ProjectStatisticsServiceImpl extends BaseMybatisDao<TOrderTaskMappe
 				}
 				}
 				NewExcelUtil<OutProjectStatisticsPatent> excelUtil=new NewExcelUtil<>(OutProjectStatisticsPatent.class);
 				NewExcelUtil<OutProjectStatisticsPatent> excelUtil=new NewExcelUtil<>(OutProjectStatisticsPatent.class);
 				res=excelUtil.exportExcel(tl,"项目汇总表(专利)",downloadPath);
 				res=excelUtil.exportExcel(tl,"项目汇总表(专利)",downloadPath);
+			}else if (ib.getStatus()==5){//会员
+				List<OutProjectStatisticsMember> tl=new ArrayList<>();
+				for (OutProjectStatistics o : list) {
+					OutProjectStatisticsMember member = new OutProjectStatisticsMember();
+					BeanUtils.copyProperties(o,member);
+					if (member.getServiceLife()!=null){
+						JSONArray jsonArray = JSONArray.parseArray(member.getServiceLife());
+						Object[] object=jsonArray.stream().toArray();
+						member.setServiceLife(StringUtils.join(object,","));
+					}
+					if (member.getContractTerm()!=null){
+						JSONArray jsonArray = JSONArray.parseArray(member.getContractTerm());
+						Object[] object=jsonArray.stream().toArray();
+						member.setContractTerm(StringUtils.join(object,"~"));
+					}
+					tl.add(member);
+				}
+				NewExcelUtil<OutProjectStatisticsMember> excelUtil=new NewExcelUtil<>(OutProjectStatisticsMember.class);
+				res=excelUtil.exportExcel(tl,"项目汇总表(会员)",downloadPath);
 			}
 			}
 			return  res;
 			return  res;
 	}
 	}
 
 
 
 
+
+
 	/**
 	/**
 	 * 处理搜索条件
 	 * 处理搜索条件
 	 * @param ib
 	 * @param ib
@@ -187,8 +215,8 @@ public class ProjectStatisticsServiceImpl extends BaseMybatisDao<TOrderTaskMappe
 			str=StringUtils.join(str,i++,"-筛选分类:",screenName,"   ");
 			str=StringUtils.join(str,i++,"-筛选分类:",screenName,"   ");
 		}
 		}
 		if(ib.getProvinceName()!=null)str=StringUtils.join(str,i++,"-省份:",ib.getProvinceName(),"   ");
 		if(ib.getProvinceName()!=null)str=StringUtils.join(str,i++,"-省份:",ib.getProvinceName(),"   ");
-		if(ib.getDepId()!=null)str=StringUtils.join(str,i++,"-订单部门:",ib.getDepName(),"   ");
-		if(ib.getThchDepId()!=null)str=StringUtils.join(str,i++,"-责任部门:",ib.getThchDepName(),"   ");
+		if(ib.getDeps()!=null)str=StringUtils.join(str,i++,"-订单部门:",ib.getDepName(),"   ");
+		if(ib.getThchDeps()!=null)str=StringUtils.join(str,i++,"-责任部门:",ib.getThchDepName(),"   ");
 		if(ib.getProjectStatus()!=null)str=StringUtils.join(str,i++,"-项目别类:",ib.getProjectStatusName(),"   ");
 		if(ib.getProjectStatus()!=null)str=StringUtils.join(str,i++,"-项目别类:",ib.getProjectStatusName(),"   ");
 		if(ib.getProjectType()!=null)str=StringUtils.join(str,i++,"-项目分类:",ib.getProjectTypeName(),"   ");
 		if(ib.getProjectType()!=null)str=StringUtils.join(str,i++,"-项目分类:",ib.getProjectTypeName(),"   ");
 		if(ib.getOrderNo()!=null)str=StringUtils.join(str,i++,"-订单编号:",ib.getOrderNo(),"   ");
 		if(ib.getOrderNo()!=null)str=StringUtils.join(str,i++,"-订单编号:",ib.getOrderNo(),"   ");
@@ -234,7 +262,7 @@ public class ProjectStatisticsServiceImpl extends BaseMybatisDao<TOrderTaskMappe
 		Integer pageNo=1,pageSize=10;
 		Integer pageNo=1,pageSize=10;
 		if(is.getStartDate()!=null)params.put("startDate", is.getStartDate());
 		if(is.getStartDate()!=null)params.put("startDate", is.getStartDate());
 		if(is.getEndDate()!=null)params.put("endDate", is.getEndDate()+" 23:59:59");
 		if(is.getEndDate()!=null)params.put("endDate", is.getEndDate()+" 23:59:59");
-		if(is.getThchDepId()!=null)params.put("thchDepId", is.getThchDepId());
+		if(is.getThchDeps()!=null)params.put("thchDeps", departmentService.parseArray(is.getThchDeps()));
 		if(is.getProjectStatus()!=null)params.put("projectStatus", is.getProjectStatus());
 		if(is.getProjectStatus()!=null)params.put("projectStatus", is.getProjectStatus());
 		if(is.getProjectType()!=null)params.put("projectType", is.getProjectType());
 		if(is.getProjectType()!=null)params.put("projectType", is.getProjectType());
 		if(is.getProvince()!=null)params.put("province", is.getProvince());
 		if(is.getProvince()!=null)params.put("province", is.getProvince());
@@ -372,7 +400,7 @@ public class ProjectStatisticsServiceImpl extends BaseMybatisDao<TOrderTaskMappe
 		if(ib.getStartDate()!=null) str=StringUtils.join(str,i++,"-开始时间:",ib.getStartDate(),"   ");
 		if(ib.getStartDate()!=null) str=StringUtils.join(str,i++,"-开始时间:",ib.getStartDate(),"   ");
 		if(ib.getEndDate()!=null)str=StringUtils.join(str,i++,"-结束时间:",ib.getEndDate(),"   ");
 		if(ib.getEndDate()!=null)str=StringUtils.join(str,i++,"-结束时间:",ib.getEndDate(),"   ");
 		if(ib.getProvince()!=null)str=StringUtils.join(str,i++,"-省份:",ib.getProvinceName(),"   ");
 		if(ib.getProvince()!=null)str=StringUtils.join(str,i++,"-省份:",ib.getProvinceName(),"   ");
-		if(ib.getThchDepId()!=null)str=StringUtils.join(str,i++,"-责任部门:",ib.getThchDepName(),"   ");
+		if(ib.getThchDeps()!=null)str=StringUtils.join(str,i++,"-责任部门:",ib.getThchDepName(),"   ");
 		if(ib.getProjectStatus()!=null)str=StringUtils.join(str,i++,"-项目别类:",ib.getProjectStatusName(),"   ");
 		if(ib.getProjectStatus()!=null)str=StringUtils.join(str,i++,"-项目别类:",ib.getProjectStatusName(),"   ");
 		if(ib.getProjectType()!=null)str=StringUtils.join(str,i++,"-项目分类:",ib.getProjectTypeName(),"   ");
 		if(ib.getProjectType()!=null)str=StringUtils.join(str,i++,"-项目分类:",ib.getProjectTypeName(),"   ");
 		if(ib.getProjectId()!=null)str=StringUtils.join(str,i++,"-项目名称:",ib.getProjectName(),"   ");
 		if(ib.getProjectId()!=null)str=StringUtils.join(str,i++,"-项目名称:",ib.getProjectName(),"   ");

+ 11 - 8
src/main/java/com/goafanti/user/bo/InputListOrderUserService.java

@@ -4,7 +4,7 @@ public class InputListOrderUserService {
 //	a)客户名称/关键字:可根据客户名称或名称关键字搜索客户信息,系统默认显示全部。
 //	a)客户名称/关键字:可根据客户名称或名称关键字搜索客户信息,系统默认显示全部。
 	private String userName;
 	private String userName;
 //	b)订单部门:可根据订单部门搜索,系统默认显示全部。
 //	b)订单部门:可根据订单部门搜索,系统默认显示全部。
-	private String depId;
+	private String deps;
 //	c)是否已添微信:可根据“是”“否”来搜索
 //	c)是否已添微信:可根据“是”“否”来搜索
 	private Integer addWechat;
 	private Integer addWechat;
 //	d)续签情况:按续签情况搜索,续签分为以下七个类型,系统默认显示全部。可按不同续签状态搜索。
 //	d)续签情况:按续签情况搜索,续签分为以下七个类型,系统默认显示全部。可按不同续签状态搜索。
@@ -30,12 +30,15 @@ public class InputListOrderUserService {
 	public void setUserName(String userName) {
 	public void setUserName(String userName) {
 		this.userName = userName;
 		this.userName = userName;
 	}
 	}
-	public String getDepId() {
-		return depId;
+
+	public String getDeps() {
+		return deps;
 	}
 	}
-	public void setDepId(String depId) {
-		this.depId = depId;
+
+	public void setDeps(String deps) {
+		this.deps = deps;
 	}
 	}
+
 	public Integer getAddWechat() {
 	public Integer getAddWechat() {
 		return addWechat;
 		return addWechat;
 	}
 	}
@@ -84,7 +87,7 @@ public class InputListOrderUserService {
 	public void setEndFollowTimes(String endFollowTimes) {
 	public void setEndFollowTimes(String endFollowTimes) {
 		this.endFollowTimes = endFollowTimes;
 		this.endFollowTimes = endFollowTimes;
 	}
 	}
-	
-	
-	
+
+
+
 }
 }

+ 12 - 10
src/main/java/com/goafanti/user/controller/UserServiceApiController.java

@@ -5,6 +5,7 @@ import java.util.List;
 import javax.annotation.Resource;
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletResponse;
 import javax.servlet.http.HttpServletResponse;
 
 
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.bind.annotation.RestController;
@@ -23,6 +24,8 @@ import com.goafanti.user.service.UserServiceService;
 public class UserServiceApiController extends BaseApiController {
 public class UserServiceApiController extends BaseApiController {
 	@Resource
 	@Resource
 	private UserServiceService						userServiceService;
 	private UserServiceService						userServiceService;
+	@Value(value = "${upload.path}")
+	private String			uploadPath	= null;
 
 
 	@RequestMapping(value = "/addUseService",method = RequestMethod.POST)
 	@RequestMapping(value = "/addUseService",method = RequestMethod.POST)
 	public Result addUseService(InputUserServiceFollow us) {
 	public Result addUseService(InputUserServiceFollow us) {
@@ -38,38 +41,37 @@ public class UserServiceApiController extends BaseApiController {
 		return res;
 		return res;
 	}
 	}
 
 
-	
+
 	@RequestMapping(value = "/listUseServiceFollow",method = RequestMethod.GET)
 	@RequestMapping(value = "/listUseServiceFollow",method = RequestMethod.GET)
 	public Result listUseServiceFollow(String uid) {
 	public Result listUseServiceFollow(String uid) {
 		Result res =new Result();
 		Result res =new Result();
 		if(uid==null) {
 		if(uid==null) {
 			res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "用户编号"));
 			res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "用户编号"));
 		}
 		}
-		
+
 		res.data(userServiceService.listUseServiceFollow(uid));
 		res.data(userServiceService.listUseServiceFollow(uid));
 		return res;
 		return res;
 	}
 	}
-	
-	
+
+
 	@RequestMapping(value = "/listOrderUseService",method = RequestMethod.GET)
 	@RequestMapping(value = "/listOrderUseService",method = RequestMethod.GET)
 	public Result listOrderUseService(InputListOrderUserService i) {
 	public Result listOrderUseService(InputListOrderUserService i) {
 		Result res =new Result();
 		Result res =new Result();
 		res.data(userServiceService.listOrderUseService(i));
 		res.data(userServiceService.listOrderUseService(i));
 		return res;
 		return res;
 	}
 	}
-	
+
 	/**导出客服跟进列表
 	/**导出客服跟进列表
-	 * 
+	 *
 	 * @param i
 	 * @param i
-	 * @param response
 	 * @return
 	 * @return
 	 */
 	 */
 	@RequestMapping(value = "/userServiceExport",method = RequestMethod.GET)
 	@RequestMapping(value = "/userServiceExport",method = RequestMethod.GET)
-	public Result userServiceExport(InputListOrderUserService i,HttpServletResponse response) {
+	public Result userServiceExport(InputListOrderUserService i) {
 		List<OutOrderUserService> list=userServiceService.listOrderUseServiceGetList(i);
 		List<OutOrderUserService> list=userServiceService.listOrderUseServiceGetList(i);
 		NewExcelUtil<OutOrderUserService>excel=new NewExcelUtil<>(OutOrderUserService.class);
 		NewExcelUtil<OutOrderUserService>excel=new NewExcelUtil<>(OutOrderUserService.class);
- 		 return  excel.exportExcel(list,"客服订单跟进列表",response);
+ 		 return  excel.exportExcel(list,"客服订单跟进列表",uploadPath);
 	}
 	}
-	
+
 
 
 }
 }

+ 6 - 2
src/main/java/com/goafanti/user/service/impl/UserFollowServiceImpl.java

@@ -56,8 +56,12 @@ public class UserFollowServiceImpl extends BaseMybatisDao<UserFollowMapper>  imp
         if (in.getDeps()!=null){
         if (in.getDeps()!=null){
             map.put("deps", departmentService.parseArray(in.getDeps()));
             map.put("deps", departmentService.parseArray(in.getDeps()));
         }
         }
-        if (in.getShiroType()!=null)map.put("shiroType",in.getShiroType());
-        else map.put("shiroType",0);
+        if (in.getShiroType()!=null){
+            map.put("shiroType",in.getShiroType());
+        }
+        else{
+            map.put("shiroType",0);
+        }
         if(in.getShiroType()==0){
         if(in.getShiroType()==0){
         map.put("aid", TokenManager.getAdminId());
         map.put("aid", TokenManager.getAdminId());
         }else if(in.getShiroType()==1){
         }else if(in.getShiroType()==1){

+ 11 - 8
src/main/java/com/goafanti/user/service/impl/UserServiceServiceImpl.java

@@ -5,6 +5,7 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.List;
 import java.util.Map;
 import java.util.Map;
 
 
+import com.goafanti.admin.service.DepartmentService;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
@@ -32,12 +33,14 @@ public class  UserServiceServiceImpl extends BaseMybatisDao<UserServiceMapper> i
 	private UserServiceMapper userServiceMapper;
 	private UserServiceMapper userServiceMapper;
 	@Autowired
 	@Autowired
 	private UserServiceFollowMapper userServiceFollowMapper;
 	private UserServiceFollowMapper userServiceFollowMapper;
-	
+	@Autowired
+	private DepartmentService departmentService;
+
 	@Override
 	@Override
 	public int addUseService(InputUserServiceFollow us) {
 	public int addUseService(InputUserServiceFollow us) {
 		us.setAid(TokenManager.getAdminId());
 		us.setAid(TokenManager.getAdminId());
 		if (StringUtils.isNotBlank(us.getRenewalTimes())) {
 		if (StringUtils.isNotBlank(us.getRenewalTimes())) {
-			us.setRenewalTime(DateUtils.StringToDate(us.getRenewalTimes(), AFTConstants.YYYYMMDD));	
+			us.setRenewalTime(DateUtils.StringToDate(us.getRenewalTimes(), AFTConstants.YYYYMMDD));
 		}
 		}
 		Date date=new Date();
 		Date date=new Date();
 		us.setCreateTime(date);
 		us.setCreateTime(date);
@@ -74,7 +77,7 @@ public class  UserServiceServiceImpl extends BaseMybatisDao<UserServiceMapper> i
 	private Map<String, Object> setParams(InputListOrderUserService i) {
 	private Map<String, Object> setParams(InputListOrderUserService i) {
 		Map<String, Object>map =new HashMap<String, Object>();
 		Map<String, Object>map =new HashMap<String, Object>();
 		if(i.getUserName()!=null)map.put("userName", i.getUserName());
 		if(i.getUserName()!=null)map.put("userName", i.getUserName());
-		if(i.getDepId()!=null)map.put("depId", i.getDepId());
+		if(i.getDeps()!=null)map.put("deps", departmentService.parseArray(i.getDeps()));
 		if(i.getStartFollowTimes()!=null)map.put("startFollowTimes", i.getStartFollowTimes());
 		if(i.getStartFollowTimes()!=null)map.put("startFollowTimes", i.getStartFollowTimes());
 		if(i.getEndFollowTimes()!=null)map.put("endFollowTimes", i.getEndFollowTimes()+" 23:59:59");
 		if(i.getEndFollowTimes()!=null)map.put("endFollowTimes", i.getEndFollowTimes()+" 23:59:59");
 		if(i.getStartSignTimes()!=null)map.put("startSignTimes", i.getStartSignTimes());
 		if(i.getStartSignTimes()!=null)map.put("startSignTimes", i.getStartSignTimes());
@@ -107,28 +110,28 @@ public class  UserServiceServiceImpl extends BaseMybatisDao<UserServiceMapper> i
 					projects.append("无");
 					projects.append("无");
 				}
 				}
 				projects.append("/");
 				projects.append("/");
-				
+
 				if (StringUtils.isNotBlank(o.getReceiverName())) {
 				if (StringUtils.isNotBlank(o.getReceiverName())) {
 					consultants.append(o.getReceiverName());
 					consultants.append(o.getReceiverName());
 				} else {
 				} else {
 					consultants.append("无");
 					consultants.append("无");
 				}
 				}
 				consultants.append("/");
 				consultants.append("/");
-				
+
 				if (o.getDeclarationBatch() != null) {
 				if (o.getDeclarationBatch() != null) {
 					declareBatchs.append(o.getDeclarationBatch());
 					declareBatchs.append(o.getDeclarationBatch());
 				} else {
 				} else {
 					declareBatchs.append("无");
 					declareBatchs.append("无");
 				}
 				}
 				declareBatchs.append("/");
 				declareBatchs.append("/");
-				
+
 				if (StringUtils.isNotBlank(o.getCertificateNumber())) {
 				if (StringUtils.isNotBlank(o.getCertificateNumber())) {
 					certificationNos.append(o.getCertificateNumber());
 					certificationNos.append(o.getCertificateNumber());
 				} else {
 				} else {
 					certificationNos.append("无");
 					certificationNos.append("无");
 				}
 				}
 				certificationNos.append("/");
 				certificationNos.append("/");
-				
+
 			}
 			}
 			if(projects.length()>1)ou.setProjects(projects.substring(0, projects.length()-1));
 			if(projects.length()>1)ou.setProjects(projects.substring(0, projects.length()-1));
 			if(consultants.length()>1)ou.setConsultants(consultants.substring(0, consultants.length()-1));
 			if(consultants.length()>1)ou.setConsultants(consultants.substring(0, consultants.length()-1));
@@ -137,4 +140,4 @@ public class  UserServiceServiceImpl extends BaseMybatisDao<UserServiceMapper> i
 		}
 		}
 	}
 	}
 
 
-}
+}

+ 1 - 1
src/main/resources/props/config_local.properties

@@ -46,7 +46,7 @@ user_remind_days=15
 user_channel_days=90
 user_channel_days=90
 
 
 avatar.host=//static.jishutao.com
 avatar.host=//static.jishutao.com
-static.host=//static.jishutao.com/1.2.37
+static.host=//static.jishutao.com/1.2.38
 #avatar.host=//172.16.0.255:3000
 #avatar.host=//172.16.0.255:3000
 #static.host=//172.16.0.255:3000/1.2.27
 #static.host=//172.16.0.255:3000/1.2.27
 #static.host=http://172.16.1.187/prod/1.2.25
 #static.host=http://172.16.1.187/prod/1.2.25

+ 1 - 1
src/main/resources/props/config_test.properties

@@ -43,7 +43,7 @@ user_remind_days=15
 #\u63D0\u524D\u63D0\u9192\u5929\u6570
 #\u63D0\u524D\u63D0\u9192\u5929\u6570
 user_channel_days=90
 user_channel_days=90
 
 
-static.host=//static.jishutao.com/1.2.37
+static.host=//static.jishutao.com/1.2.38
 portal.host=//static.jishutao.com/portal/2.0.6
 portal.host=//static.jishutao.com/portal/2.0.6
 avatar.host=//static.jishutao.com
 avatar.host=//static.jishutao.com
 avatar.upload.host=//static.jishutao.com/upload
 avatar.upload.host=//static.jishutao.com/upload