liliang4869 лет назад: 7
Родитель
Сommit
8d0db7d3bb
20 измененных файлов с 301 добавлено и 772 удалено
  1. 41 7
      src/main/java/com/goafanti/business/controller/AdminJtBusinessController.java
  2. 1 0
      src/main/java/com/goafanti/business/service/JtBusinessService.java
  3. 9 1
      src/main/java/com/goafanti/business/service/impl/JtBusinessServiceImpl.java
  4. 18 0
      src/main/java/com/goafanti/common/controller/WebpageController.java
  5. 2 0
      src/main/java/com/goafanti/common/dao/JtBusinessProjectMapper.java
  6. 2 0
      src/main/java/com/goafanti/common/dao/UserIdentityMapper.java
  7. 3 2
      src/main/java/com/goafanti/common/enums/AttachmentType.java
  8. 9 2
      src/main/java/com/goafanti/common/mapper/AchievementMapper.xml
  9. 17 1
      src/main/java/com/goafanti/common/mapper/DemandMapper.xml
  10. 1 1
      src/main/java/com/goafanti/common/mapper/JtBusinessCategoryMapper.xml
  11. 5 7
      src/main/java/com/goafanti/common/mapper/JtBusinessProjectMapper.xml
  12. 11 1
      src/main/java/com/goafanti/common/mapper/UserIdentityMapper.xml
  13. 10 0
      src/main/java/com/goafanti/user/bo/InputUserIdentity.java
  14. 9 0
      src/main/java/com/goafanti/user/bo/UserIdentityBo.java
  15. 2 0
      src/main/java/com/goafanti/user/service/UserIdentityService.java
  16. 6 0
      src/main/java/com/goafanti/user/service/impl/UserIdentityServiceImpl.java
  17. 103 85
      src/main/webapp/WEB-INF/views/common.html
  18. 45 453
      src/main/webapp/WEB-INF/views/portal/index.html
  19. 6 211
      src/main/webapp/WEB-INF/views/portal/technologyTrading/demand.html
  20. 1 1
      src/main/webapp/WEB-INF/views/portal/technologyTrading/index.html

+ 41 - 7
src/main/java/com/goafanti/business/controller/AdminJtBusinessController.java

@@ -4,6 +4,7 @@ import java.util.HashMap;
 import java.util.Map;
 import java.util.Map;
 
 
 import javax.annotation.Resource;
 import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
 
 
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.RequestMethod;
@@ -14,6 +15,7 @@ import com.goafanti.business.service.JtBusinessServiceWithCategoryMapper;
 import com.goafanti.common.bo.Result;
 import com.goafanti.common.bo.Result;
 import com.goafanti.common.constant.ErrorConstants;
 import com.goafanti.common.constant.ErrorConstants;
 import com.goafanti.common.controller.CertifyApiController;
 import com.goafanti.common.controller.CertifyApiController;
+import com.goafanti.common.enums.AttachmentType;
 import com.goafanti.common.model.JtBusinessCategory;
 import com.goafanti.common.model.JtBusinessCategory;
 import com.goafanti.common.model.JtBusinessProject;
 import com.goafanti.common.model.JtBusinessProject;
 
 
@@ -113,11 +115,16 @@ public class AdminJtBusinessController extends CertifyApiController{
 			result.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "层级不可为空", "层级"));
 			result.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "层级不可为空", "层级"));
 			return ;
 			return ;
 		}
 		}
-		if(jtBusinessCategory.getLayer()>1 && jtBusinessCategory.getSuperId()==null)
+		if(jtBusinessCategory.getLayer()==2 && jtBusinessCategory.getSuperId()==null)
 		{
 		{
 			result.getError().add(buildError(ErrorConstants.PARAM_ERROR, "父级品类不可为空", "父级品类"));
 			result.getError().add(buildError(ErrorConstants.PARAM_ERROR, "父级品类不可为空", "父级品类"));
 			return ;
 			return ;
 		}
 		}
+		if(jtBusinessCategory.getLayer()>3 || jtBusinessCategory.getLayer()<1)
+		{
+			result.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "层级只能为一级或二级")); 
+			return ;
+		}
 	
 	
 		
 		
 		return ;
 		return ;
@@ -150,7 +157,7 @@ public class AdminJtBusinessController extends CertifyApiController{
 		//todo  判断品类是否存在
 		//todo  判断品类是否存在
 		JtBusinessCategory jtBusinessCategory=jtBusinessService.getCategoryById(jtBusinessProject.getCategoryId());
 		JtBusinessCategory jtBusinessCategory=jtBusinessService.getCategoryById(jtBusinessProject.getCategoryId());
 		if(jtBusinessCategory==null ||jtBusinessCategory.getLayer()!=2) {
 		if(jtBusinessCategory==null ||jtBusinessCategory.getLayer()!=2) {
-			result.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "二级品类找到"));
+			result.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "二级品类找到"));
 			return ;
 			return ;
 		}
 		}
 		
 		
@@ -165,11 +172,11 @@ public class AdminJtBusinessController extends CertifyApiController{
 			result.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "城市"));
 			result.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "城市"));
 			return ;
 			return ;
 		}
 		}
-		if(jtBusinessProject.getPrice()==null)
-		{
-			result.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "价格"));
-			return ;
-		}
+//		if(jtBusinessProject.getPrice()==null)
+//		{
+//			result.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "价格"));
+//			return ;
+//		}
 		return ;
 		return ;
 	}
 	}
 	
 	
@@ -212,4 +219,31 @@ public class AdminJtBusinessController extends CertifyApiController{
 		return result;
 		return result;
 	}
 	}
 	
 	
+	@RequestMapping(value = "/uploadPicture", method = RequestMethod.POST)
+	public Result uploadPicture(HttpServletRequest req, String sign) {
+		Result res = new Result();
+		AttachmentType attachmentType = AttachmentType.getField(sign);
+
+		if (attachmentType == AttachmentType.JT_BUSINESS_PICTURE
+				) {
+			res.setData(handleFiles(res, "/jtVarieties/", false, req, sign, ""));
+		} else {
+			res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "图片"));
+		}
+		return res;
+	}
+	
+	@RequestMapping(value = "/project/uploadPicture", method = RequestMethod.POST)
+	public Result uploadProjectPicture(HttpServletRequest req, String sign) {
+		Result res = new Result();
+		AttachmentType attachmentType = AttachmentType.getField(sign);
+
+		if (attachmentType == AttachmentType.JT_PROJECT_PICTURE
+				) {
+			res.setData(handleFiles(res, "/jtProjects/", false, req, sign, ""));
+		} else {
+			res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "图片"));
+		}
+		return res;
+	}
 }
 }

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

@@ -23,4 +23,5 @@ int updateCategory(JtBusinessCategory jtBusinessCategory);
 int insertProject(JtBusinessProject jtBusinessProject);
 int insertProject(JtBusinessProject jtBusinessProject);
 int deleteProjectById(String id);
 int deleteProjectById(String id);
 int updateProject(JtBusinessProject jtBusinessProject);
 int updateProject(JtBusinessProject jtBusinessProject);
+List<JtBusinessProject>getProjectsLimit(Integer size);
 }
 }

+ 9 - 1
src/main/java/com/goafanti/business/service/impl/JtBusinessServiceImpl.java

@@ -100,7 +100,7 @@ public class JtBusinessServiceImpl  extends BaseMybatisDao<JtBusinessProjectMapp
 	public int insertCategory(JtBusinessCategory jtBusinessCategory) {
 	public int insertCategory(JtBusinessCategory jtBusinessCategory) {
 		// TODO Auto-generated method stub
 		// TODO Auto-generated method stub
 //		jtBusinessCategoryMapper.autoIncreaseSort(jtBusinessCategory.getLayer(),jtBusinessCategory.getSort()); 
 //		jtBusinessCategoryMapper.autoIncreaseSort(jtBusinessCategory.getLayer(),jtBusinessCategory.getSort()); 
-		if(jtBusinessCategory.getSuperId()!=null && jtBusinessCategory.getLayer().intValue()==1)return -2;
+		if(jtBusinessCategory.getSuperId()!=null && jtBusinessCategory.getLayer().intValue()==1 && jtBusinessCategory.getSuperId().length()>0)return -2;
 		String number="BC";
 		String number="BC";
 		if(jtBusinessCategory.getLayer().intValue()==2) {
 		if(jtBusinessCategory.getLayer().intValue()==2) {
 			//2层,先加第一层
 			//2层,先加第一层
@@ -234,5 +234,13 @@ public class JtBusinessServiceImpl  extends BaseMybatisDao<JtBusinessProjectMapp
 		return jtBusinessProjectMapper.updateByPrimaryKeySelective(jtBusinessProject);
 		return jtBusinessProjectMapper.updateByPrimaryKeySelective(jtBusinessProject);
 	}
 	}
 
 
+	@Override
+	public List<JtBusinessProject> getProjectsLimit(Integer size) {
+		// TODO Auto-generated method stub
+		return jtBusinessProjectMapper.findProjectOrderByNumber();
+	}
+
+
+
 	
 	
 }
 }

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

