Browse Source

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

liliang4869 7 years ago
parent
commit
8ebbb61eda
32 changed files with 1813 additions and 1431 deletions
  1. 2 0
      src/main/java/com/goafanti/achievement/service/AchievementService.java
  2. 13 0
      src/main/java/com/goafanti/achievement/service/impl/AchievementServiceImpl.java
  3. 2 0
      src/main/java/com/goafanti/business/service/JtBusinessService.java
  4. 27 0
      src/main/java/com/goafanti/business/service/impl/JtBusinessServiceImpl.java
  5. 5 5
      src/main/java/com/goafanti/common/controller/WebpageController.java
  6. 2 0
      src/main/java/com/goafanti/common/dao/JtBusinessProjectMapper.java
  7. 129 129
      src/main/java/com/goafanti/common/mapper/AchievementInterestMapper.xml
  8. 27 2
      src/main/java/com/goafanti/common/mapper/AchievementMapper.xml
  9. 20 2
      src/main/java/com/goafanti/common/mapper/DemandMapper.xml
  10. 37 1
      src/main/java/com/goafanti/common/mapper/JtBusinessProjectMapper.xml
  11. 17 0
      src/main/java/com/goafanti/common/mapper/UserIdentityMapper.xml
  12. 10 0
      src/main/java/com/goafanti/common/model/Achievement.java
  13. 31 22
      src/main/java/com/goafanti/common/utils/RandomUtil.java
  14. 19 19
      src/main/java/com/goafanti/demand/service/DemandInterestService.java
  15. 2 0
      src/main/java/com/goafanti/demand/service/DemandService.java
  16. 75 75
      src/main/java/com/goafanti/demand/service/impl/DemandInterestServiceImpl.java
  17. 15 0
      src/main/java/com/goafanti/demand/service/impl/DemandServiceImpl.java
  18. 373 192
      src/main/java/com/goafanti/portal/controller/PortalInterestApiController.java
  19. 375 374
      src/main/java/com/goafanti/user/bo/InputUserIdentity.java
  20. 240 239
      src/main/java/com/goafanti/user/bo/UserPartnerDetailBo.java
  21. 2 1
      src/main/java/com/goafanti/user/service/UserIdentityService.java
  22. 62 58
      src/main/java/com/goafanti/user/service/UserService.java
  23. 14 0
      src/main/java/com/goafanti/user/service/impl/UserIdentityServiceImpl.java
  24. 226 220
      src/main/java/com/goafanti/user/service/impl/UserServiceImpl.java
  25. 3 1
      src/main/webapp/WEB-INF/views/common.html
  26. 1 1
      src/main/webapp/WEB-INF/views/portal/index.html
  27. 1 1
      src/main/webapp/WEB-INF/views/portal/service/serviceDetails.html
  28. 1 1
      src/main/webapp/WEB-INF/views/portal/service/serviceIndex.html
  29. 3 0
      src/main/webapp/WEB-INF/views/portal/technologyTrading/achievementDetail.html
  30. 68 68
      src/main/webapp/WEB-INF/views/portal/technologyTrading/demand.html
  31. 4 1
      src/main/webapp/WEB-INF/views/portal/technologyTrading/demandDetail.html
  32. 7 19
      src/main/webapp/WEB-INF/views/user/subscriberDetail.html

+ 2 - 0
src/main/java/com/goafanti/achievement/service/AchievementService.java

@@ -92,5 +92,7 @@ public interface AchievementService {
 	
 	   /**查询智者的科技成果**/
     public List<AchievementPartnerListBo> findPartnerAchievementList(String uid);
+    
+    Pagination<AchievementObject>listInterestedAchievement(Integer pageNo,Integer pageSize);
 
 }

+ 13 - 0
src/main/java/com/goafanti/achievement/service/impl/AchievementServiceImpl.java

@@ -832,4 +832,17 @@ public class AchievementServiceImpl extends BaseMybatisDao<AchievementMapper> im
 			return achievementMapper.findPartnerAchievementListByPage(uid);
 		}
 
+	@SuppressWarnings("unchecked")
+	@Override
+	public Pagination<AchievementObject> listInterestedAchievement(Integer pageNo, Integer pageSize) {
+		if(pageNo==null ||pageNo<1)pageNo=1;
+		if(pageSize== null ||pageSize<1)pageSize=10;
+		 Map<String, Object> params=new HashMap<String,Object>();
+		 params.put("uid", TokenManager.getUserId());
+		return (Pagination<AchievementObject>) findPage("listInterestedAchievement", "listInterestedAchievementCount", params, pageNo, pageSize);
+	}
+	 
+	 
+	 
+
 }

+ 2 - 0
src/main/java/com/goafanti/business/service/JtBusinessService.java

@@ -24,4 +24,6 @@ public interface JtBusinessService {
 	int deleteProjectById(String id);
 	int updateProject(JtBusinessProject jtBusinessProject);
 	List<JtBusinessProject>getProjectsLimit(Integer size);
+	int deleteByIdAndUid(String id);
+	Pagination<JtBusinessProject>listProjectIInterestedIn(Integer pageNo,Integer pageSize);
 }

+ 27 - 0
src/main/java/com/goafanti/business/service/impl/JtBusinessServiceImpl.java

@@ -255,4 +255,31 @@ if(auditStatus!=null ) {
 		return jtBusinessProjectMapper.findProjectOrderByNumber();
 	}
 
+	@Override
+	public int deleteByIdAndUid(String id) {
+		// TODO Auto-generated method stub
+		if(TokenManager.getUserId()==null)return -1;
+		return jtBusinessProjectMapper.deleteByIdAndUid(id,TokenManager.getUserId());
+	}
+
+	@SuppressWarnings("unchecked")
+	@Override
+	public Pagination<JtBusinessProject> listProjectIInterestedIn(Integer pageNo,Integer pageSize) {
+		// TODO Auto-generated method stub
+
+		if (pageNo == null || pageNo < 0) {
+			pageNo = 1;
+		}
+
+		if (pageSize == null || pageSize < 0 || pageSize > 10) {
+			pageSize = 10;
+		}
+		Map<String,Object> params=new HashMap<String,Object>();
+		params.put("uid", TokenManager.getUserId());
+		return (Pagination<JtBusinessProject>) findPage("findInterestedProjcet", "findInterestedProjcetCount", params, pageNo, pageSize);
+	}
+	
+	
+	
+
 }

+ 5 - 5
src/main/java/com/goafanti/common/controller/WebpageController.java

@@ -636,8 +636,8 @@ public class WebpageController extends BaseController {
 			if(demandListBo.getPictureUrl()==null || !demandListBo.getPictureUrl().contains("."))demandListBo.setPictureUrl(null);
 			else demandListBo.setPictureUrl(demandListBo.getPictureUrl().split(",")[0]);
 		}
-		LimitLengthUtil.limiteDemandLength(nightMaxProLearnStudyDemand,10,208);
-		LimitLengthUtil.limiteDemandCompanyAndName(nightMaxProLearnStudyDemand, 10, 208);
+		LimitLengthUtil.limiteDemandLength(nightMaxProLearnStudyDemand,10,18);
+		LimitLengthUtil.limiteDemandCompanyAndName(nightMaxProLearnStudyDemand, 10, 18);
 		modelview.addObject("proLearnStudyDemandList",nightMaxProLearnStudyDemand);
 		
 		//研产资金需求 最多4个
