WebpageController.java 37 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914
  1. package com.goafanti.common.controller;
  2. import java.util.ArrayList;
  3. import java.util.Arrays;
  4. import java.util.Date;
  5. import java.util.List;
  6. import javax.annotation.Resource;
  7. import javax.servlet.http.HttpServletRequest;
  8. import org.springframework.stereotype.Controller;
  9. import org.springframework.ui.Model;
  10. import org.springframework.web.bind.annotation.RequestMapping;
  11. import org.springframework.web.bind.annotation.RequestMethod;
  12. import org.springframework.web.servlet.ModelAndView;
  13. import com.goafanti.achievement.service.AchievementInterestService;
  14. import com.goafanti.achievement.service.AchievementService;
  15. import com.goafanti.app.bo.consultantListBo;
  16. import com.goafanti.banners.enums.BannersType;
  17. import com.goafanti.banners.service.BannersService;
  18. import com.goafanti.business.bo.JtBusinessCategoryBo;
  19. import com.goafanti.business.bo.JtBusinessCategoryTree;
  20. import com.goafanti.business.bo.JtBusinessProjectResult;
  21. import com.goafanti.business.service.JtBusinessService;
  22. import com.goafanti.common.bo.PolicyEntity;
  23. import com.goafanti.common.bo.fieldGlossoryBo;
  24. import com.goafanti.common.constant.AFTConstants;
  25. import com.goafanti.common.constant.PageConstants;
  26. import com.goafanti.common.dao.ProjectInterestMapper;
  27. import com.goafanti.common.model.Achievement;
  28. import com.goafanti.common.model.AchievementInterest;
  29. import com.goafanti.common.model.Banners;
  30. import com.goafanti.common.model.Demand;
  31. import com.goafanti.common.model.DemandInterest;
  32. import com.goafanti.common.model.IndustryCategory;
  33. import com.goafanti.common.model.JtBusinessCategory;
  34. import com.goafanti.common.model.JtBusinessProject;
  35. import com.goafanti.common.model.News;
  36. import com.goafanti.common.model.Policy;
  37. import com.goafanti.common.model.ProjectInterest;
  38. import com.goafanti.common.model.User;
  39. import com.goafanti.common.utils.LimitLengthUtil;
  40. import com.goafanti.common.utils.StringUtils;
  41. import com.goafanti.core.shiro.token.TokenManager;
  42. import com.goafanti.demand.bo.DemandListBo;
  43. import com.goafanti.demand.service.DemandInterestService;
  44. import com.goafanti.demand.service.DemandService;
  45. import com.goafanti.user.bo.OrgIdentityBo;
  46. import com.goafanti.user.bo.UserIdentityBo;
  47. import com.goafanti.user.service.OrganizationIdentityService;
  48. import com.goafanti.user.service.UserIdentityService;
  49. import com.goafanti.user.service.UserService;
  50. import com.mysql.fabric.xmlrpc.base.Array;
  51. import com.goafanti.news.bo.NewsPortalList;
  52. import com.goafanti.news.bo.PolicyResult;
  53. import com.goafanti.news.enums.NewsType;
  54. import com.goafanti.news.service.NewsService;
  55. import com.goafanti.news.service.PolicyService;
  56. import com.goafanti.portal.bo.AchievementObject;
  57. @Controller
  58. public class WebpageController extends BaseController {
  59. @Resource
  60. private DemandService demandService;
  61. @Resource
  62. private AchievementService achievementService;
  63. @Resource
  64. private BannersService bannersService;
  65. @Resource
  66. private UserIdentityService userIdentityService;
  67. @Resource
  68. private OrganizationIdentityService organizationIdentityService;
  69. @Resource
  70. private NewsService newsService;
  71. @Resource
  72. private PolicyService policyService;
  73. @Resource
  74. private JtBusinessService jtBusinessService;
  75. @Resource
  76. private UserService userService;
  77. @Resource
  78. private AchievementInterestService achievementInterestService;
  79. @Resource
  80. private DemandInterestService demandInterestService;
  81. @Resource
  82. private ProjectInterestMapper projectInterestMapper;
  83. @RequestMapping(value = "/user/account/index", method = RequestMethod.GET)
  84. public ModelAndView index(HttpServletRequest request, ModelAndView modelview) {
  85. modelview.setViewName("/user/account/index");
  86. return modelview;
  87. }
  88. @RequestMapping(value = "/user/account/evaluateInfo", method = RequestMethod.GET)
  89. public ModelAndView evaluateInfo(HttpServletRequest request, ModelAndView modelview) {
  90. modelview.setViewName("/user/account/evaluateInfo");
  91. return modelview;
  92. }
  93. @RequestMapping(value = "/user/account/set", method = RequestMethod.GET)
  94. public ModelAndView userSet(HttpServletRequest request, ModelAndView modelview) {
  95. modelview.setViewName("/user/account/set");
  96. return modelview;
  97. }
  98. @RequestMapping(value = "/user/account/achievement", method = RequestMethod.GET)
  99. public ModelAndView userAchievement(HttpServletRequest request, ModelAndView modelview) {
  100. modelview.setViewName("/user/account/achievement");
  101. return modelview;
  102. }
  103. @RequestMapping(value = "/user/account/demand", method = RequestMethod.GET)
  104. public ModelAndView userDemand(HttpServletRequest request, ModelAndView modelview) {
  105. modelview.setViewName("/user/account/demand");
  106. return modelview;
  107. }
  108. @RequestMapping(value = "/user/login", method = RequestMethod.GET)
  109. public String userLogin(HttpServletRequest request, ModelAndView modelview) {
  110. return "/user/login";
  111. }
  112. @RequestMapping(value = "/user/logout", method = RequestMethod.GET)
  113. public String userLogout(HttpServletRequest request, ModelAndView modelview) {
  114. TokenManager.logout();
  115. // return userLogin(request, modelview);
  116. return "redirect:/portal/index";
  117. }
  118. @RequestMapping(value = "/user/signIn", method = RequestMethod.GET)
  119. public String userSignin(HttpServletRequest request, ModelAndView modelview) {
  120. return "/user/signIn";
  121. }
  122. @RequestMapping(value = "/user/msignIn", method = RequestMethod.GET)
  123. public String mSignin(HttpServletRequest request, ModelAndView modelview) {
  124. return "/user/msignIn";
  125. }
  126. @RequestMapping(value = "/user/certify", method = RequestMethod.GET)
  127. public ModelAndView userCertify(HttpServletRequest request, ModelAndView modelview) {
  128. modelview.setViewName("/user/certify");
  129. return modelview;
  130. }
  131. @RequestMapping(value = "/user/groupCertify", method = RequestMethod.GET)
  132. public ModelAndView userGroupCertify(HttpServletRequest request, ModelAndView modelview) {
  133. modelview.setViewName("/user/groupCertify");
  134. return modelview;
  135. }
  136. @RequestMapping(value = "/user/account/services", method = RequestMethod.GET)
  137. public ModelAndView userServices(HttpServletRequest request, ModelAndView modelview) {
  138. modelview.setViewName("/user/account/services");
  139. return modelview;
  140. }
  141. @RequestMapping(value = "/admin/login", method = RequestMethod.GET)
  142. public String adminLogin(HttpServletRequest request, ModelAndView modelview) {
  143. return "/admin/login";
  144. }
  145. @RequestMapping(value = "/admin/demand", method = RequestMethod.GET)
  146. public String adminDemand(HttpServletRequest request, ModelAndView modelview) {
  147. return "/admin/demand";
  148. }
  149. @RequestMapping(value = "/admin/achievement", method = RequestMethod.GET)
  150. public String adminAchievement(HttpServletRequest request, ModelAndView modelview) {
  151. return "/admin/achievement";
  152. }
  153. @RequestMapping(value = "/admin/set", method = RequestMethod.GET)
  154. public String adminSet(HttpServletRequest request, ModelAndView modelview) {
  155. return "/admin/set";
  156. }
  157. @RequestMapping(value = "/admin/userManage", method = RequestMethod.GET)
  158. public ModelAndView adminUserManage(HttpServletRequest request, ModelAndView modelview) {
  159. modelview.setViewName("/admin/userManage");
  160. return modelview;
  161. }
  162. @RequestMapping(value = "/admin/customer", method = RequestMethod.GET)
  163. public ModelAndView adminCustomer(HttpServletRequest request, ModelAndView modelview) {
  164. modelview.setViewName("/admin/customer");
  165. return modelview;
  166. }
  167. @RequestMapping(value = "/admin/servicesManage/technology", method = RequestMethod.GET)
  168. public ModelAndView adminServicesManageTechnology(HttpServletRequest request, ModelAndView modelview) {
  169. modelview.setViewName("/admin/servicesManage/technology");
  170. return modelview;
  171. }
  172. @RequestMapping(value = "/admin/servicesManage/patent", method = RequestMethod.GET)
  173. public ModelAndView adminServicesManagePatent(HttpServletRequest request, ModelAndView modelview) {
  174. modelview.setViewName("/admin/servicesManage/patent");
  175. return modelview;
  176. }
  177. @RequestMapping(value = "/admin/servicesManage/contract", method = RequestMethod.GET)
  178. public ModelAndView adminServicesManageContract(HttpServletRequest request, ModelAndView modelview) {
  179. modelview.setViewName("/admin/servicesManage/contract");
  180. return modelview;
  181. }
  182. @RequestMapping(value = "/admin/servicesManage/highTech", method = RequestMethod.GET)
  183. public ModelAndView adminServicesManageHighTech(HttpServletRequest request, ModelAndView modelview) {
  184. modelview.setViewName("/admin/servicesManage/highTech");
  185. return modelview;
  186. }
  187. @RequestMapping(value = "/admin/servicesManage/copyright", method = RequestMethod.GET)
  188. public ModelAndView adminServicesManageCopyright(HttpServletRequest request, ModelAndView modelview) {
  189. modelview.setViewName("/admin/servicesManage/copyright");
  190. return modelview;
  191. }
  192. @RequestMapping(value = "/admin/servicesManage/projectOrder", method = RequestMethod.GET)
  193. public ModelAndView adminServiceManageProjectOrder(HttpServletRequest request, ModelAndView modelview) {
  194. modelview.setViewName("/admin/servicesManage/projectOrder");
  195. return modelview;
  196. }
  197. @RequestMapping(value = "/admin/index", method = RequestMethod.GET)
  198. public ModelAndView adminHome(HttpServletRequest request, ModelAndView modelview) {
  199. modelview.setViewName("/admin/index");
  200. return modelview;
  201. }
  202. @RequestMapping(value = "/admin/idea", method = RequestMethod.GET)
  203. public ModelAndView adminIdea(HttpServletRequest request, ModelAndView modelview) {
  204. modelview.setViewName("/admin/idea");
  205. return modelview;
  206. }
  207. @RequestMapping(value = "/admin/userOrder", method = RequestMethod.GET)
  208. public ModelAndView adminUserOrder(HttpServletRequest request, ModelAndView modelview) {
  209. modelview.setViewName("/admin/userOrder");
  210. return modelview;
  211. }
  212. @RequestMapping(value = "/admin/order", method = RequestMethod.GET)
  213. public ModelAndView adminOrder(HttpServletRequest request, ModelAndView modelview) {
  214. modelview.setViewName("/admin/order");
  215. return modelview;
  216. }
  217. @RequestMapping(value = "/admin/operate", method = RequestMethod.GET)
  218. public ModelAndView adminOperate(HttpServletRequest request, ModelAndView modelview) {
  219. modelview.setViewName("/admin/operate");
  220. return modelview;
  221. }
  222. @RequestMapping(value = "/portal/membership", method = RequestMethod.GET)
  223. public ModelAndView membership(HttpServletRequest request, ModelAndView modelview) {
  224. modelview.setViewName("/portal/membership");
  225. return modelview;
  226. }
  227. @RequestMapping(value = "/portal/search/subscriberUser", method = RequestMethod.GET)
  228. public ModelAndView portalSearchSubscriberUser(HttpServletRequest request, ModelAndView modelview) {
  229. modelview.setViewName("/portal/search/subscriberUser");
  230. return modelview;
  231. }
  232. @RequestMapping(value = "/portal/search/subscriberOrg", method = RequestMethod.GET)
  233. public ModelAndView portalSearchSubscriberOrg(HttpServletRequest request, ModelAndView modelview) {
  234. modelview.setViewName("/portal/search/subscriberOrg");
  235. return modelview;
  236. }
  237. /**
  238. * 评估页
  239. */
  240. @RequestMapping(value = "/portal/evaluation/index", method = RequestMethod.GET)
  241. public ModelAndView evaluation(HttpServletRequest request, ModelAndView modelview) {
  242. modelview.setViewName("/portal/evaluation/index");
  243. handleBanners(modelview, BannersType.JI_SHU_PING_GU);
  244. return modelview;
  245. }
  246. /**
  247. * 服务汇
  248. */
  249. @SuppressWarnings("unchecked")
  250. @RequestMapping(value = "/portal/service/serviceIndex", method = RequestMethod.GET)
  251. public ModelAndView portalServiceServiceIndex(HttpServletRequest request, ModelAndView modelview) {
  252. modelview.setViewName("/portal/service/serviceIndex");
  253. //政策
  254. // List<PolicyEntity>policyEntities=achievementService.getIntellectualProperty(8);
  255. List<PolicyResult>policies=(List<PolicyResult>) policyService.searchPolicy("", 2, null, null, "web_tech_service_index", 1, 8).getList();
  256. modelview.addObject("policyList",policies);
  257. //新闻
  258. List<News>news=(List<News>) newsService.portalNewsList(5, 1, null, null, null, null,2).getList();
  259. modelview.addObject("newsList",news);
  260. //高企服务
  261. JtBusinessCategory gaoqi=jtBusinessService.getBusinessCategoryByLayerAndName(1, "高企服务");
  262. JtBusinessCategory gaoqi2=jtBusinessService.getBusinessCategoryByLayerAndName(2, "高企服务");
  263. if(gaoqi2!=null)
  264. {
  265. List<JtBusinessProject>gaoqiList=jtBusinessService.getBusinessProjectByCategoryId(gaoqi2.getId(),6,null);
  266. for(JtBusinessProject project:gaoqiList) {
  267. if(project.getMinImgUrl()!=null && project.getMinImgUrl().length()<=0)project.setMinImgUrl(null);
  268. }
  269. modelview.addObject("gaoqiList",gaoqiList);
  270. modelview.addObject("gqc1",gaoqi);}
  271. //知识产权贯标
  272. JtBusinessCategory zscqgb=jtBusinessService.getBusinessCategoryByLayerAndName(1, "知识产权");
  273. if(zscqgb!=null) {
  274. List<JtBusinessCategory> zscqgbCategories=jtBusinessService.getBusinessCategoryBySuperId(zscqgb.getId(), 4);
  275. int[]zscqsizes= {1,2,4,10};
  276. businessHelper(modelview, "zscqgb", zscqgbCategories, zscqsizes);
  277. modelview.addObject("zscqc1",zscqgb);}
  278. //企业认证
  279. JtBusinessCategory qiyerenzheng=jtBusinessService.getBusinessCategoryByLayerAndName(1, "企业认证");
  280. if(qiyerenzheng!=null) {
  281. List<JtBusinessCategory>qyrzCategories=jtBusinessService.getBusinessCategoryBySuperId(qiyerenzheng.getId(), 2);
  282. int []qyrzsizes= {8,8};
  283. businessHelper(modelview, "qyrz", qyrzCategories, qyrzsizes);
  284. modelview.addObject("qyrzc1",qiyerenzheng);}
  285. //管理体系
  286. JtBusinessCategory manageSys=jtBusinessService.getBusinessCategoryByLayerAndName(1, "管理体系");
  287. JtBusinessCategory manageSys2=jtBusinessService.getBusinessCategoryByLayerAndName(2, "管理体系");
  288. if(manageSys2!=null) {
  289. List<JtBusinessProject>manageSysPro=jtBusinessService.getBusinessProjectByCategoryId(manageSys2.getId(), 18,null);
  290. modelview.addObject("manageSystemList",manageSysPro);
  291. modelview.addObject("managerSysc1",manageSys);}
  292. //科技项目
  293. JtBusinessCategory scienceProject=jtBusinessService.getBusinessCategoryByLayerAndName(1, "科技项目");
  294. JtBusinessCategory scienceProject2=jtBusinessService.getBusinessCategoryByLayerAndName(2, "科技项目");
  295. if(scienceProject2!=null) {
  296. List<JtBusinessProject>scienceProjects=jtBusinessService.getBusinessProjectByCategoryId(scienceProject2.getId(), 12,AFTConstants.YES);
  297. modelview.addObject("scienceProjectList",scienceProjects);
  298. modelview.addObject("spc1",scienceProject);}
  299. //咨询师
  300. List<UserIdentityBo> userIdentityBos=userIdentityService.getExperts(8);
  301. // List<consultantListBo>userIdentityBos=userIdentityService.getConsultantList(8);
  302. modelview.addObject("consultants",userIdentityBos);
  303. return modelview;
  304. }
  305. /*
  306. * 服务详情
  307. *
  308. * @param id String
  309. * */
  310. @RequestMapping(value = "/portal/service/serviceDetail", method = RequestMethod.GET)
  311. public ModelAndView portalServiceServiceDetail(HttpServletRequest request, ModelAndView modelview,String id) {
  312. modelview.setViewName("/portal/service/serviceDetails");
  313. JtBusinessProject jtBusinessProject=jtBusinessService.getBusinessProjectDetail(id);
  314. if(jtBusinessProject!=null) {
  315. if(jtBusinessProject.getMaxImgUrl()!=null && jtBusinessProject.getMaxImgUrl().length()<=0)jtBusinessProject.setMaxImgUrl(null);
  316. }
  317. if(jtBusinessProject.getCreateTime()!=null && 7>=differentDaysByMillisecond(jtBusinessProject.getCreateTime(),new Date())) {
  318. modelview.addObject("newly",true);
  319. }
  320. else modelview.addObject("newly",false);
  321. String owner="平台管理员";
  322. if(jtBusinessProject.getOwnerId()!=null) {
  323. User user=userService.selectByPrimaryKey(jtBusinessProject.getOwnerId());
  324. if(user!=null && user.getIdentifyName()!=null) {
  325. owner=user.getIdentifyName();
  326. }
  327. }
  328. modelview.addObject("owner",owner);
  329. modelview.addObject("pj",jtBusinessProject);
  330. System.out.println(jtBusinessProject.toString());
  331. if(jtBusinessProject!=null) {
  332. JtBusinessCategoryTree tree=jtBusinessService.getCategoryTree(jtBusinessProject.getCategoryId());
  333. modelview.addObject("tree",tree);}
  334. JtBusinessCategory jtBusinessCategory=jtBusinessService.getCategoryById(jtBusinessProject.getCategoryId());
  335. if(jtBusinessCategory!=null && jtBusinessCategory.getModule()!=null)modelview.addObject("module",jtBusinessCategory.getModule());
  336. else modelview.addObject("module",0);
  337. //是否关注
  338. if(StringUtils.isNotBlank(TokenManager.getUserId())) {
  339. int projectInterest=projectInterestMapper.checkUidAndDid(id, TokenManager.getUserId());
  340. if(projectInterest>0)modelview.addObject("interested",true);
  341. }
  342. return modelview;
  343. }
  344. @RequestMapping(value="/portal/service/serviceList",method=RequestMethod.GET)
  345. public ModelAndView serviceList(HttpServletRequest request, ModelAndView modelview) {
  346. modelview.setViewName("/portal/service/serviceList");
  347. return modelview;
  348. }
  349. @RequestMapping(value="/portal/technologyTrading/demandList",method=RequestMethod.GET)
  350. public ModelAndView demandList(HttpServletRequest request, ModelAndView modelview) {
  351. String url =com.goafanti.common.utils.StringUtils.getDomainByHttpRequest(request);
  352. modelview.setViewName("/portal/technologyTrading/demandList");
  353. List<DemandListBo> boutiques=demandService.getHotDemand(3, url, "web_demand_list");
  354. modelview.addObject("boutiques",boutiques);
  355. return modelview;
  356. }
  357. @RequestMapping(value="/portal/technologyTrading/achievementList",method=RequestMethod.GET)
  358. public ModelAndView achievementList(HttpServletRequest request, ModelAndView modelview) {
  359. modelview.setViewName("/portal/technologyTrading/achievementList");
  360. List<AchievementObject>boutiques=achievementService.getBoutiquePatent(3);
  361. modelview.addObject("boutiques",boutiques);
  362. return modelview;
  363. }
  364. /**
  365. * 知识产权
  366. *
  367. * @param request
  368. * @param modelview
  369. * @return
  370. */
  371. @RequestMapping(value = "/portal/service/propertyRight", method = RequestMethod.GET)
  372. public ModelAndView propertyRight(HttpServletRequest request, ModelAndView modelview) {
  373. modelview.setViewName("/portal/service/propertyRight");
  374. return modelview;
  375. }
  376. /**
  377. * 高企认定
  378. *
  379. * @param request
  380. * @param modelview
  381. * @return
  382. */
  383. @RequestMapping(value = "/portal/service/highTechCognizance", method = RequestMethod.GET)
  384. public ModelAndView highTechCognizance(HttpServletRequest request, ModelAndView modelview) {
  385. modelview.setViewName("/portal/service/highTechCognizance");
  386. return modelview;
  387. }
  388. /**
  389. * 技术交易
  390. */
  391. @RequestMapping(value = "/portal/technologyTrading/index", method = RequestMethod.GET)
  392. public ModelAndView portalTechnologyTradingIndex(HttpServletRequest request, ModelAndView modelview) {
  393. modelview.setViewName("/portal/technologyTrading/index");
  394. handleBanners(modelview, BannersType.JI_SHU_JIAO_YI);
  395. List<NewsPortalList> newsPortalList = newsService.portalNewsPolicy();
  396. modelview.addObject("newsPortalList", newsPortalList);
  397. List<NewsPortalList> portalNewsQuestion = newsService.portalNewsQuestion();
  398. modelview.addObject("portalNewsQuestion", portalNewsQuestion);
  399. return modelview;
  400. }
  401. /**
  402. *
  403. * 智库咨询
  404. *
  405. * @param request
  406. * @param modelview
  407. * @return
  408. */
  409. @RequestMapping(value = "/portal/thinkTank/index", method = RequestMethod.GET)
  410. public ModelAndView thinkTank(HttpServletRequest request, ModelAndView modelview) {
  411. modelview.setViewName("/portal/thinkTank/index");
  412. return modelview;
  413. }
  414. /**
  415. * 政策列表
  416. *
  417. * @return
  418. */
  419. @SuppressWarnings("unchecked")
  420. @RequestMapping(value = "/portal/thinkTank/policyList", method = RequestMethod.GET)
  421. public ModelAndView policyList(ModelAndView modelview) {
  422. modelview.setViewName("/portal/thinkTank/policyList");
  423. List<NewsPortalList> newsList = (List<NewsPortalList>) newsService.portalNewsList(5, 1, null, null, null, null,2)
  424. .getList();
  425. modelview.addObject("newsList", newsList);
  426. return modelview;
  427. }
  428. /**
  429. * 会员介绍
  430. *
  431. * @param request
  432. * @param modelview
  433. * @return
  434. */
  435. @RequestMapping(value = "/portal/member")
  436. public ModelAndView member(HttpServletRequest request, ModelAndView modelview) {
  437. modelview.setViewName("/portal/member");
  438. return modelview;
  439. }
  440. /**
  441. * 技术评估
  442. *
  443. * @param request
  444. * @param modelview
  445. * @return
  446. */
  447. @RequestMapping(value = "/portal/technologyTrading/assessMent")
  448. public ModelAndView assessMent(HttpServletRequest request, ModelAndView modelview) {
  449. modelview.setViewName("/portal/technologyTrading/assessMent");
  450. modelview.addObject("zcfg", newsService.findIndexNewsList(0, NewsType.KJZX.getCode(), 4));
  451. return modelview;
  452. }
  453. /**
  454. * 关于我们
  455. *
  456. * @param request
  457. * @param modelview
  458. * @return
  459. */
  460. @RequestMapping(value = "/portal/aboutUs", method = RequestMethod.GET)
  461. public ModelAndView aboutUs(HttpServletRequest request, ModelAndView modelview) {
  462. modelview.setViewName("/portal/aboutUs");
  463. return modelview;
  464. }
  465. /**
  466. * 联系我们
  467. *
  468. * @param request
  469. * @param modelview
  470. * @return
  471. */
  472. @RequestMapping(value = "/portal/contactUs", method = RequestMethod.GET)
  473. public ModelAndView contactUs(HttpServletRequest request, ModelAndView modelview) {
  474. modelview.setViewName("/portal/contactUs");
  475. return modelview;
  476. }
  477. private void handleBanners(ModelAndView modelview, BannersType bannersType) {
  478. List<Banners> banners = bannersService.findPortalBanners(bannersType.getKey());
  479. if (!banners.isEmpty()) {
  480. modelview.addObject("banners", banners);
  481. }
  482. }
  483. /**
  484. * 服务-推荐
  485. *
  486. * @param request
  487. * @param modelview
  488. * @return
  489. */
  490. @RequestMapping(value = "/portal/service/recommended")
  491. public ModelAndView recommended(HttpServletRequest request, ModelAndView modelview) {
  492. modelview.setViewName("/portal/service/recommended");
  493. return modelview;
  494. }
  495. /*
  496. * 首页
  497. *
  498. * */
  499. @SuppressWarnings("unchecked")
  500. @RequestMapping(value = "/portal/index")
  501. public ModelAndView mainIndex(HttpServletRequest request, ModelAndView modelview) {
  502. String url =com.goafanti.common.utils.StringUtils.getDomainByHttpRequest(request);
  503. modelview.setViewName("/portal/index");
  504. List<JtBusinessCategoryBo> patentCategory=jtBusinessService.getCategoryBoList(1);
  505. modelview.addObject("patentCategory",patentCategory);
  506. List<JtBusinessProject> jtBusinessProjects=(List<JtBusinessProject>) jtBusinessService.getProjects(null, null, null, 5, 1, 1, 2, 0, 1,0,0,null).getList();
  507. for(JtBusinessProject project:jtBusinessProjects) {
  508. if(project.getMaxImgUrl()!=null && project.getMaxImgUrl().length()<=0)project.setMaxImgUrl(null);
  509. if(project.getMinImgUrl()!=null && project.getMinImgUrl().length()<=0)project.setMinImgUrl(null);
  510. }
  511. modelview.addObject("projects",jtBusinessProjects);
  512. List<PolicyResult>policies=(List<PolicyResult>) policyService.searchPolicy("", 2, null, null, "web_index", 1, 2).getList();
  513. modelview.addObject("policys",policies);
  514. List<News>newsList=(List<News>) newsService.listNews(0, null, null, null, null, null, 1, 1, 3, "2", null, "web_index").getList();
  515. modelview.addObject("news",newsList);
  516. //
  517. List<News> subscriptions=(List<News>) newsService.listNews(99, null, null, null, null, null, null, 1, 4, "2", null, "web_index").getList();
  518. modelview.addObject("subscription",subscriptions);
  519. if(subscriptions!=null && subscriptions.size()>0 && subscriptions.get(0).getSourceUrl()!=null && subscriptions.get(0).getSourceUrl().contains(".")) {
  520. modelview.addObject("videoUrl",subscriptions.get(0).getSourceUrl());
  521. }
  522. // List<AchievementObject> achievementObjects=achievementService.getHotAchievements(9, url, "web_index");
  523. // modelview.addObject("achievements",achievementObjects);
  524. //
  525. //
  526. //
  527. //
  528. // List<DemandListBo> demandListBos=demandService.getHotDemand(9, url, "web_index");
  529. // for(DemandListBo demandListBo:demandListBos) {
  530. // if(demandListBo.getPictureUrl()==null || !demandListBo.getPictureUrl().contains("."))demandListBo.setPictureUrl(null);
  531. // else demandListBo.setPictureUrl(demandListBo.getPictureUrl().split(",")[0]);
  532. // }
  533. // //专家
  534. // List<UserIdentityBo>aExperts=userIdentityService.getExperts(8);
  535. // for(UserIdentityBo u:aExperts) {
  536. // if(u.getHeadPortraitUrl()!=null && u.getHeadPortraitUrl().length()<=0) {
  537. // u.setHeadPortraitUrl(null);
  538. // }
  539. // }
  540. // modelview.addObject("experts",aExperts);
  541. // modelview.addObject("demands",demandListBos);
  542. return modelview;
  543. }
  544. /*
  545. * 技淘3.0-科技需求页
  546. * @param request
  547. * @param modelview
  548. * @return
  549. *
  550. * */
  551. //需求首页
  552. @RequestMapping(value = "/portal/technologyTrading/demand")
  553. public ModelAndView demand(HttpServletRequest request, ModelAndView modelview) {
  554. String showLocation="web_demand_main";
  555. String url =com.goafanti.common.utils.StringUtils.getDomainByHttpRequest(request);
  556. modelview.setViewName("/portal/technologyTrading/demand");
  557. //行业
  558. List<fieldGlossoryBo> industryList = userIdentityService.domainList();
  559. modelview.addObject("industryList", industryList);
  560. //最新需求
  561. List<DemandListBo> recentDemandList=demandService.recentDemand(5,url,showLocation);
  562. LimitLengthUtil.limiteDemandCompanyAndName(recentDemandList, 18, 18);
  563. modelview.addObject("recentDemandList",recentDemandList);
  564. //
  565. // //加急需求
  566. List<DemandListBo> urgentDemand=demandService.getUrgentDemand(5,url,showLocation);
  567. List<DemandListBo> urgentDemand2=urgentDemand.subList(0, Math.min(2, urgentDemand.size()));
  568. List<DemandListBo> urgentDemand3=urgentDemand.subList( Math.min(2, urgentDemand.size()), Math.min(5, urgentDemand.size()));
  569. System.out.print("u2:"+urgentDemand2.size()+" u3:"+urgentDemand3.size());
  570. LimitLengthUtil.limiteDemandLength(urgentDemand2,13,30);
  571. LimitLengthUtil.limiteDemandLength(urgentDemand3,13,33);
  572. modelview.addObject("urgentDemand2",urgentDemand2);
  573. modelview.addObject("urgentDemand3",urgentDemand3);
  574. //热点需求
  575. List<DemandListBo> hotDemand=demandService.getHotDemand(5,url,showLocation);
  576. List<DemandListBo> hotDemand2=hotDemand.subList(0, Math.min(2, hotDemand.size()));
  577. List<DemandListBo> hotDemand3=hotDemand.subList( Math.min(2, hotDemand.size()), Math.min(5, hotDemand.size()));
  578. System.out.print("u2:"+hotDemand2.size()+" u3:"+hotDemand3.size());
  579. LimitLengthUtil.limiteDemandLength(hotDemand2,13,30);
  580. LimitLengthUtil.limiteDemandLength(hotDemand3,13,33);
  581. modelview.addObject("hotDemand2",hotDemand2);
  582. modelview.addObject("hotDemand3",hotDemand3);
  583. //企业技术需求
  584. List<DemandListBo> eightMaxCompanyDemand=demandService.companyDemand(8,url,showLocation);
  585. for(DemandListBo demandListBo:eightMaxCompanyDemand) {
  586. if(demandListBo.getPictureUrl()==null || !demandListBo.getPictureUrl().contains("."))demandListBo.setPictureUrl(null);
  587. else demandListBo.setPictureUrl(demandListBo.getPictureUrl().split(",")[0]);
  588. }
  589. modelview.addObject("companyDemandList",eightMaxCompanyDemand);
  590. //地区产业需求 最多4个
  591. List<DemandListBo> fourMaxareaDemand=demandService.areaDemand(4,url,showLocation);
  592. for(DemandListBo demandListBo:fourMaxareaDemand) {
  593. if(demandListBo.getPictureUrl()==null || !demandListBo.getPictureUrl().contains("."))demandListBo.setPictureUrl(null);
  594. else demandListBo.setPictureUrl(demandListBo.getPictureUrl().split(",")[0]);
  595. }
  596. LimitLengthUtil.limiteDemandLength(fourMaxareaDemand,10,208);
  597. modelview.addObject("areaDemandList",fourMaxareaDemand);
  598. //产学研需求 最多9个
  599. List<DemandListBo> nightMaxProLearnStudyDemand=demandService.proLearnStudyDemand(9,url,showLocation);
  600. for(DemandListBo demandListBo:nightMaxProLearnStudyDemand) {
  601. if(demandListBo.getPictureUrl()==null || !demandListBo.getPictureUrl().contains("."))demandListBo.setPictureUrl(null);
  602. else demandListBo.setPictureUrl(demandListBo.getPictureUrl().split(",")[0]);
  603. }
  604. LimitLengthUtil.limiteDemandLength(nightMaxProLearnStudyDemand,10,18);
  605. LimitLengthUtil.limiteDemandCompanyAndName(nightMaxProLearnStudyDemand, 10, 18);
  606. modelview.addObject("proLearnStudyDemandList",nightMaxProLearnStudyDemand);
  607. //研产资金需求 最多4个
  608. List<DemandListBo> fourMaxFundDemand=demandService.getFundCrowdDemand(4,url,showLocation);
  609. for(DemandListBo demandListBo:fourMaxFundDemand) {
  610. if(demandListBo.getPictureUrl()==null || !demandListBo.getPictureUrl().contains("."))demandListBo.setPictureUrl(null);
  611. else demandListBo.setPictureUrl(demandListBo.getPictureUrl().split(",")[0]);
  612. }
  613. LimitLengthUtil.limiteDemandLength(fourMaxFundDemand,9,30);
  614. modelview.addObject("fundDemandList",fourMaxFundDemand);
  615. //技术人才需求
  616. List<DemandListBo> sixMaxPersonnelDemand=demandService.getPersonnelDemand(6,url,showLocation);
  617. // List <DemandListBo>fourMaxPersonnelDemand=personnelDemand.subList(0,Math.min(6, personnelDemand.size()));
  618. for(DemandListBo demandListBo:sixMaxPersonnelDemand) {
  619. if(demandListBo.getPictureUrl()==null || !demandListBo.getPictureUrl().contains("."))demandListBo.setPictureUrl(null);
  620. else demandListBo.setPictureUrl(demandListBo.getPictureUrl().split(",")[0]);
  621. }
  622. LimitLengthUtil.limiteDemandLength(sixMaxPersonnelDemand,7,30);
  623. modelview.addObject("personnelDemandList",sixMaxPersonnelDemand);
  624. return modelview;
  625. }
  626. //需求详情
  627. @RequestMapping(value = "/portal/technologyTrading/demandDetail")
  628. public ModelAndView DemandDetail(HttpServletRequest request, ModelAndView modelAndView,String id, Integer type) {
  629. String url=StringUtils.getDomainByHttpRequest(request);
  630. //详情
  631. DemandListBo demand=demandService.getDemandDetail(id, type);
  632. int countInterest=demandService.getInterestCount(id);
  633. demand.setCountInterest(countInterest+"");
  634. modelAndView.addObject("demand",demand);
  635. //精品需求
  636. List<DemandListBo>boutiqueDemandList=LimitLengthUtil.LimitListLengthRandomly(demandService.getHotDemand(10,url,"web_demand_list"),3,10);
  637. modelAndView.addObject("reboutiquedemand",boutiqueDemandList);
  638. //猜你喜欢
  639. List<DemandListBo>guessYouLikeList=LimitLengthUtil.LimitListLengthRandomly(demandService.recentDemand(10, url,"web_demand_list"), 4, 10);
  640. modelAndView.addObject("redemandlist",guessYouLikeList);
  641. //view
  642. modelAndView.setViewName("/portal/technologyTrading/demandDetail");
  643. //是否关注
  644. if(StringUtils.isNotBlank(TokenManager.getUserId())) {
  645. DemandInterest demandInterest=demandInterestService.selectDemandInterestByUidAndDemandId(TokenManager.getUserId(), id);
  646. if(demandInterest!=null)modelAndView.addObject("interested",true);
  647. }
  648. return modelAndView;
  649. }
  650. //成果首页
  651. @SuppressWarnings("unchecked")
  652. @RequestMapping(value = "/portal/technologyTrading/achievement", method = RequestMethod.GET)
  653. public ModelAndView portalSearchAchievement(HttpServletRequest request, ModelAndView modelview) {
  654. String showLocation="web_achievement_main";
  655. String url =com.goafanti.common.utils.StringUtils.getDomainByHttpRequest(request);
  656. modelview.setViewName("/portal/technologyTrading/achievement");
  657. //行业
  658. List<fieldGlossoryBo> industryList = userIdentityService.domainList();//行业类型 1级
  659. modelview.addObject("industryList", industryList);
  660. //最新成果
  661. List<AchievementObject>recentAchievements=achievementService.recentAchievements(5,url,showLocation);
  662. modelview.addObject("recentAchievements",recentAchievements);
  663. //热门关注
  664. List<AchievementObject> hotAchievements=achievementService.getHotAchievements(6,url,showLocation);
  665. modelview.addObject("hotAchievements",hotAchievements);
  666. //专利
  667. List<AchievementObject>patentAchievements=achievementService.getPatentList(9,url,showLocation);
  668. modelview.addObject("patents",patentAchievements);
  669. //实用技术
  670. List<AchievementObject>practicalTechnology=achievementService.getPracticalTechnologys(8,url,showLocation);
  671. modelview.addObject("practicalTechnology",practicalTechnology);
  672. // List<PolicyEntity>intellectualPropertyPolicyList=achievementService.getIntellectualProperty(5);
  673. List<PolicyResult> policies=(List<PolicyResult>) policyService.searchPolicy("", 2, null, null, "web_index", 1, 5).getList();
  674. modelview.addObject("policyList",policies);
  675. return modelview;
  676. }
  677. @RequestMapping(value = "/portal/technologyTrading/achievementDetail")
  678. public ModelAndView achievementDetail(HttpServletRequest request, ModelAndView modelAndView,String id, Integer type) {
  679. if(type==null) {type =1;}
  680. //详情
  681. AchievementObject achievementObject=achievementService.getAchievementDetail(id,type);
  682. modelAndView.addObject("achievementdetail",achievementObject);
  683. //精品
  684. List<AchievementObject>boutiques=LimitLengthUtil.LimitListLengthRandomly(achievementService.getBoutiquePatent(10),3,10);
  685. modelAndView.addObject("reboutiqueachievement",boutiques);
  686. //猜你喜欢
  687. List<AchievementObject> guess =LimitLengthUtil.LimitListLengthRandomly(achievementService.guessYouLike(10), 4, 10);
  688. modelAndView.addObject("guess",guess);
  689. //view
  690. modelAndView.setViewName("/portal/technologyTrading/achievementDetail");
  691. //是否关注
  692. if(StringUtils.isNotBlank(TokenManager.getUserId())){
  693. AchievementInterest achievementInterest=achievementInterestService.selectAchievementInterestByUidAndAchievementId(TokenManager.getUserId(), id);
  694. if(achievementInterest!=null)modelAndView.addObject("isInterested",true);
  695. }
  696. return modelAndView;
  697. }
  698. @RequestMapping(value = "/portal/service/patentList")
  699. public ModelAndView patentList(HttpServletRequest request, ModelAndView modelAndView,String id, Integer type) {
  700. modelAndView.setViewName("/portal/service/patentList");
  701. return modelAndView;
  702. }
  703. @SuppressWarnings("unchecked")
  704. @RequestMapping(value = "/portal/service/patent")
  705. public ModelAndView patentIndex(HttpServletRequest request, ModelAndView modelAndView,String id, Integer type) {
  706. List<JtBusinessCategoryBo> categoryBos=jtBusinessService.getCategoryBoList(1);
  707. modelAndView.addObject("categories",categoryBos);
  708. modelAndView.setViewName("/portal/service/patent");
  709. //最新发布
  710. List<JtBusinessProjectResult>recents=(List<JtBusinessProjectResult>) jtBusinessService.getProjects(null, null, null, 4, 1,
  711. 1, 2, 1, null, 0, 1,null).getList();
  712. modelAndView.addObject("recent",recents);
  713. //专利服务-商标服务-版权服务
  714. for(JtBusinessCategoryBo c:categoryBos) {
  715. if("专利服务".equals(c.getTopLevel())){
  716. List<JtBusinessProjectResult>res=(List<JtBusinessProjectResult>) jtBusinessService.getProjects(c.getTopLevelId(), null,
  717. null, 3, 1, 1, 2, 1, null, 0, 1,null).getList();
  718. modelAndView.addObject("patentService",res);
  719. modelAndView.addObject("patentTopId",c.getTopLevelId());
  720. }
  721. else if("商标服务".equals(c.getTopLevel())){
  722. List<JtBusinessProjectResult>res=(List<JtBusinessProjectResult>) jtBusinessService.getProjects(c.getTopLevelId(), null,
  723. null, 4, 1, 1, 2, 1, null, 0, 1,null).getList();
  724. modelAndView.addObject("branchService",res);
  725. modelAndView.addObject("branchTopId",c.getTopLevelId());
  726. }
  727. else if("版权服务".equals(c.getTopLevel())){
  728. List<JtBusinessProjectResult>res=(List<JtBusinessProjectResult>) jtBusinessService.getProjects(c.getTopLevelId(), null,
  729. null, 3, 1, 1, 2, 1, null, 0, 1,null).getList();
  730. modelAndView.addObject("copyrightService",res);
  731. modelAndView.addObject("copyrightTopId",c.getTopLevelId());
  732. }
  733. }
  734. //知产百科
  735. List<News> news=(List<News>) newsService.listNews(98, null, null, null, null, null, null, 1, 4, 2+"", null, "web_tech_service_index").getList();
  736. modelAndView.addObject("jtNews",news);
  737. return modelAndView;
  738. }
  739. /*
  740. * 交易
  741. * */
  742. @SuppressWarnings("unchecked")
  743. @RequestMapping(value = "/portal/technologyTrading/tradingIndex")
  744. public ModelAndView patentTrading(HttpServletRequest request, ModelAndView modelAndView) {
  745. String showLocation="web_achievement_main";
  746. String url =com.goafanti.common.utils.StringUtils.getDomainByHttpRequest(request);
  747. modelAndView.setViewName("/portal/technologyTrading/tradingIndex");
  748. //成果
  749. List<AchievementObject>achievementObjects=achievementService.getHotAchievements(4, url, showLocation);
  750. modelAndView.addObject("achievement",achievementObjects);
  751. //需求
  752. List<DemandListBo>demandListBos=demandService.getHotDemand(2, url,"web_demand_main");
  753. modelAndView.addObject("demand",demandListBos);
  754. //政策
  755. List<Policy> policies=(List<Policy>) policyService.searchPolicy(null, 2, null, null, "web_index", 1, 5).getList();
  756. modelAndView.addObject("policy",policies);
  757. //专家
  758. List<UserIdentityBo> userIdentityBos=userIdentityService.getExperts(3);
  759. modelAndView.addObject("expert",userIdentityBos);
  760. return modelAndView;
  761. }
  762. @SuppressWarnings("unchecked")
  763. @RequestMapping(value = "/portal/companyProfile")
  764. public ModelAndView companyProfile(HttpServletRequest request, ModelAndView modelAndView,String uid) {
  765. modelAndView.setViewName("/portal/companyProfile");
  766. OrgIdentityBo org=organizationIdentityService.selectOrgIdentityBoByUserId(uid);
  767. modelAndView.addObject("org",org);
  768. List<JtBusinessProjectResult>projectResults=(List<JtBusinessProjectResult>) jtBusinessService.getProjects(null, null, null, 4, 1, 0, 2, null, null, 0, 1,uid).getList();
  769. modelAndView.addObject("jtProjects",projectResults);
  770. String honor=org.getHonorPicture();
  771. if(honor!=null && honor.contains(".")) {
  772. List<String>honorPictures=Arrays.asList(honor);
  773. if(honorPictures.size()>0)modelAndView.addObject("honors",honorPictures);
  774. }
  775. return modelAndView;
  776. }
  777. private void businessHelper(ModelAndView modelAndView,String categoryName,List<JtBusinessCategory> jtBusinessCategories,int[] sizes) {
  778. for(int i=0;i<jtBusinessCategories.size();i++) {
  779. List<JtBusinessProject>projects=jtBusinessService.getBusinessProjectByCategoryId(jtBusinessCategories.get(i).getId(), sizes[i],null);
  780. modelAndView.addObject(categoryName+i,jtBusinessCategories.get(i));
  781. modelAndView.addObject(categoryName+"List"+i,projects);
  782. }
  783. }
  784. public static int differentDaysByMillisecond(Date date1,Date date2)
  785. {
  786. int days = (int) ((date2.getTime() - date1.getTime()) / (1000*3600*24));
  787. return days;
  788. }
  789. @RequestMapping(value = "/portal/technologyTrading/shopList")
  790. public ModelAndView shopList(HttpServletRequest request, ModelAndView modelAndView,String id, Integer type) {
  791. modelAndView.setViewName("/portal/technologyTrading/shopList");
  792. return modelAndView;
  793. }
  794. }