zou_ht %!s(int64=8) %!d(string=hai) anos
pai
achega
05b7d5d9ca
Modificáronse 31 ficheiros con 3897 adicións e 2590 borrados
  1. 106 0
      src/main/java/com/goafanti/achievement/bo/AchievementListBo.java
  2. 54 0
      src/main/java/com/goafanti/achievement/bo/AchievementPartnerListBo.java
  3. 5 1
      src/main/java/com/goafanti/achievement/service/AchievementService.java
  4. 21 3
      src/main/java/com/goafanti/achievement/service/impl/AchievementServiceImpl.java
  5. 216 48
      src/main/java/com/goafanti/common/controller/PortalController.java
  6. 114 18
      src/main/java/com/goafanti/common/controller/WebpageController.java
  7. 4 1
      src/main/java/com/goafanti/common/dao/AchievementMapper.java
  8. 7 0
      src/main/java/com/goafanti/common/dao/DemandMapper.java
  9. 2 0
      src/main/java/com/goafanti/common/dao/DistrictGlossoryMapper.java
  10. 6 2
      src/main/java/com/goafanti/common/dao/UserMapper.java
  11. 53 24
      src/main/java/com/goafanti/common/mapper/AchievementMapper.xml
  12. 1550 1165
      src/main/java/com/goafanti/common/mapper/DemandMapper.xml
  13. 4 0
      src/main/java/com/goafanti/common/mapper/DistrictGlossoryMapper.xml
  14. 1008 935
      src/main/java/com/goafanti/common/mapper/UserMapper.xml
  15. 3 1
      src/main/java/com/goafanti/dataGlossory/service/DistrictGlossoryService.java
  16. 6 1
      src/main/java/com/goafanti/dataGlossory/service/impl/DistrictGlossoryServiceImpl.java
  17. 54 1
      src/main/java/com/goafanti/demand/bo/DemandListBo.java
  18. 8 1
      src/main/java/com/goafanti/demand/service/DemandService.java
  19. 18 2
      src/main/java/com/goafanti/demand/service/impl/DemandServiceImpl.java
  20. 31 5
      src/main/java/com/goafanti/portal/bo/AchievementPortalDetailBo.java
  21. 43 0
      src/main/java/com/goafanti/portal/bo/DemandPortalDetailBo.java
  22. 16 5
      src/main/java/com/goafanti/portal/controller/PortalSearchController.java
  23. 62 0
      src/main/java/com/goafanti/user/bo/OrgPartnerDetailBo.java
  24. 63 0
      src/main/java/com/goafanti/user/bo/UserPartnerDetailBo.java
  25. 2 0
      src/main/java/com/goafanti/user/service/UserService.java
  26. 7 2
      src/main/java/com/goafanti/user/service/impl/UserServiceImpl.java
  27. 0 191
      src/main/webapp/WEB-INF/views/portal/detail/achievementDetail.html
  28. 0 177
      src/main/webapp/WEB-INF/views/portal/detail/demandDetail.html
  29. 151 0
      src/main/webapp/WEB-INF/views/portal/technologyTrading/achievementDetail.html
  30. 121 0
      src/main/webapp/WEB-INF/views/portal/technologyTrading/demandDetail.html
  31. 162 7
      src/main/webapp/WEB-INF/views/user/subscriberDetail.html

+ 106 - 0
src/main/java/com/goafanti/achievement/bo/AchievementListBo.java

@@ -86,6 +86,36 @@ public class AchievementListBo {
      *  是否属于精品 0 - 否	, 1 - 是
      *  是否属于精品 0 - 否	, 1 - 是
      */
      */
     private Integer boutique;
     private Integer boutique;
+    
+    /**
+     *  图片链接
+     */
+    private String technicalpictureurl;
+    
+    /**
+	 * 交易方式(转让方式(0--完全转让,1--许可转让,2--技术入股))
+	 */
+	private Integer		transferMode;
+    
+	/**
+	 * 成熟度
+	 */
+	private Integer		maturity;
+	
+	/**
+	 * 行业
+	 */
+	private Integer		fieldA;
+	
+	private String		fieldAS;
+	
+	private String		field;
+	
+	private String		maturityS;
+	
+	private String			transferModeS;
+	
+	private String	ownerTypeS;
 	
 	
 	public String getOrgId() {
 	public String getOrgId() {
 		return orgId;
 		return orgId;
@@ -233,4 +263,80 @@ public class AchievementListBo {
 
 
 	}
 	}
 
 
+	public String getTechnicalpictureurl() {
+		return technicalpictureurl;
+	}
+
+	public void setTechnicalpictureurl(String technicalpictureurl) {
+		this.technicalpictureurl = technicalpictureurl;
+	}
+
+	public Integer getTransferMode() {
+		return transferMode;
+	}
+
+	public void setTransferMode(Integer transferMode) {
+		this.transferMode = transferMode;
+	}
+
+	public Integer getMaturity() {
+		return maturity;
+	}
+
+	public void setMaturity(Integer maturity) {
+		this.maturity = maturity;
+	}
+
+	public Integer getFieldA() {
+		return fieldA;
+	}
+
+	public void setFieldA(Integer fieldA) {
+		this.fieldA = fieldA;
+	}
+
+	public String getFieldAS() {
+		return fieldAS;
+	}
+
+	public void setFieldAS(String fieldAS) {
+		this.fieldAS = fieldAS;
+	}
+
+	public String getField() {
+		return field;
+	}
+
+	public void setField(String field) {
+		this.field = field;
+	}
+
+	public String getMaturityS() {
+		return maturityS;
+	}
+
+	public void setMaturityS(String maturityS) {
+		this.maturityS = maturityS;
+	}
+
+	public String getTransferModeS() {
+		return transferModeS;
+	}
+
+	public void setTransferModeS(String transferModeS) {
+		this.transferModeS = transferModeS;
+	}
+
+	public String getOwnerTypeS() {
+		return ownerTypeS;
+	}
+
+	public void setOwnerTypeS(String ownerTypeS) {
+		this.ownerTypeS = ownerTypeS;
+	}
+	
+	
+	
+	
+
 }
 }

+ 54 - 0
src/main/java/com/goafanti/achievement/bo/AchievementPartnerListBo.java

@@ -71,7 +71,23 @@ public class AchievementPartnerListBo {
 	 * 标价
 	 * 标价
 	 */
 	 */
 	private BigDecimal	transferPrice;
 	private BigDecimal	transferPrice;
+	
+	
+	/**
+	 * 描述
+	 */
+	private String	introduction;
 
 
+	/**
+	 * 描述
+	 */
+	private String	technicalPictureUrl;
+	
+	/**
+	 * 成熟度中文描述
+	 */
+	private String maturityS;
+	
 	public Integer getFieldA() {
 	public Integer getFieldA() {
 		return fieldA;
 		return fieldA;
 	}
 	}
@@ -190,4 +206,42 @@ public class AchievementPartnerListBo {
 	public void setReleaseDateFormattedDate(String releaseDateFormattedDate) {
 	public void setReleaseDateFormattedDate(String releaseDateFormattedDate) {
 
 
 	}
 	}
+
+	public String getIntroduction() {
+		return introduction;
+	}
+
+	public void setIntroduction(String introduction) {
+		this.introduction = introduction;
+	}
+
+	public String getTechnicalPictureUrl() {
+		return technicalPictureUrl;
+	}
+
+	public void setTechnicalPictureUrl(String technicalPictureUrl) {
+		this.technicalPictureUrl = technicalPictureUrl;
+	}
+
+	
+	
+	public String getMaturityS() {
+		return maturityS;
+	}
+
+	public void setMaturityS(String maturityS) {
+		this.maturityS = maturityS;
+	}
+
+	@Override
+	public String toString() {
+		return "partnerAchievementList [id=" + id + ", serialNumber=" + serialNumber + ", dataCategory="
+				+ dataCategory + ", name=" + name + ", keyword=" + keyword + ", category=" + category + ", ownerType="
+				+ ownerType + ", releaseDate=" + releaseDate + ", fieldA=" + fieldA + ", fieldB=" + fieldB
+				+ ", maturity=" + maturity + ", bargainingMode=" + bargainingMode + ", transferPrice=" + transferPrice
+				+ ", introduction=" + introduction + ", technicalPictureUrl=" + technicalPictureUrl + "]";
+	}
+
+	
+	
 }
 }

+ 5 - 1
src/main/java/com/goafanti/achievement/service/AchievementService.java

@@ -52,7 +52,8 @@ public interface AchievementService {
 	void insertImport(List<AchievementImportBo> data);
 	void insertImport(List<AchievementImportBo> data);
 
 
 	Pagination<AchievementSearchListBo> listAchievementSearchList(
 	Pagination<AchievementSearchListBo> listAchievementSearchList(
-			String keyword,Integer dataCategory ,Integer fieldA,String transferMode, Integer pageNo, Integer pageSize);
+			String keyword,Integer dataCategory ,Integer category, Integer fieldA,String transferMode, Integer pageNo, Integer pageSize,
+			Integer timeSort,String upperPrice,String lowerPrice);
 
 
 	AchievementDetailBo selectAchievementSearchDetail(String uid, String id);
 	AchievementDetailBo selectAchievementSearchDetail(String uid, String id);
 	
 	
@@ -81,4 +82,7 @@ public interface AchievementService {
 	 
 	 
     /** 查询猜你喜欢  **/
     /** 查询猜你喜欢  **/
     public List<AchievementListBo>  getPerhapLike();
     public List<AchievementListBo>  getPerhapLike();
+    
+    /**查询智者的科技成果**/
+    public List<AchievementPartnerListBo> findPartnerAchievementList(String uid);
 }
 }

+ 21 - 3
src/main/java/com/goafanti/achievement/service/impl/AchievementServiceImpl.java

@@ -411,7 +411,8 @@ public class AchievementServiceImpl extends BaseMybatisDao<AchievementMapper> im
 	@SuppressWarnings("unchecked")
 	@SuppressWarnings("unchecked")
 	@Override
 	@Override
 	public Pagination<AchievementSearchListBo> listAchievementSearchList(
 	public Pagination<AchievementSearchListBo> listAchievementSearchList(
-			String keyword,Integer dataCategory, Integer fieldA, String transferMode,Integer pNo, Integer pSize ) {
+			String keyword,Integer dataCategory, Integer category,Integer fieldA, String transferMode,Integer pNo, Integer pSize,
+			Integer dateSort,String upperPrice,String lowerPrice) {
 		Map<String, Object> params = new HashMap<>();
 		Map<String, Object> params = new HashMap<>();
 		if (!StringUtils.isBlank(keyword)) {
 		if (!StringUtils.isBlank(keyword)) {
 			params.put("keyword", keyword);
 			params.put("keyword", keyword);
@@ -420,7 +421,10 @@ public class AchievementServiceImpl extends BaseMybatisDao<AchievementMapper> im
 		if (null != dataCategory) {
 		if (null != dataCategory) {
 			params.put("dataCategory", dataCategory);
 			params.put("dataCategory", dataCategory);
 		}
 		}
-
+		
+		if(null!= category){
+			params.put("category", category);
+		}
 		if (null != fieldA) {
 		if (null != fieldA) {
 			params.put("fieldA", fieldA);
 			params.put("fieldA", fieldA);
 		}
 		}
@@ -428,7 +432,15 @@ public class AchievementServiceImpl extends BaseMybatisDao<AchievementMapper> im
 		if (!StringUtils.isBlank(transferMode)) {
 		if (!StringUtils.isBlank(transferMode)) {
 			params.put("transferMode", transferMode);
 			params.put("transferMode", transferMode);
 		}
 		}
-		
+		if(dateSort != null){
+			params.put("dateSort", dateSort);
+		}
+		if(upperPrice != null){
+			params.put("upperPrice", upperPrice);
+		}
+		if(lowerPrice != null){
+			params.put("lowerPrice", lowerPrice);
+		}
 		if (pNo == null || pNo < 0) {
 		if (pNo == null || pNo < 0) {
 			pNo = 1;
 			pNo = 1;
 		}
 		}
@@ -440,6 +452,7 @@ public class AchievementServiceImpl extends BaseMybatisDao<AchievementMapper> im
 		List<AchievementSearchListBo> AchievementSearchList = (List<AchievementSearchListBo>) result.getList();
 		List<AchievementSearchListBo> AchievementSearchList = (List<AchievementSearchListBo>) result.getList();
 		for (int i = 0; i < AchievementSearchList.size(); i++) {
 		for (int i = 0; i < AchievementSearchList.size(); i++) {
 			String introduction = AchievementSearchList.get(i).getIntroduction();
 			String introduction = AchievementSearchList.get(i).getIntroduction();
+			if(introduction != null)
 			introduction=introduction.length()>20?introduction.substring(0, 20)+"... ...":introduction;
 			introduction=introduction.length()>20?introduction.substring(0, 20)+"... ...":introduction;
 
 
 		}
 		}
@@ -632,6 +645,11 @@ public class AchievementServiceImpl extends BaseMybatisDao<AchievementMapper> im
 		return achievementMapper.selectCsutomerLike(); //查询出猜你喜欢
 		return achievementMapper.selectCsutomerLike(); //查询出猜你喜欢
 	}
 	}
 
 
+	@Override
+	public List<AchievementPartnerListBo> findPartnerAchievementList(String uid) {
+		return achievementMapper.findPartnerAchievementListByPage(uid);
+	}
+
 	
 	
 	
 	
 }
 }

