PortalController.java 40 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028
  1. package com.goafanti.common.controller;
  2. import java.math.BigDecimal;
  3. import java.util.ArrayList;
  4. import java.util.Arrays;
  5. import java.util.List;
  6. import java.util.Random;
  7. import javax.annotation.Resource;
  8. import javax.servlet.http.HttpServletRequest;
  9. import org.apache.commons.lang3.StringUtils;
  10. import org.springframework.stereotype.Controller;
  11. import org.springframework.web.bind.annotation.RequestMapping;
  12. import org.springframework.web.bind.annotation.RequestMethod;
  13. import org.springframework.web.servlet.ModelAndView;
  14. import org.springframework.web.servlet.view.RedirectView;
  15. import com.goafanti.achievement.bo.AchievementListBo;
  16. import com.goafanti.achievement.bo.AchievementPartnerListBo;
  17. import com.goafanti.achievement.service.AchievementService;
  18. import com.goafanti.app.bo.ServiceImages;
  19. import com.goafanti.business.service.BusinessProjectService;
  20. import com.goafanti.common.enums.AchievementBargainingMode;
  21. import com.goafanti.common.enums.AchievementMaturity;
  22. import com.goafanti.common.enums.AchievementTransferMode;
  23. import com.goafanti.common.enums.UserLevel;
  24. import com.goafanti.common.enums.UserType;
  25. import com.goafanti.common.service.DistrictGlossoryService;
  26. import com.goafanti.common.service.FieldGlossoryService;
  27. import com.goafanti.core.shiro.token.TokenManager;
  28. import com.goafanti.demand.bo.DemandListBo;
  29. import com.goafanti.demand.service.DemandInterestService;
  30. import com.goafanti.demand.service.DemandService;
  31. import com.goafanti.order.service.OrderService;
  32. import com.goafanti.portal.bo.AchievementPortalDetailBo;
  33. import com.goafanti.portal.bo.AchievementPortalSimilarListBo;
  34. import com.goafanti.portal.bo.DemandPortalDetailBo;
  35. import com.goafanti.portal.bo.DemandPortalSimilarListBo;
  36. import com.goafanti.user.bo.UserPartnerDetailBo;
  37. import com.goafanti.user.service.UserIdentityService;
  38. import com.goafanti.user.service.UserService;
  39. @Controller
  40. public class PortalController extends BaseController {
  41. @Resource
  42. private FieldGlossoryService glossoryService;
  43. @Resource
  44. private AchievementService achievementService;
  45. @Resource
  46. private DemandService demandService;
  47. @Resource
  48. UserIdentityService userIdentityService;
  49. @Resource
  50. private FieldGlossoryService fieldGlossoryService;
  51. @Resource
  52. private DemandInterestService demandInterestService;
  53. @Resource
  54. private UserService userService;
  55. @Resource
  56. private DistrictGlossoryService districtglossoryservice;
  57. @Resource
  58. BusinessProjectService businessProjectService;
  59. @Resource
  60. OrderService orderService;
  61. @Resource
  62. ServiceImages serviceImages;
  63. private static final String UNIT = "万元";
  64. private static final int MULTIPLE = 20;
  65. private static final String DELIMITER = "/";
  66. private static final String PRICE_NEGOTIABLE = "价格面议";
  67. private static final String UNCERTIFY = "未认证";
  68. @RequestMapping(value = "/index", method = RequestMethod.GET)
  69. public ModelAndView index(HttpServletRequest request, ModelAndView modelview) {
  70. return home(request, modelview);
  71. }
  72. @RequestMapping(value = "/", method = RequestMethod.GET)
  73. public ModelAndView home(HttpServletRequest request, ModelAndView modelview) {
  74. RedirectView rv = new RedirectView();
  75. rv.setUrl(request.getContextPath() + "/portal/index");
  76. rv.setExposeModelAttributes(false);
  77. modelview.setView(rv);
  78. return modelview;
  79. }
  80. /**
  81. * 科技需求详情
  82. */
  83. @RequestMapping(value = "/portal/technologyTrading/demandDetail", method = RequestMethod.GET)
  84. public ModelAndView portalDemandDetail(String id, Integer type) {
  85. ModelAndView mv = new ModelAndView();
  86. DemandPortalDetailBo demand = null;
  87. int countDemandInterest = demandInterestService.countDemandInterest(id);
  88. if(demandInterestService.selectDemandInterestByUidAndDemandId(TokenManager.getUserId(),id) != null) {
  89. mv.addObject("isInterester", 0);
  90. }else{
  91. mv.addObject("isInterester", 1);
  92. };
  93. if (UserType.PERSONAL.getCode().equals(type)) {
  94. demand = demandService.findUserPortalDemandDetail(id);
  95. } else if (UserType.ORGANIZATION.getCode().equals(type)) {
  96. demand = demandService.findOrgPortalDemandDetail(id);
  97. }
  98. if (null != demand) {
  99. if (null != demand.getBudgetCost()) {
  100. demand.setBudgetCostS(demand.getBudgetCost() + UNIT);
  101. } else {
  102. demand.setBudgetCostS(PRICE_NEGOTIABLE);
  103. }
  104. if (StringUtils.isBlank(demand.getEmployerName())) {
  105. if (UserLevel.GENERAL.getCode().equals(demand.getLevel())) {
  106. demand.setEmployerName(UNCERTIFY);
  107. } else {
  108. demand.setEmployerName(" ");
  109. }
  110. }
  111. demand.setCountDemandInterest(countDemandInterest);
  112. Integer industryCategoryA = demand.getIndustryCategoryA();
  113. boolean hasCategoryA = false;
  114. boolean hasCategoryB = false;
  115. if (null != industryCategoryA) {
  116. List<DemandPortalSimilarListBo> similarList = demandService.findByIndustryCategoryA(industryCategoryA,
  117. demand.getId());
  118. if (!similarList.isEmpty()) {
  119. for (DemandPortalSimilarListBo s : similarList) {
  120. hasCategoryA = StringUtils.isNotBlank(s.getIndustryCategoryAS());
  121. hasCategoryB = StringUtils.isNotBlank(s.getIndustryCategoryBS());
  122. s.setIndustryCategory((hasCategoryA ? s.getIndustryCategoryAS() : "")
  123. + (hasCategoryA && hasCategoryB ? DELIMITER : "")
  124. + (hasCategoryB ? s.getIndustryCategoryBS() : ""));
  125. if (null != s.getBudgetCost() && s.getBudgetCost().compareTo(BigDecimal.ZERO) > 0) {
  126. s.setBudgetCostS(s.getBudgetCost() + UNIT);
  127. } else {
  128. s.setBudgetCostS(PRICE_NEGOTIABLE);
  129. }
  130. }
  131. }
  132. mv.addObject("similarList", similarList);
  133. hasCategoryA = StringUtils.isNotBlank(demand.getIndustryCategoryAS());
  134. }
  135. hasCategoryB = StringUtils.isNotBlank(demand.getIndustryCategoryBS());
  136. demand.setIndustryCategory((hasCategoryA ? demand.getIndustryCategoryAS() : "")
  137. + (hasCategoryA && hasCategoryB ? DELIMITER : "")
  138. + (hasCategoryB ? demand.getIndustryCategoryBS() : ""));
  139. demand.setLocation((StringUtils.isBlank(demand.getProvince()) ? "" : demand.getProvince())
  140. + (StringUtils.isBlank(demand.getCity()) ? "" : demand.getCity()));
  141. }
  142. String demandpic = demand.getPictureUrl();// 在存在多张图片的情况下,暂时先取第一张
  143. if (null != demandpic) {
  144. boolean hascomma = demandpic.contains(",");
  145. if (hascomma) {
  146. String[] picurl = demandpic.split(",");
  147. demand.setPictureUrl(picurl[0]);
  148. }
  149. }
  150. /*--------------查询精品需求---------------*/
  151. List<DemandListBo> boutiquedemand = demandService.selectDemandList(1);
  152. List<DemandListBo> reboutiquedemand = new ArrayList<DemandListBo>();
  153. if (boutiquedemand.size() >= 4) {
  154. int index = new Random().nextInt(boutiquedemand.size() - 3);
  155. reboutiquedemand.add(boutiquedemand.get(index));
  156. reboutiquedemand.add(boutiquedemand.get(index + 1));
  157. reboutiquedemand.add(boutiquedemand.get(index + 2));
  158. } else {
  159. reboutiquedemand.addAll(boutiquedemand);
  160. }
  161. ;
  162. for (int i = 0; i < reboutiquedemand.size(); i++) {
  163. String pic = reboutiquedemand.get(i).getPictureUrl();// 在存在多张图片的情况下,暂时先取第一张
  164. if (null != pic) {
  165. boolean hascomma = pic.contains(",");
  166. if (hascomma) {
  167. String[] picurl = pic.split(",");
  168. reboutiquedemand.get(i).setPictureUrl(picurl[0]);
  169. }
  170. }
  171. }
  172. ;
  173. // 判断登录没登录. 登录了.查找用户喜欢的. 没登录就随机查四个.
  174. boolean isLogin = TokenManager.isLogin();
  175. List<DemandListBo> demandlist = demandService.selectDemandList(0);// 查询所有专利
  176. List<DemandListBo> redemandlist = new ArrayList<DemandListBo>();
  177. if (demandlist.size() >= 5) {
  178. int idx = new Random().nextInt(demandlist.size() - 4);
  179. redemandlist.add(demandlist.get(idx));
  180. redemandlist.add(demandlist.get(idx + 1));
  181. redemandlist.add(demandlist.get(idx + 2));
  182. redemandlist.add(demandlist.get(idx + 3));
  183. } else {
  184. redemandlist.addAll(demandlist);
  185. }
  186. if (isLogin) {
  187. List<DemandListBo> customerlikelist = demandService.selectCsutomerLike();// 猜你喜欢专利
  188. int size;
  189. if (customerlikelist.size() < redemandlist.size()) {
  190. size = customerlikelist.size();
  191. } else {
  192. size = redemandlist.size();
  193. }
  194. for (int i = 0; i < size; i++) {
  195. redemandlist.set(i, customerlikelist.get(i));
  196. }
  197. }
  198. for (int i = 0; i < redemandlist.size(); i++) {
  199. Integer demandType = redemandlist.get(i).getDemandType();
  200. if (null != redemandlist) {
  201. if (demandType == 1) {
  202. redemandlist.get(i).setDemandTypeS("技术购买需求");
  203. } else if (demandType == 2) {
  204. redemandlist.get(i).setDemandTypeS("技术设备类需求");
  205. } else if (demandType == 3) {
  206. redemandlist.get(i).setDemandTypeS("技术方案型需求");
  207. } else if (demandType == 4) {
  208. redemandlist.get(i).setDemandTypeS("技术攻关型需求");
  209. } else if (demandType == 5) {
  210. redemandlist.get(i).setDemandTypeS("技术人才型需求");
  211. }
  212. }
  213. }
  214. ;
  215. for (int i = 0; i < redemandlist.size(); i++) {
  216. String pic = redemandlist.get(i).getPictureUrl();// 在存在多张图片的情况下,暂时先取第一张
  217. if (null != pic) {
  218. boolean hascomma = pic.contains(",");
  219. if (hascomma) {
  220. String[] picurl = pic.split(",");
  221. redemandlist.get(i).setPictureUrl(picurl[0]);
  222. }
  223. }
  224. };
  225. mv.setViewName("/portal/technologyTrading/demandDetail");
  226. mv.addObject("demand", demand);
  227. mv.addObject("reboutiquedemand", reboutiquedemand);
  228. mv.addObject("redemandlist", redemandlist);
  229. return mv;
  230. }
  231. /**
  232. * 科技成果详情
  233. */
  234. @RequestMapping(value = "/portal/technologyTrading/achievementDetail", method = RequestMethod.GET)
  235. public ModelAndView portalAchievementDetail(String id, Integer type) {
  236. ModelAndView mv = new ModelAndView();
  237. AchievementPortalDetailBo achievementdetail = null;
  238. if (UserType.PERSONAL.getCode().equals(type)) {
  239. achievementdetail = achievementService.findUserPortalAchievementDetail(id);
  240. } else if (UserType.ORGANIZATION.getCode().equals(type)) {
  241. achievementdetail = achievementService.findOrgPortalAchievementDetail(id);
  242. }
  243. if (null != achievementdetail) {
  244. achievementdetail.setId(id);
  245. achievementdetail.setOwnerType(String.valueOf(type));
  246. Integer category = achievementdetail.getCategory();
  247. if (null != category) {
  248. if (category == 0) {
  249. achievementdetail.setCategoryS("专利");
  250. } else if (category == 1) {
  251. achievementdetail.setCategoryS("软著");
  252. } else if (category == 2) {
  253. achievementdetail.setCategoryS("项目");
  254. } else if (category == 3) {
  255. achievementdetail.setCategoryS("版权");
  256. } else if (category == 4) {
  257. achievementdetail.setCategoryS("工业设计");
  258. } else if (category == 5) {
  259. achievementdetail.setCategoryS("配方");
  260. } else if (category == 6) {
  261. achievementdetail.setCategoryS("非标");
  262. }
  263. }
  264. ;
  265. Integer fieldA = achievementdetail.getFieldA();
  266. String field = "";
  267. boolean a = Boolean.FALSE;
  268. boolean b = Boolean.FALSE;
  269. if (null != fieldA) {
  270. List<AchievementPortalSimilarListBo> similarList = achievementService.findByFieldA(fieldA,
  271. achievementdetail.getId(), type);
  272. if (!similarList.isEmpty()) {
  273. for (AchievementPortalSimilarListBo bo : similarList) {
  274. if (null != bo.getMaturity()) {
  275. bo.setMaturityS(bo.getMaturity() * MULTIPLE + "%");
  276. }
  277. if (null == bo.getBargainingMode()
  278. || AchievementBargainingMode.NEGOTIABLE.getCode().equals(bo.getBargainingMode())) {
  279. bo.setTransferPriceS(PRICE_NEGOTIABLE);
  280. } else {
  281. if (null != bo.getTransferPrice() && bo.getTransferPrice().compareTo(BigDecimal.ZERO) > 0) {
  282. bo.setTransferPriceS(bo.getTransferPrice() + UNIT);
  283. } else {
  284. bo.setTransferPriceS(PRICE_NEGOTIABLE);
  285. }
  286. }
  287. String ulocation = "";
  288. String uprovince = bo.getUprovince();
  289. String ucity = bo.getUcity();
  290. ulocation += (StringUtils.isBlank(uprovince) ? "" : uprovince)
  291. + (StringUtils.isBlank(ucity) ? "" : ucity);
  292. String olocation = "";
  293. String oprovince = bo.getOprovince();
  294. String ocity = bo.getOcity();
  295. olocation += (StringUtils.isBlank(oprovince) ? "" : oprovince)
  296. + (StringUtils.isBlank(ocity) ? "" : ocity);
  297. bo.setLocation(StringUtils.isNotBlank(ulocation) ? ulocation
  298. : (StringUtils.isNotBlank(olocation) ? olocation : ""));
  299. }
  300. }
  301. mv.addObject("similarList", similarList);
  302. if (StringUtils.isNotBlank(achievementdetail.getFieldAS())) {
  303. a = Boolean.TRUE;
  304. }
  305. }
  306. if (StringUtils.isNotBlank(achievementdetail.getFieldBS())) {
  307. b = Boolean.TRUE;
  308. }
  309. field += (a ? achievementdetail.getFieldAS() : "") + (a && b ? DELIMITER : "")
  310. + (b ? achievementdetail.getFieldBS() : "");
  311. achievementdetail.setField(field);
  312. String technicalPictureUrl = achievementdetail.getTechnicalPictureUrl();
  313. if (StringUtils.isNotBlank(technicalPictureUrl)) {
  314. achievementdetail.setPictureList(Arrays.asList(technicalPictureUrl.trim().split(",|,")));
  315. }
  316. Integer transfermode = achievementdetail.getTransferMode();
  317. if (null != transfermode) {
  318. if (AchievementTransferMode.FULLTRANSFER.getCode().equals(transfermode)) {
  319. achievementdetail.setTransferModeS(AchievementTransferMode.FULLTRANSFER.getDesc());
  320. } else if (AchievementTransferMode.PERMISSIONTRANSFER.getCode().equals(transfermode)) {
  321. achievementdetail.setTransferModeS(AchievementTransferMode.PERMISSIONTRANSFER.getDesc());
  322. } else if (AchievementTransferMode.TECHNOLOGYSHARES.getCode().equals(transfermode)) {
  323. achievementdetail.setTransferModeS(AchievementTransferMode.TECHNOLOGYSHARES.getDesc());
  324. } else if (AchievementTransferMode.EXCLUSIVETECHNOLOGYSHARES.getCode().equals(transfermode)) {
  325. achievementdetail.setTransferModeS(AchievementTransferMode.EXCLUSIVETECHNOLOGYSHARES.getDesc());
  326. }
  327. }
  328. Integer maturity = achievementdetail.getMaturity();
  329. if (null != maturity) {
  330. if (AchievementMaturity.RESEARCH.getCode().equals(maturity)) {
  331. achievementdetail.setMaturityS(AchievementMaturity.RESEARCH.getDesc());
  332. } else if (AchievementMaturity.SAMPLE.getCode().equals(maturity)) {
  333. achievementdetail.setMaturityS(AchievementMaturity.SAMPLE.getDesc());
  334. } else if (AchievementMaturity.PRIMARYTEST.getCode().equals(maturity)) {
  335. achievementdetail.setMaturityS(AchievementMaturity.PRIMARYTEST.getDesc());
  336. } else if (AchievementMaturity.INTERMEDIATETEST.getCode().equals(maturity)) {
  337. achievementdetail.setMaturityS(AchievementMaturity.INTERMEDIATETEST.getDesc());
  338. } else if (AchievementMaturity.MASSPRODUCTION.getCode().equals(maturity)) {
  339. achievementdetail.setMaturityS(AchievementMaturity.MASSPRODUCTION.getDesc());
  340. }
  341. }
  342. String pic = achievementdetail.getTechnicalPictureUrl();// 在存在多张图片的情况下,暂时先取第一张
  343. if (null != pic) {
  344. boolean hascomma = pic.contains(",");
  345. if (hascomma) {
  346. String[] picurl = pic.split(",");
  347. achievementdetail.setTechnicalPictureUrl(picurl[0]);
  348. }
  349. }
  350. String location = "";
  351. String province = achievementdetail.getProvince();
  352. String city = achievementdetail.getCity();
  353. location += (StringUtils.isBlank(province) ? "" : province) + (StringUtils.isBlank(city) ? "" : city);
  354. if (null == achievementdetail.getBargainingMode()
  355. || AchievementBargainingMode.NEGOTIABLE.equals(achievementdetail.getBargainingMode())) {
  356. achievementdetail.setTransferPriceS(PRICE_NEGOTIABLE);
  357. } else {
  358. if (null != achievementdetail.getTransferPrice()) {
  359. achievementdetail.setTransferPriceS(achievementdetail.getTransferPrice() + UNIT);
  360. } else {
  361. achievementdetail.setTransferPriceS(PRICE_NEGOTIABLE);
  362. }
  363. }
  364. achievementdetail.setLocation(location);
  365. }
  366. // 查询精品成果
  367. List<AchievementListBo> boutiqueachievement = achievementService.getAchievement(1);
  368. List<AchievementListBo> reboutiqueachievement = new ArrayList<AchievementListBo>();
  369. if (boutiqueachievement.size() >= 4) {
  370. int index = new Random().nextInt(boutiqueachievement.size() - 3);
  371. reboutiqueachievement.add(boutiqueachievement.get(index));
  372. reboutiqueachievement.add(boutiqueachievement.get(index + 1));
  373. reboutiqueachievement.add(boutiqueachievement.get(index + 2));
  374. } else {
  375. reboutiqueachievement.addAll(boutiqueachievement);
  376. }
  377. ;
  378. for (int i = 0; i < boutiqueachievement.size(); i++) {
  379. String pic = boutiqueachievement.get(i).getTechnicalpictureurl();// 在存在多张图片的情况下,暂时先取第一张
  380. if (null != pic) {
  381. boolean hascomma = pic.contains(",");
  382. if (hascomma) {
  383. String[] picurl = pic.split(",");
  384. boutiqueachievement.get(i).setTechnicalpictureurl(picurl[0]);
  385. }
  386. }
  387. }
  388. ;
  389. // 判断登录没登录. 登录了.查找用户喜欢的. 没登录就随机查四个.
  390. boolean isLogin = TokenManager.isLogin();
  391. List<AchievementListBo> achievementlist = achievementService.getAchievement(0);// 查询所有专利
  392. List<AchievementListBo> reachievementlist = new ArrayList<AchievementListBo>();
  393. if (achievementlist.size() >= 5) {
  394. int idx = new Random().nextInt(achievementlist.size() - 4);
  395. reachievementlist.add(achievementlist.get(idx));
  396. reachievementlist.add(achievementlist.get(idx + 1));
  397. reachievementlist.add(achievementlist.get(idx + 2));
  398. reachievementlist.add(achievementlist.get(idx + 3));
  399. } else {
  400. reachievementlist.addAll(achievementlist);
  401. }
  402. if (isLogin) {
  403. List<AchievementListBo> customerlikelist = achievementService.getPerhapLike();// 猜你喜欢专利
  404. int size;
  405. if (customerlikelist.size() < reachievementlist.size()) {
  406. size = customerlikelist.size();
  407. } else {
  408. size = reachievementlist.size();
  409. }
  410. for (int i = 0; i < size; i++) {
  411. reachievementlist.set(i, customerlikelist.get(i));
  412. }
  413. }
  414. /*----------------------------------------------------------*/
  415. for (int i = 0; i < reachievementlist.size(); i++) {
  416. Integer fieldA = reachievementlist.get(i).getFieldA();
  417. String field = "";
  418. boolean a = Boolean.FALSE;
  419. if (null != fieldA && null != achievementdetail) {
  420. List<AchievementPortalSimilarListBo> similarList = achievementService.findByFieldA(fieldA,
  421. achievementdetail.getId(), type);
  422. if (!similarList.isEmpty()) {
  423. for (AchievementPortalSimilarListBo bo : similarList) {
  424. if (null != bo.getMaturity()) {
  425. bo.setMaturityS(bo.getMaturity() * MULTIPLE + "%");
  426. }
  427. if (null == bo.getBargainingMode()
  428. || AchievementBargainingMode.NEGOTIABLE.getCode().equals(bo.getBargainingMode())) {
  429. bo.setTransferPriceS(PRICE_NEGOTIABLE);
  430. } else {
  431. if (null != bo.getTransferPrice() && bo.getTransferPrice().compareTo(BigDecimal.ZERO) > 0) {
  432. bo.setTransferPriceS(bo.getTransferPrice() + UNIT);
  433. } else {
  434. bo.setTransferPriceS(PRICE_NEGOTIABLE);
  435. }
  436. }
  437. }
  438. }
  439. mv.addObject("similarList", similarList);
  440. if (StringUtils.isNotBlank(reachievementlist.get(i).getFieldAS())) {
  441. a = Boolean.TRUE;
  442. }
  443. String fieldAs = glossoryService.getName(fieldA);
  444. reachievementlist.get(i).setFieldAS(fieldAs);
  445. }
  446. field += (a ? reachievementlist.get(i).getFieldAS() : "");
  447. reachievementlist.get(i).setField(field);
  448. Integer ownertyp = reachievementlist.get(i).getOwnerType();
  449. if (null != ownertyp) {
  450. if (ownertyp == 0) {
  451. reachievementlist.get(i).setOwnerTypeS("个人所有");
  452. } else if (ownertyp == 1) {
  453. reachievementlist.get(i).setOwnerTypeS("组织所有");
  454. }
  455. }
  456. Integer transfermode = reachievementlist.get(i).getTransferMode();
  457. if (null != transfermode) {
  458. if (AchievementTransferMode.FULLTRANSFER.getCode().equals(transfermode)) {
  459. reachievementlist.get(i).setTransferModeS(AchievementTransferMode.FULLTRANSFER.getDesc());
  460. } else if (AchievementTransferMode.PERMISSIONTRANSFER.getCode().equals(transfermode)) {
  461. reachievementlist.get(i).setTransferModeS(AchievementTransferMode.PERMISSIONTRANSFER.getDesc());
  462. } else if (AchievementTransferMode.TECHNOLOGYSHARES.getCode().equals(transfermode)) {
  463. reachievementlist.get(i).setTransferModeS(AchievementTransferMode.TECHNOLOGYSHARES.getDesc());
  464. } else if (AchievementTransferMode.EXCLUSIVETECHNOLOGYSHARES.getCode().equals(transfermode)) {
  465. reachievementlist.get(i)
  466. .setTransferModeS(AchievementTransferMode.EXCLUSIVETECHNOLOGYSHARES.getDesc());
  467. }
  468. }
  469. Integer maturity = reachievementlist.get(i).getMaturity();
  470. if (null != maturity) {
  471. if (AchievementMaturity.RESEARCH.getCode().equals(maturity)) {
  472. reachievementlist.get(i).setMaturityS(AchievementMaturity.RESEARCH.getDesc());
  473. } else if (AchievementMaturity.SAMPLE.getCode().equals(maturity)) {
  474. reachievementlist.get(i).setMaturityS(AchievementMaturity.SAMPLE.getDesc());
  475. } else if (AchievementMaturity.PRIMARYTEST.getCode().equals(maturity)) {
  476. reachievementlist.get(i).setMaturityS(AchievementMaturity.PRIMARYTEST.getDesc());
  477. } else if (AchievementMaturity.INTERMEDIATETEST.getCode().equals(maturity)) {
  478. reachievementlist.get(i).setMaturityS(AchievementMaturity.INTERMEDIATETEST.getDesc());
  479. } else if (AchievementMaturity.MASSPRODUCTION.getCode().equals(maturity)) {
  480. reachievementlist.get(i).setMaturityS(AchievementMaturity.MASSPRODUCTION.getDesc());
  481. }
  482. }
  483. ;
  484. String pic = reachievementlist.get(i).getTechnicalpictureurl();// 在存在多张图片的情况下,暂时先取第一张
  485. if (null != pic) {
  486. boolean hascomma = pic.contains(",");
  487. if (hascomma) {
  488. String[] picurl = pic.split(",");
  489. reachievementlist.get(i).setTechnicalpictureurl(picurl[0]);
  490. }
  491. }
  492. }
  493. mv.setViewName("/portal/technologyTrading/achievementDetail");
  494. mv.addObject("achievementdetail", achievementdetail);
  495. mv.addObject("reboutiqueachievement", reboutiqueachievement);
  496. mv.addObject("reachievementlist", reachievementlist);
  497. return mv;
  498. }
  499. /**
  500. * 订单确认页(成果专利)
  501. */
  502. @RequestMapping(value = "/portal/technologyTrading/achievementOrder", method = RequestMethod.GET)
  503. public ModelAndView portalAchievementOrder(String id, Integer type) {
  504. ModelAndView mv = new ModelAndView();
  505. AchievementPortalDetailBo achievementdetail = null;
  506. achievementdetail = achievementService.findUserPortalAchievementDetail(id);
  507. if (null != achievementdetail) {
  508. achievementdetail.setId(id);
  509. achievementdetail.setOwnerType(String.valueOf(type));
  510. Integer category = achievementdetail.getCategory();
  511. if (null != category) {
  512. if (category == 0) {
  513. achievementdetail.setCategoryS("专利");
  514. } else if (category == 1) {
  515. achievementdetail.setCategoryS("软著");
  516. } else if (category == 2) {
  517. achievementdetail.setCategoryS("项目");
  518. } else if (category == 3) {
  519. achievementdetail.setCategoryS("版权");
  520. } else if (category == 4) {
  521. achievementdetail.setCategoryS("工业设计");
  522. } else if (category == 5) {
  523. achievementdetail.setCategoryS("配方");
  524. } else if (category == 6) {
  525. achievementdetail.setCategoryS("非标");
  526. }
  527. }
  528. ;
  529. Integer transfermode = achievementdetail.getTransferMode();
  530. if (null != transfermode) {
  531. if (AchievementTransferMode.FULLTRANSFER.getCode().equals(transfermode)) {
  532. achievementdetail.setTransferModeS(AchievementTransferMode.FULLTRANSFER.getDesc());
  533. } else if (AchievementTransferMode.PERMISSIONTRANSFER.getCode().equals(transfermode)) {
  534. achievementdetail.setTransferModeS(AchievementTransferMode.PERMISSIONTRANSFER.getDesc());
  535. } else if (AchievementTransferMode.TECHNOLOGYSHARES.getCode().equals(transfermode)) {
  536. achievementdetail.setTransferModeS(AchievementTransferMode.TECHNOLOGYSHARES.getDesc());
  537. } else if (AchievementTransferMode.EXCLUSIVETECHNOLOGYSHARES.getCode().equals(transfermode)) {
  538. achievementdetail.setTransferModeS(AchievementTransferMode.EXCLUSIVETECHNOLOGYSHARES.getDesc());
  539. }
  540. }
  541. }
  542. // 查询精品成果
  543. List<AchievementListBo> boutiqueachievement = achievementService.getAchievement(1);
  544. List<AchievementListBo> reboutiqueachievement = new ArrayList<AchievementListBo>();
  545. if (boutiqueachievement.size() >= 4) {
  546. int index = new Random().nextInt(boutiqueachievement.size() - 3);
  547. reboutiqueachievement.add(boutiqueachievement.get(index));
  548. reboutiqueachievement.add(boutiqueachievement.get(index + 1));
  549. reboutiqueachievement.add(boutiqueachievement.get(index + 2));
  550. } else {
  551. reboutiqueachievement.addAll(boutiqueachievement);
  552. }
  553. ;
  554. for (int i = 0; i < boutiqueachievement.size(); i++) {
  555. String pic = boutiqueachievement.get(i).getTechnicalpictureurl();// 在存在多张图片的情况下,暂时先取第一张
  556. if (null != pic) {
  557. boolean hascomma = pic.contains(",");
  558. if (hascomma) {
  559. String[] picurl = pic.split(",");
  560. boutiqueachievement.get(i).setTechnicalpictureurl(picurl[0]);
  561. }
  562. }
  563. }
  564. ;
  565. // 判断登录没登录. 登录了.查找用户喜欢的. 没登录就随机查四个.
  566. boolean isLogin = TokenManager.isLogin();
  567. List<AchievementListBo> achievementlist = achievementService.getAchievement(0);// 查询所有专利
  568. List<AchievementListBo> reachievementlist = new ArrayList<AchievementListBo>();
  569. if (achievementlist.size() >= 5) {
  570. int idx = new Random().nextInt(achievementlist.size() - 4);
  571. reachievementlist.add(achievementlist.get(idx));
  572. reachievementlist.add(achievementlist.get(idx + 1));
  573. reachievementlist.add(achievementlist.get(idx + 2));
  574. reachievementlist.add(achievementlist.get(idx + 3));
  575. } else {
  576. reachievementlist.addAll(achievementlist);
  577. }
  578. if (isLogin) {
  579. List<AchievementListBo> customerlikelist = achievementService.getPerhapLike();// 猜你喜欢专利
  580. int size;
  581. if (customerlikelist.size() < reachievementlist.size()) {
  582. size = customerlikelist.size();
  583. } else {
  584. size = reachievementlist.size();
  585. }
  586. for (int i = 0; i < size; i++) {
  587. reachievementlist.set(i, customerlikelist.get(i));
  588. }
  589. }
  590. /*----------------------------------------------------------*/
  591. for (int i = 0; i < reachievementlist.size(); i++) {
  592. Integer fieldA = reachievementlist.get(i).getFieldA();
  593. String field = "";
  594. boolean a = Boolean.FALSE;
  595. if (null != fieldA && null != achievementdetail) {
  596. List<AchievementPortalSimilarListBo> similarList = achievementService.findByFieldA(fieldA,
  597. achievementdetail.getId(), type);
  598. if (!similarList.isEmpty()) {
  599. for (AchievementPortalSimilarListBo bo : similarList) {
  600. if (null != bo.getMaturity()) {
  601. bo.setMaturityS(bo.getMaturity() * MULTIPLE + "%");
  602. }
  603. if (null == bo.getBargainingMode()
  604. || AchievementBargainingMode.NEGOTIABLE.getCode().equals(bo.getBargainingMode())) {
  605. bo.setTransferPriceS(PRICE_NEGOTIABLE);
  606. } else {
  607. if (null != bo.getTransferPrice() && bo.getTransferPrice().compareTo(BigDecimal.ZERO) > 0) {
  608. bo.setTransferPriceS(bo.getTransferPrice() + UNIT);
  609. } else {
  610. bo.setTransferPriceS(PRICE_NEGOTIABLE);
  611. }
  612. }
  613. }
  614. }
  615. mv.addObject("similarList", similarList);
  616. if (StringUtils.isNotBlank(reachievementlist.get(i).getFieldAS())) {
  617. a = Boolean.TRUE;
  618. }
  619. String fieldAs = glossoryService.getName(fieldA);
  620. reachievementlist.get(i).setFieldAS(fieldAs);
  621. }
  622. field += (a ? reachievementlist.get(i).getFieldAS() : "");
  623. reachievementlist.get(i).setField(field);
  624. Integer ownertyp = reachievementlist.get(i).getOwnerType();
  625. if (null != ownertyp) {
  626. if (ownertyp == 0) {
  627. reachievementlist.get(i).setOwnerTypeS("个人所有");
  628. } else if (ownertyp == 1) {
  629. reachievementlist.get(i).setOwnerTypeS("组织所有");
  630. }
  631. }
  632. Integer transfermode = reachievementlist.get(i).getTransferMode();
  633. if (null != transfermode) {
  634. if (AchievementTransferMode.FULLTRANSFER.getCode().equals(transfermode)) {
  635. reachievementlist.get(i).setTransferModeS(AchievementTransferMode.FULLTRANSFER.getDesc());
  636. } else if (AchievementTransferMode.PERMISSIONTRANSFER.getCode().equals(transfermode)) {
  637. reachievementlist.get(i).setTransferModeS(AchievementTransferMode.PERMISSIONTRANSFER.getDesc());
  638. } else if (AchievementTransferMode.TECHNOLOGYSHARES.getCode().equals(transfermode)) {
  639. reachievementlist.get(i).setTransferModeS(AchievementTransferMode.TECHNOLOGYSHARES.getDesc());
  640. } else if (AchievementTransferMode.EXCLUSIVETECHNOLOGYSHARES.getCode().equals(transfermode)) {
  641. reachievementlist.get(i)
  642. .setTransferModeS(AchievementTransferMode.EXCLUSIVETECHNOLOGYSHARES.getDesc());
  643. }
  644. }
  645. Integer maturity = reachievementlist.get(i).getMaturity();
  646. if (null != maturity) {
  647. if (AchievementMaturity.RESEARCH.getCode().equals(maturity)) {
  648. reachievementlist.get(i).setMaturityS(AchievementMaturity.RESEARCH.getDesc());
  649. } else if (AchievementMaturity.SAMPLE.getCode().equals(maturity)) {
  650. reachievementlist.get(i).setMaturityS(AchievementMaturity.SAMPLE.getDesc());
  651. } else if (AchievementMaturity.PRIMARYTEST.getCode().equals(maturity)) {
  652. reachievementlist.get(i).setMaturityS(AchievementMaturity.PRIMARYTEST.getDesc());
  653. } else if (AchievementMaturity.INTERMEDIATETEST.getCode().equals(maturity)) {
  654. reachievementlist.get(i).setMaturityS(AchievementMaturity.INTERMEDIATETEST.getDesc());
  655. } else if (AchievementMaturity.MASSPRODUCTION.getCode().equals(maturity)) {
  656. reachievementlist.get(i).setMaturityS(AchievementMaturity.MASSPRODUCTION.getDesc());
  657. }
  658. };
  659. String pic = reachievementlist.get(i).getTechnicalpictureurl();// 在存在多张图片的情况下,暂时先取第一张
  660. if (null != pic) {
  661. boolean hascomma = pic.contains(",");
  662. if (hascomma) {
  663. String[] picurl = pic.split(",");
  664. reachievementlist.get(i).setTechnicalpictureurl(picurl[0]);
  665. }
  666. }
  667. }
  668. mv.setViewName("/portal/technologyTrading/achievementOrder");
  669. mv.addObject("achievementdetail", achievementdetail);
  670. mv.addObject("reachievementlist", reachievementlist);
  671. return mv;
  672. }
  673. /**
  674. * 下单页面(需求)
  675. */
  676. @RequestMapping(value = "/portal/technologyTrading/demandOrder", method = RequestMethod.GET)
  677. public ModelAndView portalDemandOrder(String id, Integer type) {
  678. ModelAndView mv = new ModelAndView();
  679. DemandPortalDetailBo demand = null;
  680. demand = demandService.findUserPortalDemandDetail(id);
  681. if (null != demand) {
  682. if (null != demand.getBudgetCost()) {
  683. demand.setBudgetCostS(demand.getBudgetCost() + UNIT);
  684. } else {
  685. demand.setBudgetCostS(PRICE_NEGOTIABLE);
  686. }
  687. if (StringUtils.isBlank(demand.getEmployerName())) {
  688. if (UserLevel.GENERAL.getCode().equals(demand.getLevel())) {
  689. demand.setEmployerName(UNCERTIFY);
  690. } else {
  691. demand.setEmployerName(" ");
  692. }
  693. }
  694. Integer industryCategoryA = demand.getIndustryCategoryA();
  695. boolean hasCategoryA = false;
  696. boolean hasCategoryB = false;
  697. if (null != industryCategoryA) {
  698. List<DemandPortalSimilarListBo> similarList = demandService.findByIndustryCategoryA(industryCategoryA,
  699. demand.getId());
  700. if (!similarList.isEmpty()) {
  701. for (DemandPortalSimilarListBo s : similarList) {
  702. hasCategoryA = StringUtils.isNotBlank(s.getIndustryCategoryAS());
  703. hasCategoryB = StringUtils.isNotBlank(s.getIndustryCategoryBS());
  704. s.setIndustryCategory((hasCategoryA ? s.getIndustryCategoryAS() : "")
  705. + (hasCategoryA && hasCategoryB ? DELIMITER : "")
  706. + (hasCategoryB ? s.getIndustryCategoryBS() : ""));
  707. if (null != s.getBudgetCost() && s.getBudgetCost().compareTo(BigDecimal.ZERO) > 0) {
  708. s.setBudgetCostS(s.getBudgetCost() + UNIT);
  709. } else {
  710. s.setBudgetCostS(PRICE_NEGOTIABLE);
  711. }
  712. }
  713. }
  714. mv.addObject("similarList", similarList);
  715. hasCategoryA = StringUtils.isNotBlank(demand.getIndustryCategoryAS());
  716. }
  717. hasCategoryB = StringUtils.isNotBlank(demand.getIndustryCategoryBS());
  718. demand.setIndustryCategory((hasCategoryA ? demand.getIndustryCategoryAS() : "")
  719. + (hasCategoryA && hasCategoryB ? DELIMITER : "")
  720. + (hasCategoryB ? demand.getIndustryCategoryBS() : ""));
  721. demand.setLocation((StringUtils.isBlank(demand.getProvince()) ? "" : demand.getProvince())
  722. + (StringUtils.isBlank(demand.getCity()) ? "" : demand.getCity()));
  723. }
  724. String demandpic = demand.getPictureUrl();// 在存在多张图片的情况下,暂时先取第一张
  725. if (null != demandpic) {
  726. boolean hascomma = demandpic.contains(",");
  727. if (hascomma) {
  728. String[] picurl = demandpic.split(",");
  729. demand.setPictureUrl(picurl[0]);
  730. }
  731. }
  732. /*--------------查询精品需求---------------*/
  733. List<DemandListBo> boutiquedemand = demandService.selectDemandList(1);
  734. List<DemandListBo> reboutiquedemand = new ArrayList<DemandListBo>();
  735. if (boutiquedemand.size() >= 4) {
  736. int index = new Random().nextInt(boutiquedemand.size() - 3);
  737. reboutiquedemand.add(boutiquedemand.get(index));
  738. reboutiquedemand.add(boutiquedemand.get(index + 1));
  739. reboutiquedemand.add(boutiquedemand.get(index + 2));
  740. } else {
  741. reboutiquedemand.addAll(boutiquedemand);
  742. }
  743. ;
  744. for (int i = 0; i < reboutiquedemand.size(); i++) {
  745. String pic = reboutiquedemand.get(i).getPictureUrl();// 在存在多张图片的情况下,暂时先取第一张
  746. if (null != pic) {
  747. boolean hascomma = pic.contains(",");
  748. if (hascomma) {
  749. String[] picurl = pic.split(",");
  750. reboutiquedemand.get(i).setPictureUrl(picurl[0]);
  751. }
  752. }
  753. }
  754. ;
  755. // 判断登录没登录. 登录了.查找用户喜欢的. 没登录就随机查四个.
  756. boolean isLogin = TokenManager.isLogin();
  757. List<DemandListBo> demandlist = demandService.selectDemandList(0);// 查询所有专利
  758. List<DemandListBo> redemandlist = new ArrayList<DemandListBo>();
  759. if (demandlist.size() >= 5) {
  760. int idx = new Random().nextInt(demandlist.size() - 4);
  761. redemandlist.add(demandlist.get(idx));
  762. redemandlist.add(demandlist.get(idx + 1));
  763. redemandlist.add(demandlist.get(idx + 2));
  764. redemandlist.add(demandlist.get(idx + 3));
  765. } else {
  766. redemandlist.addAll(demandlist);
  767. }
  768. if (isLogin) {
  769. List<DemandListBo> customerlikelist = demandService.selectCsutomerLike();// 猜你喜欢专利
  770. int size;
  771. if (customerlikelist.size() < redemandlist.size()) {
  772. size = customerlikelist.size();
  773. } else {
  774. size = redemandlist.size();
  775. }
  776. for (int i = 0; i < size; i++) {
  777. redemandlist.set(i, customerlikelist.get(i));
  778. }
  779. }
  780. for (int i = 0; i < redemandlist.size(); i++) {
  781. Integer demandType = redemandlist.get(i).getDemandType();
  782. if (null != redemandlist) {
  783. if (demandType == 1) {
  784. redemandlist.get(i).setDemandTypeS("技术购买需求");
  785. } else if (demandType == 2) {
  786. redemandlist.get(i).setDemandTypeS("技术设备类需求");
  787. } else if (demandType == 3) {
  788. redemandlist.get(i).setDemandTypeS("技术方案型需求");
  789. } else if (demandType == 4) {
  790. redemandlist.get(i).setDemandTypeS("技术攻关型需求");
  791. } else if (demandType == 5) {
  792. redemandlist.get(i).setDemandTypeS("技术人才型需求");
  793. }
  794. }
  795. }
  796. ;
  797. for (int i = 0; i < redemandlist.size(); i++) {
  798. String pic = redemandlist.get(i).getPictureUrl();// 在存在多张图片的情况下,暂时先取第一张
  799. if (null != pic) {
  800. boolean hascomma = pic.contains(",");
  801. if (hascomma) {
  802. String[] picurl = pic.split(",");
  803. redemandlist.get(i).setPictureUrl(picurl[0]);
  804. }
  805. }
  806. };
  807. mv.setViewName("/portal/technologyTrading/demandOrder");
  808. mv.addObject("demand", demand);
  809. mv.addObject("reboutiquedemand", reboutiquedemand);
  810. mv.addObject("redemandlist", redemandlist);
  811. return mv;
  812. }
  813. @RequestMapping(value = "/portal/subscriberDetail", method = RequestMethod.GET)
  814. public ModelAndView subscriberDetail(HttpServletRequest request, ModelAndView modelview, String uid, Integer type) {
  815. ModelAndView mv = new ModelAndView();
  816. UserPartnerDetailBo rePartnerDetail = new UserPartnerDetailBo();
  817. /* 查询智者详细信息 */
  818. if (UserType.PERSONAL.getCode().equals(type)) {
  819. rePartnerDetail = userService.findUserPartnerDetail(uid);
  820. if (null != rePartnerDetail) {
  821. Integer province = rePartnerDetail.getProvince();
  822. if (null != province) {
  823. rePartnerDetail.setProvinceS(districtglossoryservice.selectNameById(province));
  824. }
  825. }
  826. } else {
  827. rePartnerDetail = (UserPartnerDetailBo) userService.findOrgPartnerDetail(uid);
  828. if (null != rePartnerDetail) {
  829. Integer province = rePartnerDetail.getProvince();
  830. if (null != province) {
  831. rePartnerDetail.setProvinceS(districtglossoryservice.selectNameById(province));
  832. }
  833. }
  834. }
  835. /* 查询该智者的相关成果信息 */
  836. List<AchievementPartnerListBo> partnerAchievementList = achievementService.findPartnerAchievementList(uid);
  837. for (int i = 0; i < partnerAchievementList.size(); i++) {
  838. Integer maturity = partnerAchievementList.get(i).getMaturity();
  839. if (null != maturity) {
  840. if (AchievementMaturity.RESEARCH.getCode().equals(maturity)) {
  841. partnerAchievementList.get(i).setMaturityS(AchievementMaturity.RESEARCH.getDesc());
  842. } else if (AchievementMaturity.SAMPLE.getCode().equals(maturity)) {
  843. partnerAchievementList.get(i).setMaturityS(AchievementMaturity.SAMPLE.getDesc());
  844. } else if (AchievementMaturity.PRIMARYTEST.getCode().equals(maturity)) {
  845. partnerAchievementList.get(i).setMaturityS(AchievementMaturity.PRIMARYTEST.getDesc());
  846. } else if (AchievementMaturity.INTERMEDIATETEST.getCode().equals(maturity)) {
  847. partnerAchievementList.get(i).setMaturityS(AchievementMaturity.INTERMEDIATETEST.getDesc());
  848. } else if (AchievementMaturity.MASSPRODUCTION.getCode().equals(maturity)) {
  849. partnerAchievementList.get(i).setMaturityS(AchievementMaturity.MASSPRODUCTION.getDesc());
  850. }
  851. }
  852. }
  853. /* 查询相关智者信息 */
  854. List<UserPartnerDetailBo> userPartner = userService.findUserPartner();
  855. List<UserPartnerDetailBo> reuserPartner = new ArrayList<UserPartnerDetailBo>();
  856. if (userPartner != null && userPartner.size() >= 6) {
  857. int index = new Random().nextInt(userPartner.size() - 5);
  858. reuserPartner.add(userPartner.get(index));
  859. reuserPartner.add(userPartner.get(index + 1));
  860. reuserPartner.add(userPartner.get(index + 2));
  861. reuserPartner.add(userPartner.get(index + 3));
  862. reuserPartner.add(userPartner.get(index + 4));
  863. } else {
  864. reuserPartner.addAll(userPartner);
  865. }
  866. for (int i = 0; i < reuserPartner.size(); i++) {
  867. String personalProfile = reuserPartner.get(i).getPersonalProfile();
  868. if (null != personalProfile && "" != personalProfile && personalProfile.length() > 40) {
  869. personalProfile = personalProfile.substring(0, 40) + "... ...";
  870. reuserPartner.get(i).setPersonalProfile(personalProfile);
  871. }
  872. }
  873. rePartnerDetail.setUid(uid);
  874. mv.setViewName("/user/subscriberDetail");
  875. mv.addObject("rePartnerDetail", rePartnerDetail);
  876. mv.addObject("reuserPartner", reuserPartner);
  877. partnerAchievementList.size();
  878. if (partnerAchievementList.size()<=0) {
  879. mv.addObject("showflg", 0);
  880. }else{
  881. mv.addObject("showflg", 1);
  882. };
  883. mv.addObject("uid", uid);
  884. return mv;
  885. }
  886. /**
  887. * 服务
  888. */
  889. @RequestMapping(value = "/portal/services", method = RequestMethod.GET)
  890. public ModelAndView services(HttpServletRequest request, ModelAndView modelview) {
  891. ModelAndView mv = new ModelAndView();
  892. mv.setViewName("");
  893. //获取首页轮播图
  894. mv.addObject("serviceImages",serviceImages.getImagers());
  895. return mv;
  896. }
  897. /**
  898. * 服务 权威咨询师
  899. */
  900. @RequestMapping(value = "/portal/services/consultant", method = RequestMethod.GET)
  901. public ModelAndView consultant(HttpServletRequest request, ModelAndView modelview) {
  902. ModelAndView mv = new ModelAndView();
  903. mv.setViewName("");
  904. return mv;
  905. }
  906. /**
  907. * 项目详情
  908. */
  909. @RequestMapping(value = "/portal/services/projectDetail", method = RequestMethod.GET)
  910. public ModelAndView projectDetail(HttpServletRequest request, ModelAndView modelview,String id,Integer pSize ) {
  911. ModelAndView mv = new ModelAndView();
  912. mv.setViewName("");
  913. //获取项目详情
  914. mv.addObject("project", businessProjectService.ProjectDetail(id));
  915. //获取3条推荐
  916. mv.addObject("recommend",businessProjectService.recommendProjectList(null,3));
  917. return mv;
  918. }
  919. /**
  920. * 咨询师详情
  921. */
  922. @RequestMapping(value = "/portal/services/consultantDetail", method = RequestMethod.GET)
  923. public ModelAndView consultantDetail(HttpServletRequest request, ModelAndView modelview,String id,Integer pSize ) {
  924. ModelAndView mv = new ModelAndView();
  925. mv.setViewName("");
  926. //获取咨询师详情
  927. mv.addObject("consultant", userIdentityService.consultantDetail( id));
  928. //获取咨询师列表(传入显示数)
  929. mv.addObject("recommend",userIdentityService.consultantList(null,pSize));
  930. return mv;
  931. }
  932. /**
  933. * 服务意向
  934. */
  935. @RequestMapping(value = "/portal/services/AddIntention", method = RequestMethod.GET)
  936. public ModelAndView AddIntention(HttpServletRequest request, ModelAndView modelview,String commodityId,Integer commodityType ) {
  937. ModelAndView mv = new ModelAndView();
  938. mv.setViewName("");
  939. //获取服务意向参数
  940. mv.addObject("Intention", orderService.selectCommodityDetail(commodityId, commodityType));
  941. return mv;
  942. }
  943. }