@@ -672,11 +672,11 @@ public class WebpageController extends BaseController {
 		modelAndView.addObject("demand",demand); 
 		
 		//精品需求
-		List<DemandListBo>boutiqueDemandList=LimitLengthUtil.LimitListLengthRandomly(demandService.getHotDemand(10,url,""),3,10); 
+		List<DemandListBo>boutiqueDemandList=LimitLengthUtil.LimitListLengthRandomly(demandService.getHotDemand(10,url,"web_demand_list"),3,10); 
 		modelAndView.addObject("reboutiquedemand",boutiqueDemandList); 
 		
 		//猜你喜欢
-		List<DemandListBo>guessYouLikeList=LimitLengthUtil.LimitListLengthRandomly(demandService.recentDemand(10, url,""), 4, 10);
+		List<DemandListBo>guessYouLikeList=LimitLengthUtil.LimitListLengthRandomly(demandService.recentDemand(10, url,"web_demand_list"), 4, 10);
 		modelAndView.addObject("redemandlist",guessYouLikeList);
 	
 		//view
@@ -744,7 +744,7 @@ public class WebpageController extends BaseController {
 			modelAndView.addObject(categoryName+"List"+i,projects);
 		}
 		
-	}
+	} 
 	
 	 public static int differentDaysByMillisecond(Date date1,Date date2)
 	    {

+ 2 - 0
src/main/java/com/goafanti/common/dao/JtBusinessProjectMapper.java

@@ -79,6 +79,8 @@ public interface JtBusinessProjectMapper {
      
   List<JtBusinessProject> findProjectOrderByNumber();
   
+  int deleteByIdAndUid(String id,String uid);
+  
 
      
   

+ 129 - 129
src/main/java/com/goafanti/common/mapper/AchievementInterestMapper.xml

@@ -1,130 +1,130 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
-<mapper namespace="com.goafanti.common.dao.AchievementInterestMapper" >
-  <resultMap id="BaseResultMap" type="com.goafanti.common.model.AchievementInterest" >
-    <id column="id" property="id" jdbcType="VARCHAR" />
-    <result column="achievement_id" property="achievementId" jdbcType="VARCHAR" />
-    <result column="uid" property="uid" jdbcType="VARCHAR" />
-    <result column="create_time" property="createTime" jdbcType="TIMESTAMP" />
-  </resultMap>
-  <sql id="Base_Column_List" >
-    id, achievement_id, uid, create_time
-  </sql>
-  <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.String" >
-    select 
-    <include refid="Base_Column_List" />
-    from achievement_interest
-    where id = #{id,jdbcType=VARCHAR}
-  </select>
-  <delete id="deleteByPrimaryKey" parameterType="java.lang.String" >
-    delete from achievement_interest
-    where id = #{id,jdbcType=VARCHAR}
-  </delete>
-  <insert id="insert" parameterType="com.goafanti.common.model.AchievementInterest" >
-    insert into achievement_interest (id, achievement_id, uid, 
-      create_time)
-    values (#{id,jdbcType=VARCHAR}, #{achievementId,jdbcType=VARCHAR}, #{uid,jdbcType=VARCHAR}, 
-      #{createTime,jdbcType=TIMESTAMP})
-  </insert>
-  <insert id="insertSelective" parameterType="com.goafanti.common.model.AchievementInterest" >
-    insert into achievement_interest
-    <trim prefix="(" suffix=")" suffixOverrides="," >
-      <if test="id != null" >
-        id,
-      </if>
-      <if test="achievementId != null" >
-        achievement_id,
-      </if>
-      <if test="uid != null" >
-        uid,
-      </if>
-      <if test="createTime != null" >
-        create_time,
-      </if>
-    </trim>
-    <trim prefix="values (" suffix=")" suffixOverrides="," >
-      <if test="id != null" >
-        #{id,jdbcType=VARCHAR},
-      </if>
-      <if test="achievementId != null" >
-        #{achievementId,jdbcType=VARCHAR},
-      </if>
-      <if test="uid != null" >
-        #{uid,jdbcType=VARCHAR},
-      </if>
-      <if test="createTime != null" >
-        #{createTime,jdbcType=TIMESTAMP},
-      </if>
-    </trim>
-  </insert>
-  <update id="updateByPrimaryKeySelective" parameterType="com.goafanti.common.model.AchievementInterest" >
-    update achievement_interest
-    <set >
-      <if test="achievementId != null" >
-        achievement_id = #{achievementId,jdbcType=VARCHAR},
-      </if>
-      <if test="uid != null" >
-        uid = #{uid,jdbcType=VARCHAR},
-      </if>
-      <if test="createTime != null" >
-        create_time = #{createTime,jdbcType=TIMESTAMP},
-      </if>
-    </set>
-    where id = #{id,jdbcType=VARCHAR}
-  </update>
-  <update id="updateByPrimaryKey" parameterType="com.goafanti.common.model.AchievementInterest" >
-    update achievement_interest
-    set achievement_id = #{achievementId,jdbcType=VARCHAR},
-      uid = #{uid,jdbcType=VARCHAR},
-      create_time = #{createTime,jdbcType=TIMESTAMP}
-    where id = #{id,jdbcType=VARCHAR}
-  </update>
-  
-  <select id="findAchievementInterestListByPage" parameterType="String" resultType="com.goafanti.portal.bo.AchievementInterestListBo">
-  	select 
-  		ai.id, ai.achievement_id as achievementId, ai.create_time as createTime,
-  		a.name, a.serial_number as serialNumber, a.deleted_sign as deletedSign,
-  		a.audit_status as auditStatus, a.keyword
-  	from achievement_interest ai
-  	left join achievement a on a.id = ai.achievement_id
-  	where 1=1
-  	<if test="uid != null">
-  		and ai.uid = #{uid,jdbcType=VARCHAR}
-  	</if> 
-  	order by ai.create_time desc
-  	<if test="page_sql!=null">
-		${page_sql}
-	</if>
-  </select>
-  
-  <select id="findAchievementInterestCount" parameterType="String" resultType="java.lang.Integer">
-  	select 
-  		count(1)
-  	from achievement_interest ai
-  	where 1=1
-  	<if test="uid != null">
-  		and	ai.uid = #{uid,jdbcType=VARCHAR}
-  	</if> 
-  </select>
-  
-  <select id="selectAchievementInterestByUidAndAchievementId" resultMap="BaseResultMap">
-  	select  
-  	<include refid="Base_Column_List" />
-    from achievement_interest
-    where uid = #{0} and achievement_id = #{1}
-  </select>
-   <select id="checkUidAndDid" resultType="Integer">
-  		select count(0) from achievement_interest where 1=1
-  		<if test="uid != null">
-  	       and uid = #{uid,jdbcType=VARCHAR}
-  	    </if>
-  	    <if test="id != null">
-  	       and achievement_id = #{id,jdbcType=VARCHAR}
-  	    </if>
-  </select>
-  <delete id="deleteInterest" parameterType="java.lang.String" >
-    delete from achievement_interest
-    where uid = #{uid,jdbcType=VARCHAR}
-    and achievement_id=#{objectId,jdbcType=VARCHAR}
-  </delete>
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
+<mapper namespace="com.goafanti.common.dao.AchievementInterestMapper" >
+  <resultMap id="BaseResultMap" type="com.goafanti.common.model.AchievementInterest" >
+    <id column="id" property="id" jdbcType="VARCHAR" />
+    <result column="achievement_id" property="achievementId" jdbcType="VARCHAR" />
+    <result column="uid" property="uid" jdbcType="VARCHAR" />
+    <result column="create_time" property="createTime" jdbcType="TIMESTAMP" />
+  </resultMap>
+  <sql id="Base_Column_List" >
+    id, achievement_id, uid, create_time
+  </sql>
+  <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.String" >
+    select 
+    <include refid="Base_Column_List" />
+    from achievement_interest
+    where id = #{id,jdbcType=VARCHAR}
+  </select>
+  <delete id="deleteByPrimaryKey" parameterType="java.lang.String" >
+    delete from achievement_interest
+    where id = #{id,jdbcType=VARCHAR}
+  </delete>
+  <insert id="insert" parameterType="com.goafanti.common.model.AchievementInterest" >
+    insert into achievement_interest (id, achievement_id, uid, 
+      create_time)
+    values (#{id,jdbcType=VARCHAR}, #{achievementId,jdbcType=VARCHAR}, #{uid,jdbcType=VARCHAR}, 
+      #{createTime,jdbcType=TIMESTAMP})
+  </insert>
+  <insert id="insertSelective" parameterType="com.goafanti.common.model.AchievementInterest" >
+    insert into achievement_interest
+    <trim prefix="(" suffix=")" suffixOverrides="," >
+      <if test="id != null" >
+        id,
+      </if>
+      <if test="achievementId != null" >
+        achievement_id,
+      </if>
+      <if test="uid != null" >
+        uid,
+      </if>
+      <if test="createTime != null" >
+        create_time,
+      </if>
+    </trim>
+    <trim prefix="values (" suffix=")" suffixOverrides="," >
+      <if test="id != null" >
+        #{id,jdbcType=VARCHAR},
+      </if>
+      <if test="achievementId != null" >
+        #{achievementId,jdbcType=VARCHAR},
+      </if>
+      <if test="uid != null" >
+        #{uid,jdbcType=VARCHAR},
+      </if>
+      <if test="createTime != null" >
+        #{createTime,jdbcType=TIMESTAMP},
+      </if>
+    </trim>
+  </insert>
+  <update id="updateByPrimaryKeySelective" parameterType="com.goafanti.common.model.AchievementInterest" >
+    update achievement_interest
+    <set >
+      <if test="achievementId != null" >
+        achievement_id = #{achievementId,jdbcType=VARCHAR},
+      </if>
+      <if test="uid != null" >
+        uid = #{uid,jdbcType=VARCHAR},
+      </if>
+      <if test="createTime != null" >
+        create_time = #{createTime,jdbcType=TIMESTAMP},
+      </if>
+    </set>
+    where id = #{id,jdbcType=VARCHAR}
+  </update>
+  <update id="updateByPrimaryKey" parameterType="com.goafanti.common.model.AchievementInterest" >
+    update achievement_interest
+    set achievement_id = #{achievementId,jdbcType=VARCHAR},
+      uid = #{uid,jdbcType=VARCHAR},
+      create_time = #{createTime,jdbcType=TIMESTAMP}
+    where id = #{id,jdbcType=VARCHAR}
+  </update>
+  
+  <select id="findAchievementInterestListByPage" parameterType="String" resultType="com.goafanti.portal.bo.AchievementInterestListBo">
+  	select 
+  		ai.id, ai.achievement_id as achievementId, ai.create_time as createTime,
+  		a.name, a.serial_number as serialNumber, a.deleted_sign as deletedSign,
+  		a.audit_status as auditStatus, a.keyword
+  	from achievement_interest ai
+  	left join achievement a on a.id = ai.achievement_id
+  	where 1=1
+  	<if test="uid != null">
+  		and ai.uid = #{uid,jdbcType=VARCHAR}
+  	</if> 
+  	order by ai.create_time desc
+  	<if test="page_sql!=null">
+		${page_sql}
+	</if>
+  </select>
+  
+  <select id="findAchievementInterestCount" parameterType="String" resultType="java.lang.Integer">
+  	select 
+  		count(1)
+  	from achievement_interest ai
+  	where 1=1
+  	<if test="uid != null">
+  		and	ai.uid = #{uid,jdbcType=VARCHAR}
+  	</if> 
+  </select>
+  
+  <select id="selectAchievementInterestByUidAndAchievementId" resultMap="BaseResultMap">
+  	select  
+  	<include refid="Base_Column_List" />
+    from achievement_interest
+    where uid = #{0} and achievement_id = #{1}
+  </select>
+   <select id="checkUidAndDid" resultType="Integer">
+  		select count(0) from achievement_interest where 1=1
+  		<if test="uid != null">
+  	       and uid = #{uid,jdbcType=VARCHAR}
+  	    </if>
+  	    <if test="id != null">
+  	       and achievement_id = #{id,jdbcType=VARCHAR}
+  	    </if>
+  </select>
+  <delete id="deleteInterest" parameterType="java.lang.String" >
+    delete from achievement_interest
+    where uid = #{uid,jdbcType=VARCHAR}
+    and achievement_id=#{objectId,jdbcType=VARCHAR}
+  </delete>
 </mapper>

+ 27 - 2
src/main/java/com/goafanti/common/mapper/AchievementMapper.xml

@@ -1234,7 +1234,6 @@ left join industry_category fgg on
 	fgg.id = a.field_b
 where
 	a.id = #{0}
-	and a.data_category=#{1}
 </select>
 
 <select id="getBoutiquePatent" resultType="com.goafanti.portal.bo.AchievementObject">
@@ -1388,5 +1387,31 @@ left join industry_category fgg on
 where
 	a.id = #{0}
 </select>
-
+<select id="listInterestedAchievement" resultType="com.goafanti.portal.bo.AchievementObject">
+	select 
+  		a.id, 
+  		a.serial_number as serialNumber,
+  		a.category,
+  		a.data_category as dataCategory,
+  		a.name, 
+  		a.release_date as releaseDate, 
+  		a.audit_status as auditStatus,
+  		a.technical_picture_url as technicalPictureUrl,
+  		a.boutique,
+  		a.release_date as releaseDate,
+  		introduction
+  	from achievement a
+  	left join achievement_interest ai on ai.achievement_id=a.id
+  	where ai.uid=#{uid,jdbcType=VARCHAR}
+  	<if test="page_sql!=null">
+			${page_sql}
+	</if>
+  	</select>
+  	<select id="listInterestedAchievementCount" resultType="java.lang.Integer">
+	select 
+  		count(0)
+  	from achievement a
+  	left join achievement_interest ai on ai.achievement_id=a.id
+  	where ai.uid=#{uid,jdbcType=VARCHAR}
+  	</select>
 </mapper>

+ 20 - 2
src/main/java/com/goafanti/common/mapper/DemandMapper.xml

@@ -999,7 +999,7 @@
   </select>
   <select id="selectRecentDemand" resultType="com.goafanti.demand.bo.DemandListBo">
  select d.name,employer_name as employerName,d.id ,data_category as dataCategory,release_date as releaseDate,demand_type as demandType,budget_cost as budgetCost 
- ,fg.name as industryCategory1,fgg.name as industryCategory2,problem_des as problemDes
+ ,fg.name as industryCategory1,fgg.name as industryCategory2,problem_des as problemDes,d.picture_url as pictureUrl
  from demand d 
      left join aft.industry_category  fg  on fg.id=d.industry_category_a
     left join aft.industry_category fgg  on fgg.id=d.industry_category_b
@@ -1124,7 +1124,7 @@ order by release_date desc limit #{0}
   
     <select id="searchDemandList" resultType="com.goafanti.demand.bo.DemandListBo">
   select a.name,a.id,create_time as createTime ,picture_url as pictureUrl,data_category as dataCategory,is_hot as isHot,demand_type as demandType,
-  industry_category_a as industryCategoryA,industry_category_b as industryCategoryB,ic.name as industryCategory1,icc.name as industryCategory2
+  industry_category_a as industryCategoryA,industry_category_b as industryCategoryB,ic.name as industryCategory1,icc.name as industryCategory2,a.release_date as releaseDate
    from demand a
   left join industry_category ic on ic.id=a.industry_category_a
   left join industry_category icc on icc.id=a.industry_category_b
@@ -1156,4 +1156,22 @@ order by release_date desc limit #{0}
   and a.name like concat("%",#{name,jdbcType=VARCHAR},"%")
   </if>
   </select>
+  
+  
+  <select id="findInterestedDemand" resultType="com.goafanti.demand.bo.DemandListBo">
+   select a.name,a.id,a.create_time as createTime ,picture_url as pictureUrl,data_category as dataCategory,is_hot as isHot,demand_type as demandType,
+  industry_category_a as industryCategoryA,industry_category_b as industryCategoryB,a.release_date as releaseDate,problem_des as problemDes
+   from demand a
+   left join demand_interest di on di.demand_id=a.id
+   where di.uid=#{uid,jdbcType=VARCHAR}
+     <if test="page_sql !=null">
+  	${page_sql}
+  </if>
+  </select>
+    <select id="findInterestedDemandCount" resultType="java.lang.Integer">
+   select count(0)
+   from demand a
+   left join demand_interest di on di.demand_id=a.id
+   where di.uid=#{uid,jdbcType=VARCHAR}
+  </select>
   </mapper>

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

@@ -646,5 +646,41 @@
   where audit_status=2
   order by release_date desc
   </select>
-  
+  <select id="findInterestedProjcet" resultType="com.goafanti.common.model.JtBusinessProject">
+  select 
+  jtbp.id,  
+	  jtbp.name, 
+	  jtbp.category_id as categoryId,  
+	  jtbp.number,  
+	  jtbp.price,  
+	  jtbp.activity_price as activityPrice,  
+	  jtbp.member_price as memberPrice,  
+	  jtbp.offset, 
+	  jtbp.activity_flag as activityFlag, 
+	  jtbp.introduce,  
+	  jtbp.province, jtbp.city,  
+	  jtbp.create_time as createTime,
+	  jtbp.min_img_url as minImgUrl,
+	  jtbp.max_img_url as maxImgUrl, 
+	  jtbp.value,  
+	  jtbp.apply_conditions as applyConditions,
+	  jtbp.is_hot as isHot,
+	  jtbp.audit_status as auditStatus,
+	  jtbp.release_Date as releaseDate
+   from 
+  jt_business_project jtbp
+  left join project_interest pi on jtbp.id=pi.project_id
+  where pi.uid=#{uid,jdbcType=VARCHAR}
+ 	<if test="page_sql!=null">
+		${page_sql}
+	</if>
+  </select>
+    <select id="findInterestedProjcetCount" resultType="java.lang.Integer">
+  select 
+  count(0)
+   from 
+  jt_business_project jtbp
+  left join project_interest pi on jtbp.id=pi.project_id
+  where pi.uid=#{uid,jdbcType=VARCHAR}
+  </select>
 </mapper>

+ 17 - 0
src/main/java/com/goafanti/common/mapper/UserIdentityMapper.xml

@@ -1171,4 +1171,21 @@ order by
   where t.expert=2
   limit #{0}
   </select>
+  
+  <select id="listInterestedExpert" resultType="com.goafanti.user.bo.UserIdentityBo">
+	 	select 	t.id ,t.uid,u.identify_name as username,t.work_unit as workUnit,t.province,t.area,t.professional_title as professionalTitle,t.industry,t.city,
+		u.type,u.introduction,u.head_portrait_url as headPortraitUrl
+		from user_identity t left JOIN user u on t.uid = u.id
+		left join user_interest ui on ui.to_uid=u.id
+		where ui.from_uid=#{uid,jdbcType=VARCHAR}
+	<if test="page_sql!=null">
+        ${page_sql}
+    </if>
+</select>
+  <select id="listInterestedExpertCount" resultType="java.lang.Integer">
+	 	select count(0)
+		from user_identity t left JOIN user u on t.uid = u.id
+		left join user_interest ui on ui.to_uid=u.id
+		where ui.from_uid=#{uid,jdbcType=VARCHAR}
+</select>
 </mapper>

+ 10 - 0
src/main/java/com/goafanti/common/model/Achievement.java

@@ -73,6 +73,8 @@ public class Achievement {
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column achievement.maturity_video_url
 	 * @mbg.generated  Fri Jun 15 10:39:21 CST 2018
 	 */
+	
+	private String maturityPictureUrl;
 	private String maturityVideoUrl;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column achievement.innovation
@@ -332,6 +334,14 @@ public void setAuditInfo(String auditInfo) {
 		this.id = id;
 	}
 
+	public String getMaturityPictureUrl() {
+		return maturityPictureUrl;
+	}
+
+	public void setMaturityPictureUrl(String maturityPictureUrl) {
+		this.maturityPictureUrl = maturityPictureUrl;
+	}
+
 	/**
 	 * This method was generated by MyBatis Generator. This method returns the value of the database column achievement.serial_number
 	 * @return  the value of achievement.serial_number

+ 31 - 22
src/main/java/com/goafanti/common/utils/RandomUtil.java

@@ -1,22 +1,31 @@
-package com.goafanti.common.utils;
-
-import java.util.Random;
-
-public class RandomUtil {
-	public static int[]generateRandomList(int maxNum,int count){
-		int[] res=new int[count];
-        Random rand = new Random();//新建一个随机类
-        boolean[]  bool = new boolean[maxNum];
-        int randInt = 0;
-        for(int i = 0; i < count ; i++) {
-             do {
-                 randInt  = rand.nextInt(maxNum);//产生一个随机数
-             }while(bool[randInt]);
-            bool[randInt] = true;
-//            System.out.println(randInt);
-            res[i]=randInt;
-       }
-        return res;
-	}
-
-}
+package com.goafanti.common.utils;
+
+import java.util.Random;
+
+public class RandomUtil {
+	public static int[] generateRandomList(int maxNum, int count) {
+		int[] res = new int[count];
+		Random rand = new Random();
+
+		boolean flag = false;
+		int randInt = 0;
+		for (int i = 0; i < count; i++) {
+			do {
+				randInt = rand.nextInt(maxNum);
+				for (int i1 = 0; i1 < count; i1++) {
+					if (res[i1] == randInt) {
+						flag = false;
+						break;
+					}
+					flag=true;
+				}
+			} while (!flag);
+			flag = false;
+			res[i] = randInt;
+		}
+		return res;
+	}
+	
+
+
+}

+ 19 - 19
src/main/java/com/goafanti/demand/service/DemandInterestService.java

@@ -1,19 +1,19 @@
-package com.goafanti.demand.service;
-
-import com.goafanti.common.model.DemandInterest;
-import com.goafanti.core.mybatis.page.Pagination;
-import com.goafanti.portal.bo.DemandInterestListBo;
-
-
-public interface DemandInterestService {
-
-	int saveCancelDemandInterest(String id);
-
-	String saveAchievementInterest(String id);
-
-	DemandInterest selectDemandInterestByUidAndDemandId(String userId, String id);
-
-	Pagination<DemandInterestListBo> listDemandInterest(Integer pNo, Integer pSize);
-
-	int countDemandInterest(String id); 
-}
+package com.goafanti.demand.service;
+
+import com.goafanti.common.model.DemandInterest;
+import com.goafanti.core.mybatis.page.Pagination;
+import com.goafanti.portal.bo.DemandInterestListBo;
+
+
+public interface DemandInterestService {
+
+	int saveCancelDemandInterest(String id);
+
+	String saveDemandInterest(String id);
+
+	DemandInterest selectDemandInterestByUidAndDemandId(String userId, String id);
+
+	Pagination<DemandInterestListBo> listDemandInterest(Integer pNo, Integer pSize);
+
+	int countDemandInterest(String id); 
+}

+ 2 - 0
src/main/java/com/goafanti/demand/service/DemandService.java

@@ -82,4 +82,6 @@ public interface DemandService {
 	
 	Pagination<DemandListBo>getDemandObjects(DemandListBo demandListBo,Integer pageNo,Integer pageSize);
 	
+	Pagination<DemandListBo>listInterestedDemand(Integer pageNo,Integer pageSize);
+	
 }

+ 75 - 75
src/main/java/com/goafanti/demand/service/impl/DemandInterestServiceImpl.java

@@ -1,75 +1,75 @@
-package com.goafanti.demand.service.impl;
-
-import java.util.Calendar;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.UUID;
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-import com.goafanti.common.dao.DemandInterestMapper;
-import com.goafanti.common.model.DemandInterest;
-import com.goafanti.common.model.User;
-import com.goafanti.common.utils.StringUtils;
-import com.goafanti.core.mybatis.BaseMybatisDao;
-import com.goafanti.core.mybatis.page.Pagination;
-import com.goafanti.core.shiro.token.TokenManager;
-import com.goafanti.demand.service.DemandInterestService;
-import com.goafanti.portal.bo.DemandInterestListBo;
-
-@Service
-public class DemandInterestServiceImpl extends BaseMybatisDao<DemandInterestMapper> implements DemandInterestService {
-	@Autowired
-	private DemandInterestMapper demandInterestMapper;
-
-	@Override
-	public int saveCancelDemandInterest(String id) {
-		return demandInterestMapper.deleteByPrimaryKey(id,TokenManager.getUserId());
-	}
-
-	@Override
-	public String saveAchievementInterest(String id) {
-		DemandInterest di = new DemandInterest();
-		di.setId(UUID.randomUUID().toString());
-		di.setDemandId(id);
-		Calendar now = Calendar.getInstance();
-		now.set(Calendar.MILLISECOND, 0);
-		di.setCreateTime(now.getTime());
-		di.setUid(TokenManager.getUserId());
-		if (StringUtils.isBlank(di.getUid())){
-			return null;
-		}
-		demandInterestMapper.insert(di);
-		return di.getId();
-	}
-
-	@Override
-	public DemandInterest selectDemandInterestByUidAndDemandId(String uid, String id) {
-		return demandInterestMapper.selectDemandInterestByUidAndDemandId(uid, id);
-	}
-
-	@SuppressWarnings("unchecked")
-	@Override
-	public Pagination<DemandInterestListBo> listDemandInterest(Integer pNo, Integer pSize) {
-		Map<String, Object> params = new HashMap<>();
-
-		if (pNo == null || pNo < 0) {
-			pNo = 1;
-		}
-
-		if (pSize == null || pSize < 0 || pSize > 10) {
-			pSize = 10;
-		}
-		if (TokenManager.getToken() instanceof User) {
-			params.put("uid", TokenManager.getUserId());
-		}
-		return (Pagination<DemandInterestListBo>) findPage("findDemandInterestListByPage",
-				"findDemandInterestCount", params, pNo, pSize);
-	}
-
-	@Override
-	public int countDemandInterest(String id) {
-		return demandInterestMapper.countInterestById(id);
-	}
-}
+package com.goafanti.demand.service.impl;
+
+import java.util.Calendar;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.UUID;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import com.goafanti.common.dao.DemandInterestMapper;
+import com.goafanti.common.model.DemandInterest;
+import com.goafanti.common.model.User;
+import com.goafanti.common.utils.StringUtils;
+import com.goafanti.core.mybatis.BaseMybatisDao;
+import com.goafanti.core.mybatis.page.Pagination;
+import com.goafanti.core.shiro.token.TokenManager;
+import com.goafanti.demand.service.DemandInterestService;
+import com.goafanti.portal.bo.DemandInterestListBo;
+
+@Service
+public class DemandInterestServiceImpl extends BaseMybatisDao<DemandInterestMapper> implements DemandInterestService {
+	@Autowired
+	private DemandInterestMapper demandInterestMapper;
+
+	@Override
+	public int saveCancelDemandInterest(String id) {
+		return demandInterestMapper.deleteByPrimaryKey(id,TokenManager.getUserId());
+	}
+
+	@Override
+	public String saveDemandInterest(String id) {
+		DemandInterest di = new DemandInterest();
+		di.setId(UUID.randomUUID().toString());
+		di.setDemandId(id);
+		Calendar now = Calendar.getInstance();
+		now.set(Calendar.MILLISECOND, 0);
+		di.setCreateTime(now.getTime());
+		di.setUid(TokenManager.getUserId());
+		if (StringUtils.isBlank(di.getUid())){
+			return null;
+		}
+		demandInterestMapper.insert(di);
+		return di.getId();
+	}
+
+	@Override
+	public DemandInterest selectDemandInterestByUidAndDemandId(String uid, String id) {
+		return demandInterestMapper.selectDemandInterestByUidAndDemandId(uid, id);
+	}
+
+	@SuppressWarnings("unchecked")
+	@Override
+	public Pagination<DemandInterestListBo> listDemandInterest(Integer pNo, Integer pSize) {
+		Map<String, Object> params = new HashMap<>();
+
+		if (pNo == null || pNo < 0) {
+			pNo = 1;
+		}
+
+		if (pSize == null || pSize < 0 || pSize > 10) {
+			pSize = 10;
+		}
+		if (TokenManager.getToken() instanceof User) {
+			params.put("uid", TokenManager.getUserId());
+		}
+		return (Pagination<DemandInterestListBo>) findPage("findDemandInterestListByPage",
+				"findDemandInterestCount", params, pNo, pSize);
+	}
+
+	@Override
+	public int countDemandInterest(String id) {
+		return demandInterestMapper.countInterestById(id);
+	}
+}

+ 15 - 0
src/main/java/com/goafanti/demand/service/impl/DemandServiceImpl.java

@@ -907,6 +907,21 @@ public class DemandServiceImpl extends BaseMybatisDao<DemandMapper> implements D
 		}
 		return params;
 	}
+
+	@SuppressWarnings("unchecked")
+	@Override
+	public Pagination<DemandListBo> listInterestedDemand(Integer pageNo, Integer pageSize) {
+		// TODO Auto-generated method stub
+		if(pageNo==null || pageNo<1) {
+			pageNo=1;
+		}
+		if(pageSize==null ||pageSize<1) {
+			pageSize=10; 
+		}
+		 Map<String, Object> params=new HashMap<String,Object>();
+		 params.put("uid", TokenManager.getUserId());
+		return (Pagination<DemandListBo>) findPage("findInterestedDemand", "findInterestedDemandCount", params, pageNo, pageSize);
+	}
 	
 	
 	}

+ 373 - 192
src/main/java/com/goafanti/portal/controller/PortalInterestApiController.java

@@ -1,192 +1,373 @@
-package com.goafanti.portal.controller;
-
-import javax.annotation.Resource;
-
-import org.apache.commons.lang3.StringUtils;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestMethod;
-import org.springframework.web.bind.annotation.RestController;
-
-import com.goafanti.achievement.service.AchievementInterestService;
-import com.goafanti.achievement.service.AchievementService;
-import com.goafanti.common.bo.Result;
-import com.goafanti.common.constant.ErrorConstants;
-import com.goafanti.common.controller.CertifyApiController;
-import com.goafanti.common.enums.AchievementAuditStatus;
-import com.goafanti.common.enums.AchievementReleaseStatus;
-import com.goafanti.common.enums.DeleteStatus;
-import com.goafanti.common.enums.DemandAuditStatus;
-import com.goafanti.common.enums.DemandReleaseStatus;
-import com.goafanti.common.model.Achievement;
-import com.goafanti.common.model.AchievementInterest;
-import com.goafanti.common.model.Demand;
-import com.goafanti.common.model.DemandInterest;
-import com.goafanti.core.shiro.token.TokenManager;
-import com.goafanti.demand.service.DemandInterestService;
-import com.goafanti.demand.service.DemandService;
-
-@RestController
-@RequestMapping(value = "/api/user/portal")
-public class PortalInterestApiController extends CertifyApiController{
-	@Resource
-	private AchievementService			achievementService;
-	@Resource
-	private DemandService				demandService;
-	@Resource
-	private AchievementInterestService	achievementInterestService;
-	@Resource
-	private DemandInterestService		demandInterestService;
-	
-	/**
-	 * 科技需求"感兴趣列表"
-	 */
-	@RequestMapping(value = "/demandInterestList", method = RequestMethod.GET)
-	public Result demandInterestList(String pageNo, String pageSize){
-		Result res = new Result();
-		Integer pNo = 1;
-		Integer pSize = 10;
-		if (StringUtils.isNumeric(pageSize)) {
-			pSize = Integer.parseInt(pageSize);
-		}
-		if (StringUtils.isNumeric(pageNo)) {
-			pNo = Integer.parseInt(pageNo);
-		}
-		res.setData(demandInterestService.listDemandInterest(pNo, pSize));
-		return res;
-	}
-
-	/**
-	 * 科技成果"感兴趣列表"
-	 */
-	@RequestMapping(value = "/achievementInterestList", method = RequestMethod.GET)
-	private Result achievementInterestList(String pageNo, String pageSize) {
-		Result res = new Result();
-		Integer pNo = 1;
-		Integer pSize = 10;
-		if (StringUtils.isNumeric(pageSize)) {
-			pSize = Integer.parseInt(pageSize);
-		}
-		if (StringUtils.isNumeric(pageNo)) {
-			pNo = Integer.parseInt(pageNo);
-		}
-		res.setData(achievementInterestService.listAchievementInterest(pNo, pSize));
-		return res;
-	}
-
-	/**
-	 * 科技需求取消关注
-	 * 
-	 */
-	@RequestMapping(value = "/demandCancelInterest", method = RequestMethod.POST)
-	public Result demandCancelInterest(String id) {
-		Result res = new Result();
-		if (StringUtils.isBlank(id)) {
-			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "找不到需求ID", "需求ID"));
-			return res;
-		}
-		res.setData(demandInterestService.saveCancelDemandInterest(id));
-		return res;
-	}
-
-	/**
-	 * 科技需求关注
-	 */
-	@RequestMapping(value = "/demandInterest", method = RequestMethod.POST)
-	public Result demandInterest(String id) {
-		Result res = new Result();
-		if (StringUtils.isBlank(id)) {
-			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "找不到需求ID", "需求ID"));
-			return res;
-		}
-
-		DemandInterest di = demandInterestService.selectDemandInterestByUidAndDemandId(TokenManager.getUserId(), id);
-		if (null != di) {
-			res.getError().add(buildError("", "当前科技需求已关注!"));
-			return res;
-		}
-		Demand d = demandService.selectByPrimaryKey(id);
-		if (null == d || d.getDeletedSign().equals(DeleteStatus.DELETED.getCode())
-				|| !d.getAuditStatus().equals(DemandAuditStatus.AUDITED.getCode())
-				|| !d.getReleaseStatus().equals(DemandReleaseStatus.RELEASED.getCode())) {
-			res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "需求ID"));
-			return res;
-		}
-		res.setData(demandInterestService.saveAchievementInterest(id));
-		return res;
-	}
-
-	/**
-	 * 科技成果取消关注
-	 * 
-	 */
-	@RequestMapping(value = "/achievementCancelInterest", method = RequestMethod.POST)
-	public Result achievementCancelInterest(String id) {
-		Result res = new Result();
-		if (StringUtils.isBlank(id)) {
-			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "找不到成果ID", "成果ID"));
-			return res;
-		}
-		res.setData(achievementInterestService.saveCancelAchievementInterest(id));
-		return res;
-	}
-
-	/**
-	 * 科技成果关注
-	 */
-	@RequestMapping(value = "/achievementInterest", method = RequestMethod.POST)
-	public Result achievementInterest(String id) {
-		Result res = new Result();
-
-		if (StringUtils.isBlank(id)) {
-			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "找不到成果ID", "科技成果ID"));
-			return res;
-		}
-
-		AchievementInterest ai = achievementInterestService
-				.selectAchievementInterestByUidAndAchievementId(TokenManager.getUserId(), id);
-		if (null != ai) {
-			res.getError().add(buildError("", "当前科技成果已关注!"));
-			return res;
-		}
-
-		Achievement a = achievementService.selectByPrimaryKey(id);
-		if (null == a || a.getDeletedSign().equals(DeleteStatus.DELETED.getCode())
-				|| !a.getAuditStatus().equals(AchievementAuditStatus.AUDITED.getCode())
-				|| !a.getReleaseStatus().equals(AchievementReleaseStatus.RELEASED.getCode())) {
-			res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "成果ID"));
-			return res;
-		}
-		res.setData(achievementInterestService.saveAchievementInterest(id));
-		return res;
-	}
-
-	
-	/**
-	 * 科技成果详情
-	 */
-	@RequestMapping(value = "/achievementDetail", method = RequestMethod.GET)
-	public Result achievementDetail(String id) {
-		Result res = new Result();
-		if (StringUtils.isBlank(id)) {
-			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "找不到成果ID", "成果ID"));
-			return res;
-		}
-		res.setData(achievementService.selectAchievementDetail(TokenManager.getUserId(), id));
-		return res;
-	}
-
-	/**
-	 * 科技需求详情
-	 */
-	@RequestMapping(value = "/demandDetail", method = RequestMethod.GET)
-	public Result demandDetail(String id) {
-		Result res = new Result();
-		if (StringUtils.isBlank(id)) {
-			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "找不到需求ID", "需求ID"));
-			return res;
-		}
-		res.setData(demandService.selectDemandDetail(TokenManager.getUserId(), id));
-		return res;
-	}
-
-}
+package com.goafanti.portal.controller;
+
+import java.util.Date;
+import java.util.UUID;
+
+import javax.annotation.Resource;
+
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RestController;
+
+import com.goafanti.achievement.service.AchievementInterestService;
+import com.goafanti.achievement.service.AchievementService;
+import com.goafanti.business.service.JtBusinessService;
+import com.goafanti.common.bo.Result;
+import com.goafanti.common.constant.ErrorConstants;
+import com.goafanti.common.controller.CertifyApiController;
+import com.goafanti.common.dao.AchievementInterestMapper;
+import com.goafanti.common.dao.ProjectInterestMapper;
+import com.goafanti.common.enums.AchievementAuditStatus;
+import com.goafanti.common.enums.AchievementReleaseStatus;
+import com.goafanti.common.enums.DeleteStatus;
+import com.goafanti.common.enums.DemandAuditStatus;
+import com.goafanti.common.enums.DemandReleaseStatus;
+import com.goafanti.common.model.Achievement;
+import com.goafanti.common.model.AchievementInterest;
+import com.goafanti.common.model.Demand;
+import com.goafanti.common.model.DemandInterest;
+import com.goafanti.common.model.JtBusinessProject;
+import com.goafanti.common.model.ProjectInterest;
+import com.goafanti.common.model.UserInterest;
+import com.goafanti.core.mybatis.page.Pagination;
+import com.goafanti.core.shiro.token.TokenManager;
+import com.goafanti.demand.service.DemandInterestService;
+import com.goafanti.demand.service.DemandService;
+import com.goafanti.user.bo.UserIdentityBo;
+import com.goafanti.user.service.UserIdentityService;
+import com.goafanti.user.service.UserInterestService;
+import com.goafanti.user.service.UserService;
+
+@RestController
+@RequestMapping(value = "/api/user/portal")
+public class PortalInterestApiController extends CertifyApiController{
+	@Resource
+	private AchievementService			achievementService;
+	@Resource
+	private DemandService				demandService;
+	@Resource
+	private AchievementInterestService	achievementInterestService;
+	@Resource
+	private DemandInterestService		demandInterestService;
+	@Resource
+	private JtBusinessService			jtBusinessService;
+	@Resource
+	private ProjectInterestMapper				projectInterestMapper;
+	@Resource
+	private UserInterestService					userInterestService;
+	@Resource UserIdentityService				userIdentityService ;
+	/**
+	 * 科技需求"感兴趣列表"
+	 */
+	@RequestMapping(value = "/demandInterestList", method = RequestMethod.GET)
+	public Result demandInterestList(String pageNo, String pageSize){
+		Result res = new Result();
+		Integer pNo = 1;
+		Integer pSize = 10;
+		if (StringUtils.isNumeric(pageSize)) {
+			pSize = Integer.parseInt(pageSize);
+		}
+		if (StringUtils.isNumeric(pageNo)) {
+			pNo = Integer.parseInt(pageNo);
+		}
+		res.setData(demandInterestService.listDemandInterest(pNo, pSize));
+		return res;
+	}
+
+	/**
+	 * 科技成果"感兴趣列表"
+	 */
+	@RequestMapping(value = "/achievementInterestList", method = RequestMethod.GET)
+	private Result achievementInterestList(String pageNo, String pageSize) {
+		Result res = new Result();
+		Integer pNo = 1;
+		Integer pSize = 10;
+		if (StringUtils.isNumeric(pageSize)) {
+			pSize = Integer.parseInt(pageSize);
+		}
+		if (StringUtils.isNumeric(pageNo)) {
+			pNo = Integer.parseInt(pageNo);
+		}
+		res.setData(achievementInterestService.listAchievementInterest(pNo, pSize));
+		return res;
+	}
+
+	/**
+	 * 科技需求取消关注
+	 * 
+	 */
+	@RequestMapping(value = "/demandCancelInterest", method = RequestMethod.POST)
+	public Result demandCancelInterest(String id) {
+		Result res = new Result();
+		if (StringUtils.isBlank(id)) {
+			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "找不到需求ID", "需求ID"));
+			return res;
+		}
+		if(StringUtils.isBlank(TokenManager.getUserId())) {
+			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "", "当前用户未登陆"));
+			return res;
+		}
+		DemandInterest demandInterest=demandInterestService.selectDemandInterestByUidAndDemandId(TokenManager.getUserId(), id);
+		if(demandInterest==null) {
+			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "", "需求"));
+			return res;
+		}
+		res.setData(demandInterestService.saveCancelDemandInterest(id));
+		return res;
+	}
+
+	/**
+	 * 科技需求关注
+	 */
+	@RequestMapping(value = "/demandInterest", method = RequestMethod.POST)
+	public Result demandInterest(String id) {
+		Result res = new Result();
+		if (StringUtils.isBlank(id)) {
+			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "找不到需求ID", "需求ID"));
+			return res;
+		}
+
+		DemandInterest di = demandInterestService.selectDemandInterestByUidAndDemandId(TokenManager.getUserId(), id);
+		if (null != di) {
+			res.getError().add(buildError("", "当前科技需求已关注!"));
+			return res;
+		}
+		Demand d = demandService.selectByPrimaryKey(id);
+		if (null == d 
+				|| !d.getAuditStatus().equals(DemandAuditStatus.AUDITED.getCode())) {
+			res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "需求ID"));
+			return res;
+		}
+		res.setData(demandInterestService.saveDemandInterest(id));
+		return res;
+	}
+
+	/**
+	 * 科技成果取消关注
+	 * 
+	 */
+	@RequestMapping(value = "/achievementCancelInterest", method = RequestMethod.POST)
+	public Result achievementCancelInterest(String id) {
+		Result res = new Result();
+		if (StringUtils.isBlank(id)) {
+			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "找不到成果ID", "成果ID"));
+			return res;
+		}
+		if(StringUtils.isBlank(TokenManager.getUserId())) {
+			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "", "当前用户未登陆"));
+			return res;
+		}
+		AchievementInterest achievementInterest=achievementInterestService.selectAchievementInterestByUidAndAchievementId(TokenManager.getUserId(), id);
+		if(achievementInterest==null) {
+			res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "找不到成果ID", "找不到成果"));
+			return res;
+		}
+		res.setData(achievementInterestService.saveCancelAchievementInterest(achievementInterest.getId()));
+		return res;
+	}
+
+	/**
+	 * 科技成果关注
+	 */
+	@RequestMapping(value = "/achievementInterest", method = RequestMethod.POST)
+	public Result achievementInterest(String id) {
+		Result res = new Result();
+
+		if (StringUtils.isBlank(id)) {
+			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "找不到成果ID", "科技成果ID"));
+			return res;
+		}
+
+		AchievementInterest ai = achievementInterestService
+				.selectAchievementInterestByUidAndAchievementId(TokenManager.getUserId(), id);
+		if (null != ai) {
+			res.getError().add(buildError("", "当前科技成果已关注!"));
+			return res;
+		}
+
+		Achievement a = achievementService.selectByPrimaryKey(id);
+		if (null == a 
+				|| !a.getAuditStatus().equals(AchievementAuditStatus.AUDITED.getCode())) {
+			res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "成果ID"));
+			return res;
+		}
+		res.setData(achievementInterestService.saveAchievementInterest(id));
+		return res;
+	}
+
+	
+	/**
+	 * 科技成果详情
+	 */
+	@RequestMapping(value = "/achievementDetail", method = RequestMethod.GET)
+	public Result achievementDetail(String id) {
+		Result res = new Result();
+		if (StringUtils.isBlank(id)) {
+			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "找不到成果ID", "成果ID"));
+			return res;
+		}
+		res.setData(achievementService.selectAchievementDetail(TokenManager.getUserId(), id));
+		return res;
+	}
+
+	/**
+	 * 科技需求详情
+	 */
+	@RequestMapping(value = "/demandDetail", method = RequestMethod.GET)
+	public Result demandDetail(String id) {
+		Result res = new Result();
+		if (StringUtils.isBlank(id)) {
+			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "找不到需求ID", "需求ID"));
+			return res;
+		}
+		if(StringUtils.isBlank(TokenManager.getUserId())) {
+			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "", "当前用户未登陆"));
+			return res;
+		}
+		res.setData(demandService.selectDemandDetail(TokenManager.getUserId(), id));
+		return res;
+	}
+	
+	/*
+	 * 服务项目取消关注
+	 * */
+	@RequestMapping(value="/projectCancelInterest",method=RequestMethod.POST)
+	public Result projectCancelInterest(String id) {
+		Result result=new Result();
+		if(StringUtils.isBlank(id)) {
+			result.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "找不到需求ID", "需求ID"));
+			return result;
+		}
+		if(StringUtils.isBlank(TokenManager.getUserId())) {
+			result.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "", "当前用户未登陆"));
+			return result;
+		}
+		result.setData(projectInterestMapper.deleteInterest(TokenManager.getUserId(), id));
+		return result;
+	}
+	
+	/*
+	 * 服务项目关注
+	 * */
+	@RequestMapping(value="/projectInterest",method=RequestMethod.POST)
+	public Result projectInterest(String id) {
+		Result result=new Result();
+		if(StringUtils.isBlank(id)) {
+			result.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "", "项目ID"));
+			return result;
+		}
+		if(StringUtils.isBlank(TokenManager.getUserId())) {
+			result.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "", "当前用户未登陆"));
+			return result;
+		}
+		projectInterestMapper.deleteInterest(TokenManager.getUserId(), id);
+		ProjectInterest projectInterest=new ProjectInterest();
+		projectInterest.setCreateTime(new Date());
+		projectInterest.setId(UUID.randomUUID().toString());
+		projectInterest.setProjectId(id);
+		projectInterest.setUid(TokenManager.getUserId());
+		result.setData(projectInterestMapper.insert(projectInterest));
+		return result;
+	}
+	
+	/*
+	 * 服务-关注列表
+	 * */
+	@RequestMapping(value="/listProjectIInterestedIn",method=RequestMethod.GET)
+	public Result listProjectIInterestedIn(Integer pageNo,Integer pageSize) {
+		Result result=new Result();
+		if(StringUtils.isBlank(TokenManager.getUserId())) {
+			result.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "", "当前用户未登陆"));
+			return result;
+		}
+		result.setData(jtBusinessService.listProjectIInterestedIn(pageNo,pageSize));
+		return result;
+	}
+	
+	/*
+	 * 成果关注列表
+	 * */
+	@RequestMapping(value="/listAchievementIInterestedIn",method=RequestMethod.GET)
+	public Result listAchievementIInterestedIn(Integer pageNo,Integer pageSize) {
+		Result result=new Result();
+		if(StringUtils.isBlank(TokenManager.getUserId())) {
+			result.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "", "当前用户未登陆"));
+			return result;
+		}
+
+		result.setData(achievementService.listInterestedAchievement(pageNo, pageSize));
+		return result;
+		
+	}
+	
+	/*
+	 * 需求关注列表
+	 * */
+	@RequestMapping(value="/listDemandIInterestedIn",method=RequestMethod.GET)
+	public Result listDemandIInterestedIn(Integer pageNo,Integer pageSize) {
+		Result result=new Result();
+		if(StringUtils.isBlank(TokenManager.getUserId())) {
+			result.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "", "当前用户未登陆"));
+			return result;
+		}
+		result.setData(demandService.listInterestedDemand(pageNo, pageSize));
+		return result;
+		
+	}
+	
+	/*
+	 * 关注专家
+	 * */
+	@RequestMapping(value="/expertInterest",method=RequestMethod.POST)
+	public Result expertInterest(String id) {
+		Result result=new Result();
+		if(StringUtils.isBlank(id)) {
+			result.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "", "专家ID"));
+			return result;
+		}
+		if(StringUtils.isBlank(TokenManager.getUserId())) {
+			result.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "", "当前用户未登陆"));
+			return result;
+		}
+	UserInterest userInterest=userInterestService.findByFromUidAndToUid(TokenManager.getUserId(), id);
+	if(userInterest==null )
+		userInterestService.insert(id);
+		return result;
+	}
+	
+	/*
+	 * 取消关注专家
+	 * */
+	@RequestMapping(value="/expertCancelInterest",method=RequestMethod.POST)
+	public Result expertCancelInterest(String id) {
+		Result result=new Result();
+		if(StringUtils.isBlank(id)) {
+			result.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "", "专家ID"));
+			return result;
+		}
+		if(StringUtils.isBlank(TokenManager.getUserId())) {
+			result.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "", "当前用户未登陆"));
+			return result;
+		}
+		UserInterest userInterest=userInterestService.findByFromUidAndToUid(TokenManager.getUserId(), id);
+		if(userInterest!=null && userInterest.getId()!=null)
+		userInterestService.deleteByPrimaryKey(userInterest.getId());
+		return result;
+	}
+	
+	/*
+	 * 专家-关注列表
+	 * */
+	@RequestMapping(value="/listInterestedInExpert",method=RequestMethod.GET)
+	public Result listExpertIInterestedIn(Integer pageNo,Integer pageSize) {
+		Result result=new Result();
+		if(StringUtils.isBlank(TokenManager.getUserId())) {
+			result.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "", "当前用户未登陆"));
+			return result;
+		}
+		result.setData(userIdentityService.listInterestedExpert(pageNo,pageSize));
+		return result;
+	}
+
+}