+ 216 - 48
src/main/java/com/goafanti/common/controller/PortalController.java

@@ -1,8 +1,10 @@
 package com.goafanti.common.controller;
 package com.goafanti.common.controller;
 
 
 import java.math.BigDecimal;
 import java.math.BigDecimal;
+import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Arrays;
 import java.util.List;
 import java.util.List;
+import java.util.Random;
 
 
 import javax.annotation.Resource;
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletRequest;
@@ -23,31 +25,31 @@ import com.goafanti.common.enums.UserLevel;
 import com.goafanti.common.enums.UserType;
 import com.goafanti.common.enums.UserType;
 import com.goafanti.common.service.FieldGlossoryService;
 import com.goafanti.common.service.FieldGlossoryService;
 import com.goafanti.core.shiro.token.TokenManager;
 import com.goafanti.core.shiro.token.TokenManager;
+import com.goafanti.demand.bo.DemandListBo;
 import com.goafanti.demand.service.DemandService;
 import com.goafanti.demand.service.DemandService;
 import com.goafanti.portal.bo.AchievementPortalDetailBo;
 import com.goafanti.portal.bo.AchievementPortalDetailBo;
 import com.goafanti.portal.bo.AchievementPortalSimilarListBo;
 import com.goafanti.portal.bo.AchievementPortalSimilarListBo;