@@ -19,6 +19,7 @@ import com.goafanti.business.bo.JtBusinessCategoryTree;
 import com.goafanti.business.service.JtBusinessService;
 import com.goafanti.business.service.JtBusinessService;
 import com.goafanti.common.bo.PolicyEntity;
 import com.goafanti.common.bo.PolicyEntity;
 import com.goafanti.common.bo.fieldGlossoryBo;
 import com.goafanti.common.bo.fieldGlossoryBo;
+import com.goafanti.common.constant.PageConstants;
 import com.goafanti.common.model.Banners;
 import com.goafanti.common.model.Banners;
 import com.goafanti.common.model.JtBusinessCategory;
 import com.goafanti.common.model.JtBusinessCategory;
 import com.goafanti.common.model.JtBusinessProject;
 import com.goafanti.common.model.JtBusinessProject;
@@ -478,7 +479,24 @@ public class WebpageController extends BaseController {
 	
 	
 	@RequestMapping(value = "/portal/index")
 	@RequestMapping(value = "/portal/index")
 	public ModelAndView mainIndex(HttpServletRequest request, ModelAndView modelview) {
 	public ModelAndView mainIndex(HttpServletRequest request, ModelAndView modelview) {
+		String url =com.goafanti.common.utils.StringUtils.getDomainByHttpRequest(request);
 		modelview.setViewName("/portal/index");
 		modelview.setViewName("/portal/index");
+		List<JtBusinessProject> jtBusinessProjects=jtBusinessService.getProjectsLimit(5);
+		modelview.addObject("projects",jtBusinessProjects);
+		List<AchievementObject> achievementObjects=achievementService.getHotAchievements(9, url, "web_index");
+		modelview.addObject("achievements",achievementObjects);
+		List<PolicyEntity> policyEntities=achievementService.getIntellectualProperty(4);
+		modelview.addObject("policys",policyEntities);
+		List<DemandListBo> demandListBos=demandService.getHotDemand(9, url, "web_index");
+		for(DemandListBo demandListBo:demandListBos) {
+			if(demandListBo.getPictureUrl()==null || !demandListBo.getPictureUrl().contains("."))demandListBo.setPictureUrl(null);
+			else demandListBo.setPictureUrl(demandListBo.getPictureUrl().split(",")[0]);
+		}
+		//专家
+				List<UserIdentityBo>aExperts=userIdentityService.getExperts(8);
+				modelview.addObject("experts",aExperts);
+		modelview.addObject("demands",demandListBos);
+		
 		return modelview;
 		return modelview;
 	}
 	}
 	
 	

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

@@ -99,6 +99,8 @@ public interface JtBusinessProjectMapper {
      List<JtBusinessProject> getBusinessProjectByCategoryId(String id,Integer size);
      List<JtBusinessProject> getBusinessProjectByCategoryId(String id,Integer size);
      
      
   List<JtBusinessProject> findProjectOrderByNumber();
   List<JtBusinessProject> findProjectOrderByNumber();
+  
+
      
      
   
   
 }
 }

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

@@ -103,5 +103,7 @@ public interface UserIdentityMapper {
 	List<UserIdentityRecommended> getAppHomeRecommended();
 	List<UserIdentityRecommended> getAppHomeRecommended();
 	
 	
 	List<consultantListBo> getConsultantList(Integer size);
 	List<consultantListBo> getConsultantList(Integer size);
+	
+	List<UserIdentityBo>getExperts(Integer size);
     
     
 }
 }

+ 3 - 2
src/main/java/com/goafanti/common/enums/AttachmentType.java