+ 375 - 374
src/main/java/com/goafanti/user/bo/InputUserIdentity.java

@@ -1,374 +1,375 @@
-package com.goafanti.user.bo;
-
-import java.util.Date;
-
-import javax.validation.constraints.Max;
-import javax.validation.constraints.Min;
-import javax.validation.constraints.Size;
-
-import com.goafanti.common.constant.ErrorConstants;
-
-public class InputUserIdentity {
-
-	@Size(min = 0, max = 36, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
-	private String		id;
-
-	@Size(min = 0, max = 36, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
-	private String		uid;
-
-	@Max(value = 1, message = "{" + ErrorConstants.PARAM_ERROR + "}")
-	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
-	private Integer     type;
-	
-	@Size(min = 0, max = 16, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
-	private String		username;
-
-	@Size(min = 0, max = 2, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
-	private String		sex;
-
-	@Size(min = 0, max = 4, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
-	private String		dateOfBirthYear;
-
-	@Size(min = 0, max = 2, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
-	private String		dateOfBirthMonth;
-
-	@Size(min = 0, max = 20, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
-	private String		idNumber;
-
-	@Size(min = 0, max = 255, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
-	private String		positiveIdUrl;
-
-	@Size(min = 0, max = 255, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
-	private String		oppositeIdUrl;
-
-	@Max(value = 99, message = "{" + ErrorConstants.PARAM_ERROR + "}")
-	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
-	private Integer		province;
-
-	@Max(value = 999, message = "{" + ErrorConstants.PARAM_ERROR + "}")
-	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
-	private Integer		city;
-
-	@Max(value = 9999, message = "{" + ErrorConstants.PARAM_ERROR + "}")
-	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
-	private Integer		area;
-
-	@Size(min = 0, max = 16, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
-	private String		mobile;
-
-	@Max(value = 5, message = "{" + ErrorConstants.PARAM_ERROR + "}")
-	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
-	private Integer		auditStatus;
-
-	@Max(value = 9, message = "{" + ErrorConstants.PARAM_ERROR + "}")
-	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
-	private Integer		process;
-
-	@Max(value = 3, message = "{" + ErrorConstants.PARAM_ERROR + "}")
-	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
-	private Integer		wrongCount;
-
-	@Max(value = 5, message = "{" + ErrorConstants.PARAM_ERROR + "}")
-	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
-	private Integer		level;
-
-	private Date		paymentDate;
-
-	@Max(value = 1, message = "{" + ErrorConstants.PARAM_ERROR + "}")
-	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
-	private Integer		expert;
-
-	@Max(value = 1, message = "{" + ErrorConstants.PARAM_ERROR + "}")
-	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
-	private Integer		celebrity;
-	
-	@Size(min = 0, max = 128, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
-	private String identifyName;
-	
-	@Size(min = 0, max = 128, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
-	private String email;
-	
-	@Size(min = 0, max = 512, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
-	private String introduction;
-	
-	@Size(min = 0, max = 128, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
-	private String headPortraitUrl;
-	
-	@Size(min = 0, max = 64, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
-	private String societyTag;
-	
-	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
-	@Max(value = 99, message = "{" + ErrorConstants.PARAM_ERROR + "}")
-	private Integer industry;
-	
-	@Size(min = 0, max = 255, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
-	private String postalAddress;
-	
-	@Size(min = 0, max = 13, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
-	private String fixedTel;
-	
-	@Size(min = 0, max = 16, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
-	private String qq;
-	
-	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
-	@Max(value = 1, message = "{" + ErrorConstants.PARAM_ERROR + "}")
-	private Integer authentication;
-	
-	String workUnit;
-	
-	public String getWorkUnit() {
-		return workUnit;
-	}
-
-	public void setWorkUnit(String workUnit) {
-		this.workUnit = workUnit;
-	}
-
-	public Integer getExpert() {
-		return expert;
-	}
-
-	public void setExpert(Integer expert) {
-		this.expert = expert;
-	}
-
-	public Integer getCelebrity() {
-		return celebrity;
-	}
-
-	public void setCelebrity(Integer celebrity) {
-		this.celebrity = celebrity;
-	}
-
-	public Integer getLevel() {
-		return level;
-	}
-
-	public void setLevel(Integer level) {
-		this.level = level;
-	}
-
-	public Date getPaymentDate() {
-		return paymentDate;
-	}
-
-	public void setPaymentDate(Date paymentDate) {
-		this.paymentDate = paymentDate;
-	}
-
-	public String getId() {
-		return id;
-	}
-
-	public void setId(String id) {
-		this.id = id;
-	}
-
-	public String getUid() {
-		return uid;
-	}
-
-	public void setUid(String uid) {
-		this.uid = uid;
-	}
-	
-	public Integer getType() {
-		return type;
-	}
-
-	public void setType(Integer type) {
-		this.type = type;
-	}
-
-	public String getUsername() {
-		return username;
-	}
-
-	public void setUsername(String username) {
-		this.username = username;
-	}
-
-	public String getSex() {
-		return sex;
-	}
-
-	public void setSex(String sex) {
-		this.sex = sex;
-	}
-
-	public String getDateOfBirthYear() {
-		return dateOfBirthYear;
-	}
-
-	public void setDateOfBirthYear(String dateOfBirthYear) {
-		this.dateOfBirthYear = dateOfBirthYear;
-	}
-
-	public String getDateOfBirthMonth() {
-		return dateOfBirthMonth;
-	}
-
-	public void setDateOfBirthMonth(String dateOfBirthMonth) {
-		this.dateOfBirthMonth = dateOfBirthMonth;
-	}
-
-	public String getIdNumber() {
-		return idNumber;
-	}
-
-	public void setIdNumber(String idNumber) {
-		this.idNumber = idNumber;
-	}
-
-	public String getPositiveIdUrl() {
-		return positiveIdUrl;
-	}
-
-	public void setPositiveIdUrl(String positiveIdUrl) {
-		this.positiveIdUrl = positiveIdUrl;
-	}
-
-	public String getOppositeIdUrl() {
-		return oppositeIdUrl;
-	}
-
-	public void setOppositeIdUrl(String oppositeIdUrl) {
-		this.oppositeIdUrl = oppositeIdUrl;
-	}
-
-	public Integer getProvince() {
-		return province;
-	}
-
-	public void setProvince(Integer province) {
-		this.province = province;
-	}
-
-	public Integer getCity() {
-		return city;
-	}
-
-	public void setCity(Integer city) {
-		this.city = city;
-	}
-
-	public Integer getArea() {
-		return area;
-	}
-
-	public void setArea(Integer area) {
-		this.area = area;
-	}
-	
-	public Integer getAuditStatus() {
-		return auditStatus;
-	}
-
-	public void setAuditStatus(Integer auditStatus) {
-		this.auditStatus = auditStatus;
-	}
-
-	public Integer getProcess() {
-		return process;
-	}
-
-	public void setProcess(Integer process) {
-		this.process = process;
-	}
-
-	public Integer getWrongCount() {
-		return wrongCount;
-	}
-
-	public void setWrongCount(Integer wrongCount) {
-		this.wrongCount = wrongCount;
-	}
-
-	public String getMobile() {
-		return mobile;
-	}
-
-	public void setMobile(String mobile) {
-		this.mobile = mobile;
-	}
-
-	public String getIdentifyName() {
-		return identifyName;
-	}
-
-	public void setIdentifyName(String identifyName) {
-		this.identifyName = identifyName;
-	}
-
-	public String getEmail() {
-		return email;
-	}
-
-	public void setEmail(String email) {
-		this.email = email;
-	}
-
-	public String getIntroduction() {
-		return introduction;
-	}
-
-	public void setIntroduction(String introduction) {
-		this.introduction = introduction;
-	}
-
-	public String getHeadPortraitUrl() {
-		return headPortraitUrl;
-	}
-
-	public void setHeadPortraitUrl(String headPortraitUrl) {
-		this.headPortraitUrl = headPortraitUrl;
-	}
-
-	public String getSocietyTag() {
-		return societyTag;
-	}
-
-	public void setSocietyTag(String societyTag) {
-		this.societyTag = societyTag;
-	}
-
-	public Integer getIndustry() {
-		return industry;
-	}
-
-	public void setIndustry(Integer industry) {
-		this.industry = industry;
-	}
-
-	public String getPostalAddress() {
-		return postalAddress;
-	}
-
-	public void setPostalAddress(String postalAddress) {
-		this.postalAddress = postalAddress;
-	}
-
-	public String getFixedTel() {
-		return fixedTel;
-	}
-
-	public void setFixedTel(String fixedTel) {
-		this.fixedTel = fixedTel;
-	}
-
-	public String getQq() {
-		return qq;
-	}
-
-	public void setQq(String qq) {
-		this.qq = qq;
-	}
-
-	public Integer getAuthentication() {
-		return authentication;
-	}
-
-	public void setAuthentication(Integer authentication) {
-		this.authentication = authentication;
-	}
-}
+package com.goafanti.user.bo;
+
+import java.util.Date;
+
+import javax.validation.constraints.Max;
+import javax.validation.constraints.Min;
+import javax.validation.constraints.Size;
+
+import com.goafanti.common.constant.ErrorConstants;
+
+public class InputUserIdentity {
+
+	@Size(min = 0, max = 36, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
+	private String		id;
+
+	@Size(min = 0, max = 36, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
+	private String		uid;
+
+	@Max(value = 1, message = "{" + ErrorConstants.PARAM_ERROR + "}")
+	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
+	private Integer     type;
+	
+	@Size(min = 0, max = 16, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
+	private String		username;
+
+	@Size(min = 0, max = 2, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
+	private String		sex;
+
+	@Size(min = 0, max = 4, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
+	private String		dateOfBirthYear;
+
+	@Size(min = 0, max = 2, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
+	private String		dateOfBirthMonth;
+
+	@Size(min = 0, max = 20, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
+	private String		idNumber;
+
+	@Size(min = 0, max = 255, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
+	private String		positiveIdUrl;
+
+	@Size(min = 0, max = 255, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
+	private String		oppositeIdUrl;
+
+	@Max(value = 99, message = "{" + ErrorConstants.PARAM_ERROR + "}")
+	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
+	private Integer		province;
+
+	@Max(value = 999, message = "{" + ErrorConstants.PARAM_ERROR + "}")
+	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
+	private Integer		city;
+
+	@Max(value = 9999, message = "{" + ErrorConstants.PARAM_ERROR + "}")
+	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
+	private Integer		area;
+
+	@Size(min = 0, max = 16, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
+	private String		mobile;
+
+	@Max(value = 5, message = "{" + ErrorConstants.PARAM_ERROR + "}")
+	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
+	private Integer		auditStatus;
+
+	@Max(value = 9, message = "{" + ErrorConstants.PARAM_ERROR + "}")
+	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
+	private Integer		process;
+
+	@Max(value = 3, message = "{" + ErrorConstants.PARAM_ERROR + "}")
+	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
+	private Integer		wrongCount;
+
+	@Max(value = 5, message = "{" + ErrorConstants.PARAM_ERROR + "}")
+	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
+	private Integer		level;
+
+	private Date		paymentDate;
+
+	@Max(value = 1, message = "{" + ErrorConstants.PARAM_ERROR + "}")
+	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
+	private Integer		expert;
+
+	@Max(value = 1, message = "{" + ErrorConstants.PARAM_ERROR + "}")
+	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
+	private Integer		celebrity;
+	
+	@Size(min = 0, max = 128, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
+	private String identifyName;
+	
+	@Size(min = 0, max = 128, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
+	private String email;
+	
+	@Size(min = 0, max = 512, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
+	private String introduction;
+	
+	@Size(min = 0, max = 128, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
+	private String headPortraitUrl;
+	
+	@Size(min = 0, max = 64, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
+	private String societyTag;
+	
+	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
+	@Max(value = 99, message = "{" + ErrorConstants.PARAM_ERROR + "}")
+	private Integer industry;
+	
+	@Size(min = 0, max = 255, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
+	private String postalAddress;
+	
+	@Size(min = 0, max = 13, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
+	private String fixedTel;
+	
+	@Size(min = 0, max = 16, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
+	private String qq;
+	
+	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
+	@Max(value = 1, message = "{" + ErrorConstants.PARAM_ERROR + "}")
+	private Integer authentication;
+	
+	String workUnit;
+	
+	public String getWorkUnit() {
+		return workUnit;
+	}
+
+	public void setWorkUnit(String workUnit) {
+		this.workUnit = workUnit;
+	}
+
+	public Integer getExpert() {
+		return expert;
+	}
+
+	public void setExpert(Integer expert) {
+		this.expert = expert;
+	}
+
+	public Integer getCelebrity() {
+		return celebrity;
+	}
+
+	public void setCelebrity(Integer celebrity) {
+		this.celebrity = celebrity;
+	}
+
+	public Integer getLevel() {
+		return level;
+	}
+
+	public void setLevel(Integer level) {
+		this.level = level;
+	}
+
+	public Date getPaymentDate() {
+		return paymentDate;
+	}
+
+	public void setPaymentDate(Date paymentDate) {
+		this.paymentDate = paymentDate;
+	}
+
+	public String getId() {
+		return id;
+	}
+
+	public void setId(String id) {
+		this.id = id;
+	}
+
+	public String getUid() {
+		return uid;
+	}
+
+	public void setUid(String uid) {
+		this.uid = uid;
+	}
+	
+	public Integer getType() {
+		return type;
+	}
+
+	public void setType(Integer type) {
+		this.type = type;
+	}
+
+	public String getUsername() {
+		return username;
+	}
+
+	public void setUsername(String username) {
+		this.username = username;
+	}
+
+	public String getSex() {
+		return sex;
+	}
+
+	public void setSex(String sex) {
+		this.sex = sex;
+	}
+
+	public String getDateOfBirthYear() {
+		return dateOfBirthYear;
+	}
+
+	public void setDateOfBirthYear(String dateOfBirthYear) {
+		this.dateOfBirthYear = dateOfBirthYear;
+	}
+
+	public String getDateOfBirthMonth() {
+		return dateOfBirthMonth;
+	}
+
+	public void setDateOfBirthMonth(String dateOfBirthMonth) {
+		this.dateOfBirthMonth = dateOfBirthMonth;
+	}
+
+	public String getIdNumber() {
+		return idNumber;
+	}
+
+	public void setIdNumber(String idNumber) {
+		this.idNumber = idNumber;
+	}
+
+	public String getPositiveIdUrl() {
+		return positiveIdUrl;
+	}
+
+	public void setPositiveIdUrl(String positiveIdUrl) {
+		this.positiveIdUrl = positiveIdUrl;
+	}
+
+	public String getOppositeIdUrl() {
+		return oppositeIdUrl;
+	}
+
+	public void setOppositeIdUrl(String oppositeIdUrl) {
+		this.oppositeIdUrl = oppositeIdUrl;
+	}
+
+	public Integer getProvince() {
+		return province;
+	}
+
+	public void setProvince(Integer province) {
+		this.province = province;
+	}
+
+	public Integer getCity() {
+		return city;
+	}
+
+	public void setCity(Integer city) {
+		this.city = city;
+	}
+
+	public Integer getArea() {
+		return area;
+	}
+
+	public void setArea(Integer area) {
+		this.area = area;
+	}
+	
+	public Integer getAuditStatus() {
+		return auditStatus;
+	}
+
+	public void setAuditStatus(Integer auditStatus) {
+		this.auditStatus = auditStatus;
+	}
+
+	public Integer getProcess() {
+		return process;
+	}
+
+	public void setProcess(Integer process) {
+		this.process = process;
+	}
+
+	public Integer getWrongCount() {
+		return wrongCount;
+	}
+
+	public void setWrongCount(Integer wrongCount) {
+		this.wrongCount = wrongCount;
+	}
+
+	public String getMobile() {
+		return mobile;
+	}
+
+	public void setMobile(String mobile) {
+		this.mobile = mobile;
+	}
+
+	public String getIdentifyName() {
+		return identifyName;
+	}
+
+	public void setIdentifyName(String identifyName) {
+		this.identifyName = identifyName;
+	}
+
+	public String getEmail() {
+		return email;
+	}
+
+	public void setEmail(String email) {
+		this.email = email;
+	}
+
+	public String getIntroduction() {
+		return introduction;
+	}
+
+	public void setIntroduction(String introduction) {
+		this.introduction = introduction;
+	}
+
+	public String getHeadPortraitUrl() {
+		if(headPortraitUrl!=null && !headPortraitUrl.contains("."))return null;
+		return headPortraitUrl;
+	}
+
+	public void setHeadPortraitUrl(String headPortraitUrl) {
+		this.headPortraitUrl = headPortraitUrl;
+	}
+
+	public String getSocietyTag() {
+		return societyTag;
+	}
+
+	public void setSocietyTag(String societyTag) {
+		this.societyTag = societyTag;
+	}
+
+	public Integer getIndustry() {
+		return industry;
+	}
+
+	public void setIndustry(Integer industry) {
+		this.industry = industry;
+	}
+
+	public String getPostalAddress() {
+		return postalAddress;
+	}
+
+	public void setPostalAddress(String postalAddress) {
+		this.postalAddress = postalAddress;
+	}
+
+	public String getFixedTel() {
+		return fixedTel;
+	}
+
+	public void setFixedTel(String fixedTel) {
+		this.fixedTel = fixedTel;
+	}
+
+	public String getQq() {
+		return qq;
+	}
+
+	public void setQq(String qq) {
+		this.qq = qq;
+	}
+
+	public Integer getAuthentication() {
+		return authentication;
+	}
+
+	public void setAuthentication(Integer authentication) {
+		this.authentication = authentication;
+	}
+}

+ 240 - 239
src/main/java/com/goafanti/user/bo/UserPartnerDetailBo.java

@@ -1,239 +1,240 @@
-package com.goafanti.user.bo;
-
-public class UserPartnerDetailBo {
-	private String uid;
-	
-	private String	username;
-
-	private Integer	province;
-	
-	private String	provinceS;
-
-	private Long	number;
-
-	private Integer	city;
-
-	private Integer	area;
-
-	private String	engagedField;
-
-	private String	personalProfile;
-
-	private Integer	level;
-
-	private String	abilityLabel;
-
-	private String	personPortraitUrl;
-
-	private String	lifePhotoUrl;
-
-	private String	interestId;
-	
-	/**用户名**/
-	private String userName;
-	/**工作单位**/
-	private String workUnit;
-	/**职位**/
-	private String position;
-	/**成就**/
-	private String achievement;
-	/**职业资格**/
-	private String qualification;
-	/**毕业院校**/
-	private String graduate_school;
-	/**专业类别**/
-	private String major_category;
-	/**个人、单位**/
-	private String type;
-	
-	public String getType() {
-		return type;
-	}
-
-	public void setType(String type) {
-		this.type = type;
-	}
-
-	public String getGraduate_school() {
-		return graduate_school;
-	}
-
-	public void setGraduate_school(String graduate_school) {
-		this.graduate_school = graduate_school;
-	}
-
-	public String getMajor_category() {
-		return major_category;
-	}
-
-	public void setMajor_category(String major_category) {
-		this.major_category = major_category;
-	}
-
-	public String getQualification() {
-		return qualification;
-	}
-
-	public void setQualification(String qualification) {
-		this.qualification = qualification;
-	}
-
-	public String getInterestId() {
-		return interestId;
-	}
-
-	public void setInterestId(String interestId) {
-		this.interestId = interestId;
-	}
-
-	public String getUsername() {
-		return username;
-	}
-
-	public void setUsername(String username) {
-		this.username = username;
-	}
-
-	public Integer getProvince() {
-		return province;
-	}
-
-	public void setProvince(Integer province) {
-		this.province = province;
-	}
-
-	public Integer getCity() {
-		return city;
-	}
-
-	public void setCity(Integer city) {
-		this.city = city;
-	}
-
-	public Integer getArea() {
-		return area;
-	}
-
-	public void setArea(Integer area) {
-		this.area = area;
-	}
-
-	public String getEngagedField() {
-		return engagedField;
-	}
-
-	public void setEngagedField(String engagedField) {
-		this.engagedField = engagedField;
-	}
-
-	public String getPersonalProfile() {
-		return personalProfile;
-	}
-
-	public void setPersonalProfile(String personalProfile) {
-		this.personalProfile = personalProfile;
-	}
-
-	public Integer getLevel() {
-		return level;
-	}
-
-	public void setLevel(Integer level) {
-		this.level = level;
-	}
-
-	public String getAbilityLabel() {
-		return abilityLabel;
-	}
-
-	public void setAbilityLabel(String abilityLabel) {
-		this.abilityLabel = abilityLabel;
-	}
-
-	public String getPersonPortraitUrl() {
-		return personPortraitUrl;
-	}
-
-	public void setPersonPortraitUrl(String personPortraitUrl) {
-		this.personPortraitUrl = personPortraitUrl;
-	}
-
-	public String getLifePhotoUrl() {
-		return lifePhotoUrl;
-	}
-
-	public void setLifePhotoUrl(String lifePhotoUrl) {
-		this.lifePhotoUrl = lifePhotoUrl;
-	}
-
-	public Long getNumber() {
-		return number;
-	}
-
-	public void setNumber(Long number) {
-		this.number = number;
-	}
-
-	public String getUserName() {
-		return userName;
-	}
-
-	public void setUserName(String userName) {
-		this.userName = userName;
-	}
-
-	public String getWorkUnit() {
-		return workUnit;
-	}
-
-	public void setWorkUnit(String workUnit) {
-		this.workUnit = workUnit;
-	}
-
-	public String getPosition() {
-		return position;
-	}
-
-	public void setPosition(String position) {
-		this.position = position;
-	}
-
-	public String getAchievement() {
-		return achievement;
-	}
-
-	public void setAchievement(String achievement) {
-		this.achievement = achievement;
-	}
-
-	public String getProvinceS() {
-		return provinceS;
-	}
-
-	public void setProvinceS(String provinceS) {
-		this.provinceS = provinceS;
-	}
-	
-	
-
-	public String getUid() {
-		return uid;
-	}
-
-	public void setUid(String uid) {
-		this.uid = uid;
-	}
-
-	@Override
-	public String toString() {
-		return "reuserPartner [username=" + username + ", province=" + province + ", provinceS=" + provinceS
-				+ ", number=" + number + ", city=" + city + ", area=" + area + ", engagedField=" + engagedField
-				+ ", personalProfile=" + personalProfile + ", level=" + level + ", abilityLabel=" + abilityLabel
-				+ ", personPortraitUrl=" + personPortraitUrl + ", lifePhotoUrl=" + lifePhotoUrl + ", interestId="
-				+ interestId + ", userName=" + userName + ", workUnit=" + workUnit + ", position=" + position
-				+ ", achievement=" + achievement + "]";
-	}
-
-	
-	
-}
+package com.goafanti.user.bo;
+
+public class UserPartnerDetailBo {
+	private String uid;
+	
+	private String	username;
+
+	private Integer	province;
+	
+	private String	provinceS;
+
+	private Long	number;
+
+	private Integer	city;
+
+	private Integer	area;
+
+	private String	engagedField;
+
+	private String	personalProfile;
+
+	private Integer	level;
+
+	private String	abilityLabel;
+
+	private String	personPortraitUrl;
+
+	private String	lifePhotoUrl;
+
+	private String	interestId;
+	
+	/**用户名**/
+	private String userName;
+	/**工作单位**/
+	private String workUnit;
+	/**职位**/
+	private String position;
+	/**成就**/
+	private String achievement;
+	/**职业资格**/
+	private String qualification;
+	/**毕业院校**/
+	private String graduate_school;
+	/**专业类别**/
+	private String major_category;
+	/**个人、单位**/
+	private String type;
+	
+	public String getType() {
+		return type;
+	}
+
+	public void setType(String type) {
+		this.type = type;
+	}
+
+	public String getGraduate_school() {
+		return graduate_school;
+	}
+
+	public void setGraduate_school(String graduate_school) {
+		this.graduate_school = graduate_school;
+	}
+
+	public String getMajor_category() {
+		return major_category;
+	}
+
+	public void setMajor_category(String major_category) {
+		this.major_category = major_category;
+	}
+
+	public String getQualification() {
+		return qualification;
+	}
+
+	public void setQualification(String qualification) {
+		this.qualification = qualification;
+	}
+
+	public String getInterestId() {
+		return interestId;
+	}
+
+	public void setInterestId(String interestId) {
+		this.interestId = interestId;
+	}
+
+	public String getUsername() {
+		return username;
+	}
+
+	public void setUsername(String username) {
+		this.username = username;
+	}
+
+	public Integer getProvince() {
+		return province;
+	}
+
+	public void setProvince(Integer province) {
+		this.province = province;
+	}
+
+	public Integer getCity() {
+		return city;
+	}
+
+	public void setCity(Integer city) {
+		this.city = city;
+	}
+
+	public Integer getArea() {
+		return area;
+	}
+
+	public void setArea(Integer area) {
+		this.area = area;
+	}
+
+	public String getEngagedField() {
+		return engagedField;
+	}
+
+	public void setEngagedField(String engagedField) {
+		this.engagedField = engagedField;
+	}
+
+	public String getPersonalProfile() {
+		return personalProfile;
+	}
+
+	public void setPersonalProfile(String personalProfile) {
+		this.personalProfile = personalProfile;
+	}
+
+	public Integer getLevel() {
+		return level;
+	}
+
+	public void setLevel(Integer level) {
+		this.level = level;
+	}
+
+	public String getAbilityLabel() {
+		return abilityLabel;
+	}
+
+	public void setAbilityLabel(String abilityLabel) {
+		this.abilityLabel = abilityLabel;
+	}
+
+	public String getPersonPortraitUrl() {
+		if(personPortraitUrl!=null && !personPortraitUrl.contains("."))return null;
+		return personPortraitUrl;
+	}
+
+	public void setPersonPortraitUrl(String personPortraitUrl) {
+		this.personPortraitUrl = personPortraitUrl;
+	}
+
+	public String getLifePhotoUrl() {
+		return lifePhotoUrl;
+	}
+
+	public void setLifePhotoUrl(String lifePhotoUrl) {
+		this.lifePhotoUrl = lifePhotoUrl;
+	}
+
+	public Long getNumber() {
+		return number;
+	}
+
+	public void setNumber(Long number) {
+		this.number = number;
+	}
+
+	public String getUserName() {
+		return userName;
+	}
+
+	public void setUserName(String userName) {
+		this.userName = userName;
+	}
+
+	public String getWorkUnit() {
+		return workUnit;
+	}
+
+	public void setWorkUnit(String workUnit) {
+		this.workUnit = workUnit;
+	}
+
+	public String getPosition() {
+		return position;
+	}
+
+	public void setPosition(String position) {
+		this.position = position;
+	}
+
+	public String getAchievement() {
+		return achievement;
+	}
+
+	public void setAchievement(String achievement) {
+		this.achievement = achievement;
+	}
+
+	public String getProvinceS() {
+		return provinceS;
+	}
+
+	public void setProvinceS(String provinceS) {
+		this.provinceS = provinceS;
+	}
+	
+	
+
+	public String getUid() {
+		return uid;
+	}
+
+	public void setUid(String uid) {
+		this.uid = uid;
+	}
+
+	@Override
+	public String toString() {
+		return "reuserPartner [username=" + username + ", province=" + province + ", provinceS=" + provinceS
+				+ ", number=" + number + ", city=" + city + ", area=" + area + ", engagedField=" + engagedField
+				+ ", personalProfile=" + personalProfile + ", level=" + level + ", abilityLabel=" + abilityLabel
+				+ ", personPortraitUrl=" + personPortraitUrl + ", lifePhotoUrl=" + lifePhotoUrl + ", interestId="
+				+ interestId + ", userName=" + userName + ", workUnit=" + workUnit + ", position=" + position
+				+ ", achievement=" + achievement + "]";
+	}
+
+	
+	
+}

+ 2 - 1
src/main/java/com/goafanti/user/service/UserIdentityService.java

@@ -64,5 +64,6 @@ public interface UserIdentityService {
 	List<consultantListBo> getConsultantList(int size);
 	
 	List<ReletivelyIndustry>selectIndustryReletively();
-	
+
+	Pagination<UserIdentityBo>listInterestedExpert(Integer pageNo,Integer pageSize);
 }

+ 62 - 58
src/main/java/com/goafanti/user/service/UserService.java

@@ -1,58 +1,62 @@
-package com.goafanti.user.service;
-
-import java.util.List;
-import java.util.Map;
-
-import com.goafanti.app.bo.UserBasicInfo;
-import com.goafanti.common.model.User;
-import com.goafanti.user.bo.OrgUnitNames;
-import com.goafanti.user.bo.UserBaseBo;
-import com.goafanti.user.bo.UserDownLoadBo;
-import com.goafanti.user.bo.UserNames;
-import com.goafanti.user.bo.UserPageHomeBo;
-import com.goafanti.user.bo.UserPartnerDetailBo;
-
-public interface UserService {
-
-	User selectByPrimaryKey(String userId);
-
-	String selectNumberByPrimaryKey(String userId);
-
-	int updateByPrimaryKeySelective(User u);
-
-	User insert(User user);
-
-	User selectByMobieAndType(String mobile, Integer type);
-	
-	User selectByNameAndType(String username, Integer type);
-
-	User insertRegister(User user, String unitName, String contacts);
-
-	UserBaseBo selectUserBase(String userId);
-	
-	UserPageHomeBo selectUserPageHomeBoByUserId(String userId);
-
-	UserDownLoadBo selectUserDownLoadBoByUserId(String userId);
-
-	List<OrgUnitNames> selectDemandUnitNames();
-
-	List<UserNames> selectDemandUserNames();
-
-	Map<String, String> selectAchievementUserOwner(String name);
-
-	List<OrgUnitNames> selectAchievementOrgOwner(String name);
-
-	String findUserNameByNameAndMobile(String name, String mobile);
-
-	String findOrgNameByNameAndMobile(String name, String mobile);
-
-	UserBasicInfo selectBaseInfo();
-	
-	User selectByNumber(String easemobName);
-	
-	List<User> selectUserByRoleName(String roleName);
-	
-	UserPartnerDetailBo findUserPartnerDetail(String uid);
-	
-	List<UserPartnerDetailBo> findUserPartner();
-}
+package com.goafanti.user.service;
+
+import java.util.List;
+import java.util.Map;
+
+import com.goafanti.app.bo.UserBasicInfo;
+import com.goafanti.common.model.User;
+import com.goafanti.core.mybatis.page.Pagination;
+import com.goafanti.user.bo.OrgUnitNames;
+import com.goafanti.user.bo.UserBaseBo;
+import com.goafanti.user.bo.UserDownLoadBo;
+import com.goafanti.user.bo.UserIdentityBo;
+import com.goafanti.user.bo.UserNames;
+import com.goafanti.user.bo.UserPageHomeBo;
+import com.goafanti.user.bo.UserPartnerDetailBo;
+
+public interface UserService {
+
+	User selectByPrimaryKey(String userId);
+
+	String selectNumberByPrimaryKey(String userId);
+
+	int updateByPrimaryKeySelective(User u);
+
+	User insert(User user);
+
+	User selectByMobieAndType(String mobile, Integer type);
+	
+	User selectByNameAndType(String username, Integer type);
+
+	User insertRegister(User user, String unitName, String contacts);
+
+	UserBaseBo selectUserBase(String userId);
+	
+	UserPageHomeBo selectUserPageHomeBoByUserId(String userId);
+
+	UserDownLoadBo selectUserDownLoadBoByUserId(String userId);
+
+	List<OrgUnitNames> selectDemandUnitNames();
+
+	List<UserNames> selectDemandUserNames();
+
+	Map<String, String> selectAchievementUserOwner(String name);
+
+	List<OrgUnitNames> selectAchievementOrgOwner(String name);
+
+	String findUserNameByNameAndMobile(String name, String mobile);
+
+	String findOrgNameByNameAndMobile(String name, String mobile);
+
+	UserBasicInfo selectBaseInfo();
+	
+	User selectByNumber(String easemobName);
+	
+	List<User> selectUserByRoleName(String roleName);
+	
+	UserPartnerDetailBo findUserPartnerDetail(String uid);
+	
+	List<UserPartnerDetailBo> findUserPartner();
+	
+	
+}

+ 14 - 0
src/main/java/com/goafanti/user/service/impl/UserIdentityServiceImpl.java

@@ -475,6 +475,20 @@ public class UserIdentityServiceImpl extends BaseMybatisDao<UserIdentityMapper>
 		return industryCategoryMapper.selectIndustryReletively();
 	}
 	
+	@SuppressWarnings("unchecked")
+	@Override
+	public Pagination<UserIdentityBo> listInterestedExpert(Integer pageNo, Integer pageSize) {
+		// TODO Auto-generated method stub
+		if(pageNo==null || pageNo<1) {
+			pageNo=1;
+		}
+		if(pageSize==null ||pageSize<1) {
+			pageSize=10; 
+		}
+		 Map<String, Object> params=new HashMap<String,Object>();
+		 params.put("uid", TokenManager.getUserId());
+		return (Pagination<UserIdentityBo>) findPage("listInterestedExpert", "listInterestedExpertCount", params, pageNo, pageSize);
+	}
 	
 
 }

+ 226 - 220
src/main/java/com/goafanti/user/service/impl/UserServiceImpl.java

@@ -1,220 +1,226 @@
-package com.goafanti.user.service.impl;
-
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.cache.annotation.Cacheable;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-
-import com.goafanti.app.bo.UserBasicInfo;
-import com.goafanti.common.constant.AFTConstants;
-import com.goafanti.common.dao.OrganizationIdentityMapper;
-import com.goafanti.common.dao.UserIdentityMapper;
-import com.goafanti.common.dao.UserMapper;
-import com.goafanti.common.model.User;
-import com.goafanti.core.mybatis.BaseMybatisDao;
-import com.goafanti.core.shiro.token.TokenManager;
-import com.goafanti.user.bo.OrgUnitNames;
-import com.goafanti.user.bo.UserBaseBo;
-import com.goafanti.user.bo.UserDownLoadBo;
-import com.goafanti.user.bo.UserNames;
-import com.goafanti.user.bo.UserPageHomeBo;
-import com.goafanti.user.bo.UserPartnerDetailBo;
-import com.goafanti.user.service.UserService;
-
-@Service
-public class UserServiceImpl extends BaseMybatisDao<UserMapper> implements UserService {
-	@Autowired
-	private UserMapper						userMapper;
-	@Autowired
-	private OrganizationIdentityMapper		organizationIdentityMapper;
-	@Autowired
-	private UserIdentityMapper				userIdentityMapper;
-	@Override
-	@Transactional
-	public User insertRegister(User user, String unitName, String userName) {
-		userMapper.insert(user);
-		/*if (null != user.getType() && UserType.ORGANIZATION.getCode().equals(user.getType())) {
-			OrganizationIdentity organizationIdentity = new OrganizationIdentity();
-			organizationIdentity.setUid(user.getId());
-			organizationIdentity.setUnitName(StringUtils.isBlank(unitName) ? "" : unitName);
-			organizationIdentity.setId(UUID.randomUUID().toString());
-			organizationIdentity.setIdentityType(0);
-			organizationIdentity.setAuditStatus(0);
-			organizationIdentity.setProcess(0);
-			organizationIdentity.setWrongCount(0);
-			organizationIdentity.setListed(0);
-			organizationIdentity.setListedType(0);
-			organizationIdentityMapper.insert(organizationIdentity);
-		}
-		if (null != user.getType() && UserType.PERSONAL.getCode().equals(user.getType())) {
-			UserIdentity ui = new UserIdentity();
-			ui.setId(UUID.randomUUID().toString());
-			ui.setUid(user.getId());
-			ui.setAuditStatus(0);
-			ui.setProcess(0);
-			ui.setWrongCount(0);
-			ui.setUsername(StringUtils.isBlank(userName) ? "" : userName);
-			userIdentityMapper.insert(ui);
-		}*/
-		return user;
-	}
-
-	@Override
-	public User selectByMobieAndType(String mobile, Integer type) {
-		return userMapper.selectByMobieAndType(mobile, type);
-	}
-
-	@Override
-	public User selectByNameAndType(String username, Integer type){
-		return userMapper.selectByNameAndType(username,type);
-	}
-	
-	@Override
-	public User selectByPrimaryKey(String id) {
-		return userMapper.selectByPrimaryKey(id);
-	}
-
-	@Override
-	public int updateByPrimaryKeySelective(User u) {
-		return userMapper.updateByPrimaryKeySelective(u);
-	}
-
-	@Override
-	public User insert(User user) {
-		userMapper.insert(user);
-		return user;
-	}
-
-	@Override
-	public UserPageHomeBo selectUserPageHomeBoByUserId(String uid) {
-		UserBaseBo baseBo = userMapper.selectUserBaseByUserId(uid);
-		UserPageHomeBo homeBo = new UserPageHomeBo();
-		/*homeBo.setPatentNum(patentInfoMapper.findPatentInfoNumByUid(uid));
-		homeBo.setCopyrightNum(copyrightInfoMapper.findCopyrightInfoNumByUid(uid));
-		homeBo.setTechProjectNum(techProjectMapper.findTechProjectNumByUid(uid));
-		homeBo.setIntellectualPropertyNum(orgIntellectualPropertyMapper.findIntellectualPropertyNum(uid));*/
-		BeanUtils.copyProperties(baseBo, homeBo);
-		return homeBo;
-	}
-
-	@Override
-	public UserDownLoadBo selectUserDownLoadBoByUserId(String id) {
-		return userMapper.selectUserDownLoadBoByUserId(id);
-	}
-
-	@Override
-	public List<OrgUnitNames> selectDemandUnitNames() {
-		String aid = TokenManager.getAdminId();
-		if (TokenManager.hasRole(AFTConstants.MANAGERADMIN)) {
-			return organizationIdentityMapper.selectManagerUnitNames(aid);
-		} else {
-			if (TokenManager.hasRole(AFTConstants.SUPERADMIN)) {
-				aid = null;
-			}
-			return organizationIdentityMapper.selectAllOrgIndentity(aid);
-		}
-	}
-
-	@Override
-	public List<UserNames> selectDemandUserNames() {
-		String aid = TokenManager.getAdminId();
-		if (TokenManager.hasRole(AFTConstants.MANAGERADMIN)) {
-			return userIdentityMapper.selectManagerUserNames(aid);
-		} else {
-			if (TokenManager.hasRole(AFTConstants.SUPERADMIN)) {
-				aid = null;
-			}
-			return userIdentityMapper.selectAllUserNames(aid);
-		}
-	}
-
-	@Override
-	public Map<String, String> selectAchievementUserOwner(String name) {
-		String aid = TokenManager.getAdminId();
-		if (TokenManager.hasRole(AFTConstants.MANAGERADMIN)) {
-			return disposeAchievementUserOwner(userIdentityMapper.selectManagerAchievementUserOwner(aid, name));
-		} else {
-			if (TokenManager.hasRole(AFTConstants.SUPERADMIN) || TokenManager.hasRole(AFTConstants.TECHBROKER)
-					|| TokenManager.hasRole(AFTConstants.AUDITORADMIN)) {
-				aid = null;
-			}
-			return disposeAchievementUserOwner(userIdentityMapper.selectAchievementUserOwner(aid, name));
-		}
-	}
-
-	public List<OrgUnitNames> selectAchievementOrgOwner(String name) {
-		String aid = TokenManager.getAdminId();
-		if (TokenManager.hasRole(AFTConstants.MANAGERADMIN)) {
-			return organizationIdentityMapper.selectManagerAchievementOrgOwner(aid, name);
-		} else {
-			if (TokenManager.hasRole(AFTConstants.SUPERADMIN) || TokenManager.hasRole(AFTConstants.TECHBROKER)
-					|| TokenManager.hasRole(AFTConstants.AUDITORADMIN)) {
-				aid = null;
-			}
-			return organizationIdentityMapper.selectAchievementOrgOwner(aid, name);
-		}
-	}
-
-	private Map<String, String> disposeAchievementUserOwner(List<UserNames> list) {
-		Map<String, String> map = new HashMap<>();
-		if (null != list && list.size() > 0) {
-			for (UserNames u : list) {
-				map.put(u.getUid(), u.getUsername() + " " + u.getMobile());
-			}
-		}
-		return map;
-	}
-
-	@Override
-	public String findUserNameByNameAndMobile(String name, String mobile) {
-		return userMapper.findUserByNameAndMobile(name, mobile);
-	}
-
-	@Override
-	public String findOrgNameByNameAndMobile(String name, String mobile) {
-		return userMapper.findOrgByNameAndMobile(name, mobile);
-	}
-
-
-	@Override
-	@Cacheable(value = "UserNumberCache", key = "'UserNumberCache:UID:'+#userId")
-	public String selectNumberByPrimaryKey(String userId) {
-		return String.valueOf(userMapper.selectNumberByPrimaryKey(userId));
-	}	
-
-	@Override
-	public UserBasicInfo selectBaseInfo() {
-		if(TokenManager.getToken() instanceof User)return userMapper.selectBaseInfo(TokenManager.getUserId());
-		return null;
-	}
-	@Override
-	public List<User> selectUserByRoleName(String roleName){
-		return userMapper.selectUserByRoleName(roleName);
-	}
-
-	@Override
-	public User selectByNumber(String easemobName) {
-		return userMapper.selectByNumber(easemobName);
-	}
-
-	@Override
-	public UserBaseBo selectUserBase(String userId) {
-		 
-		return userMapper.selectUserBaseByUserId(userId);
-	}
-	
-	@Override
-	public UserPartnerDetailBo findUserPartnerDetail(String uid) {
-		return userMapper.findUserPartnerDetail(uid);
-	}
-	
-	@Override
-	public List<UserPartnerDetailBo> findUserPartner() {
-		return userMapper.findUserPartner();
-	}
-}
+package com.goafanti.user.service.impl;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.cache.annotation.Cacheable;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import com.goafanti.app.bo.UserBasicInfo;
+import com.goafanti.common.constant.AFTConstants;
+import com.goafanti.common.dao.OrganizationIdentityMapper;
+import com.goafanti.common.dao.UserIdentityMapper;
+import com.goafanti.common.dao.UserMapper;
+import com.goafanti.common.model.User;
+import com.goafanti.core.mybatis.BaseMybatisDao;
+import com.goafanti.core.mybatis.page.Pagination;
+import com.goafanti.core.shiro.token.TokenManager;
+import com.goafanti.user.bo.OrgUnitNames;
+import com.goafanti.user.bo.UserBaseBo;
+import com.goafanti.user.bo.UserDownLoadBo;
+import com.goafanti.user.bo.UserIdentityBo;
+import com.goafanti.user.bo.UserNames;
+import com.goafanti.user.bo.UserPageHomeBo;
+import com.goafanti.user.bo.UserPartnerDetailBo;
+import com.goafanti.user.service.UserService;
+
+@Service
+public class UserServiceImpl extends BaseMybatisDao<UserMapper> implements UserService {
+	@Autowired
+	private UserMapper						userMapper;
+	@Autowired
+	private OrganizationIdentityMapper		organizationIdentityMapper;
+	@Autowired
+	private UserIdentityMapper				userIdentityMapper;
+	@Override
+	@Transactional
+	public User insertRegister(User user, String unitName, String userName) {
+		userMapper.insert(user);
+		/*if (null != user.getType() && UserType.ORGANIZATION.getCode().equals(user.getType())) {
+			OrganizationIdentity organizationIdentity = new OrganizationIdentity();
+			organizationIdentity.setUid(user.getId());
+			organizationIdentity.setUnitName(StringUtils.isBlank(unitName) ? "" : unitName);
+			organizationIdentity.setId(UUID.randomUUID().toString());
+			organizationIdentity.setIdentityType(0);
+			organizationIdentity.setAuditStatus(0);
+			organizationIdentity.setProcess(0);
+			organizationIdentity.setWrongCount(0);
+			organizationIdentity.setListed(0);
+			organizationIdentity.setListedType(0);
+			organizationIdentityMapper.insert(organizationIdentity);
+		}
+		if (null != user.getType() && UserType.PERSONAL.getCode().equals(user.getType())) {
+			UserIdentity ui = new UserIdentity();
+			ui.setId(UUID.randomUUID().toString());
+			ui.setUid(user.getId());
+			ui.setAuditStatus(0);
+			ui.setProcess(0);
+			ui.setWrongCount(0);
+			ui.setUsername(StringUtils.isBlank(userName) ? "" : userName);
+			userIdentityMapper.insert(ui);
+		}*/
+		return user;
+	}
+
+	@Override
+	public User selectByMobieAndType(String mobile, Integer type) {
+		return userMapper.selectByMobieAndType(mobile, type);
+	}
+
+	@Override
+	public User selectByNameAndType(String username, Integer type){
+		return userMapper.selectByNameAndType(username,type);
+	}
+	
+	@Override
+	public User selectByPrimaryKey(String id) {
+		return userMapper.selectByPrimaryKey(id);
+	}
+
+	@Override
+	public int updateByPrimaryKeySelective(User u) {
+		return userMapper.updateByPrimaryKeySelective(u);
+	}
+
+	@Override
+	public User insert(User user) {
+		userMapper.insert(user);
+		return user;
+	}
+
+	@Override
+	public UserPageHomeBo selectUserPageHomeBoByUserId(String uid) {
+		UserBaseBo baseBo = userMapper.selectUserBaseByUserId(uid);
+		UserPageHomeBo homeBo = new UserPageHomeBo();
+		/*homeBo.setPatentNum(patentInfoMapper.findPatentInfoNumByUid(uid));
+		homeBo.setCopyrightNum(copyrightInfoMapper.findCopyrightInfoNumByUid(uid));
+		homeBo.setTechProjectNum(techProjectMapper.findTechProjectNumByUid(uid));
+		homeBo.setIntellectualPropertyNum(orgIntellectualPropertyMapper.findIntellectualPropertyNum(uid));*/
+		BeanUtils.copyProperties(baseBo, homeBo);
+		return homeBo;
+	}
+
+	@Override
+	public UserDownLoadBo selectUserDownLoadBoByUserId(String id) {
+		return userMapper.selectUserDownLoadBoByUserId(id);
+	}
+
+	@Override
+	public List<OrgUnitNames> selectDemandUnitNames() {
+		String aid = TokenManager.getAdminId();
+		if (TokenManager.hasRole(AFTConstants.MANAGERADMIN)) {
+			return organizationIdentityMapper.selectManagerUnitNames(aid);
+		} else {
+			if (TokenManager.hasRole(AFTConstants.SUPERADMIN)) {
+				aid = null;
+			}
+			return organizationIdentityMapper.selectAllOrgIndentity(aid);
+		}
+	}
+
+	@Override
+	public List<UserNames> selectDemandUserNames() {
+		String aid = TokenManager.getAdminId();
+		if (TokenManager.hasRole(AFTConstants.MANAGERADMIN)) {
+			return userIdentityMapper.selectManagerUserNames(aid);
+		} else {
+			if (TokenManager.hasRole(AFTConstants.SUPERADMIN)) {
+				aid = null;
+			}
+			return userIdentityMapper.selectAllUserNames(aid);
+		}
+	}
+
+	@Override
+	public Map<String, String> selectAchievementUserOwner(String name) {
+		String aid = TokenManager.getAdminId();
+		if (TokenManager.hasRole(AFTConstants.MANAGERADMIN)) {
+			return disposeAchievementUserOwner(userIdentityMapper.selectManagerAchievementUserOwner(aid, name));
+		} else {
+			if (TokenManager.hasRole(AFTConstants.SUPERADMIN) || TokenManager.hasRole(AFTConstants.TECHBROKER)
+					|| TokenManager.hasRole(AFTConstants.AUDITORADMIN)) {
+				aid = null;
+			}
+			return disposeAchievementUserOwner(userIdentityMapper.selectAchievementUserOwner(aid, name));
+		}
+	}
+
+	public List<OrgUnitNames> selectAchievementOrgOwner(String name) {
+		String aid = TokenManager.getAdminId();
+		if (TokenManager.hasRole(AFTConstants.MANAGERADMIN)) {
+			return organizationIdentityMapper.selectManagerAchievementOrgOwner(aid, name);
+		} else {
+			if (TokenManager.hasRole(AFTConstants.SUPERADMIN) || TokenManager.hasRole(AFTConstants.TECHBROKER)
+					|| TokenManager.hasRole(AFTConstants.AUDITORADMIN)) {
+				aid = null;
+			}
+			return organizationIdentityMapper.selectAchievementOrgOwner(aid, name);
+		}
+	}
+
+	private Map<String, String> disposeAchievementUserOwner(List<UserNames> list) {
+		Map<String, String> map = new HashMap<>();
+		if (null != list && list.size() > 0) {
+			for (UserNames u : list) {
+				map.put(u.getUid(), u.getUsername() + " " + u.getMobile());
+			}
+		}
+		return map;
+	}
+
+	@Override
+	public String findUserNameByNameAndMobile(String name, String mobile) {
+		return userMapper.findUserByNameAndMobile(name, mobile);
+	}
+
+	@Override
+	public String findOrgNameByNameAndMobile(String name, String mobile) {
+		return userMapper.findOrgByNameAndMobile(name, mobile);
+	}
+
+
+	@Override
+	@Cacheable(value = "UserNumberCache", key = "'UserNumberCache:UID:'+#userId")
+	public String selectNumberByPrimaryKey(String userId) {
+		return String.valueOf(userMapper.selectNumberByPrimaryKey(userId));
+	}	
+
+	@Override
+	public UserBasicInfo selectBaseInfo() {
+		if(TokenManager.getToken() instanceof User)return userMapper.selectBaseInfo(TokenManager.getUserId());
+		return null;
+	}
+	@Override
+	public List<User> selectUserByRoleName(String roleName){
+		return userMapper.selectUserByRoleName(roleName);
+	}
+
+	@Override
+	public User selectByNumber(String easemobName) {
+		return userMapper.selectByNumber(easemobName);
+	}
+
+	@Override
+	public UserBaseBo selectUserBase(String userId) {
+		 
+		return userMapper.selectUserBaseByUserId(userId);
+	}
+	
+	@Override
+	public UserPartnerDetailBo findUserPartnerDetail(String uid) {
+		return userMapper.findUserPartnerDetail(uid);
+	}
+	
+	@Override
+	public List<UserPartnerDetailBo> findUserPartner() {
+		return userMapper.findUserPartner();
+	}
+
+
+	
+	
+}

+ 3 - 1
src/main/webapp/WEB-INF/views/common.html

@@ -5,7 +5,9 @@
 
 <head th:fragment="header(title, link)">
   <meta charset="UTF-8">
-  <link rel="icon" th:href="${portalHost+'/img/ico_logo.ico'}" />
+<!--   <link rel="icon" th:href="${portalHost+'/img/ico_logo.ico'}" /> -->
+  <link rel="icon" type="image/png" th:href="${portalHost+'/img/ico_logo.png'}" sizes="16x16">
+
   <meta name="Keywords" content=""/>
 	<meta name="Description" content=""/>
     <meta name="viewport" content="width=device-width, initial-scale=1.0">

+ 1 - 1
src/main/webapp/WEB-INF/views/portal/index.html

@@ -258,7 +258,7 @@
 				
 			</div>
 			<img th:src="${portalHost+'/img/indexNew12.jpg'}" alt="" class="indexServe_right"/>
-			<img th:src="${portalHost+'/img/indexNew13.jpg'}" alt="" class="indexServe_bottom"/>
+			<img th:src="${portalHost+'/img/indexNew1300.png'}" alt="" class="indexServe_bottom"/>
 		</div>
 		<div id="indexPolicy">
 			<div class="indexServe_title">

File diff suppressed because it is too large
+ 1 - 1
src/main/webapp/WEB-INF/views/portal/service/serviceDetails.html


File diff suppressed because it is too large
+ 1 - 1
src/main/webapp/WEB-INF/views/portal/service/serviceIndex.html


+ 3 - 0
src/main/webapp/WEB-INF/views/portal/technologyTrading/achievementDetail.html

@@ -39,6 +39,9 @@
 						<div th:if="${achievementdetail.firstPicture} != null ">
 							<img th:src= "${avatarUploadHost+achievementdetail.firstPicture}"alt=""  />
 						</div>
+<!-- 						     <div class="collection"> -->
+<!--              <p><span class="heart"></span><span>收藏</span></p> -->
+<!--         </div> -->
 					</div>
 					<div class="basic">
 						<div class="inline_span">

+ 68 - 68
src/main/webapp/WEB-INF/views/portal/technologyTrading/demand.html

@@ -55,9 +55,9 @@
 				<div>
 					<ol>
 						<li><a href="#technology">企业技术需求</a></li>
-						<li><a href="#industry">地区产业需求</a></li>
+<!-- 						<li><a href="#industry">地区产业需求</a></li> -->
 						<li><a href="#study">产学研合作需求</a></li>
-						<li><a href="#capital">研产资金需求</a></li>
+<!-- 						<li><a href="#capital">研产资金需求</a></li> -->
 						<li><a href="#personnel">技术人才需求</a></li>
 					</ol>
 				</div>
@@ -294,38 +294,38 @@
 		</div>
 	</div>
 	<!-- 地区产业需求 -->
-	<div class="areaDemand" id="industry">
-		<div class="container">
-			<h3>
-				<img th:src="${portalHost+'/img/newMenu/demand-13.jpg'}" alt="">
-			</h3>
-		</div>
-		<div class="fullImg">
-			<img th:src="${portalHost+'/img/newMenu/demand-16.jpg'}" alt="" />
-			<div class="fullImgTxt container">
-				<ul class="row">
-					<li class="col-md-3" th:each="areaDemand,iterStat:${areaDemandList}">
-						<a th:href="@{/portal/technologyTrading/demandDetail(id=${areaDemand.id},type=${areaDemand.dataCategory})}">
-						<div class="warpImg">
-							<div th:if="${iterStat.even}" class="btnAreaBj">
-								<span class="btnArea" th:text="${areaDemand.name}"></span>
-							</div>
-							<div class="introduction">
-								<p th:text="${areaDemand.problemDes}"></p>
-							</div>
-							<div th:if="${iterStat.odd}" class="btnAreaBj">
-								<span class="btnArea" th:text="${areaDemand.name}"></span>
-							</div>
-							<div class="btnSee">
-								<span>立即查看产业需求</span>
-							</div>
-						</div>
-						</a>
-					</li>
-				</ul>
-			</div>
-		</div>
-	</div>
+<!-- 	<div class="areaDemand" id="industry"> -->
+<!-- 		<div class="container"> -->
+<!-- 			<h3> -->
+<!-- 				<img th:src="${portalHost+'/img/newMenu/demand-13.jpg'}" alt=""> -->
+<!-- 			</h3> -->
+<!-- 		</div> -->
+<!-- 		<div class="fullImg"> -->
+<!-- 			<img th:src="${portalHost+'/img/newMenu/demand-16.jpg'}" alt="" /> -->
+<!-- 			<div class="fullImgTxt container"> -->
+<!-- 				<ul class="row"> -->
+<!-- 					<li class="col-md-3" th:each="areaDemand,iterStat:${areaDemandList}"> -->
+<!-- 						<a th:href="@{/portal/technologyTrading/demandDetail(id=${areaDemand.id},type=${areaDemand.dataCategory})}"> -->
+<!-- 						<div class="warpImg"> -->
+<!-- 							<div th:if="${iterStat.even}" class="btnAreaBj"> -->
+<!-- 								<span class="btnArea" th:text="${areaDemand.name}"></span> -->
+<!-- 							</div> -->
+<!-- 							<div class="introduction"> -->
+<!-- 								<p th:text="${areaDemand.problemDes}"></p> -->
+<!-- 							</div> -->
+<!-- 							<div th:if="${iterStat.odd}" class="btnAreaBj"> -->
+<!-- 								<span class="btnArea" th:text="${areaDemand.name}"></span> -->
+<!-- 							</div> -->
+<!-- 							<div class="btnSee"> -->
+<!-- 								<span>立即查看产业需求</span> -->
+<!-- 							</div> -->
+<!-- 						</div> -->
+<!-- 						</a> -->
+<!-- 					</li> -->
+<!-- 				</ul> -->
+<!-- 			</div> -->
+<!-- 		</div> -->
+<!-- 	</div> -->
 	<div class="container">
 		<div class="study" id="study">
 			<h4>
@@ -356,41 +356,41 @@
 				<img th:src="${portalHost+'/img/newMenu/demand-18.jpg'}" alt="">
 			</div>
 		</div>
-		<div class="study capital" id="capital">
-			<h4>
-				研产资金需求 <a th:href="@{/portal/technologyTrading/demandList}">查看更多 > </a>
-			</h4>
-		</div>
-		<div class="capitalMain row">
-			<div class="col-sm-2">
-				<img th:src="${portalHost+'/img/newMenu/demand-19.jpg'}" alt="">
-			</div>
-			<div class="col-sm-10">
-				<ol class="row">
+<!-- 		<div class="study capital" id="capital"> -->
+<!-- 			<h4> -->
+<!-- 				研产资金需求 <a th:href="@{/portal/technologyTrading/demandList}">查看更多 > </a> -->
+<!-- 			</h4> -->
+<!-- 		</div> -->
+<!-- 		<div class="capitalMain row"> -->
+<!-- 			<div class="col-sm-2"> -->
+<!-- 				<img th:src="${portalHost+'/img/newMenu/demand-19.jpg'}" alt=""> -->
+<!-- 			</div> -->
+<!-- 			<div class="col-sm-10"> -->
+<!-- 				<ol class="row"> -->
 					
-					<li class="col-sm-3" th:each="fundDemand:${fundDemandList}">
-						<a th:href="@{/portal/technologyTrading/demandDetail(id=${fundDemand.id},type=${fundDemand.dataCategory})}">
-						<div class="capital-administration">
-							<div class="capitalBj">
-								<h4 th:text="${fundDemand.name}"></h4>
-								<p th:text="${fundDemand.problemDes}"></p>
-								<div class="float-left">
-									<p>期望资金</p>
-									<p th:text="${fundDemand.fundForCrowd}==null?'期望资金:面议':${'¥'+fundDemand.fundForCrowd+'万'}"></p>
-								</div>
-								<div class="float-right">
-									<p>资金用途</p>
-									<p th:if="${fundDemand.researchType}==null">未知用途</p>
-									<p th:if="${fundDemand.researchType}!=null" th:text="${fundDemand.researchType}==0?'研发':'扩大再生产'"></p>
-								</div>
-							</div>
-							<a  th:href="@{/portal/technologyTrading/demandDetail(id=${fundDemand.id},type=${fundDemand.dataCategory})}">立即查看</a>
-						</div>
-						</a>
-					</li>
-				</ol>
-			</div>
-		</div>
+<!-- 					<li class="col-sm-3" th:each="fundDemand:${fundDemandList}"> -->
+<!-- 						<a th:href="@{/portal/technologyTrading/demandDetail(id=${fundDemand.id},type=${fundDemand.dataCategory})}"> -->
+<!-- 						<div class="capital-administration"> -->
+<!-- 							<div class="capitalBj"> -->
+<!-- 								<h4 th:text="${fundDemand.name}"></h4> -->
+<!-- 								<p th:text="${fundDemand.problemDes}"></p> -->
+<!-- 								<div class="float-left"> -->
+<!-- 									<p>期望资金</p> -->
+<!-- 									<p th:text="${fundDemand.fundForCrowd}==null?'期望资金:面议':${'¥'+fundDemand.fundForCrowd+'万'}"></p> -->
+<!-- 								</div> -->
+<!-- 								<div class="float-right"> -->
+<!-- 									<p>资金用途</p> -->
+<!-- 									<p th:if="${fundDemand.researchType}==null">未知用途</p> -->
+<!-- 									<p th:if="${fundDemand.researchType}!=null" th:text="${fundDemand.researchType}==0?'研发':'扩大再生产'"></p> -->
+<!-- 								</div> -->
+<!-- 							</div> -->
+<!-- 							<a  th:href="@{/portal/technologyTrading/demandDetail(id=${fundDemand.id},type=${fundDemand.dataCategory})}">立即查看</a> -->
+<!-- 						</div> -->
+<!-- 						</a> -->
+<!-- 					</li> -->
+<!-- 				</ol> -->
+<!-- 			</div> -->
+<!-- 		</div> -->
 		<div class="study capital" id="personnel">
 			<h4>
 				技术人才需求 <a th:href="@{/portal/technologyTrading/demandList}">查看更多 > </a>

+ 4 - 1
src/main/webapp/WEB-INF/views/portal/technologyTrading/demandDetail.html

@@ -32,6 +32,9 @@
 						<div th:if="${demand.firstPic} != null " >
 							<img th:src= "${avatarUploadHost+demand.firstPic}"alt="" />
 						</div>
+<!-- 						<div class="collection"> -->
+<!-- 				             <p><span class="heart"></span><span>收藏</span></p> -->
+<!-- 				        </div> -->
 					</div>
 					<div class="basic">
 						<div>
@@ -54,7 +57,7 @@
 							<input type="hidden" th:typ="${demand.dataCategory}" id="ownerType_" />
 							<input type="hidden" th:isLogin="${!isLogin}" id="isLogin" />
 	                    </div>
-
+ 
 					</div>
 					<div class="fine">
 						<div class="fine_title">热门需求</div>

+ 7 - 19
src/main/webapp/WEB-INF/views/user/subscriberDetail.html

@@ -20,7 +20,7 @@
 	<div class="think_man">
 		<img th:src="${portalHost + '/img/thinkTank_er1.png'}" alt="" />			
 		<div th:if="${rePartnerDetail.personPortraitUrl == null or rePartnerDetail.personPortraitUrl == ''}" class="man_img">
-			<img th:src="${avatarUploadHost+ '/default/person.jpg'}" alt="" />
+			<img th:src="${portalHost+ '/img/initPic/policyInit.jpg'}" alt="" />
 		</div>
 		<div th:if="${rePartnerDetail.personPortraitUrl != null and rePartnerDetail.personPortraitUrl != ''}" class="man_img">
 			<img th:src="${avatarUploadHost+ rePartnerDetail.personPortraitUrl}" alt="" />
@@ -36,22 +36,12 @@
 			</div>
 			<div class="bacs-img" th:if="${rePartnerDetail.personPortraitUrl == null or rePartnerDetail.personPortraitUrl ==''}">
 				<img
-						th:src="${avatarUploadHost + '/default/subscriberDetail.jpg'}"
+						th:src="${portalHost + '/img/initPic/policyInit.jpg'}"
 						alt="" />
 			</div>
-			<div>
-				<div>
-<!-- 				<span>擅长领域</span> -->
-<!-- 				<span class="lingyu" th:text="${rePartnerDetail.abilityLabel}?${rePartnerDetail.abilityLabel}:未知"></span> -->
-<!-- 				<span class="box_love"></span> -->
-<!-- 				<span class="dem_number">0</span> -->
-<!-- 				<span class="shoucang">收藏</span> -->
-<!-- 				<span class="yuejian">线下约见</span> -->
-<!-- 				<span class="cishu">32</span> -->
-<!-- 				<span class="ci">次</span>  -->
-			
-				</div>
-			</div>
+<!-- 			<div class="collection"> -->
+<!--             	 <p><span class="heart"></span><span>收藏</span></p> -->
+<!--        		</div> -->
 		</div>
 		<div class="basc_p">
 			<h4>关于智者</h4>
@@ -86,7 +76,7 @@
 		<div>
 			<div th:each="reuserPartner:${reuserPartner}">
 					<a th:href="@{/portal/subscriberDetail.html(uid=${reuserPartner.uid},type=${reuserPartner.type})}">
-						<img th:src="${reuserPartner.personPortraitUrl}?${avatarUploadHost+reuserPartner.personPortraitUrl}:${avatarUploadHost+ '/default/person.jpg'}"
+						<img th:src="${reuserPartner.personPortraitUrl}?${avatarUploadHost+reuserPartner.personPortraitUrl}:${portalHost+ '/img/initPic/policyInit.jpg'}"
 								alt="" />
 						<div class="about_name">
 							<span class="about_man" th:text="${reuserPartner.username}?${reuserPartner.username}:佚名"></span>
@@ -122,9 +112,7 @@
 		<div th:replace="common::copyright"></div>
 		<div th:replace="common::login"></div>
 	</footer>
-	<div class="smg">
-		<input type="text" name="msg" value="" id="msg" />
-	</div>
+	
 	<div th:replace="common::footer(~{::script})">
 		<script type="text/javascript" th:src="${portalHost + '/vendors.js'}"></script>
 		<script type="text/javascript" th:src="${staticHost+'/dll/dll.js'}"></script>