-import com.goafanti.portal.bo.BoutiqueListBo;
 import com.goafanti.portal.bo.DemandPortalDetailBo;
 import com.goafanti.portal.bo.DemandPortalDetailBo;
 import com.goafanti.portal.bo.DemandPortalSimilarListBo;
 import com.goafanti.portal.bo.DemandPortalSimilarListBo;
 
 
 @Controller
 @Controller
 public class PortalController extends BaseController {
 public class PortalController extends BaseController {
 	@Resource
 	@Resource
-	private AchievementService		achievementService;
+	private AchievementService achievementService;
 	@Resource
 	@Resource
-	private DemandService			demandService;
+	private DemandService demandService;
 	@Resource
 	@Resource
-	private FieldGlossoryService	fieldGlossoryService;
+	private FieldGlossoryService fieldGlossoryService;
 
 
-	private static final String		UNIT				= "万元";
+	private static final String UNIT = "万元";
 
 
-	private static final int		MULTIPLE			= 20;
+	private static final int MULTIPLE = 20;
 
 
-	private static final String		DELIMITER			= "/";
+	private static final String DELIMITER = "/";
 
 
-	private static final String		PRICE_NEGOTIABLE	= "价格面议";
+	private static final String PRICE_NEGOTIABLE = "价格面议";
 
 
-	private static final String		UNCERTIFY			= "未认证";
+	private static final String UNCERTIFY = "未认证";
 
 
 	@RequestMapping(value = "/index", method = RequestMethod.GET)
 	@RequestMapping(value = "/index", method = RequestMethod.GET)
 	public ModelAndView index(HttpServletRequest request, ModelAndView modelview) {
 	public ModelAndView index(HttpServletRequest request, ModelAndView modelview) {
@@ -66,7 +68,7 @@ public class PortalController extends BaseController {
 	/**
 	/**
 	 * 科技需求详情
 	 * 科技需求详情
 	 */
 	 */
-	@RequestMapping(value = "/portal/detail/demandDetail", method = RequestMethod.GET)
+	@RequestMapping(value = "/portal/technologyTrading/demandDetail", method = RequestMethod.GET)
 	public ModelAndView portalDemandDetail(String id, Integer type) {
 	public ModelAndView portalDemandDetail(String id, Integer type) {
 		ModelAndView mv = new ModelAndView();
 		ModelAndView mv = new ModelAndView();
 		DemandPortalDetailBo demand = null;
 		DemandPortalDetailBo demand = null;
@@ -120,8 +122,70 @@ public class PortalController extends BaseController {
 			demand.setLocation((StringUtils.isBlank(demand.getProvince()) ? "" : demand.getProvince())
 			demand.setLocation((StringUtils.isBlank(demand.getProvince()) ? "" : demand.getProvince())
 					+ (StringUtils.isBlank(demand.getCity()) ? "" : demand.getCity()));
 					+ (StringUtils.isBlank(demand.getCity()) ? "" : demand.getCity()));
 		}
 		}
-		mv.setViewName("/portal/detail/demandDetail");
+
+		/*--------------查询精品需求---------------*/
+		List<DemandListBo> boutiquedemand = demandService.selectDemandList(1);
+		List<DemandListBo> reboutiquedemand = new ArrayList<DemandListBo>();
+		if (boutiquedemand.size() >= 4) {
+			int index = (int) new Random().nextInt(boutiquedemand.size() - 3);
+			reboutiquedemand.add(boutiquedemand.get(index));
+			reboutiquedemand.add(boutiquedemand.get(index + 1));
+			reboutiquedemand.add(boutiquedemand.get(index + 2));
+		} else {
+			reboutiquedemand.addAll(boutiquedemand);
+		}
+		;
+
+		// 判断登录没登录. 登录了.查找用户喜欢的. 没登录就随机查四个.
+		boolean isLogin = TokenManager.isLogin();
+		List<DemandListBo> demandlist = demandService.selectDemandList(0);// 查询所有专利
+		List<DemandListBo> redemandlist = new ArrayList<DemandListBo>();
+
+		if (demandlist.size() >= 5) {
+			int idx = (int) new Random().nextInt(demandlist.size() - 4);
+			redemandlist.add(demandlist.get(idx));
+			redemandlist.add(demandlist.get(idx + 1));
+			redemandlist.add(demandlist.get(idx + 2));
+			redemandlist.add(demandlist.get(idx + 3));
+		} else {
+			redemandlist.addAll(demandlist);
+		}
+
+		if (isLogin) {
+			List<DemandListBo> customerlikelist = demandService.selectCsutomerLike();// 猜你喜欢专利
+			int size;
+			if (customerlikelist.size() < redemandlist.size()) {
+				size = customerlikelist.size();
+			} else {
+				size = redemandlist.size();
+			}
+
+			for (int i = 0; i < size; i++) {
+				redemandlist.set(i, customerlikelist.get(i));
+			}
+		}
+
+		for (int i = 0; i < redemandlist.size(); i++) {
+			Integer demandType = redemandlist.get(i).getDemandType();
+			if (null != redemandlist) {
+				if (demandType == 1) {
+					redemandlist.get(i).setDemandTypeS("技术购买需求");
+				} else if (demandType == 2) {
+					redemandlist.get(i).setDemandTypeS("技术设备类需求");
+				} else if (demandType == 3) {
+					redemandlist.get(i).setDemandTypeS("技术方案型需求");
+				} else if (demandType == 4) {
+					redemandlist.get(i).setDemandTypeS("技术攻关型需求");
+				} else if (demandType == 5) {
+					redemandlist.get(i).setDemandTypeS("技术人才型需求");
+				}
+			}
+		}
+
+		mv.setViewName("/portal/technologyTrading/demandDetail");
 		mv.addObject("demand", demand);
 		mv.addObject("demand", demand);
+		mv.addObject("reboutiquedemand", reboutiquedemand);
+		mv.addObject("redemandlist", redemandlist);
 
 
 		return mv;
 		return mv;
 	}
 	}
@@ -130,24 +194,39 @@ public class PortalController extends BaseController {
 	 * 科技成果详情
 	 * 科技成果详情
 	 */
 	 */
 	@SuppressWarnings("null")
 	@SuppressWarnings("null")
-	@RequestMapping(value = "/portal/detail/achievementDetail", method = RequestMethod.GET)
+	@RequestMapping(value = "/portal/technologyTrading/achievementDetail", method = RequestMethod.GET)
 	public ModelAndView portalAchievementDetail(String id, Integer type) {
 	public ModelAndView portalAchievementDetail(String id, Integer type) {
 		ModelAndView mv = new ModelAndView();
 		ModelAndView mv = new ModelAndView();
 		AchievementPortalDetailBo achievementdetail = null;
 		AchievementPortalDetailBo achievementdetail = null;
-		AchievementListBo achievement = null;
 		if (UserType.PERSONAL.getCode().equals(type)) {
 		if (UserType.PERSONAL.getCode().equals(type)) {
 			achievementdetail = achievementService.findUserPortalAchievementDetail(id);
 			achievementdetail = achievementService.findUserPortalAchievementDetail(id);
 		} else if (UserType.ORGANIZATION.getCode().equals(type)) {
 		} else if (UserType.ORGANIZATION.getCode().equals(type)) {
 			achievementdetail = achievementService.findOrgPortalAchievementDetail(id);
 			achievementdetail = achievementService.findOrgPortalAchievementDetail(id);
 		}
 		}
 		if (null != achievementdetail) {
 		if (null != achievementdetail) {
-			if (StringUtils.isBlank(achievementdetail.getOwnerName())) {
-				if (UserLevel.GENERAL.getCode().equals(achievementdetail.getLevel())) {
-					achievementdetail.setOwnerName(UNCERTIFY);
-				} else {
-					achievementdetail.setOwnerName(" ");
+
+			Integer category = achievementdetail.getCategory();
+			System.out.println("category:" + category);
+			if (null != category) {
+				if (category == 0) {
+					achievementdetail.setCategoryS("专利");
+				} else if (category == 2) {
+					achievementdetail.setCategoryS("软著");
+				} else if (category == 3) {
+					achievementdetail.setCategoryS("项目");
+				} else if (category == 4) {
+					achievementdetail.setCategoryS("版权");
+				} else if (category == 5) {
+					achievementdetail.setCategoryS("工业设计");
+				} else if (category == 6) {
+					achievementdetail.setCategoryS("配方");
+				} else if (category == 7) {
+					achievementdetail.setCategoryS("非标");
 				}
 				}
+
 			}
 			}
+			;
+
 			Integer fieldA = achievementdetail.getFieldA();
 			Integer fieldA = achievementdetail.getFieldA();
 			String field = "";
 			String field = "";
 			boolean a = Boolean.FALSE;
 			boolean a = Boolean.FALSE;
@@ -248,40 +327,129 @@ public class PortalController extends BaseController {
 			achievementdetail.setLocation(location);
 			achievementdetail.setLocation(location);
 
 
 		}
 		}
-		
-		//查询精品成果
-		List<AchievementListBo> boutiqueAchievement = achievementService.getAchievement(1);
-		List<AchievementListBo> reboutiqueAchievement = null;
-		int index=(int)(1+Math.random()*(10-1+1));
-		
-		for (int i = 0; i < boutiqueAchievement.size(); i++) {
-			reboutiqueAchievement.add(boutiqueAchievement.get(index));
-			reboutiqueAchievement.add(boutiqueAchievement.get(index++));
-			reboutiqueAchievement.add(boutiqueAchievement.get(index+2));
+
+		// 查询精品成果
+		List<AchievementListBo> boutiqueachievement = achievementService.getAchievement(1);
+		List<AchievementListBo> reboutiqueachievement = new ArrayList<AchievementListBo>();
+		if (boutiqueachievement.size() >= 4) {
+			int index = (int) new Random().nextInt(boutiqueachievement.size() - 3);
+			reboutiqueachievement.add(boutiqueachievement.get(index));
+			reboutiqueachievement.add(boutiqueachievement.get(index + 1));
+			reboutiqueachievement.add(boutiqueachievement.get(index + 2));
+		} else {
+			reboutiqueachievement.addAll(boutiqueachievement);
 		};
 		};
 		
 		
-		//判断登录没登录. 登录了.查找用户喜欢的. 没登录就随机查四个.
+
+		// 判断登录没登录. 登录了.查找用户喜欢的. 没登录就随机查四个.
 		boolean isLogin = TokenManager.isLogin();
 		boolean isLogin = TokenManager.isLogin();
-		List<AchievementListBo> achievementlist = achievementService.getAchievement(0);//查询所有专利
-		List<AchievementListBo> reachievementlist = null;
-		for (int i = 0; i < achievementlist.size(); i++) {
-			reachievementlist.add(boutiqueAchievement.get(index));
-			reachievementlist.add(boutiqueAchievement.get(index+1));
-			reachievementlist.add(boutiqueAchievement.get(index+2));
-			reachievementlist.add(boutiqueAchievement.get(index+3));
-		};
-		List<AchievementListBo> customerLikelist = achievementService.getPerhapLike();//猜你喜欢专利
-		
-		
-		if(isLogin) {
-		}else {
-			
+		List<AchievementListBo> achievementlist = achievementService.getAchievement(0);// 查询所有专利
+		List<AchievementListBo> reachievementlist = new ArrayList<AchievementListBo>();
+
+		if (achievementlist.size() >= 5) {
+			int idx = (int) new Random().nextInt(achievementlist.size() - 4);
+			reachievementlist.add(achievementlist.get(idx));
+			reachievementlist.add(achievementlist.get(idx + 1));
+			reachievementlist.add(achievementlist.get(idx + 2));
+			reachievementlist.add(achievementlist.get(idx + 3));
+		} else {
+			reachievementlist.addAll(achievementlist);
 		}
 		}
-		
-		
-		mv.setViewName("/portal/detail/achievementDetail");
-		mv.addObject("achievement", achievementdetail);
-		mv.addObject("ReboutiqueAchievement", reboutiqueAchievement);
+
+		if (isLogin) {
+			List<AchievementListBo> customerlikelist = achievementService.getPerhapLike();// 猜你喜欢专利
+			int size;
+			if (customerlikelist.size() < reachievementlist.size()) {
+				size = customerlikelist.size();
+			} else {
+				size = reachievementlist.size();
+			}
+
+			for (int i = 0; i < size; i++) {
+				reachievementlist.set(i, customerlikelist.get(i));
+			}
+		}
+
+		/*----------------------------------------------------------*/
+
+		for (int i = 0; i < reachievementlist.size(); i++) {
+			Integer fieldA = reachievementlist.get(i).getFieldA();
+			String field = "";
+			boolean a = Boolean.FALSE;
+			if (null != fieldA) {
+				List<AchievementPortalSimilarListBo> similarList = achievementService.findByFieldA(fieldA,
+						achievementdetail.getId(), type);
+				if (!similarList.isEmpty()) {
+					for (AchievementPortalSimilarListBo bo : similarList) {
+						if (null != bo.getMaturity()) {
+							bo.setMaturityS(bo.getMaturity() * MULTIPLE + "%");
+						}
+
+						if (null == bo.getBargainingMode()
+								|| AchievementBargainingMode.NEGOTIABLE.getCode().equals(bo.getBargainingMode())) {
+							bo.setTransferPriceS(PRICE_NEGOTIABLE);
+						} else {
+							if (null != bo.getTransferPrice() && bo.getTransferPrice().compareTo(BigDecimal.ZERO) > 0) {
+								bo.setTransferPriceS(bo.getTransferPrice() + UNIT);
+							} else {
+								bo.setTransferPriceS(PRICE_NEGOTIABLE);
+							}
+						}
+					}
+				}
+				mv.addObject("similarList", similarList);
+				if (StringUtils.isNotBlank(reachievementlist.get(i).getFieldAS())) {
+					a = Boolean.TRUE;
+				}
+			}
+
+			field += (a ? reachievementlist.get(i).getFieldAS() : "");
+			reachievementlist.get(i).setField(field);
+
+			Integer ownertyp = reachievementlist.get(i).getOwnerType();
+			if (null != ownertyp) {
+				if (ownertyp == 0) {
+					reachievementlist.get(i).setOwnerTypeS("个人所有");
+				} else if (ownertyp == 1) {
+					reachievementlist.get(i).setOwnerTypeS("组织所有");
+				}
+			}
+
+			Integer transfermode = reachievementlist.get(i).getTransferMode();
+			if (null != transfermode) {
+				if (AchievementTransferMode.FULLTRANSFER.getCode().equals(transfermode)) {
+					reachievementlist.get(i).setTransferModeS(AchievementTransferMode.FULLTRANSFER.getDesc());
+				} else if (AchievementTransferMode.PERMISSIONTRANSFER.getCode().equals(transfermode)) {
+					reachievementlist.get(i).setTransferModeS(AchievementTransferMode.PERMISSIONTRANSFER.getDesc());
+				} else if (AchievementTransferMode.TECHNOLOGYSHARES.getCode().equals(transfermode)) {
+					reachievementlist.get(i).setTransferModeS(AchievementTransferMode.TECHNOLOGYSHARES.getDesc());
+				} else if (AchievementTransferMode.EXCLUSIVETECHNOLOGYSHARES.getCode().equals(transfermode)) {
+					reachievementlist.get(i)
+							.setTransferModeS(AchievementTransferMode.EXCLUSIVETECHNOLOGYSHARES.getDesc());
+				}
+			}
+
+			Integer maturity = reachievementlist.get(i).getMaturity();
+			if (null != maturity) {
+				if (AchievementMaturity.RESEARCH.getCode().equals(maturity)) {
+					reachievementlist.get(i).setMaturityS(AchievementMaturity.RESEARCH.getDesc());
+				} else if (AchievementMaturity.SAMPLE.getCode().equals(maturity)) {
+					reachievementlist.get(i).setMaturityS(AchievementMaturity.SAMPLE.getDesc());
+				} else if (AchievementMaturity.PRIMARYTEST.getCode().equals(maturity)) {
+					reachievementlist.get(i).setMaturityS(AchievementMaturity.PRIMARYTEST.getDesc());
+				} else if (AchievementMaturity.INTERMEDIATETEST.getCode().equals(maturity)) {
+					reachievementlist.get(i).setMaturityS(AchievementMaturity.INTERMEDIATETEST.getDesc());
+				} else if (AchievementMaturity.MASSPRODUCTION.getCode().equals(maturity)) {
+					reachievementlist.get(i).setMaturityS(AchievementMaturity.MASSPRODUCTION.getDesc());
+				}
+			}
+
+		}
+
+		mv.setViewName("/portal/technologyTrading/achievementDetail");
+		mv.addObject("achievementdetail", achievementdetail);
+		mv.addObject("reboutiqueachievement", reboutiqueachievement);
+		mv.addObject("reachievementlist", reachievementlist);
 		return mv;
 		return mv;
 	}
 	}
 
 

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

@@ -1,6 +1,8 @@
 package com.goafanti.common.controller;
 package com.goafanti.common.controller;
 
 
+import java.util.ArrayList;
 import java.util.List;
 import java.util.List;
+import java.util.Random;
 
 
 import javax.annotation.Resource;
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletRequest;
@@ -10,39 +12,50 @@ import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.servlet.ModelAndView;
 import org.springframework.web.servlet.ModelAndView;
 
 
+import com.goafanti.achievement.bo.AchievementPartnerListBo;
 import com.goafanti.achievement.service.AchievementService;
 import com.goafanti.achievement.service.AchievementService;
 import com.goafanti.banners.enums.BannersType;
 import com.goafanti.banners.enums.BannersType;
 import com.goafanti.banners.service.BannersService;
 import com.goafanti.banners.service.BannersService;
 import com.goafanti.common.constant.AFTConstants;
 import com.goafanti.common.constant.AFTConstants;
+import com.goafanti.common.enums.AchievementMaturity;
+import com.goafanti.common.enums.UserType;
 import com.goafanti.common.model.Banners;
 import com.goafanti.common.model.Banners;
 import com.goafanti.core.shiro.token.TokenManager;
 import com.goafanti.core.shiro.token.TokenManager;
+import com.goafanti.dataGlossory.service.DistrictGlossoryService;
 import com.goafanti.demand.service.DemandService;
 import com.goafanti.demand.service.DemandService;
 import com.goafanti.portal.bo.InternationalListBo;
 import com.goafanti.portal.bo.InternationalListBo;
+import com.goafanti.user.bo.UserPartnerDetailBo;
 import com.goafanti.user.service.OrganizationIdentityService;
 import com.goafanti.user.service.OrganizationIdentityService;
 import com.goafanti.user.service.UserIdentityService;
 import com.goafanti.user.service.UserIdentityService;
+import com.goafanti.user.service.UserService;
 import com.goafanti.news.enums.NewsType;
 import com.goafanti.news.enums.NewsType;
 import com.goafanti.news.service.NewsService;
 import com.goafanti.news.service.NewsService;
 
 
 @Controller
 @Controller
 public class WebpageController extends BaseController {
 public class WebpageController extends BaseController {
+	@Resource
+	private UserService userService;
+	
+	@Resource
+	private DistrictGlossoryService districtglossoryservice;
 
 
 	@Resource
 	@Resource
-	private DemandService		demandService;
+	private DemandService demandService;
 
 
 	@Resource
 	@Resource
-	private AchievementService	achievementService;
+	private AchievementService achievementService;
 
 
 	@Resource
 	@Resource
-	private BannersService		bannersService;
+	private BannersService bannersService;
 
 
 	@Resource
 	@Resource
-	private UserIdentityService 	userIdentityService;
-	
+	private UserIdentityService userIdentityService;
+
 	@Resource
 	@Resource
 	private OrganizationIdentityService organizationIdentityService;
 	private OrganizationIdentityService organizationIdentityService;
-	
+
 	@Resource
 	@Resource
-	private NewsService			newsService;
+	private NewsService newsService;
 
 
 	/**
 	/**
 	 * 首页
 	 * 首页
@@ -109,7 +122,7 @@ public class WebpageController extends BaseController {
 	public String mSignin(HttpServletRequest request, ModelAndView modelview) {
 	public String mSignin(HttpServletRequest request, ModelAndView modelview) {
 		return "/user/msignIn";
 		return "/user/msignIn";
 	}
 	}
-	
+
 	@RequestMapping(value = "/user/certify", method = RequestMethod.GET)
 	@RequestMapping(value = "/user/certify", method = RequestMethod.GET)
 	public ModelAndView userCertify(HttpServletRequest request, ModelAndView modelview) {
 	public ModelAndView userCertify(HttpServletRequest request, ModelAndView modelview) {
 		modelview.setViewName("/user/certify");
 		modelview.setViewName("/user/certify");
@@ -129,9 +142,77 @@ public class WebpageController extends BaseController {
 	}
 	}
 
 
 	@RequestMapping(value = "/user/subscriberDetail", method = RequestMethod.GET)
 	@RequestMapping(value = "/user/subscriberDetail", method = RequestMethod.GET)
-	public String userSubscriberDetail(HttpServletRequest request, ModelAndView modelview) {
-		return "/user/subscriberDetail";
-	}
+	public ModelAndView ModelAndView(HttpServletRequest request, ModelAndView modelview, String uid, Integer type) {
+		ModelAndView mv = new ModelAndView();
+		UserPartnerDetailBo rePartnerDetail =new UserPartnerDetailBo();
+		System.out.println("uid=" + uid);
+		/* 查询智者详细信息 */
+
+		if (UserType.PERSONAL.getCode().equals(type)) {
+			rePartnerDetail = userService.findUserPartnerDetail(uid);
+			if (null != rePartnerDetail) {
+				Integer province = rePartnerDetail.getProvince();
+				if(null!=province) {
+					rePartnerDetail.setProvinceS(districtglossoryservice.selectNameById(province));
+				}
+			}
+		} else {
+			rePartnerDetail = (UserPartnerDetailBo) userService.findOrgPartnerDetail(uid);
+			if (null != rePartnerDetail) {
+				Integer province = rePartnerDetail.getProvince();
+				if(null!=province) {
+					rePartnerDetail.setProvinceS(districtglossoryservice.selectNameById(province));
+				}
+			}
+		}
+
+		/* 查询该智者的相关成果信息 */
+		List<AchievementPartnerListBo> partnerAchievementList = achievementService.findPartnerAchievementList(uid);
+		for (int i = 0; i < partnerAchievementList.size(); i++) {
+			Integer maturity = partnerAchievementList.get(i).getMaturity();
+			if (null != maturity) {
+				if (AchievementMaturity.RESEARCH.getCode().equals(maturity)) {
+					partnerAchievementList.get(i).setMaturityS(AchievementMaturity.RESEARCH.getDesc());
+				} else if (AchievementMaturity.SAMPLE.getCode().equals(maturity)) {
+					partnerAchievementList.get(i).setMaturityS(AchievementMaturity.SAMPLE.getDesc());
+				} else if (AchievementMaturity.PRIMARYTEST.getCode().equals(maturity)) {
+					partnerAchievementList.get(i).setMaturityS(AchievementMaturity.PRIMARYTEST.getDesc());
+				} else if (AchievementMaturity.INTERMEDIATETEST.getCode().equals(maturity)) {
+					partnerAchievementList.get(i).setMaturityS(AchievementMaturity.INTERMEDIATETEST.getDesc());
+				} else if (AchievementMaturity.MASSPRODUCTION.getCode().equals(maturity)) {
+					partnerAchievementList.get(i).setMaturityS(AchievementMaturity.MASSPRODUCTION.getDesc());
+				}
+			}
+		}
+		
+		
+
+		/* 查询相关智者信息 */
+		List<UserPartnerDetailBo> userPartner = userService.findUserPartner();
+		List<UserPartnerDetailBo> reuserPartner = new ArrayList<UserPartnerDetailBo>();
+		if (userPartner.size() >= 4) {
+			int index = (int) new Random().nextInt(userPartner.size() - 3);
+			reuserPartner.add(userPartner.get(index));
+			reuserPartner.add(userPartner.get(index + 1));
+			reuserPartner.add(userPartner.get(index + 2));
+		} else {
+			reuserPartner.addAll(userPartner);
+		}
+		for (int i = 0; i < reuserPartner.size(); i++) {
+			String personalProfile = reuserPartner.get(i).getPersonalProfile();
+			if(null!= personalProfile&& ""!=personalProfile &&personalProfile.length()>40) {
+				personalProfile=personalProfile.substring(0, 40)+"... ...";
+				reuserPartner.get(i).setPersonalProfile(personalProfile);
+			}
+		}
+		
+		mv.setViewName("/user/subscriberDetail");
+		mv.addObject("rePartnerDetail",rePartnerDetail);
+		mv.addObject("reuserPartner",reuserPartner);
+		mv.addObject("partnerAchievementList",partnerAchievementList);
+		return mv;
+
+	};
 
 
 	@RequestMapping(value = "/user/account/services", method = RequestMethod.GET)
 	@RequestMapping(value = "/user/account/services", method = RequestMethod.GET)
 	public ModelAndView userServices(HttpServletRequest request, ModelAndView modelview) {
 	public ModelAndView userServices(HttpServletRequest request, ModelAndView modelview) {
@@ -316,9 +397,12 @@ public class WebpageController extends BaseController {
 	public ModelAndView portalInternationalInternationalIndex(HttpServletRequest request, ModelAndView modelview) {
 	public ModelAndView portalInternationalInternationalIndex(HttpServletRequest request, ModelAndView modelview) {
 		modelview.setViewName("/portal/international/internationalIndex");
 		modelview.setViewName("/portal/international/internationalIndex");
 		handleBanners(modelview, BannersType.GUO_JI_YE_WU);
 		handleBanners(modelview, BannersType.GUO_JI_YE_WU);
-		List<InternationalListBo> listA = achievementService.selectInternationalAchievement(AFTConstants.INTERNATIONAL_ACHIEVEMENT_CACHE_KEY);
-		List<InternationalListBo> listB = userIdentityService.selectInternationalUser(AFTConstants.INTERNATIONAL_USER_CACHE_KEY);
-		List<InternationalListBo> listC = organizationIdentityService.selectInternationalOrganization(AFTConstants.INTERNATIONAL_ORG_CACHE_KEY);
+		List<InternationalListBo> listA = achievementService
+				.selectInternationalAchievement(AFTConstants.INTERNATIONAL_ACHIEVEMENT_CACHE_KEY);
+		List<InternationalListBo> listB = userIdentityService
+				.selectInternationalUser(AFTConstants.INTERNATIONAL_USER_CACHE_KEY);
+		List<InternationalListBo> listC = organizationIdentityService
+				.selectInternationalOrganization(AFTConstants.INTERNATIONAL_ORG_CACHE_KEY);
 		modelview.addObject("achievementInternationalList", listA);
 		modelview.addObject("achievementInternationalList", listA);
 		modelview.addObject("userInternationalList", listB);
 		modelview.addObject("userInternationalList", listB);
 		modelview.addObject("orgInternationalList", listC);
 		modelview.addObject("orgInternationalList", listC);
@@ -348,9 +432,9 @@ public class WebpageController extends BaseController {
 	/**
 	/**
 	 * 金融圈
 	 * 金融圈
 	 */
 	 */
-	@RequestMapping(value = "/portal/financial/financialIndex", method = RequestMethod.GET)
+	@RequestMapping(value = "/portal/financial/index", method = RequestMethod.GET)
 	public ModelAndView portalFinancialFinancialIndex(HttpServletRequest request, ModelAndView modelview) {
 	public ModelAndView portalFinancialFinancialIndex(HttpServletRequest request, ModelAndView modelview) {
-		modelview.setViewName("/portal/financial/financialIndex");
+		modelview.setViewName("/portal/financial/index");
 		handleBanners(modelview, BannersType.JIN_RONG_QUAN);
 		handleBanners(modelview, BannersType.JIN_RONG_QUAN);
 		return modelview;
 		return modelview;
 	}
 	}
@@ -414,10 +498,11 @@ public class WebpageController extends BaseController {
 		handleBanners(modelview, BannersType.JI_SHU_JIAO_YI);
 		handleBanners(modelview, BannersType.JI_SHU_JIAO_YI);
 		return modelview;
 		return modelview;
 	}
 	}
-	
+
 	/**
 	/**
 	 * 
 	 * 
 	 * 智库咨询
 	 * 智库咨询
+	 * 
 	 * @param request
 	 * @param request
 	 * @param modelview
 	 * @param modelview
 	 * @return
 	 * @return
@@ -428,11 +513,22 @@ public class WebpageController extends BaseController {
 		return modelview;
 		return modelview;
 	}
 	}
 	
 	
+	/**
+	 * 政策列表
+	 * @return 
+	 */
+	@RequestMapping(value="/portal/thinkTank/policyList",method = RequestMethod.GET)
+	public ModelAndView policyList(ModelAndView modelAndView){
+		modelAndView.setViewName("/portal/thinkTank/policyList");
+		return modelAndView;
+	}
+	
 	private void handleBanners(ModelAndView modelview, BannersType bannersType) {
 	private void handleBanners(ModelAndView modelview, BannersType bannersType) {
 		List<Banners> banners = bannersService.findPortalBanners(bannersType.getKey());
 		List<Banners> banners = bannersService.findPortalBanners(bannersType.getKey());
 		if (!banners.isEmpty()) {
 		if (!banners.isEmpty()) {
 			modelview.addObject("banners", banners);
 			modelview.addObject("banners", banners);
 		}
 		}
 	}
 	}
-
+	
+	
 }
 }

+ 4 - 1
src/main/java/com/goafanti/common/dao/AchievementMapper.java

@@ -6,12 +6,12 @@ import org.apache.ibatis.annotations.Param;
 
 
 import com.goafanti.achievement.bo.AchievementListBo;
 import com.goafanti.achievement.bo.AchievementListBo;
 import com.goafanti.achievement.bo.AchievementOrgOwnerDetailBo;
 import com.goafanti.achievement.bo.AchievementOrgOwnerDetailBo;
+import com.goafanti.achievement.bo.AchievementPartnerListBo;
 import com.goafanti.achievement.bo.AchievementUserOwnerDetailBo;
 import com.goafanti.achievement.bo.AchievementUserOwnerDetailBo;
 import com.goafanti.common.model.Achievement;
 import com.goafanti.common.model.Achievement;
 import com.goafanti.portal.bo.AchievementDetailBo;
 import com.goafanti.portal.bo.AchievementDetailBo;
 import com.goafanti.portal.bo.AchievementPortalDetailBo;
 import com.goafanti.portal.bo.AchievementPortalDetailBo;
 import com.goafanti.portal.bo.AchievementPortalSimilarListBo;
 import com.goafanti.portal.bo.AchievementPortalSimilarListBo;
-import com.goafanti.portal.bo.BoutiqueListBo;
 import com.goafanti.portal.bo.InternationalListBo;
 import com.goafanti.portal.bo.InternationalListBo;
 import com.goafanti.residentIntegration.bo.ResidentIntegrationBo;
 import com.goafanti.residentIntegration.bo.ResidentIntegrationBo;
 
 
@@ -74,4 +74,7 @@ public interface AchievementMapper {
 	/** 查询猜你喜欢 **/
 	/** 查询猜你喜欢 **/
 	List<AchievementListBo> selectCsutomerLike();
 	List<AchievementListBo> selectCsutomerLike();
 	
 	
+    /**	查询智者的科技成果**/
+	List<AchievementPartnerListBo>findPartnerAchievementListByPage(String uid);
+	
 }
 }

+ 7 - 0
src/main/java/com/goafanti/common/dao/DemandMapper.java

@@ -1,10 +1,13 @@
 package com.goafanti.common.dao;
 package com.goafanti.common.dao;
 
 
+import java.util.ArrayList;
 import java.util.List;
 import java.util.List;
 
 
 import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Param;
 
 
+import com.goafanti.achievement.bo.AchievementListBo;
 import com.goafanti.common.model.Demand;
 import com.goafanti.common.model.Demand;
+import com.goafanti.demand.bo.DemandListBo;
 import com.goafanti.demand.bo.DemandManageDetailBo;
 import com.goafanti.demand.bo.DemandManageDetailBo;
 import com.goafanti.portal.bo.DemandPortalDetailBo;
 import com.goafanti.portal.bo.DemandPortalDetailBo;
 import com.goafanti.portal.bo.DemandPortalSimilarListBo;
 import com.goafanti.portal.bo.DemandPortalSimilarListBo;
@@ -45,4 +48,8 @@ public interface DemandMapper {
 			@Param("id") String id);
 			@Param("id") String id);
 
 
 	int updateEmployerId(String id);
 	int updateEmployerId(String id);
+	
+	ArrayList<DemandListBo> selectDemandList (Integer boutique);
+	
+	List<DemandListBo> selectCsutomerLike();
 }
 }

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

@@ -18,4 +18,6 @@ public interface DistrictGlossoryMapper {
     int updateByPrimaryKey(DistrictGlossory record);
     int updateByPrimaryKey(DistrictGlossory record);
     
     
     List<DistrictGlossory> findByPid(Integer pid);
     List<DistrictGlossory> findByPid(Integer pid);
+    
+    String selectNameById(Integer id);
 }
 }

+ 6 - 2
src/main/java/com/goafanti/common/dao/UserMapper.java

@@ -1,6 +1,8 @@
 package com.goafanti.common.dao;
 package com.goafanti.common.dao;
 
 
 
 
+import java.util.List;
+
 import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Param;
 
 
 import com.goafanti.common.model.User;
 import com.goafanti.common.model.User;
@@ -34,9 +36,11 @@ public interface UserMapper {
 
 
 	String findOrgByNameAndMobile(@Param("name") String name, @Param("mobile") String mobile);
 	String findOrgByNameAndMobile(@Param("name") String name, @Param("mobile") String mobile);
 
 
-	UserPartnerDetailBo findUserPartnerDetail(@Param("uid") String uid, @Param("tokenId") String tokenId);
+	UserPartnerDetailBo findUserPartnerDetail(String uid);
 
 
-	OrgPartnerDetailBo findOrgPartnerDetail(@Param("uid") String uid, @Param("tokenId") String tokenId);
+	OrgPartnerDetailBo findOrgPartnerDetail(String uid);
 
 
 	Long selectNumberByPrimaryKey(String userId);
 	Long selectNumberByPrimaryKey(String userId);
+	
+	List<UserPartnerDetailBo> findUserPartner();
 }
 }

+ 53 - 24
src/main/java/com/goafanti/common/mapper/AchievementMapper.xml

@@ -1080,27 +1080,44 @@
   		a.field_a as fieldA, 
   		a.field_a as fieldA, 
   		a.field_b as fieldB,
   		a.field_b as fieldB,
   		a.transfer_price as transferPrice,
   		a.transfer_price as transferPrice,
-  		a.technical_picture_url as technicalpictureurl
+  		a.maturity,
+  		a.introduction,
+  		a.transfer_mode as transferMode,
+  		a.technical_picture_url as technicalPictureUrl
   	from achievement a 
   	from achievement a 
   	left join user u on u.id = a.owner_id
   	left join user u on u.id = a.owner_id
   	where a.deleted_sign = 0 
   	where a.deleted_sign = 0 
-  	<if test="keyword != null">
+  	<if test="dataCategory != null and dataCategory != ''">
+  		and a.data_category = #{dataCategory,jdbcType=INTEGER}
+  	</if>
+  	<if test="category != null and category != ''">
+  		and a.category = #{category,jdbcType=INTEGER}
+  	</if>
+  	<if test="fieldA != null and fieldA != ''">
+  		and a.field_a = #{fieldA,jdbcType=INTEGER}
+  	</if>
+  	<if test="keyword != null and keyword != ''">
   		and a.keyword like "%"#{keyword,jdbcType=VARCHAR}"%"
   		and a.keyword like "%"#{keyword,jdbcType=VARCHAR}"%"
   	</if>
   	</if>
   	<if test="transferMode != null">
   	<if test="transferMode != null">
   		and a.transfer_mode = #{transferMode,jdbcType=INTEGER}
   		and a.transfer_mode = #{transferMode,jdbcType=INTEGER}
   	</if>
   	</if>
-  	<if test="dataCategory != null">
-  		and a.data_category = #{dataCategory,jdbcType=INTEGER}
-  	</if>
-  	<if test="fieldA != null">
-  		and a.field_a = #{fieldA,jdbcType=INTEGER}
+  	<if test="upperPrice != null and upperPrice != ''">
+  		and a.transfer_price &lt; #{upperPrice,jdbcType=VARCHAR}
   	</if>
   	</if>
-  	and a.deleted_sign = 0 
+  	<if test="lowerPrice != null and lowerPrice != ''">
+  		and a.transfer_price &gt; #{lowerPrice,jdbcType=VARCHAR}
+  	</if> 	
+  	<!--
   	and a.release_status = 1
   	and a.release_status = 1
-  	and a.audit_status = 3
-  	order by a.release_date desc
-  	<if test="page_sql!=null">
+  	and a.audit_status = 3 -->
+  	<if test="dateSort == 0">
+  		order by a.release_date asc
+  	</if>
+  	<if test="dateSort == 1">
+  		order by a.release_date desc
+  	</if>	
+  	<if test="page_sql != null">
 		${page_sql}
 		${page_sql}
 	</if>
 	</if>
   </select>
   </select>
@@ -1110,22 +1127,30 @@
   		count(1)
   		count(1)
   	from achievement a
   	from achievement a
   	where a.deleted_sign = 0 
   	where a.deleted_sign = 0 
-  	<if test="keyword != null">
+  	<if test="dataCategory != null and dataCategory != ''">
+  		and a.data_category = #{dataCategory,jdbcType=INTEGER}
+  	</if>
+  	<if test="category != null and category != ''">
+  		and a.category = #{category,jdbcType=INTEGER}
+  	</if>
+  	<if test="fieldA != null and fieldA != ''">
+  		and a.field_a = #{fieldA,jdbcType=INTEGER}
+  	</if>
+  	<if test="keyword != null and keyword != ''">
   		and a.keyword like "%"#{keyword,jdbcType=VARCHAR}"%"
   		and a.keyword like "%"#{keyword,jdbcType=VARCHAR}"%"
   	</if>
   	</if>
   	<if test="transferMode != null">
   	<if test="transferMode != null">
   		and a.transfer_mode = #{transferMode,jdbcType=INTEGER}
   		and a.transfer_mode = #{transferMode,jdbcType=INTEGER}
   	</if>
   	</if>
-  	<if test="dataCategory != null">
-  		and a.data_category = #{dataCategory,jdbcType=INTEGER}
-  	</if>
-  	<if test="fieldA != null">
-  		and a.field_a = #{fieldA,jdbcType=INTEGER}
+  	<if test="upperPrice != null and upperPrice != ''">
+  		and a.transfer_price &lt; #{upperPrice,jdbcType=VARCHAR}
   	</if>
   	</if>
-  	and a.deleted_sign = 0 
+  	<if test="lowerPrice != null and lowerPrice != ''">
+  		and a.transfer_price &gt; #{lowerPrice,jdbcType=VARCHAR}
+  	</if> 
+  <!-- 
   	and a.release_status = 1
   	and a.release_status = 1
-  	and a.audit_status = 3
-  	order by a.release_date desc
+  	and a.audit_status = 3 -->
   </select>
   </select>
   
   
   <select id="selectAchievementSearchDetail"  resultType="com.goafanti.portal.bo.AchievementDetailBo">
   <select id="selectAchievementSearchDetail"  resultType="com.goafanti.portal.bo.AchievementDetailBo">
@@ -1197,8 +1222,9 @@
 		owner_type as ownerType,
 		owner_type as ownerType,
 		release_date AS releaseDate,
 		release_date AS releaseDate,
 		field_a as fieldA,
 		field_a as fieldA,
-		field_b as fieldB,
 		maturity,
 		maturity,
+		introduction,
+		technical_picture_url as technicalPictureUrl,
 		bargaining_mode as bargainingMode,
 		bargaining_mode as bargainingMode,
 		transfer_price as transferPrice
 		transfer_price as transferPrice
 	FROM
 	FROM
@@ -1227,6 +1253,7 @@
 		a.id,
 		a.id,
 		a.name,
 		a.name,
 		a.keyword,
 		a.keyword,
+		a.category,
 		a.introduction,
 		a.introduction,
 		a.maturity,
 		a.maturity,
 		a.transfer_price AS transferPrice,
 		a.transfer_price AS transferPrice,
@@ -1261,6 +1288,7 @@
 		a.id,
 		a.id,
 		a.name,
 		a.name,
 		a.keyword,
 		a.keyword,
+		a.category,
 		a.introduction,
 		a.introduction,
 		a.maturity,
 		a.maturity,
 		a.transfer_price AS transferPrice,
 		a.transfer_price AS transferPrice,
@@ -1458,7 +1486,7 @@
 	</if>	
 	</if>	
   </select>
   </select>
   
   
-  <select id="listAchievement" resultType="com.goafanti.portal.bo.BoutiqueListBo">
+  <select id="listAchievement" resultType="com.goafanti.achievement.bo.AchievementListBo">
   		select 
   		select 
   		a.id, a.name, a.keyword,a.introduction,a.category,
   		a.id, a.name, a.keyword,a.introduction,a.category,
   		a.serial_number as serialNumber, 
   		a.serial_number as serialNumber, 
@@ -1466,15 +1494,16 @@
   	    a.owner_type as ownerType, 
   	    a.owner_type as ownerType, 
   		a.owner_name as ownerName,
   		a.owner_name as ownerName,
   		a.field_a as fieldA, 
   		a.field_a as fieldA, 
-  		a.field_b as fieldB,
   		a.transfer_price as transferPrice,
   		a.transfer_price as transferPrice,
+  		a.transfer_mode as transfermode,
+  		a.maturity,
   		a.technical_picture_url as technicalpictureurl
   		a.technical_picture_url as technicalpictureurl
   		from achievement a 
   		from achievement a 
   		where 
   		where 
   	    a.deleted_sign = 0 
   	    a.deleted_sign = 0 
 		and a.category = 0
 		and a.category = 0
   	    and a.release_status = 1
   	    and a.release_status = 1
-  	    and a.audit_status = 3
+  	    and a.audit_status = 3 
   	    order by a.release_date desc limit 0,12
   	    order by a.release_date desc limit 0,12
   </select>
   </select>
   
   

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 1550 - 1165
src/main/java/com/goafanti/common/mapper/DemandMapper.xml


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

@@ -86,4 +86,8 @@
     from district_glossory
     from district_glossory
     where pid = #{pid,jdbcType=INTEGER}
     where pid = #{pid,jdbcType=INTEGER}
   </select>
   </select>
+  
+  <select id="selectNameById" parameterType="java.lang.Integer" resultType="String">
+    select name from aft.district_glossory where id=#{id,jdbcType=INTEGER}
+  </select>
 </mapper>
 </mapper>

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 1008 - 935
src/main/java/com/goafanti/common/mapper/UserMapper.xml


+ 3 - 1
src/main/java/com/goafanti/dataGlossory/service/DistrictGlossoryService.java

@@ -11,5 +11,7 @@ public interface DistrictGlossoryService {
 	public List<DistrictGlossory> list(Integer pid);
 	public List<DistrictGlossory> list(Integer pid);
 
 
 	public void clear(Integer pid);
 	public void clear(Integer pid);
-
+	
+	public String selectNameById(Integer id);
+	
 }
 }

+ 6 - 1
src/main/java/com/goafanti/dataGlossory/service/impl/DistrictGlossoryServiceImpl.java

@@ -19,7 +19,7 @@ public class DistrictGlossoryServiceImpl implements DistrictGlossoryService {
 	
 	
 	@Autowired
 	@Autowired
 	private DistrictGlossoryMapper districtGlossoryMapper;
 	private DistrictGlossoryMapper districtGlossoryMapper;
-
+	
 	@Override
 	@Override
 	public DistrictGlossory selectByPrimaryKey(Integer id) {
 	public DistrictGlossory selectByPrimaryKey(Integer id) {
 		return districtGlossoryMapper.selectByPrimaryKey(id);
 		return districtGlossoryMapper.selectByPrimaryKey(id);
@@ -37,4 +37,9 @@ public class DistrictGlossoryServiceImpl implements DistrictGlossoryService {
 	public void clear(Integer pid) {
 	public void clear(Integer pid) {
 		LoggerUtils.debug(logger, "清除地区列表缓存:[%s]", pid);
 		LoggerUtils.debug(logger, "清除地区列表缓存:[%s]", pid);
 	}
 	}
+
+	@Override
+	public String selectNameById(Integer id) {
+		return districtGlossoryMapper.selectNameById(id);
+	}
 }
 }

+ 54 - 1
src/main/java/com/goafanti/demand/bo/DemandListBo.java

@@ -38,14 +38,23 @@ public class DemandListBo {
 	private Date	releaseDate;
 	private Date	releaseDate;
 
 
 	/**
 	/**
-	 * 需求类型
+	 * 需求类型 
 	 */
 	 */
 	private Integer	demandType;
 	private Integer	demandType;
+	private String	demandTypeS;
 
 
 	private Date	validityPeriod;
 	private Date	validityPeriod;
 
 
 	private Integer	status;
 	private Integer	status;
+	
+	private Integer fixedbudget;
+	
+	private Integer		industryCategoryA;
 
 
+	private String		industryCategoryAS;
+
+	private String		pictureUrl;
+	
 	/**
 	/**
 	 * 是否发布(0-未发布,1-发布)
 	 * 是否发布(0-未发布,1-发布)
 	 */
 	 */
@@ -182,4 +191,48 @@ public class DemandListBo {
 
 
 	}
 	}
 
 
+	public Integer getFixedbudget() {
+		return fixedbudget;
+	}
+
+	public void setFixedbudget(Integer fixedbudget) {
+		this.fixedbudget = fixedbudget;
+	}
+
+	public Integer getIndustryCategoryA() {
+		return industryCategoryA;
+	}
+
+	public void setIndustryCategoryA(Integer industryCategoryA) {
+		this.industryCategoryA = industryCategoryA;
+	}
+
+	public String getIndustryCategoryAS() {
+		return industryCategoryAS;
+	}
+
+	public void setIndustryCategoryAS(String industryCategoryAS) {
+		this.industryCategoryAS = industryCategoryAS;
+	}
+
+	public String getPictureUrl() {
+		return pictureUrl;
+	}
+
+	public void setPictureUrl(String pictureUrl) {
+		this.pictureUrl = pictureUrl;
+	}
+
+	public String getDemandTypeS() {
+		return demandTypeS;
+	}
+
+	public void setDemandTypeS(String demandTypeS) {
+		this.demandTypeS = demandTypeS;
+	}
+
+	
+	
+	
+
 }
 }

+ 8 - 1
src/main/java/com/goafanti/demand/service/DemandService.java

@@ -1,6 +1,7 @@
 package com.goafanti.demand.service;
 package com.goafanti.demand.service;
 
 
 import java.math.BigDecimal;
 import java.math.BigDecimal;
+import java.util.ArrayList;
 import java.util.List;
 import java.util.List;
 
 
 import com.goafanti.achievement.bo.AchievementDemandListBo;
 import com.goafanti.achievement.bo.AchievementDemandListBo;
@@ -57,7 +58,7 @@ public interface DemandService {
 
 
 	Pagination<DemandSearchListBo> listDemandSearchList(Integer sign, String keyword, Integer industryCategoryA,
 	Pagination<DemandSearchListBo> listDemandSearchList(Integer sign, String keyword, Integer industryCategoryA,
 			Integer industryCategoryB, Integer demandType, BigDecimal budgetCostLower, BigDecimal budgetCostUpper,
 			Integer industryCategoryB, Integer demandType, BigDecimal budgetCostLower, BigDecimal budgetCostUpper,
-			Integer pNo, Integer pSize);
+			Integer pNo, Integer pSize,Integer dateSort);
 
 
 	DemandSearchDetailBo selectDemandSearchDetail(String uid, String id);
 	DemandSearchDetailBo selectDemandSearchDetail(String uid, String id);
 
 
@@ -77,4 +78,10 @@ public interface DemandService {
 
 
 	/** 精品需求 **/
 	/** 精品需求 **/
 	Pagination<BoutiqueListBo> boutiqueSearchList(Integer industryCategoryA,Integer pNo, Integer pSize);
 	Pagination<BoutiqueListBo> boutiqueSearchList(Integer industryCategoryA,Integer pNo, Integer pSize);
+	
+	/** 查询需求 **/
+	ArrayList<DemandListBo> selectDemandList(Integer boutique);
+	
+	/**猜你喜欢**/
+	List<DemandListBo> selectCsutomerLike();
 }
 }

+ 18 - 2
src/main/java/com/goafanti/demand/service/impl/DemandServiceImpl.java

@@ -443,7 +443,7 @@ public class DemandServiceImpl extends BaseMybatisDao<DemandMapper> implements D
 	@Override
 	@Override
 	public Pagination<DemandSearchListBo> listDemandSearchList(Integer sign, String keyword, Integer industryCategoryA,
 	public Pagination<DemandSearchListBo> listDemandSearchList(Integer sign, String keyword, Integer industryCategoryA,
 			Integer industryCategoryB, Integer demandType, BigDecimal budgetCostLower, BigDecimal budgetCostUpper,
 			Integer industryCategoryB, Integer demandType, BigDecimal budgetCostLower, BigDecimal budgetCostUpper,
-			Integer pNo, Integer pSize) {
+			Integer pNo, Integer pSize,Integer dateSort) {
 		Map<String, Object> params = new HashMap<>();
 		Map<String, Object> params = new HashMap<>();
 		if (!StringUtils.isBlank(keyword)) {
 		if (!StringUtils.isBlank(keyword)) {
 			params.put("keyword", keyword);
 			params.put("keyword", keyword);
@@ -472,7 +472,11 @@ public class DemandServiceImpl extends BaseMybatisDao<DemandMapper> implements D
 		if (null != sign) {
 		if (null != sign) {
 			params.put("sign", sign);
 			params.put("sign", sign);
 		}
 		}
-
+		
+		if(null != dateSort){
+			params.put("dateSort", dateSort);
+		}
+		
 		if (pNo == null || pNo < 0) {
 		if (pNo == null || pNo < 0) {
 			pNo = 1;
 			pNo = 1;
 		}
 		}
@@ -480,6 +484,7 @@ public class DemandServiceImpl extends BaseMybatisDao<DemandMapper> implements D
 		if (pSize == null || pSize < 0 || pSize > 10) {
 		if (pSize == null || pSize < 0 || pSize > 10) {
 			pSize = 10;
 			pSize = 10;
 		}
 		}
+		
 		return (Pagination<DemandSearchListBo>) findPage("findSearchDemandListByPage", "findSearchDemandCount", params,
 		return (Pagination<DemandSearchListBo>) findPage("findSearchDemandListByPage", "findSearchDemandCount", params,
 				pNo, pSize);
 				pNo, pSize);
 	}
 	}
@@ -727,6 +732,7 @@ public class DemandServiceImpl extends BaseMybatisDao<DemandMapper> implements D
 		return demandMapper.selectByPrimaryKey(id);
 		return demandMapper.selectByPrimaryKey(id);
 	}
 	}
 
 
+	@SuppressWarnings("unchecked")
 	@Override
 	@Override
 	public Pagination<BoutiqueListBo> boutiqueSearchList(Integer industryCategoryA, Integer pNo, Integer pSize) {
 	public Pagination<BoutiqueListBo> boutiqueSearchList(Integer industryCategoryA, Integer pNo, Integer pSize) {
 		Map<String, Object> params = new HashMap<>();
 		Map<String, Object> params = new HashMap<>();
@@ -735,4 +741,14 @@ public class DemandServiceImpl extends BaseMybatisDao<DemandMapper> implements D
 				params,pNo,pSize);
 				params,pNo,pSize);
 	}
 	}
 
 
+	@Override
+	public ArrayList<DemandListBo> selectDemandList(Integer boutique) {
+		return demandMapper.selectDemandList(boutique);
+	}
+
+	@Override
+	public List<DemandListBo> selectCsutomerLike() {
+		return demandMapper.selectCsutomerLike();
+	}
+
 }
 }