@@ -13,8 +13,9 @@ public enum AttachmentType {
 	ACHIEVEMENT_TEMPLATE("achievement_template", "科技成果批量导入模板"),
 	ACHIEVEMENT_TEMPLATE("achievement_template", "科技成果批量导入模板"),
 	BANNERS_PIC("banners", "广告图片"),
 	BANNERS_PIC("banners", "广告图片"),
 	NEWS_TITLE_PICTURE("news_title_picture", "新闻题图图片"),
 	NEWS_TITLE_PICTURE("news_title_picture", "新闻题图图片"),
-	NEWS_CONTENT_PICTURE("news_content_picture", "新闻内容图片");
-	
+	NEWS_CONTENT_PICTURE("news_content_picture", "新闻内容图片"),
+	JT_BUSINESS_PICTURE("jt_business_picture","技淘品类图片"),
+	JT_PROJECT_PICTURE("jt_project_picture","技淘服务项目图片");
 	private AttachmentType(String code, String desc) {
 	private AttachmentType(String code, String desc) {
 		this.code = code;
 		this.code = code;
 		this.desc = desc;
 		this.desc = desc;

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

@@ -1091,12 +1091,19 @@ a.id as id,
 a.technical_picture_url as technicalPictureUrl,
 a.technical_picture_url as technicalPictureUrl,
 b.ct as interestCount,
 b.ct as interestCount,
 a.category,
 a.category,
-a.data_category as dataCategory
+a.data_category as dataCategory,
+	fg.name as fieldAS,
+	fgg.name as fieldBS,
+	a.introduction
 from achievement a
 from achievement a
 left join branch_information branchInfo 
 left join branch_information branchInfo 
 on INSTR(branchInfo.domain_name,#{1})>0
 on INSTR(branchInfo.domain_name,#{1})>0
 left join achievement_publish ap
 left join achievement_publish ap
  on ap.achievement_id=a.id
  on ap.achievement_id=a.id
+ left join aft.field_glossory fg on
+	fg.id = a.field_a
+left join aft.field_glossory fgg on
+	fgg.id = a.field_b
 left join 
 left join 
 (select  
 (select  
 count(0) as ct,
 count(0) as ct,
@@ -1164,7 +1171,7 @@ order by release_date desc limit #{0}
 </select>
 </select>
 
 
 <select id="getIntellectualProperty" resultType="com.goafanti.common.bo.PolicyEntity" >
 <select id="getIntellectualProperty" resultType="com.goafanti.common.bo.PolicyEntity" >
-select p.id,p.title,p.title_img as titleImg,p.summary,dg1.name as provinceS,dg2.name as cityS,edit_time as editTime from policy p 
+select p.id,p.title,p.title_img as titleImg,p.summary,dg1.name as provinceS,dg2.name as cityS,edit_time as editTime ,create_time as createTime from policy p 
 left join district_glossory dg1 on dg1.id=p.province
 left join district_glossory dg1 on dg1.id=p.province
 left join district_glossory dg2 on dg2.id=p.city
 left join district_glossory dg2 on dg2.id=p.city
 where audit_status = 2
 where audit_status = 2

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

@@ -985,7 +985,19 @@
 		dp.show_number asc limit 0,
 		dp.show_number asc limit 0,
 		6
 		6
   </select>
   </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
+ from demand d 
+     left join aft.field_glossory  fg  on fg.id=d.industry_category_a
+    left join aft.field_glossory fgg  on fgg.id=d.industry_category_b
+  left join branch_information branchInfo on INSTR(branchInfo.domain_name,#{1})>0
+left join demand_publish dp on dp.demand_id=d.id and dp.publish_platform=branchInfo.id
+ where audit_status=2 and info_sources=1 and dp.demand_id=d.id and dp.publish_platform=branchInfo.id  and instr(dp.publish_page,#{2})>0
+ order by  release_date  desc limit #{0}
+  </select>
   
   
+
    <select id="selectCompanyDemand" resultType="com.goafanti.demand.bo.DemandListBo">
    <select id="selectCompanyDemand" resultType="com.goafanti.demand.bo.DemandListBo">
  select d.name,picture_url as pictureUrl,d.id ,data_category as dataCategory
  select d.name,picture_url as pictureUrl,d.id ,data_category as dataCategory
  from demand d  
  from demand d  
@@ -1007,9 +1019,13 @@ left join demand_publish dp on dp.demand_id=d.id and dp.publish_platform=branchI
   </select>
   </select>
   
   
   <select id="getHotDemand" resultType="com.goafanti.demand.bo.DemandListBo">
   <select id="getHotDemand" resultType="com.goafanti.demand.bo.DemandListBo">
- select name,release_date as releaseDate,d.id,problem_des as problemDes,research_type as researchType,budget_cost as fundForPersonnel,crowd_cost as fundForCrowd,demand_type as demandType,
+ select d.name,release_date as releaseDate,d.id,problem_des as problemDes,
+ research_type as researchType,budget_cost as fundForPersonnel,crowd_cost as fundForCrowd,demand_type as demandType,
+ fg.name as industryCategory1,fgg.name as industryCategory2,d.picture_url as pictureUrl,
  data_category as dataCategory,validity_period as validityPeriod
  data_category as dataCategory,validity_period as validityPeriod
   from demand d 
   from demand d 
+      left join aft.field_glossory  fg  on fg.id=d.industry_category_a
+    left join aft.field_glossory fgg  on fgg.id=d.industry_category_b
       left join branch_information branchInfo on INSTR(branchInfo.domain_name,#{1})>0
       left join branch_information branchInfo on INSTR(branchInfo.domain_name,#{1})>0
 left join demand_publish dp on dp.demand_id=d.id and dp.publish_platform=branchInfo.id
 left join demand_publish dp on dp.demand_id=d.id and dp.publish_platform=branchInfo.id
    where d.is_hot=1 and d.audit_status=2 and info_sources=1 and dp.demand_id=d.id and dp.publish_platform=branchInfo.id and instr(dp.publish_page,#{2})>0
    where d.is_hot=1 and d.audit_status=2 and info_sources=1 and dp.demand_id=d.id and dp.publish_platform=branchInfo.id and instr(dp.publish_page,#{2})>0

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

@@ -379,7 +379,7 @@ where
 
 
 	order by sort
 	order by sort
 	<if test="size!=null">
 	<if test="size!=null">
-	limit #{size,jdbcType=Integer}
+	limit #{size,jdbcType=INTEGER}
 	</if>
 	</if>
   </select>
   </select>
   
   

+ 5 - 7
src/main/java/com/goafanti/common/mapper/JtBusinessProjectMapper.xml

@@ -99,8 +99,8 @@
       This element is automatically generated by MyBatis Generator, do not modify.
       This element is automatically generated by MyBatis Generator, do not modify.
       This element was generated on Wed Jun 20 11:08:54 CST 2018.
       This element was generated on Wed Jun 20 11:08:54 CST 2018.
     -->
     -->
-    id, name, category_id, number, price, activity_price, member_price, offset, activity_flag, 
-    introduce, province, city, create_time, min_img_url, max_img_url, value, apply_conditions
+    id, name, category_id as categoryId, number, price, activity_price as activityPrice, member_price as memberPrice, offset, activity_flag as activityFlag, 
+    introduce, province, city, create_time as createTime, min_img_url as minImgUrl, max_img_url as maxImgUrl, value, apply_conditions as applyConditions
   </sql>
   </sql>
   <select id="selectByExample" parameterType="com.goafanti.common.model.JtBusinessProjectExample" resultMap="BaseResultMap">
   <select id="selectByExample" parameterType="com.goafanti.common.model.JtBusinessProjectExample" resultMap="BaseResultMap">
     <!--
     <!--
@@ -487,10 +487,7 @@
   
   
   <select id="findJtBusinessProjectByPage" resultType="com.goafanti.common.model.JtBusinessProject">
   <select id="findJtBusinessProjectByPage" resultType="com.goafanti.common.model.JtBusinessProject">
   select 
   select 
-  jtbp.id,
-  jtbp.name,
-  jtbp.max_img_url as maxImgUrl,
-  jtbp.introduce 
+  <include refid="Base_Column_List" />
   from jt_business_project jtbp
   from jt_business_project jtbp
   <if test="topId!=null">
   <if test="topId!=null">
   left join jt_business_category jtbc on jtbc.super_id =#{topId,jdbcType=VARCHAR}
   left join jt_business_category jtbc on jtbc.super_id =#{topId,jdbcType=VARCHAR}
@@ -530,7 +527,8 @@
   </select>
   </select>
   
   
   <select id="findProjectOrderByNumber" resultType="com.goafanti.common.model.JtBusinessProject">
   <select id="findProjectOrderByNumber" resultType="com.goafanti.common.model.JtBusinessProject">
-  select number,id
+  select
+ <include refid="Base_Column_List" />
   from jt_business_project order by number
   from jt_business_project order by number
   </select>
   </select>
 </mapper>
 </mapper>

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

@@ -1053,7 +1053,17 @@
 	where t.expert=1
 	where t.expert=1
 	and t.uid=#{uid,jdbcType=VARCHAR}
 	and t.uid=#{uid,jdbcType=VARCHAR}
 	 </select>
 	 </select>
-	 
+	 <select id="getExperts" resultType="com.goafanti.user.bo.UserIdentityBo">
+	 	select 	t.id ,t.uid,u.nickname as username,t.work_unit as workUnit,t.province,t.area,t.professional_title as professionalTitle,t.industry,t.city,
+			u.introduction,u.head_portrait_url as headPortraitUrl,ifnull(o.x,0) as reservationCount
+	from user_identity t left JOIN user u on t.uid = u.id
+	left join (select count(0) as x,seller_id from t_order
+				where order_status != 4
+				group by  seller_id ) o on t.uid=o.seller_id
+	where expert=1
+	and u.status !=1
+	and t.expert_audit =2
+	 </select>
  <select id="findUserIdentityListByPage" parameterType="String" resultType="com.goafanti.user.bo.UserIdentityBo">
  <select id="findUserIdentityListByPage" parameterType="String" resultType="com.goafanti.user.bo.UserIdentityBo">
   	select 	t.id ,t.uid,u.nickname as username,t.work_unit as workUnit,t.province,t.area,t.professional_title as professionalTitle,t.industry,t.city,
   	select 	t.id ,t.uid,u.nickname as username,t.work_unit as workUnit,t.province,t.area,t.professional_title as professionalTitle,t.industry,t.city,
 			u.introduction,u.head_portrait_url as headPortraitUrl,ifnull(o.x,0) as reservationCount
 			u.introduction,u.head_portrait_url as headPortraitUrl,ifnull(o.x,0) as reservationCount

+ 10 - 0
src/main/java/com/goafanti/user/bo/InputUserIdentity.java

@@ -114,6 +114,16 @@ public class InputUserIdentity {
 	@Max(value = 1, message = "{" + ErrorConstants.PARAM_ERROR + "}")
 	@Max(value = 1, message = "{" + ErrorConstants.PARAM_ERROR + "}")
 	private Integer authentication;
 	private Integer authentication;
 	
 	
+	String workUnit;
+	
+	public String getWorkUnit() {
+		return workUnit;
+	}
+
+	public void setWorkUnit(String workUnit) {
+		this.workUnit = workUnit;
+	}
+
 	public Integer getExpert() {
 	public Integer getExpert() {
 		return expert;
 		return expert;
 	}
 	}

+ 9 - 0
src/main/java/com/goafanti/user/bo/UserIdentityBo.java

@@ -1,5 +1,14 @@
 package com.goafanti.user.bo;
 package com.goafanti.user.bo;
 
 
 public class UserIdentityBo extends InputUserIdentity {
 public class UserIdentityBo extends InputUserIdentity {
+	String reservationCount;
+
+	public String getReservationCount() {
+		return reservationCount;
+	}
+
+	public void setReservationCount(String reservationCount) {
+		this.reservationCount = reservationCount;
+	}
 	
 	
 }
 }

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

@@ -44,6 +44,8 @@ public interface UserIdentityService {
 
 
 	Pagination<UserIdentityBo> expertsList(String name,String industry, Integer pNo, Integer pSize);
 	Pagination<UserIdentityBo> expertsList(String name,String industry, Integer pNo, Integer pSize);
 	
 	
+	List<UserIdentityBo> getExperts(Integer size);
+	
 	List<fieldGlossoryBo> industryList();
 	List<fieldGlossoryBo> industryList();
 
 
 	 Pagination<consultantListBo> consultantList(Integer pNo, Integer pSize) ;
 	 Pagination<consultantListBo> consultantList(Integer pNo, Integer pSize) ;

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

@@ -461,6 +461,12 @@ public class UserIdentityServiceImpl extends BaseMybatisDao<UserIdentityMapper>
 		// TODO Auto-generated method stub
 		// TODO Auto-generated method stub
 		return userIdentityMapper.getConsultantList(size);
 		return userIdentityMapper.getConsultantList(size);
 	}
 	}
+
+	@Override
+	public List<UserIdentityBo> getExperts(Integer size) {
+		// TODO Auto-generated method stub
+		return userIdentityMapper.getExperts( size);
+	}
 	
 	
 	
 	
 
 

+ 103 - 85
src/main/webapp/WEB-INF/views/common.html

@@ -4,94 +4,112 @@
 	xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
 	xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
 
 
 <head th:fragment="header(title, link)">
 <head th:fragment="header(title, link)">
-<meta charset="utf-8" />
-<link rel="icon" th:href="${portalHost+'/img/ico_logo.ico'}">
-<meta name="Keywords" content="" />
-<meta name="Description" content="" />
-<meta name="viewport"
-	content="width=device-width,initial-scale=1, minimum-scale=1, maximum-scale=1,user-scalable=no">
-<meta http-equiv="x-ua-compatible" content="ie=edge">
-<title>技淘--我的技术和科技服务交易平台</title>
+  <meta charset="UTF-8">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta http-equiv="X-UA-Compatible" content="ie=edge">
+    <title>技术服务列表</title>
+<link th:href="${portalHost+'/vendors.css'}" rel="stylesheet"><link th:href="${portalHost+'/serviceDetails.css'}" rel="stylesheet"></head>
+
 <th:block th:replace="${link}" />
 <th:block th:replace="${link}" />
 <body>
 <body>
 	<th:block th:fragment="nav(mainM,subM)">
 	<th:block th:fragment="nav(mainM,subM)">
-		<div class="container">
-			<div class="logo">
-				<a th:href="${basePath + '/portal/index.html'}"> <img
-					th:src="${portalHost+'/img/Logo111.png'}" alt="" title="技淘" />
-				</a>
-			</div>
-			<div class="logo_right"></div>
-			<div class="nav">
-				<ul>
-					<li th:classappend="${mainM=='service'}? 'active'"><a
-						th:href="${basePath + '/portal/service/serviceIndex.html'}">科技服务</a>
-						<img th:src="${portalHost+'/img/hot.png'}" />
-						<ol class="subnavigation">
-							<li><a
-								th:href="${basePath + '/portal/service/highTechCognizance.html'}">高企认定</a>
-							</li>
-							<li><a
-								th:href="${basePath + '/portal/service/propertyRight.html'}">知识产权</a>
-							</li>
-						</ol></li>
-					<li th:classappend="${mainM=='technologyTrading'}? 'active'">
-						<a th:href="${basePath + '/portal/technologyTrading/index.html'}">技术交易</a>
-						<ol class="subnavigation">
-							<li><a
-								th:href="${basePath + '/portal/technologyTrading/achievement.html'}">专利产品</a>
-							</li>
-							<li><a
-								th:href="${basePath + '/portal/technologyTrading/achievement.html'}">技术成果</a>
-							</li>
-							<li><a
-								th:href="${basePath + '/portal/technologyTrading/demand.html'}">技术需求</a>
-							</li>
-							<li><a
-								th:href="${basePath + '/portal/technologyTrading/assessMent.html'}">技术评估</a>
-							</li>
-						</ol>
-					</li>
-					<li th:classappend="${mainM=='thinkTank'}? 'active'"><a
-						th:href="${basePath + '/portal/thinkTank/index.html'}">智库咨询</a>
-						<ol class="subnavigation">
-							<li><a
-								th:href="${basePath + '/portal/thinkTank/policyList.html'}">智政</a>
-							</li>
-							<li><a
-								th:href="${basePath + '/portal/thinkTank/index.html#zizone'}">智者</a>
-							</li>
-						</ol></li>
-					<!-- <li><a th:href="${basePath + '/portal/financial/index.html'}">科技金融</a>
-						<ol class="subnavigation">
-							<li><a
-								th:href="${basePath + '/portal/financial/investmentInstitution.html'}">投资机构</a>
-							</li>
-						</ol></li> -->
-					<li><a th:href="${basePath + '/portal/aboutUs.html'}">关于公司</a>
-						<ol class="subnavigation">
-							<li><a
-								th:href="${basePath + '/portal/contactUs.html'}">联系我们</a>
-							</li>
-					</ol></li>						
-					<!-- <li><a href="#">科技活动</a></li> <li><a href="#">平台共建</a></li> 	-->
-				</ul>
-			</div>
-			<div class="nav_right" th:if="${!isLogin}">
-				<a th:href="${basePath + '/user/signIn.html'}"> <img
-					th:src="${portalHost+'/img/index_resiter.png'}" alt="" />
-				</a> 
-				<a href="javascript:;" class="head_login">登录</a> 
-				<div></div>
-			</div>
-			<div class="nav_right" th:if="${isLogin}">
-				<a th:href="${basePath + (isAdmin? '/admin/index.html':'/user/account/index.html')}"
-					th:text="${#strings.isEmpty(userName)?'个人中心':userName}">个人中心</a> 
-				<a th:href="${basePath + '/user/logout'}">退出</a> 
-				<a th:href="${basePath + '/portal/aboutUs.html'}">关于公司</a>
-				<div></div>
-			</div>
-		</div>
+	 <div class="header">
+        <div class="container">
+            <div>
+                <a href="#">网站导航</a>
+            </div>
+            <div>
+                <ul>
+                    <li>
+                        <a href="javascript:void(0)" class="head_login">登录</a>
+                    </li>
+                    <li>
+                        <a href="#">注册</a>
+                    </li>
+                    <li>
+                        <a href="#">我的订单</a>
+                    </li>
+                    <li>
+                        <a href="#">我的关注</a>
+                    </li>
+                    <li>
+                        <a href="#">我的消息</a>
+                    </li>
+                </ul>
+            </div>
+            <div class="colorRed">
+                全国统一服务热线:400-8800-962
+            </div>
+        </div>
+    </div>
+    <!-- search -->
+    <div class="container">
+        <div class="navHeader">
+            <div class="logo">
+                <a href="#">
+                    <img th:src="${portalHost+'/img/Logo111.png'}" alt="" title="技淘">
+                </a>
+            </div>
+            <div class="logo_right"></div>
+            <div class="nav">
+                <ul>
+                    <li>
+                        <a th:href="@{/portal/service/serviceIndex}">科技服务</a>
+                        <img th:src="${portalHost+'/img/hot.png'}">
+                        <ol class="subnavigation">
+                            <li>
+                                <a th:href="@{/portal/service/serviceIndex}">高企认定</a>
+                            </li>
+                            <li>
+                                <a th:href="@{/portal/service/serviceIndex}">知识产权</a>
+                            </li>
+                        </ol>
+                    </li>
+                    <li>
+                        <a href="#">技术交易</a>
+                        <ol class="subnavigation">
+                            <li>
+                                <a th:href="@{/portal/technologyTrading/achievement}">专利产品</a>
+                            </li>
+                            <li>
+                                <a th:href="@{/portal/technologyTrading/achievement}">技术成果</a>
+                            </li>
+                            <li>
+                                <a th:href="@{/portal/technologyTrading/demand}">技术需求</a>
+                            </li>
+                            <li>
+                                <a th:href="@{/portal/service/serviceIndex}">技术评估</a>
+                            </li>
+                        </ol>
+                    </li>
+                    <li>
+                        <a href="#">智库咨询</a>
+                        <ol class="subnavigation">
+                            <li>
+                                <a href="#">智政</a>
+                            </li>
+                            <li>
+                                <a href="/portal/thinkTank/index.html#zizone">智者</a>
+                            </li>
+                        </ol>
+                    </li>
+
+                    <li>
+                        <a href="/portal/aboutUs.html">关于公司</a>
+                        <ol class="subnavigation" style="display: none;">
+                            <li>
+                                <a href="#">联系我们</a>
+                            </li>
+                        </ol>
+                    </li>
+                </ul>
+            </div>
+            <div class="nav_right">
+                <img th:src="${portalHost+'/img/newMenu/navImg.jpg'}" alt="">
+                <span>国家技术转移示范机构</span>
+            </div>
+        </div>
+    </div>
 	</th:block>
 	</th:block>
 
 
 	<th:block th:fragment="banners">
 	<th:block th:fragment="banners">

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

@@ -12,25 +12,8 @@
 	<link th:href="${portalHost+'/vendors.css'}" rel="stylesheet"><link th:href="${portalHost+'/index.css'}" rel="stylesheet"></head>	
 	<link th:href="${portalHost+'/vendors.css'}" rel="stylesheet"><link th:href="${portalHost+'/index.css'}" rel="stylesheet"></head>	
 	<body>
 	<body>
 		<header>
 		<header>
-			<div class="container">
-				<div class="logo"><a href="../template/index.html"><img th:src="${portalHost+'/img/Logo111.png'}" alt="" title="技淘"/></a></div>
-				<div  class="nav">
-					<ul>
-						<li><a href="#">技术交易</a></li>
-						<li><a href="#">科技服务</a><img th:src="${portalHost+'/img/hot.png'}"/></li>
-						<li><a href="#">智库咨询</a></li>
-						<li><a href="#">科技金融</a></li>
-						<li><a href="#">科技活动</a></li>
-						<li><a href="#">平台共建</a></li>
-					</ul>
-				</div>
-				<div class="nav_right">
-					<a href="../template/registered.html"><img th:src="${portalHost+'/img/index_resiter.png'}" alt="" /></a>
-					<a href="javascript:;" class="head_login">登录</a>
-					<a href="">关于我们</a>
-				</div>
-			</div>
-		</header>
+		<div th:replace="common::nav('','')"></div>
+	</header>
 		<div class="carouselt">
 		<div class="carouselt">
 			<ul class="ct-img-big clear">
 			<ul class="ct-img-big clear">
 				<li data-index=0 ><a href=""><img th:src="${portalHost+'/img/index_banner01.jpg'}" alt=""/></a></li>
 				<li data-index=0 ><a href=""><img th:src="${portalHost+'/img/index_banner01.jpg'}" alt=""/></a></li>
@@ -220,89 +203,39 @@
 				<p>关于科技&nbsp;&nbsp;&nbsp;&nbsp;我们能做得更多</p>
 				<p>关于科技&nbsp;&nbsp;&nbsp;&nbsp;我们能做得更多</p>
 			</div>
 			</div>
 			<div class="indexServe_cont">
 			<div class="indexServe_cont">
-				<div>
-					<h2>高企认定</h2>
-					<div class="indexServe_bots">
-						<h3>什么是高企认定?</h3>
-						<p>企业按照GB/T29490-2013《企业知识产权管理规范》建立一套既适应经济和社会发展状况又符合企业自身发展需求的知识产权管</p>
-						<img th:src="${portalHost+'/img/indexNew25.jpg'}" alt="" />
-					</div>
-					<div class="indexServe_bot">
-						<div>认定好处</div>
-						<p>1、建立一套既适应经济和社会发展状况又符合企业自身发展需求的知识产权管</p>
-						<p>2、建立一套既适应经济和社会发展状况又符合企业自身发展需求的知识产权管</p>
-						<p>3、建立一套既适应经济和社会发展状况又符合企业自身发展需求的知识产权管</p>
-					</div>
-					<div class="indexServe_img">
-						了解更多
-					</div>
-				</div>
-				<div>
-					<h2>高企认定</h2>
-					<div class="indexServe_bots">
-						<h3>什么是高企认定?</h3>
-						<p>企业按照GB/T29490-2013《企业知识产权管理规范》建立一套既适应经济和社会发展状况又符合企业自身发展需求的知识产权管</p>
-						<img th:src="${portalHost+'/img/indexNew26.jpg'}" alt="" />
-					</div>
-					<div class="indexServe_bot">
-						<div>认定好处</div>
-						<p>1、建立一套既适应经济和社会发展状况又符合企业自身发展需求的知识产权管</p>
-						<p>2、建立一套既适应经济和社会发展状况又符合企业自身发展需求的知识产权管</p>
-						<p>3、建立一套既适应经济和社会发展状况又符合企业自身发展需求的知识产权管</p>
-					</div>
-					<div class="indexServe_img">
-						了解更多
-					</div>
-				</div>
-				<div>
-					<h2>高企认定</h2>
+				
+				<div th:each="project,projectStatus:${projects}" th:if="${projectStatus.index<3}">
+				<div >
+					<h2 th:text="${project.name}"></h2>
 					<div class="indexServe_bots">
 					<div class="indexServe_bots">
-						<h3>什么是高企认定?</h3>
-						<p>企业按照GB/T29490-2013《企业知识产权管理规范》建立一套既适应经济和社会发展状况又符合企业自身发展需求的知识产权管</p>
-						<img th:src="${portalHost+'/img/indexNew8.jpg'}" alt="" />
+						<h3 th:text="${'什么是'+project.name+'?'}"></h3>
+						<p th:text="${project.introduce}"></p>
+						<img th:src="${project.maxImgUrl}==null?${portalHost+'/img/indexNew8.jpg'}:${avatarUploadHost+project.maxImgUrl}" alt="" />
 					</div>
 					</div>
 					<div class="indexServe_bot">
 					<div class="indexServe_bot">
 						<div>认定好处</div>
 						<div>认定好处</div>
-						<p>1、建立一套既适应经济和社会发展状况又符合企业自身发展需求的知识产权管</p>
-						<p>2、建立一套既适应经济和社会发展状况又符合企业自身发展需求的知识产权管</p>
-						<p>3、建立一套既适应经济和社会发展状况又符合企业自身发展需求的知识产权管</p>
+						<p th:text="${project.value}"></p>
 					</div>
 					</div>
 					<div class="indexServe_img">
 					<div class="indexServe_img">
 						了解更多
 						了解更多
 					</div>
 					</div>
-				</div>
-				<div class="indexServe_long">
-					<img th:src="${portalHost+'/img/indexNew11.jpg'}" alt="" />
-					<div class="indexServe_bots">
-						<h3>什么是高企认定?</h3>
-						<p>企业按照GB/T29490-2013《企业知识产权管理规范》建立一套既适应经济和社会发展状况又符合企业自身发展需求的知识产权管</p>
-					</div>
-					<div class="indexServe_bot">
-						<div>认定好处</div>
-						<p>1、建立一套既适应经济和社会发展状况又符合企业自身发展需求的知识产权管</p>
-						<p>2、建立一套既适应经济和社会发展状况又符合企业自身发展需求的知识产权管</p>
-						<p>3、建立一套既适应经济和社会发展状况又符合企业自身发展需求的知识产权管</p>
-					</div>
-					<div class="indexServe_img">
-						了解更多
 					</div>
 					</div>
 				</div>
 				</div>
-				<div class="indexServe_long">
-					<img th:src="${portalHost+'/img/indexNew28.jpg'}" alt="" />
+				<div class="indexServe_long"  th:each="project,projectStatus:${projects}" th:if="${projectStatus.index>=3} and ${projectStatus.index<5}" >
+					<img th:src="${project.maxImgUrl}==null?${portalHost+'/img/indexNew8.jpg'}:${avatarUploadHost+project.maxImgUrl}" alt="" />
 					<div class="indexServe_bots">
 					<div class="indexServe_bots">
-						<h3>什么是高企认定?</h3>
-						<p>企业按照GB/T29490-2013《企业知识产权管理规范》建立一套既适应经济和社会发展状况又符合企业自身发展需求的知识产权管</p>
+							<h3 th:text="${'什么是'+project.name+'?'}"></h3>
+						<p th:text="${project.introduce}"></p>
 					</div>
 					</div>
 					<div class="indexServe_bot">
 					<div class="indexServe_bot">
 						<div>认定好处</div>
 						<div>认定好处</div>
-						<p>1、建立一套既适应经济和社会发展状况又符合企业自身发展需求的知识产权管</p>
-						<p>2、建立一套既适应经济和社会发展状况又符合企业自身发展需求的知识产权管</p>
-						<p>3、建立一套既适应经济和社会发展状况又符合企业自身发展需求的知识产权管</p>
+							<p th:text="${project.value}"></p>
 					</div>
 					</div>
 					<div class="indexServe_img">
 					<div class="indexServe_img">
 						了解更多
 						了解更多
 					</div>
 					</div>
 				</div>
 				</div>
+				
 			</div>
 			</div>
 			<img th:src="${portalHost+'/img/indexNew12.jpg'}" alt="" class="indexServe_right"/>
 			<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/indexNew13.jpg'}" alt="" class="indexServe_bottom"/>
@@ -320,55 +253,17 @@
 					<img th:src="${portalHost+'/img/index_er3.jpg'}" alt="" />
 					<img th:src="${portalHost+'/img/index_er3.jpg'}" alt="" />
 				</div>
 				</div>
 				<div class="policy_p">
 				<div class="policy_p">
+					
 					<a href="#">
 					<a href="#">
-						<div>
-							<div class="policy_date">
-							<h4>10.25</h4>
-							<p>2017</p>
-							</div>
-							<div class="policy_line"></div>
-							<div class="policy_p_cont">
-								<h5>成都科德向中国科学进行工作汇报</h5>
-								<p>解读习近平总书记在中央财经领导小组第十六次会议上关于知识产权工作的重要论述</p>
-							</div>
-						</div>
-					</a>
-					<a href="#">
-						<div>
-							<div class="policy_date">
-							<h4>10.25</h4>
-							<p>2017</p>
-							</div>
-							<div class="policy_line"></div>
-							<div class="policy_p_cont">
-								<h5>成都科德向中国科学进行工作汇报</h5>
-								<p>解读习近平总书记在中央财经领导小组第十六次会议上关于知识产权工作的重要论述</p>
-							</div>
-						</div>
-					</a>
-					<a href="#">
-						<div>
-							<div class="policy_date">
-							<h4>10.25</h4>
-							<p>2017</p>
-							</div>
-							<div class="policy_line"></div>
-							<div class="policy_p_cont">
-								<h5>成都科德向中国科学进行工作汇报</h5>
-								<p>解读习近平总书记在中央财经领导小组第十六次会议上关于知识产权工作的重要论述</p>
-							</div>
-						</div>
-					</a>
-					<a href="#">
-						<div>
+						<div th:each="policy:${policys}">
 							<div class="policy_date">
 							<div class="policy_date">
-							<h4>10.25</h4>
-							<p>2017</p>
+							<h4 th:text="${#dates.format(policy.createTime,'MM-dd')}"></h4>
+							<p th:text="${#dates.format(policy.createTime,'yyyy')}"></p>
 							</div>
 							</div>
 							<div class="policy_line"></div>
 							<div class="policy_line"></div>
 							<div class="policy_p_cont">
 							<div class="policy_p_cont">
-								<h5>成都科德向中国科学进行工作汇报</h5>
-								<p>解读习近平总书记在中央财经领导小组第十六次会议上关于知识产权工作的重要论述</p>
+								<h5 th:text="${policy.title}"></h5>
+								<p th:text="${policy.summary}">解读习近平总书记在中央财经领导小组第十六次会议上关于知识产权工作的重要论述</p>
 							</div>
 							</div>
 						</div>
 						</div>
 					</a>
 					</a>
@@ -384,239 +279,33 @@
 				<div class="indexGroom_active">成果</div>
 				<div class="indexGroom_active">成果</div>
 				<div>需求</div>
 				<div>需求</div>
 			</div>
 			</div>
-			<div class="indexGroom_tables chengguo">
-				<a href="">
-					<div>
-						<img th:src="${portalHost+'/img/indexNewTab.jpg'}" alt="" />
-						<div>
-							<h3>风力发电领域内高效率变化内高效率变化</h3>
-							<p>风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化</p>
-							<div>
-								<div>环保</div>
-								<div>电力</div>
-							</div>
-						</div>
-					</div>
-				</a>
-				<a href="">
-					<div>
-						<img th:src="${portalHost+'/img/indexNewTab.jpg'}" alt="" />
-						<div>
-							<h3>风力发电领域内高效率变化内高效率变化</h3>
-							<p>风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化</p>
-							<div>
-								<div>环保</div>
-								<div>电力</div>
-							</div>
-						</div>
-					</div>
-				</a>
-				<a href="">
-					<div>
-						<img th:src="${portalHost+'/img/indexNewTab.jpg'}" alt="" />
-						<div>
-							<h3>风力发电领域内高效率变化内高效率变化</h3>
-							<p>风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化</p>
-							<div>
-								<div>环保</div>
-								<div>电力</div>
-							</div>
-						</div>
-					</div>
-				</a>
-				<a href="">
-					<div>
-						<img th:src="${portalHost+'/img/indexNewTab.jpg'}" alt="" />
-						<div>
-							<h3>风力发电领域内高效率变化内高效率变化</h3>
-							<p>风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化</p>
-							<div>
-								<div>环保</div>
-								<div>电力</div>
-							</div>
-						</div>
-					</div>
-				</a>
-				<a href="">
-					<div>
-						<img th:src="${portalHost+'/img/indexNewTab.jpg'}" alt="" />
-						<div>
-							<h3>风力发电领域内高效率变化内高效率变化</h3>
-							<p>风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化</p>
-							<div>
-								<div>环保</div>
-								<div>电力</div>
-							</div>
-						</div>
-					</div>
-				</a>
-				<a href="">
-					<div>
-						<img th:src="${portalHost+'/img/indexNewTab.jpg'}" alt="" />
-						<div>
-							<h3>风力发电领域内高效率变化内高效率变化</h3>
-							<p>风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化</p>
-							<div>
-								<div>环保</div>
-								<div>电力</div>
-							</div>
-						</div>
-					</div>
-				</a>
-				<a href="">
-					<div>
-						<img th:src="${portalHost+'/img/indexNewTab.jpg'}" alt="" />
-						<div>
-							<h3>风力发电领域内高效率变化内高效率变化</h3>
-							<p>风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化</p>
-							<div>
-								<div>环保</div>
-								<div>电力</div>
-							</div>
-						</div>
-					</div>
-				</a>
-				<a href="">
-					<div>
-						<img th:src="${portalHost+'/img/indexNewTab.jpg'}" alt="" />
-						<div>
-							<h3>风力发电领域内高效率变化内高效率变化</h3>
-							<p>风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化</p>
-							<div>
-								<div>环保</div>
-								<div>电力</div>
-							</div>
-						</div>
-					</div>
-				</a>
+			<div class="indexGroom_tables chengguo" >
 				<a href="">
 				<a href="">
-					<div>
-						<img th:src="${portalHost+'/img/indexNewTab.jpg'}" alt="" />
+					<div th:each="a:${achievements}">
+						<img th:src="${a.firstPicture}==null?${portalHost+'/img/indexNewTab.jpg'}:${avatarUploadHost+a.firstPicture}" alt="" />
 						<div>
 						<div>
-							<h3>风力发电领域内高效率变化内高效率变化</h3>
-							<p>风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化</p>
+							<h3 th:text="${a.name}"></h3>
+							<p th:text="${a.introduction}"></p>
 							<div>
 							<div>
-								<div>环保</div>
-								<div>电力</div>
+								<div th:text="${a.fieldAS}"></div>
+								<div th:text="${a.fieldBS}"></div>
 							</div>
 							</div>
 						</div>
 						</div>
 					</div>
 					</div>
 				</a>
 				</a>
+				
 			</div>
 			</div>
 			<div class="indexGroom_tables xuqiu">
 			<div class="indexGroom_tables xuqiu">
+				
 				<a href="">
 				<a href="">
-					<div>
-						<img th:src="${portalHost+'/img/indexNewTab.jpg'}" alt="" />
-						<div>
-							<h3>风力发电领域内高效率变化内高效率变化</h3>
-							<p>风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化</p>
-							<div>
-								<div>环1保</div>
-								<div>电2力</div>
-							</div>
-						</div>
-					</div>
-				</a>
-				<a href="">
-					<div>
-						<img th:src="${portalHost+'/img/indexNewTab.jpg'}" alt="" />
-						<div>
-							<h3>风力发电领域内高效率变化内高效率变化</h3>
-							<p>风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化</p>
-							<div>
-								<div>环保</div>
-								<div>电力</div>
-							</div>
-						</div>
-					</div>
-				</a>
-				<a href="">
-					<div>
-						<img th:src="${portalHost+'/img/indexNewTab.jpg'}" alt="" />
-						<div>
-							<h3>风力发电领域内高效率变化内高效率变化</h3>
-							<p>风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化</p>
-							<div>
-								<div>环保</div>
-								<div>电力</div>
-							</div>
-						</div>
-					</div>
-				</a>
-				<a href="">
-					<div>
-						<img th:src="${portalHost+'/img/indexNewTab.jpg'}" alt="" />
-						<div>
-							<h3>风力发电领域内高效率变化内高效率变化</h3>
-							<p>风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化</p>
-							<div>
-								<div>环保</div>
-								<div>电力</div>
-							</div>
-						</div>
-					</div>
-				</a>
-				<a href="">
-					<div>
-						<img th:src="${portalHost+'/img/indexNewTab.jpg'}" alt="" />
-						<div>
-							<h3>风力发电领域内高效率变化内高效率变化</h3>
-							<p>风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化</p>
-							<div>
-								<div>环保</div>
-								<div>电力</div>
-							</div>
-						</div>
-					</div>
-				</a>
-				<a href="">
-					<div>
-						<img th:src="${portalHost+'/img/indexNewTab.jpg'}" alt="" />
-						<div>
-							<h3>风力发电领域内高效率变化内高效率变化</h3>
-							<p>风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化</p>
-							<div>
-								<div>环保</div>
-								<div>电力</div>
-							</div>
-						</div>
-					</div>
-				</a>
-				<a href="">
-					<div>
-						<img th:src="${portalHost+'/img/indexNewTab.jpg'}" alt="" />
-						<div>
-							<h3>风力发电领域内高效率变化内高效率变化</h3>
-							<p>风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化</p>
-							<div>
-								<div>环保</div>
-								<div>电力</div>
-							</div>
-						</div>
-					</div>
-				</a>
-				<a href="">
-					<div>
-						<img th:src="${portalHost+'/img/indexNewTab.jpg'}" alt="" />
-						<div>
-							<h3>风力发电领域内高效率变化内高效率变化</h3>
-							<p>风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化</p>
-							<div>
-								<div>环保</div>
-								<div>电力</div>
-							</div>
-						</div>
-					</div>
-				</a>
-				<a href="">
-					<div>
-						<img th:src="${portalHost+'/img/indexNewTab.jpg'}" alt="" />
+					<div th:each="d:${demands}">
+						<img th:src="${d.pictureUrl}==null?${portalHost+'/img/indexNewTab.jpg'}:${avatarUploadHost+d.pictureUrl}" alt="" />
 						<div>
 						<div>
-							<h3>风力发电领域内高效率变化内高效率变化</h3>
-							<p>风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化</p>
+							<h3 th:text="${d.name}">风力发电领域内高效率变化内高效率变化</h3>
+							<p th:text="${d.problemDes}">风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化风力发电领域内高效率变化内高效率变化</p>
 							<div>
 							<div>
-								<div>环保</div>
-								<div>电力</div>
+								<div th:text="${d.industryCategory1}">环保</div>
+								<div th:text="${d.industryCategory2}">电力</div>
 							</div>
 							</div>
 						</div>
 						</div>
 					</div>
 					</div>
@@ -639,115 +328,18 @@
 		<div id="indexExpert">
 		<div id="indexExpert">
 			<div class="indexExpert">
 			<div class="indexExpert">
 				<div class="indexExpert_cont">
 				<div class="indexExpert_cont">
-					<a href="">
-						<div>
-							<img th:src="${portalHost+'/img/indexNew14.jpg'}" alt="" />
-							<div class="indexExpert_basc">
-								<h3>张三</h3>
-								<span>/</span>
-								<h4>广州科技学院</h4>
-								<p>从业8年,专利代理资质,很厉害的一个朋友厉害的一个朋友</p>
-							</div>
-							<div class="indexExpert_yuyue">
-								<span>6</span>次预约
-							</div>
-						</div>
-					</a>
-					<a href="">
-						<div>
-							<img th:src="${portalHost+'/img/indexNew14.jpg'}" alt="" />
-							<div class="indexExpert_basc">
-								<h3>张三</h3>
-								<span>/</span>
-								<h4>广州科技学院</h4>
-								<p>从业8年,专利代理资质,很厉害的一个朋友厉害的一个朋友</p>
-							</div>
-							<div class="indexExpert_yuyue">
-								<span>6</span>次预约
-							</div>
-						</div>
-					</a>
-					<a href="">
-						<div>
-							<img th:src="${portalHost+'/img/indexNew14.jpg'}" alt="" />
-							<div class="indexExpert_basc">
-								<h3>张三</h3>
-								<span>/</span>
-								<h4>广州科技学院</h4>
-								<p>从业8年,专利代理资质,很厉害的一个朋友厉害的一个朋友</p>
-							</div>
-							<div class="indexExpert_yuyue">
-								<span>6</span>次预约
-							</div>
-						</div>
-					</a>
-					<a href="">
-						<div>
-							<img th:src="${portalHost+'/img/indexNew14.jpg'}" alt="" />
-							<div class="indexExpert_basc">
-								<h3>张三</h3>
-								<span>/</span>
-								<h4>广州科技学院</h4>
-								<p>从业8年,专利代理资质,很厉害的一个朋友厉害的一个朋友</p>
-							</div>
-							<div class="indexExpert_yuyue">
-								<span>6</span>次预约
-							</div>
-						</div>
-					</a>
-					<a href="">
-						<div>
-							<img th:src="${portalHost+'/img/indexNew14.jpg'}" alt="" />
-							<div class="indexExpert_basc">
-								<h3>张三</h3>
-								<span>/</span>
-								<h4>广州科技学院</h4>
-								<p>从业8年,专利代理资质,很厉害的一个朋友厉害的一个朋友</p>
-							</div>
-							<div class="indexExpert_yuyue">
-								<span>6</span>次预约
-							</div>
-						</div>
-					</a>
-					<a href="">
-						<div>
-							<img th:src="${portalHost+'/img/indexNew14.jpg'}" alt="" />
-							<div class="indexExpert_basc">
-								<h3>张三</h3>
-								<span>/</span>
-								<h4>广州科技学院</h4>
-								<p>从业8年,专利代理资质,很厉害的一个朋友厉害的一个朋友</p>
-							</div>
-							<div class="indexExpert_yuyue">
-								<span>6</span>次预约
-							</div>
-						</div>
-					</a>
-					<a href="">
-						<div>
-							<img th:src="${portalHost+'/img/indexNew14.jpg'}" alt="" />
-							<div class="indexExpert_basc">
-								<h3>张三</h3>
-								<span>/</span>
-								<h4>广州科技学院</h4>
-								<p>从业8年,专利代理资质,很厉害的一个朋友厉害的一个朋友</p>
-							</div>
-							<div class="indexExpert_yuyue">
-								<span>6</span>次预约
-							</div>
-						</div>
-					</a>
-					<a href="">
-						<div>
-							<img th:src="${portalHost+'/img/indexNew14.jpg'}" alt="" />
+				
+					<a href="" >
+						<div th:each="e:${experts}">
+							<img th:src="${e.headPortraitUrl}==null?${portalHost+'/img/indexNew14.jpg'}:${avatarUploadHost+headPortraitUrl}" alt="" />
 							<div class="indexExpert_basc">
 							<div class="indexExpert_basc">
-								<h3>张三</h3>
+								<h3 th:text="${e.username}">张三</h3>
 								<span>/</span>
 								<span>/</span>
-								<h4>广州科技学院</h4>
-								<p>从业8年,专利代理资质,很厉害的一个朋友厉害的一个朋友</p>
+								<h4 th:text="${e.workUnit}">广州科技学院</h4>
+								<p th:text="${e.introduction}">从业8年,专利代理资质,很厉害的一个朋友厉害的一个朋友</p>
 							</div>
 							</div>
 							<div class="indexExpert_yuyue">
 							<div class="indexExpert_yuyue">
-								<span>6</span>次预约
+								<span th:text="${e.reservationCount}"></span>次预约
 							</div>
 							</div>
 						</div>
 						</div>
 					</a>
 					</a>

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

@@ -517,218 +517,13 @@
 			<img th:src="${portalHost+'/img/newMenu/demand-22.jpg'}" alt="">
 			<img th:src="${portalHost+'/img/newMenu/demand-22.jpg'}" alt="">
 		</div>
 		</div>
 	</div>
 	</div>
-	<footer>
-		<div id="bottom">
-			<div class="bottom">
-				<div class="bottom_text">
-					<div class="text_top">
-						<a href="/portal/aboutUs.html">关于公司</a> <a
-							href="/portal/contactUs.html">联系我们</a>
-						<p>Copyright © 2016-2017 科德 版权所有 湘ICP备15019731号 -2
-							技术支持:湖南阿凡提科技有限公司</p>
-					</div>
-					<div class="text_center" id="qrCode">
-						<div class="cont_left">
-							<img th:src="${portalHost+'/img/dizhi.jpg'}" alt="">
-							<p>湖南省长沙市营盘东路19号金山大厦八楼</p>
-						</div>
-						<div class="cont_center">
-							<img th:src="${portalHost+'/img/dianhua.jpg'}" alt="">
-							<p>合作电话:400-8800-962</p>
-						</div>
-						<div class="cont_guanli">
-							<a href="/admin/login"> <img
-								th:src="${portalHost+'/img/guanli.png'}" alt="">
-								<p>管理员入口</p>
-							</a>
-						</div>
-						<div class="cont_rightapp">
-							<img th:src="${portalHost+'/img/erweima_iphone.png'}" alt="">
-							<p>iPhone版</p>
-						</div>
-						<div class="cont_right android">
-							<img th:src="${portalHost+'/img/erweima_android.jpg'}" alt="">
-							<p>Android版</p>
-						</div>
-						<div class="cont_right">
-							<img th:src="${portalHost+'/img/erweima.jpg'}" alt="">
-							<p>微信公众号</p>
-						</div>
-					</div>
-					<div class="text_bottom">
-						<p>友情链接</p>
-						<a href="http://www.hnst.gov.cn/" target="_blank">湖南省科技厅/</a> <a
-							href="http://www.cssti.cn/" target="_blank">长沙市科技局/</a> <a
-							href="http://www.cast.org.cn/" target="_blank">中国科学技术协会/</a> <a
-							href="http://www.chinatorch.gov.cn/" target="_blank">科技部火炬中心/</a>
-						<a href="http://www.nosta.gov.cn/web/index.aspx" target="_blank">国家科技成果奖励办/</a>
-						<a href="http://www.nast.org.cn/" target="_blank">国家科技成果网/</a> <a
-							href="http://www.hnast.org.cn/portal/comm/index.action"
-							target="_blank">湖南省科学技术协会/</a> <a href="http://www.hncgw.gov.cn/"
-							target="_blank">湖南省科技成果转化公共服务平台/</a> <a
-							href="http://www.hnjxw.gov.cn/" target="_blank">湖南省经济信息化委员会/</a>
-						<a href="http://kyy.hnu.cn/" target="_blank">湖南大学科学技术研究院/</a> <a
-							href="http://www.gxst.gov.cn/gxkjt/" target="_blank">广西省科技厅/</a>
-						<a href="http://www.nmkjt.gov.cn/" target="_blank">内蒙古自治区科技厅/</a>
-						<a href="http://www.cshtz.gov.cn/" target="_blank">长沙市高新区管委会/</a>
-						<a href="http://www.jxas.ac.cn/" target="_blank">江西省科学院/</a> <a
-							href="http://www.cnic.cn/front/index.html#/cnicSite/home"
-							target="_blank">中科院计算机网络信息中心/</a> <a
-							href="http://kxyjb.csu.edu.cn/" target="_blank">中南大学科学研究部/</a> <a
-							href="http://www.cast.org.cn/" target="_blank">中国科协创新创业服务中心/</a>
-						<a href="http://www.hbstd.gov.cn/" target="_blank">湖北省科技厅/</a> <a
-							href="http://www.gdstc.gov.cn/" target="_blank">广东省科技厅/</a> <a
-							href="http://www.hnkjt.gov.cn/" target="_blank">河南省科技厅/</a> <a
-							href="http://www.cbtm.gov.cn/" target="_blank">技术合同登记官网</a>
-					</div>
-				</div>
-			</div>
-		</div>
-		<div onclick="_MEIQIA('showPanel')" id="lxkf" style="display: none"></div>
-		<div class="pub_fix">
-			<span class="index_blur"></span>
-			<ul class="ret_top">
-				<li class="head_login"><a href="javascript:;"> <img
-						th:src="${portalHost+'/img/index_fix0.png'}" alt="">
-						<p>申请会员</p>
-				</a></li>
-				<li><a onclick="_MEIQIA('showPanel')"> <img
-						th:src="${portalHost+'/img/index_fix3.png'}" alt="">
-						<p>联系客服</p>
-				</a></li>
-				<li><a href="" class="pendent_box"> <img
-						th:src="${portalHost+'/img/index_fix4.png'}" alt="">
-						<p>返回顶部</p>
-				</a></li>
-			</ul>
-			<span class="index_orange"></span>
-		</div>
-		<div class="message">
-			<span></span>
-		</div>
-		<div class="login">
-			<div class="login_mian">
-				<div class="login_left">
-					<div class="login_ewm">
-						<img th:src="${portalHost+'/img/Android.jpg'}" alt="二维码" />
-						<p>Android版</p>
-						<p>客户端</p>
-					</div>
-					<div class="login_ewm">
-						<img th:src="${portalHost+'/img/iPhone.jpg'}" alt="二维码" />
-						<p>iPhone版</p>
-						<p>客户端</p>
-					</div>
-				</div>
-				<div class="login_right">
-					<h5>
-						用户登陆 <a href="">免费注册有好礼呦!!</a>
-					</h5>
-					<form id="form_login">
-						<div class="login_uesr">
-							<label for="uesname"> <img
-								th:src="${portalHost+'/img/login_use.png'}" />
-							</label> <input type="text" name="uesname" id="Lo_user" placeholder="用户名" />
-							<img th:src="${portalHost+'/img/login_del.png'}" class="log_del" />
-						</div>
-						<div class="login_pass">
-							<label for="pass"> <img
-								th:src="${portalHost+'/img/login_password.png'}" />
-							</label> <input type="password" name="pass" id="Lo_pass"
-								placeholder="请输入密码" />
-						</div>
-						<div class="login_check">
-							<a href="">忘记密码?</a>
-						</div>
-						<input type="submit" value="登 陆" class="login_submit" />
-					</form>
-					<img th:src="${portalHost+'/img/login_hua.png'}" alt=""
-						class="login_hua" /> <img
-						th:src="${portalHost+'/img/login_shadow.png'}" alt="阴影效果"
-						class="login_shadow" /> <img
-						th:src="${portalHost+'/img/login_close.png'}" alt=""
-						class="login_close" />
-				</div>
-			</div>
-		</div>
-		<div id="forget">
-			<div class="forget">
-				<form id="forget_form">
-					<div class="forget_top">
-						<a href="">忘记密码?</a>
-						<div class="login_check">
-							<label for="forget_checks" class="lab_check"> <input
-								type="checkbox" name="type" id="forget_checks" />专家登录
-							</label> <label for="forget_checkst" class="lab_checkno"> <input
-								type="checkbox" name="type" id="forget_checkst" />企业登录
-							</label>
-						</div>
-					</div>
-					<div class="forget_center">
-						<div class="phone">
-							<label for="forget_phone"> 手机号码: <input type="text"
-								name="type" id="forget_phone" placeholder="请输入您的手机号码..." />
-							</label>
-						</div>
-						<div class="yanzheng">
-							<label for="forget_yanzheng"> 图形验证码: <input type="text"
-								name="type" id="forget_yanzheng" />
-							</label>
-							<div class="yanzhengma_cont_">
-								<img th:src="${basePath+'/open/getVCode'}" />
-							</div>
-						</div>
-						<div class="cellcode_">
-							<div>
-								验证码: <input type="text" name="cellCode" placeholder="手机验证码"
-									id="photo_n" />
-							</div>
-							<input type="button" id="photo_m" value="获取验证码" disabled />
-						</div>
-						<div class="fastener">
-							<input type="submit" class="forget_sub" value="确认" />
-							<div class="fastener_right">取消</div>
-						</div>
-					</div>
-				</form>
-				<img th:src="${portalHost+'/img/login_close.png'}" alt=""
-					class="login_close" />
-			</div>
-		</div>
-		<div id="new_password">
-			<div class="new_password">
-				<form id="new_password_form">
-					<div class="password_top">
-						<h4>设置新密码</h4>
-						<span>密码长度为6-20个字符,区分大小写</span>
-					</div>
-					<div class="password_center">
-						<div>
-							<label for="new_pass"> 新密码: <input type="text"
-								name="type" id="new_pass" placeholder="请输入您的新密码..." />
-							</label>
-						</div>
-						<div>
-							<label for="new_pass_again"> 确认密码: <input type="text"
-								name="type" id="new_pass_again" placeholder="请确认您的密码..." />
-							</label>
-						</div>
-						<div class="fastener">
-							<input type="submit" class="new_password_sub" value="确认" />
-							<div class="fastener_right">取消</div>
-						</div>
-					</div>
-				</form>
-				<img th:src="${portalHost+'/img/login_close.png'}" alt=""
-					class="login_close" />
-			</div>
-		</div>
-		<div class="smg">
-			<input type="text" name="msg" value="111" id="msg" />
-		</div>
+		<footer>
+		<div th:replace="common::copyright"></div>
+		<div th:replace="common::login"></div>
 	</footer>
 	</footer>
-</body>
-<script type="text/javascript" th:src="${portalHost+'/vendors.js'}"></script>
+	<div th:replace="common::footer(~{::script})">
+		<script type="text/javascript" th:src="${portalHost + '/vendors.js'}"></script>
+
 <script type="text/javascript"
 <script type="text/javascript"
 	th:src="${portalHost+'/newMenu/demand.js'}"></script>
 	th:src="${portalHost+'/newMenu/demand.js'}"></script>
 
 

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

@@ -12,7 +12,7 @@
 
 
 <body>
 <body>
 	<header>
 	<header>
-		<div th:replace="common::nav('technologyTrading','')"></div>
+		<div th:replace="common::nav('','')"></div>
 	</header>
 	</header>
 	<!--banner-->
 	<!--banner-->
 	<div class="carouselt">
 	<div class="carouselt">