+ 31 - 5
src/main/java/com/goafanti/portal/bo/AchievementPortalDetailBo.java

@@ -56,9 +56,13 @@ public class AchievementPortalDetailBo {
 
 
 	private String			ownerName;
 	private String			ownerName;
 
 
-	private Integer			level;
+	private String			ownerType;
+	
+	private Integer			category;
 
 
 	private Integer			bargainingMode;
 	private Integer			bargainingMode;
+	
+	private String			categoryS;
 
 
 	public Integer getBargainingMode() {
 	public Integer getBargainingMode() {
 		return bargainingMode;
 		return bargainingMode;
@@ -68,14 +72,16 @@ public class AchievementPortalDetailBo {
 		this.bargainingMode = bargainingMode;
 		this.bargainingMode = bargainingMode;
 	}
 	}
 
 
-	public Integer getLevel() {
-		return level;
+
+	public Integer getCategory() {
+		return category;
 	}
 	}
 
 
-	public void setLevel(Integer level) {
-		this.level = level;
+	public void setCategory(Integer category) {
+		this.category = category;
 	}
 	}
 
 
+
 	public String getOwnerName() {
 	public String getOwnerName() {
 		return ownerName;
 		return ownerName;
 	}
 	}
@@ -271,4 +277,24 @@ public class AchievementPortalDetailBo {
 	public void setReleaseDateFormattedDate(String releaseDateFormattedDate) {
 	public void setReleaseDateFormattedDate(String releaseDateFormattedDate) {
 
 
 	}
 	}
+
+	public String getOwnerType() {
+		return ownerType;
+	}
+
+	public void setOwnerType(String ownerType) {
+		this.ownerType = ownerType;
+	}
+
+	public String getCategoryS() {
+		return categoryS;
+	}
+
+	public void setCategoryS(String categoryS) {
+		this.categoryS = categoryS;
+	}
+
+	
+	
+	
 }
 }

+ 43 - 0
src/main/java/com/goafanti/portal/bo/DemandPortalDetailBo.java

@@ -34,6 +34,14 @@ public class DemandPortalDetailBo {
 	private String		employerName;
 	private String		employerName;
 
 
 	private Integer		level;
 	private Integer		level;
+	
+	private String		pictureUrl;
+	
+	private String		employerAddress;
+	
+	private String      validityPeriod;
+	
+	private Integer      fixedbudget;
 
 
 	public Integer getLevel() {
 	public Integer getLevel() {
 		return level;
 		return level;
@@ -163,4 +171,39 @@ public class DemandPortalDetailBo {
 		this.city = city;
 		this.city = city;
 	}
 	}
 
 
+	public String getPictureUrl() {
+		return pictureUrl;
+	}
+
+	public void setPictureUrl(String pictureUrl) {
+		this.pictureUrl = pictureUrl;
+	}
+
+	public String getEmployerAddress() {
+		return employerAddress;
+	}
+
+	public void setEmployerAddress(String employerAddress) {
+		this.employerAddress = employerAddress;
+	}
+
+
+	public Integer getFixedbudget() {
+		return fixedbudget;
+	}
+
+	public void setFixedbudget(Integer fixedbudget) {
+		this.fixedbudget = fixedbudget;
+	}
+
+	public String getValidityPeriod() {
+		return validityPeriod;
+	}
+
+	public void setValidityPeriod(String validityPeriod) {
+		this.validityPeriod = validityPeriod;
+	}
+	
+	
+	
 }
 }

+ 16 - 5
src/main/java/com/goafanti/portal/controller/PortalSearchController.java

@@ -36,19 +36,29 @@ public class PortalSearchController extends BaseController {
 	 * 项目搜索
 	 * 项目搜索
 	 */
 	 */
 	@RequestMapping(value = "/achievementList", method = RequestMethod.GET)
 	@RequestMapping(value = "/achievementList", method = RequestMethod.GET)
-	public Result achievementSearchList(  String keyword,Integer dataCategory,
-			Integer fieldA, String pageNo, String pageSize,String transferMode ) {
+	public Result achievementSearchList(  String keyword,Integer dataCategory,Integer category,
+			Integer fieldA, String pageNo, String pageSize,String transferMode, Integer dateSort,String upperPrice,String lowerPrice) {
 		Result res = new Result();
 		Result res = new Result();
 		Integer pNo = 1;
 		Integer pNo = 1;
 		Integer pSize = 20;
 		Integer pSize = 20;
+		if(null != dateSort && dateSort != 0 && dateSort != 1){
+			res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "时间排序"));
+		}
+		
 		if (StringUtils.isNumeric(pageSize)) {
 		if (StringUtils.isNumeric(pageSize)) {
 			pSize = Integer.parseInt(pageSize);
 			pSize = Integer.parseInt(pageSize);
 		}
 		}
 		if (StringUtils.isNumeric(pageNo)) {
 		if (StringUtils.isNumeric(pageNo)) {
 			pNo = Integer.parseInt(pageNo);
 			pNo = Integer.parseInt(pageNo);
 		}
 		}
+		try{
+			new BigDecimal(upperPrice);
+			new BigDecimal(lowerPrice);
+		}catch (Exception e) {
+			res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "金额"));
+		}
 		res.setData(achievementService.listAchievementSearchList( 
 		res.setData(achievementService.listAchievementSearchList( 
-				  keyword, dataCategory,fieldA, transferMode, pNo, pSize));
+				  keyword, dataCategory,category,fieldA, transferMode, pNo, pSize,dateSort,upperPrice,lowerPrice));
 		return res;
 		return res;
 	}
 	}
 
 
@@ -58,7 +68,7 @@ public class PortalSearchController extends BaseController {
 	@RequestMapping(value = "/demandList", method = RequestMethod.GET)
 	@RequestMapping(value = "/demandList", method = RequestMethod.GET)
 	public Result demandSearchList(Integer sign, String keyword, Integer industryCategoryA, Integer industryCategoryB,
 	public Result demandSearchList(Integer sign, String keyword, Integer industryCategoryA, Integer industryCategoryB,
 			Integer demandType, BigDecimal budgetCostLower, BigDecimal budgetCostUpper, String pageNo,
 			Integer demandType, BigDecimal budgetCostLower, BigDecimal budgetCostUpper, String pageNo,
-			String pageSize) {
+			String pageSize,Integer dateSort) {
 		Result res = new Result();
 		Result res = new Result();
 		Integer pNo = 1;
 		Integer pNo = 1;
 		Integer pSize = 10;
 		Integer pSize = 10;
@@ -79,7 +89,7 @@ public class PortalSearchController extends BaseController {
 			pNo = Integer.parseInt(pageNo);
 			pNo = Integer.parseInt(pageNo);
 		}
 		}
 		res.setData(demandService.listDemandSearchList(sign, keyword, industryCategoryA, industryCategoryB, demandType,
 		res.setData(demandService.listDemandSearchList(sign, keyword, industryCategoryA, industryCategoryB, demandType,
-				budgetCostLower, budgetCostUpper, pNo, pSize));
+				budgetCostLower, budgetCostUpper, pNo, pSize,dateSort));
 		return res;
 		return res;
 	}
 	}
 
 
@@ -156,4 +166,5 @@ public class PortalSearchController extends BaseController {
 		}
 		}
 		return res;
 		return res;
 	}
 	}
+	
 }
 }

+ 62 - 0
src/main/java/com/goafanti/user/bo/OrgPartnerDetailBo.java

@@ -24,6 +24,19 @@ public class OrgPartnerDetailBo {
 	private String	companyIntroduction;
 	private String	companyIntroduction;
 
 
 	private String	interestId;
 	private String	interestId;
+	
+	/**用户名**/
+	private String userName;
+	/**工作单位**/
+	private String workUnit;
+	/**职位**/
+	private String position;
+	/**成就**/
+	private String achievement;
+	/**个人头像**/
+	private String personPortraitUrl;
+	/**个人介绍**/
+	private String personalProfile;
 
 
 	public String getInterestId() {
 	public String getInterestId() {
 		return interestId;
 		return interestId;
@@ -121,4 +134,53 @@ public class OrgPartnerDetailBo {
 		this.number = 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 getPersonPortraitUrl() {
+		return personPortraitUrl;
+	}
+
+	public void setPersonPortraitUrl(String personPortraitUrl) {
+		this.personPortraitUrl = personPortraitUrl;
+	}
+
+	public String getPersonalProfile() {
+		return personalProfile;
+	}
+
+	public void setPersonalProfile(String personalProfile) {
+		this.personalProfile = personalProfile;
+	}
+
+	
 }
 }

+ 63 - 0
src/main/java/com/goafanti/user/bo/UserPartnerDetailBo.java

@@ -4,6 +4,8 @@ public class UserPartnerDetailBo {
 	private String	username;
 	private String	username;
 
 
 	private Integer	province;
 	private Integer	province;
+	
+	private String	provinceS;
 
 
 	private Long	number;
 	private Long	number;
 
 
@@ -24,6 +26,15 @@ public class UserPartnerDetailBo {
 	private String	lifePhotoUrl;
 	private String	lifePhotoUrl;
 
 
 	private String	interestId;
 	private String	interestId;
+	
+	/**用户名**/
+	private String userName;
+	/**工作单位**/
+	private String workUnit;
+	/**职位**/
+	private String position;
+	/**成就**/
+	private String achievement;
 
 
 	public String getInterestId() {
 	public String getInterestId() {
 		return interestId;
 		return interestId;
@@ -121,4 +132,56 @@ public class UserPartnerDetailBo {
 		this.number = 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;
+	}
+
+	@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 - 0
src/main/java/com/goafanti/user/service/UserService.java

@@ -68,4 +68,6 @@ public interface UserService {
 	Pagination<StarAndExpertListBo> listStarAndExpert(Integer number, String engagedField, String username,
 	Pagination<StarAndExpertListBo> listStarAndExpert(Integer number, String engagedField, String username,
 			String professionalTitle, String workUnit, Integer pNo, Integer pSize);
 			String professionalTitle, String workUnit, Integer pNo, Integer pSize);
 
 
+	List<UserPartnerDetailBo> findUserPartner();
+
 }
 }

+ 7 - 2
src/main/java/com/goafanti/user/service/impl/UserServiceImpl.java

@@ -424,12 +424,12 @@ public class UserServiceImpl extends BaseMybatisDao<UserMapper> implements UserS
 
 
 	@Override
 	@Override
 	public UserPartnerDetailBo findUserPartnerDetail(String uid) {
 	public UserPartnerDetailBo findUserPartnerDetail(String uid) {
-		return userMapper.findUserPartnerDetail(uid, TokenManager.getUserId());
+		return userMapper.findUserPartnerDetail(uid);
 	}
 	}
 
 
 	@Override
 	@Override
 	public OrgPartnerDetailBo findOrgPartnerDetail(String uid) {
 	public OrgPartnerDetailBo findOrgPartnerDetail(String uid) {
-		return userMapper.findOrgPartnerDetail(uid, TokenManager.getUserId());
+		return userMapper.findOrgPartnerDetail(uid);
 	}
 	}
 
 
 	@SuppressWarnings("unchecked")
 	@SuppressWarnings("unchecked")
@@ -511,4 +511,9 @@ public class UserServiceImpl extends BaseMybatisDao<UserMapper> implements UserS
 		return String.valueOf(userMapper.selectNumberByPrimaryKey(userId));
 		return String.valueOf(userMapper.selectNumberByPrimaryKey(userId));
 	}
 	}
 
 
+	@Override
+	public List<UserPartnerDetailBo> findUserPartner() {
+		return userMapper.findUserPartner();
+	}
+
 }
 }

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 0 - 191
src/main/webapp/WEB-INF/views/portal/detail/achievementDetail.html


A diferenza do arquivo foi suprimida porque é demasiado grande
+ 0 - 177
src/main/webapp/WEB-INF/views/portal/detail/demandDetail.html


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

@@ -0,0 +1,151 @@
+<!DOCTYPE html>
+<html xmlns="http://www.w3.org/1999/xhtml"
+	xmlns:th="http://www.thymeleaf.org"
+	xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
+<head th:replace="common::header(~{::title},~{::link})">
+<title>科技成果详情</title>
+<link th:href="${portalHost +'/vendors.css'}" rel="stylesheet">
+<link th:href="${portalHost + '/technologyTrading/achievementDetail.css'}" rel="stylesheet">
+</head>
+<body>
+	<header>
+		<div th:replace="common::nav('technologyTrading','achievement')"></div>
+	</header>
+	<!--主体内容区域开始-->
+	<div id="all_achievement">
+		<div class="detail">
+			<div class="detail_top">
+				<div class="detail_topimg">
+					<a href="#"><img
+						th:src="${portalHost + '/img/detail_facebook.jpg'}" alt="" /></a> <a
+						href="#"><img
+						th:src="${portalHost + '/img/detail_weixin.jpg'}" alt="" /></a> <a
+						href="#"><img th:src="${portalHost + '/img/detail_weibo.jpg'}"
+						alt="" /></a>
+				</div>
+				<div class="detail_toptitle">
+					<a href="#">技术交易</a> <a href="#">技术专利</a> <a href="#"
+						class="a_detail">专利详情</a>
+				</div>
+			</div>
+			<div class="detail_center">
+				<div class="detail_centerimg">
+					<div>
+						<!-- <div class="small_img" th:each="detail:${achievementdetail}">
+						    <ul th:if="#{!detail.pictureList.empty}">
+								<li th:each="pic:${detail.pictureList}">
+									<img alt="" th:src="${globalConfig.avatarUploadHost + pic}">
+								</li>
+							</ul>
+							<ul th:if="#{detail.pictureList.empty}">
+							</ul>
+						</div> -->
+						<div class="big_img" th:each="achievementdetail:${achievementdetail}">
+							<img th:src= "${avatarUploadHost+achievementdetail.technicalPictureUrl}"alt="" />
+						</div>
+					</div>
+					<div class="basic"  th:each="achievementdetail:${achievementdetail}">
+						<div class="basic_left">
+							<h5>行业</h5>
+							<p th:text="${achievementdetail.field}"></p>
+						</div>
+						<div class="basic_center">
+							<h5>名称</h5>
+							<p th:text="${achievementdetail.name}"></p>
+						</div>
+						<div class="basic_right">
+							<h5>交易方式</h5>
+							<p th:text="${achievementdetail.transferModeS}"></p>
+						</div>
+						<!-- <span><img th:src="${portalHost + '/img/detail_img5.png'}"alt="" /> <span  >8</span> </span> -->
+						<div class="detail_btn">我要咨询</div>
+					</div>
+					<div class="fine" >
+						<div class="fine_title">精品专利</div>
+						<div th:each="reboutiqueachievement:${reboutiqueachievement}">
+							<img th:src="${avatarUploadHost+reboutiqueachievement.technicalpictureurl}" alt="" />
+							<p th:text="${reboutiqueachievement.name}"></p>
+						</div>
+					</div>
+				</div>
+				<div class="detail_centertext" th:each="achievementdetail:${achievementdetail}">
+					<div class="text_left">
+						<div>
+							<h5 class="left_p">技术成熟度:</h5>
+							<p >可以量产</p>
+						</div>
+						<div>
+							<h5>类型:</h5>
+							<p  th:text="${achievementdetail.categoryS}">发明专利</p>
+						</div>
+						<div>
+							<h5>最近更新</h5>
+							<p  th:text="${achievementdetail.releaseDate}">2017-09-17</p>
+						</div>
+					</div>
+					<div class="text_right">
+						<div>技术简介</div>
+						<p th:text="${achievementdetail.introduction}"></p>
+					</div>
+				</div>
+			</div>
+			<div class="detail_bottom">
+				<div class="line">猜你喜欢</div>
+				<div class="main_introduce" >
+					<ul>
+						<li th:each="reachievementlist:${reachievementlist}">
+							<img th:src="${avatarUploadHost+reachievementlist.technicalpictureurl}" alt="" />
+							<div class="list_text">
+								<p>
+									行业:<span th:text="${reachievementlist.field}"></span>
+								</p>
+								<p >
+									名称:<span th:text="${reachievementlist.name}"></span>
+								</p>
+							    <p >
+									类型<span th:text="${reachievementlist.ownerTypeS}"></span>
+								</p> 
+								<p >
+									交易方式:<span th:text="${reachievementlist.transferModeS}"></span>
+								</p>
+								<a href="#">了解详情</a>
+							</div>
+							<div class="star">
+								<p >成熟度:<span th:text="${reachievementlist.maturityS}"></span></p>
+							</div>
+						</li>
+					</ul>
+				</div>
+			</div>
+		</div>
+	</div>
+	<!--主体内容区域结束-->
+	<div class="pub_fix">
+		<span class="index_blur"></span>
+		<ul class="ret_top">
+			<li><a href=""> <img th:src="${portalHost + '/img/index_fix1.png'}" alt="" />
+					<p>发布需求</p>
+			</a></li>
+			<li><a href=""><img th:src="${portalHost + '/img/index_fix2.png'}" alt="" />
+					<p>发布技术</p>
+			</a></li>
+			<li><a
+				href="tencent://Message/?Uin=2035994611&websiteName=q-zone.qq.com&Menu=yes">
+					<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 th:replace="common::copyright"></div>
+	<div th:replace="common::footer(~{::script})">
+		<script type="text/javascript" th:src="${portalHost + '/vendors.js'}"></script>
+		<script type="text/javascript"
+			th:src="${portalHost + '/technologyTrading/achievementDetail.js'}"></script>
+	</div>
+</body>
+
+</html>

+ 121 - 0
src/main/webapp/WEB-INF/views/portal/technologyTrading/demandDetail.html

@@ -0,0 +1,121 @@
+<!DOCTYPE html>
+<html xmlns="http://www.w3.org/1999/xhtml"
+	xmlns:th="http://www.thymeleaf.org"
+	xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
+
+<head th:replace="common::header(~{::title},~{::link})">
+<title>科技需求详情</title>
+<link th:href="${portalHost + '/vendors.css'}" rel="stylesheet">
+<link th:href="${portalHost + '/technologyTrading/demandDetail.css'}" rel="stylesheet">
+</head>
+
+<body>
+	<header>
+		<div th:replace="common::nav('technologyTrading','demand')"></div>
+	</header>
+	<div id="all_achievement">
+		<div class="detail">
+			<div class="detail_top">
+				<div class="detail_topimg">
+					<a href="#"> <img th:src="${portalHost + '/img/detail_facebook.jpg'}" alt="" /></a> 
+					<a href="#"> <img th:src="${portalHost + '/img/detail_weixin.jpg'}" alt="" /></a> 
+					<a href="#"> <img th:src="${portalHost + '/img/detail_weibo.jpg'}" alt="" /></a>
+				</div>
+				<div class="detail_toptitle" th:each="demand:${demand}">
+					<a href="#">技术交易</a>  <a href="#">技术需求</a>  <a href="#"class="a_detail" th:text="${demand.name}">关于超细颗粒金属碳化物的制造技术</a>
+				</div>
+			</div>
+			<div class="detail_center">
+				<div class="detail_centerimg" th:each="demand:${demand}">
+					<div class="big_text">
+						<h3 th:text="${demand.name}"></h3>
+					</div>
+					<div class="big_img">
+						<img th:src= "${avatarUploadHost+demand.pictureUrl}"alt="" />
+					</div>
+					<div class="basic">
+						<div>
+							<h5>名称:</h5>
+							<p th:text="${demand.name}?${demand.name}:暂无名称"></p>
+						</div>
+						<div>
+							<h5>联系人:</h5>
+							<p th:text="${demand.employerName}?${demand.employerName}:未公开"></p>
+						</div>
+						<div>
+							<h5>联系人地址:</h5>
+							<p th:text="${demand.employerAddress}?${demand.employerAddress}:未公开"></p>
+						</div>
+						<div class="inline_span">
+							<span>行业:</span>  <span th:text="${demand.industryCategoryAS}?${demand.industryCategoryAS}:暂无行业分类"></span>
+						</div>
+						<div class="inline_span" >
+							<span>需求预算:</span> <span th:text="${demand.fixedbudget}?${demand.fixedbudget}:价格面议"></span>
+						</div>
+						<div class="inline_span">
+							<span>有效日期:</span> <span th:text="${demand.validityPeriod}"></span>
+						</div>
+						<!-- <span> <img src="../../img/detail_img5.jpg" alt="" /> <span>8</span></span> -->
+						<div class="detail_btn">我要咨询</div>
+					</div>
+					<div class="fine">
+						<div class="fine_title">精品需求</div>
+						<div th:each="reboutiquedemand:${reboutiquedemand}">
+							<img th:src="${avatarUploadHost+reboutiquedemand.pictureUrl}" alt="" />
+							<p th:text="${reboutiquedemand.name}"></p>
+						</div>
+					</div>
+				</div>
+				<div class="detail_centertext">
+					<div class="text_right" th:each="demand:${demand}">
+						<div>问题描述</div>
+						<p th:text="${demand.problemDes}?${demand.problemDes}:Sorry还没有相关描述"></p>
+					</div>
+				</div>
+			</div>
+			<div class="detail_bottom">
+				<div class="line">猜你喜欢</div>
+				<div class="main_introduce">
+					<ul>
+						<li th:each="redemandlist:${redemandlist}"><img th:src="${avatarUploadHost+redemandlist.pictureUrl}" alt="" />
+							<div class="list_text">
+								<p>
+									行业:<span th:text="${redemandlist.industryCategoryAS}?${redemandlist.industryCategoryAS}:暂无行业分类"></span>
+								</p>
+								<p >
+									名称:<span th:text="${redemandlist.name}?${redemandlist.name}:暂无名称"></span>
+								</p>
+								<p>
+									类型:<span th:text="${redemandlist.demandTypeS}?${redemandlist.demandTypeS}:暂无分类"></span>
+								</p>
+								<p class="money">
+									预算:<span th:text="${redemandlist.fixedbudget}?${redemandlist.fixedbudget}:价格面议"></span>
+								</p>
+								<a href="#">了解详情</a>
+							</div>
+							<div class="star">
+								<p>精品:</p>
+								<ol>
+									<li></li>
+									<li></li>
+									<li></li>
+									<li></li>
+									<li></li>
+								</ol>
+							</div></li>
+					</ul>
+				</div>
+			</div>
+		</div>
+	</div>
+	<footer>
+		<div th:replace="common::copyright"></div>
+	</footer>
+	<div th:replace="common::footer(~{::script})">
+		<script type="text/javascript" th:src="${portalHost + '/vendors.js'}"></script>
+		<script type="text/javascript"
+			th:src="${portalHost + '/technologyTrading/demandDetail.js'}"></script>
+	</div>
+</body>
+
+</html>

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

@@ -1,16 +1,171 @@
 <!DOCTYPE html>
 <!DOCTYPE html>
 <html xmlns="http://www.w3.org/1999/xhtml"
 <html xmlns="http://www.w3.org/1999/xhtml"
-	xmlns:th="http://www.thymeleaf.org">
+	xmlns:th="http://www.thymeleaf.org"
+	xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
 <head th:replace="common::header(~{::title},~{::link})">
 <head th:replace="common::header(~{::title},~{::link})">
-	<title>用户详情页</title>
-	<link th:href="${staticHost+'/user/subscriberDetail.css'}" rel="stylesheet">
+<title>用户详情页</title>
+<link th:href="${portalHost + '/vendors.css'}" rel="stylesheet">
+<link th:href="${portalHost + '/thinkTank/thinkerDetail.css'}" rel="stylesheet">
 </head>
 </head>
 <body>
 <body>
-	<div id="root"></div>
-	
+	<header>
+		<div th:replace="common::nav('user','subscriberDetail')"></div>
+	</header>
+
+	<div id="all_thinkerDetail">
+		<div class="thinkerdetail_top" th:each="rePartnerDetail:${rePartnerDetail}">
+			 <div>
+				<div class="detailtop_text">
+					<div>
+						<h4 th:text="${rePartnerDetail.workUnit}?${rePartnerDetail.workUnit}:${rePartnerDetail.username}"></h4><h4 th:text="${rePartnerDetail.position}?${rePartnerDetail.position}:''"></h4>
+						<p th:text="${rePartnerDetail.achievement}"></p>
+					</div>
+				</div> 
+				<div class="detailtop_img">
+					<div class="head_img">
+						<img th:src= "${avatarUploadHost+rePartnerDetail.personPortraitUrl}"alt="" />
+					</div>
+					<div class="people_name" th:text="${rePartnerDetail.username}"></div>
+				</div>
+			</div>
+		</div>
+		<div class="thinkerdetail_center">
+			<div class="detailcenter_left">
+				<div th:each="partnerAchievementList:${partnerAchievementList}">
+					<div class="fruit_title">
+						<p th:text="${partnerAchievementList.maturityS}"></p>
+						<h4  th:text="${partnerAchievementList.name}"></h4>
+					</div>
+					<div class="fruit_text">
+						<p  th:text="${partnerAchievementList.introduction}">
+						</p>
+					</div>
+					<div class="fruit_bottom">
+						<span class="text_spanimg"> 
+							<img th:src="${portalHost + '/img/thinker_detail1.jpg'}" alt="" />
+						</span> 
+						<!-- <span>约1小时|</span> <span>0人约过</span> -->
+					</div>
+				</div> 
+			</div>
+			<div class="detailcenter_right">
+				<div class="right_img">
+					<img th:src="${portalHost + '/img/thinker_detail2.jpg'}" alt="" />
+					<div>
+						线下约见 <span>32次</span>
+					</div> 
+				</div>
+				<div class="right_text" th:each="rePartnerDetail:${rePartnerDetail}">
+					<h3>关于智者</h3>
+					<div>
+						<h5>专业领域:</h5>
+						<p th:text="${rePartnerDetail.abilityLabel}?${rePartnerDetail.abilityLabel}:未知"></p>
+					</div>
+					<div>
+						<h5>所在地:</h5>
+						<p th:text="${rePartnerDetail.provinceS}?${rePartnerDetail.provinceS}:未公开"></p>
+					</div>
+					<div class="summary">
+						<h5>智者简介:</h5>
+						<p th:text="${rePartnerDetail.personalProfile}?${rePartnerDetail.personalProfile}:无"></p>
+					</div>
+					<div class="right_btn">
+						<div class="btn_right">在线咨询</div>
+						<div>线下约见</div>
+					</div>
+				</div>
+					<h3>相关智者</h3>
+				<div class="right_bottom"  th:each="reuserPartner:${reuserPartner}">
+					<div>
+						<div class="people_img"> <img th:src= "${avatarUploadHost+reuserPartner.personPortraitUrl}"alt="" /> </div>
+						<div class="people_text">
+							<h5 th:text="${reuserPartner.username}?${reuserPartner.username}:11111111">纣洪涛</h5>
+							<span th:text="${reuserPartner.position}?${reuserPartner.position}:1111111"></span>
+							<p th:text="${reuserPartner.personalProfile}?${reuserPartner.personalProfile}:暂无简介">哈佛舒服舒服返回上返回是否合适覅和双飞粉石灰粉长沙长沙</p>
+						</div>
+					</div>
+				</div>
+			</div>
+		</div>
+		<!-- <div class="thinkdetail_bottom">
+			<div class="bottom_title">
+				<div>
+					一起来倾听客户的声音
+					<h3>智者评价</h3>
+					<div></div>
+				</div>
+			</div>
+			<div class="bottom_cont">
+				<div>
+					<div class="bottom_conttext">很符合我是否合法 即佛了辐射服 接送费聚四氟及反思和方式飞
+						就爱减肥 佛啊减肥</div>
+					<img src="../../img/thinker_detail5.png" alt="" />
+					<div>
+						<div class="bottompeople_img"></div>
+						<div class="bottompeople_text">
+							<h5>纣洪涛</h5>
+							<span>妇女协会会长</span>
+						</div>
+					</div>
+				</div>
+				<div>
+					<div class="bottom_conttext">非常牛逼</div>
+					<img src="../../img/thinker_detail3.png" alt="" />
+					<div>
+						<div class="bottompeople_img"></div>
+						<div class="bottompeople_text">
+							<h5>纣洪涛</h5>
+							<span>妇女协会会长</span>
+						</div>
+					</div>
+				</div>
+				<div>
+					<div class="bottom_conttext">很好</div>
+					<img src="../../img/thinker_detail5.png" alt="" />
+					<div>
+						<div class="bottompeople_img"></div>
+						<div class="bottompeople_text">
+							<h5>纣洪涛</h5>
+							<span>妇女协会会长</span>
+						</div>
+					</div>
+				</div>
+				<div>
+					<div class="bottom_conttext">太厉害了</div>
+					<img src="../../img/thinker_detail5.png" alt="" />
+					<div>
+						<div class="bottompeople_img"></div>
+						<div class="bottompeople_text">
+							<h5>纣洪涛</h5>
+							<span>妇女协会会长</span>
+						</div>
+					</div>
+				</div>
+				<div>
+					<div class="bottom_conttext">看着就想买</div>
+					<img src="../../img/thinker_detail5.png" alt="" />
+					<div>
+						<div class="bottompeople_img"></div>
+						<div class="bottompeople_text">
+							<h5>纣洪涛</h5>
+							<span>妇女协会会长</span>
+						</div>
+					</div>
+				</div>
+			</div>
+		</div> -->
+	</div>
+
+	<footer>
+		<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})">
 	<div th:replace="common::footer(~{::script})">
-		<script type="text/javascript" th:src="${staticHost+'/vendors.js'}"></script>
-		<script type="text/javascript" th:src="${staticHost+'/user/subscriberDetail.js'}"></script>
+		<script type="text/javascript" th:src="${portalHost + '/vendors.js'}"></script>
+		<script type="text/javascript" th:src="${portalHost + '/thinkTank/thinkerDetail.js'}"></script>
 	</div>
 	</div>
 </body>
 </body>
 </html>
 </html>