DataToolsController.java 74 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556
  1. package cn.ubitech.ttc.controller;
  2. import cn.ubitech.ttc.common.ImageSpiderCommon;
  3. import cn.ubitech.ttc.common.Util;
  4. import cn.ubitech.ttc.entity.*;
  5. import cn.ubitech.ttc.model.common.*;
  6. import cn.ubitech.ttc.model.datatools.dataentry.ConnectioninfoModel;
  7. import cn.ubitech.ttc.model.export.InterviewExportParam;
  8. import cn.ubitech.ttc.model.organization.OrganizationModel;
  9. import cn.ubitech.ttc.model.researchcost.CheckParam;
  10. import cn.ubitech.ttc.model.user.RoleModel;
  11. import cn.ubitech.ttc.model.user.RolePageModel;
  12. import cn.ubitech.ttc.service.impl.datatools.DataEntryServiceImpl;
  13. import cn.ubitech.ttc.service.impl.datatools.InterviewDataEntryServiceImpl;
  14. import cn.ubitech.ttc.service.impl.label.LabelRecordServiceImpl;
  15. import cn.ubitech.ttc.service.impl.message.HomePageMessageService;
  16. import cn.ubitech.ttc.service.impl.mybaits.*;
  17. import cn.ubitech.ttc.service.impl.resource.ResourceServiceImpl;
  18. import com.alibaba.fastjson.JSON;
  19. import io.swagger.annotations.Api;
  20. import io.swagger.annotations.ApiImplicitParam;
  21. import io.swagger.annotations.ApiImplicitParams;
  22. import io.swagger.annotations.ApiOperation;
  23. import org.apache.commons.io.IOUtils;
  24. import org.apache.commons.lang.StringUtils;
  25. import org.apache.poi.hssf.usermodel.HSSFWorkbook;
  26. import org.springframework.beans.factory.annotation.Autowired;
  27. import org.springframework.mock.web.MockMultipartFile;
  28. import org.springframework.web.bind.annotation.*;
  29. import org.springframework.web.multipart.MultipartFile;
  30. import javax.servlet.http.HttpServletResponse;
  31. import java.io.File;
  32. import java.io.FileInputStream;
  33. import java.io.FileOutputStream;
  34. import java.io.IOException;
  35. import java.util.ArrayList;
  36. import java.util.Date;
  37. import java.util.HashMap;
  38. import java.util.List;
  39. import java.util.stream.Collectors;
  40. /**
  41. * code is far away from bug with the animal protecting
  42. * ┏┓   ┏┓
  43. * ┏┛┻━━━┛┻┓
  44. * ┃       ┃
  45. * ┃   ━   ┃
  46. * ┃ ┳┛ ┗┳ ┃
  47. * ┃       ┃
  48. * ┃   ┻   ┃
  49. * ┃       ┃
  50. * ┗━┓   ┏━┛
  51. *   ┃   ┃神兽保佑
  52. *   ┃   ┃代码无BUG!
  53. *   ┃   ┗━━━┓
  54. *   ┃       ┣┓
  55. *   ┃       ┏┛
  56. *   ┗┓┓┏━┳┓┏┛
  57. *    ┃┫┫ ┃┫┫
  58. *    ┗┻┛ ┗┻┛
  59. *
  60. * @author chen.cong
  61. * @version 3.0
  62. * @Date: Create in 2018/5/31 15:28
  63. * @Modifyed By:
  64. * @Description: 数据录入
  65. */
  66. @RestController
  67. @RequestMapping("/data")
  68. @Api(description = "数据录入相关接口")
  69. public class DataToolsController {
  70. @Autowired
  71. private InterviewDataEntryServiceImpl interviewDataEntryService;
  72. @Autowired
  73. private OrganizationInfoServiceImpl organizationInfoServiceImpl;
  74. @Autowired
  75. private OrgStatsDataServiceImpl orgStatsDataService;
  76. @Autowired
  77. private DataEntryServiceImpl dataEntryServiceImpl;
  78. @Autowired
  79. private ResourceServiceImpl resourceServiceImpl;
  80. @Autowired
  81. private HomePageMessageService homePageMessageService;
  82. @Autowired
  83. private ImageSpiderCommon imageSpiderCommon;
  84. /**
  85. * 根据角色获取所有模版
  86. *
  87. * @param roleModel
  88. * @return
  89. */
  90. @RequestMapping(value = "/pageList", method = RequestMethod.POST)
  91. @ApiOperation(value = "获取模板", notes = "根据角色获取所有模版")
  92. @ApiImplicitParams({
  93. @ApiImplicitParam(name = "roleModel", value = "角色的model")
  94. })
  95. public ResultModel getRolePageList(@RequestBody RoleModel roleModel) {
  96. ResultModel resultModel = new ResultModel();
  97. try {
  98. resultModel = interviewDataEntryService.getRolePageList(roleModel, roleModel.getNode());
  99. } catch (Exception e) {
  100. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  101. resultModel.setData(e.toString());
  102. }
  103. return resultModel;
  104. }
  105. /**
  106. * 根据模版id获取所有模块
  107. *
  108. * @param rolePageModel
  109. * @return
  110. */
  111. @RequestMapping(value = "/pageSectionList", method = RequestMethod.POST)
  112. @ApiOperation(value = "获取模板", notes = "根据模版id获取所有模块")
  113. @ApiImplicitParams({
  114. @ApiImplicitParam(name = "rolePageModel", value = "角色的model")
  115. })
  116. public ResultModel getRolePageSectionList(@RequestBody RolePageModel rolePageModel) {
  117. ResultModel resultModel = new ResultModel();
  118. try {
  119. resultModel = interviewDataEntryService.getRolePageSectionList(rolePageModel.getId());
  120. } catch (Exception e) {
  121. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  122. resultModel.setData(e.toString());
  123. }
  124. return resultModel;
  125. }
  126. /**
  127. * 走访基本信息
  128. *
  129. * @param requestModel
  130. * @return
  131. */
  132. @RequestMapping(value = "/interview/orginfo", method = RequestMethod.POST)
  133. @ApiOperation(value = "更新机构", notes = "新建或者更新机构基本信息")
  134. @ApiImplicitParams({
  135. @ApiImplicitParam(name = "requestModel", value = "通用请求接口,data中为ConnectioninfoModel")
  136. })
  137. public ResultModel insertOrUpdateOrgInfo(@RequestBody RequestModel requestModel) {
  138. ResultModel resultModel = new ResultModel();
  139. try {
  140. OrganizationModel connectioninfoModel = Util.fromJson(Util.toJson(requestModel.getData()), OrganizationModel.class);
  141. resultModel.setData(interviewDataEntryService.update(connectioninfoModel, requestModel.getNode(), requestModel.getUserid()));
  142. } catch (Exception e) {
  143. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  144. resultModel.setData(e.toString());
  145. e.printStackTrace();
  146. }
  147. return resultModel;
  148. }
  149. /**
  150. * 走访基本信息
  151. *
  152. * @param requestModel
  153. * @return
  154. */
  155. @RequestMapping(value = "/interview/conninfo", method = RequestMethod.POST)
  156. @ApiOperation(value = "走访基本信息", notes = "新建或者更新走访基本信息")
  157. @ApiImplicitParams({
  158. @ApiImplicitParam(name = "requestModel", value = "通用请求接口,data中为ConnectioninfoModel")
  159. })
  160. public ResultModel insertOrUpdateConnectionInfo(@RequestBody RequestModel requestModel) {
  161. System.out.println("interview/conninfo 新建或者更新走访基本信息:" + JSON.toJSONString(requestModel));
  162. ResultModel resultModel = new ResultModel();
  163. try {
  164. ConnectioninfoModel connectioninfoModel = Util.fromJson(Util.toJson(requestModel.getData()), ConnectioninfoModel.class);
  165. String pagetitle = requestModel.getPagetitle();
  166. //通过ISINSERTFLAG来判断是新建还是编辑
  167. Util.judgeIsInsertFalg(connectioninfoModel);
  168. System.err.println("connectioninfoModelconnectioninfoModel:" + JSON.toJSONString(connectioninfoModel));
  169. resultModel.setData(interviewDataEntryService.insertOrUpdate(connectioninfoModel, requestModel.getNode(), requestModel.getPagecode(), pagetitle));
  170. //桐庐录入需求功能
  171. interviewDataEntryService.insertTLDemand(connectioninfoModel, requestModel);
  172. //插入资源库数据的机构相同时,便于前端给出提示
  173. if (Util.IS_HAS_SAME_ORG == true) {
  174. resultModel.setMessage("已有同名资源,请重新输入!");
  175. }
  176. //走访入录成功后,消息表中插入一条消息
  177. homePageMessageService.insertMessageToDB(requestModel, connectioninfoModel);
  178. } catch (Exception e) {
  179. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  180. resultModel.setData(e.toString());
  181. e.printStackTrace();
  182. } finally {
  183. //是否已有同名资源标志归位
  184. Util.IS_HAS_SAME_ORG = false;
  185. }
  186. return resultModel;
  187. }
  188. /**
  189. * 新增货修改走访申报项目接口
  190. *
  191. * @param requestModel
  192. * @return
  193. */
  194. @RequestMapping(value = "/interview/declareproject", method = RequestMethod.POST)
  195. @ApiOperation(value = "项目申报", notes = "新建或者更新项目申报信息")
  196. @ApiImplicitParams({
  197. @ApiImplicitParam(name = "requestModel", value = "通用请求接口,data中为CompanyDeclareprojectLk的list")
  198. })
  199. public ResultModel insertOrUpdateCompanyDeclareproject(@RequestBody RequestModel requestModel) {
  200. ResultModel resultModel = new ResultModel();
  201. try {
  202. List<CompanyDeclareprojectLk> requestList = Util.fromJson2List(Util.toJson(requestModel.getData()), CompanyDeclareprojectLk[].class);
  203. List<CompanyDeclareprojectLk> resultList = new ArrayList<CompanyDeclareprojectLk>();
  204. if (requestList != null && requestList.size() > 0) {
  205. requestList.forEach(l -> {
  206. CompanyDeclareprojectLk result = interviewDataEntryService.insertOrUpdate(l);
  207. resultList.add(result);
  208. });
  209. }
  210. //资源库新建资源后,往sys_message表中插入一条数据
  211. homePageMessageService.insertOtherResourceToDB(requestModel, requestList);
  212. resultModel.setData(resultList);
  213. } catch (Exception e) {
  214. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  215. resultModel.setData(e.toString());
  216. e.printStackTrace();
  217. }
  218. return resultModel;
  219. }
  220. /**
  221. * 新增或修改走访研发投入,销售收入、净利润、上缴税收,工程中心情况 接口
  222. *
  223. * @param requestModel
  224. * @return
  225. */
  226. @RequestMapping(value = "/interview/yearmultipleoptions", method = RequestMethod.POST)
  227. @ApiOperation(value = "研发投入、销售收入、净利润、上缴税收、工程中心",
  228. notes = "新建或者更新研发投入、销售收入、净利润、上缴税收、工程中心信息,统一为一个接口")
  229. @ApiImplicitParams({
  230. @ApiImplicitParam(name = "requestModel", value = "通用请求接口,data中为CompanyYearMultipleoptionsLk的list")
  231. })
  232. public ResultModel insertOrUpdateCompanyYearMultipleoptions(@RequestBody RequestModel requestModel) {
  233. ResultModel resultModel = new ResultModel();
  234. try {
  235. List<CompanyYearMultipleoptionsLk> requestList = Util.fromJson2List(Util.toJson(requestModel.getData()), CompanyYearMultipleoptionsLk[].class);
  236. List<CompanyYearMultipleoptionsLk> resultList = new ArrayList<CompanyYearMultipleoptionsLk>();
  237. if (requestList != null && requestList.size() > 0) {
  238. requestList.forEach(l -> {
  239. CompanyYearMultipleoptionsLk result = interviewDataEntryService.insertOrUpdate(l);
  240. resultList.add(result);
  241. });
  242. }
  243. //资源库新建资源后,往sys_message表中插入一条数据
  244. homePageMessageService.insertOtherResourceToDB(requestModel, requestList);
  245. resultModel.setData(resultList);
  246. } catch (Exception e) {
  247. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  248. resultModel.setData(e.toString());
  249. e.printStackTrace();
  250. }
  251. return resultModel;
  252. }
  253. /**
  254. * 新增或修改高端人才信息表
  255. *
  256. * @param requestModel
  257. * @return
  258. */
  259. @RequestMapping(value = "/interview/highleveltalents", method = RequestMethod.POST)
  260. @ApiOperation(value = "高端人才", notes = "新建或者更新高端人才信息")
  261. @ApiImplicitParams({
  262. @ApiImplicitParam(name = "requestModel", value = "通用请求接口,data中为CompanyHighleveltalentsLk的list")
  263. })
  264. public ResultModel insertOrUpdateCompanyHighleveltalents(@RequestBody RequestModel requestModel) {
  265. ResultModel resultModel = new ResultModel();
  266. List<CompanyHighleveltalentsLk> requestList = Util.fromJson2List(Util.toJson(requestModel.getData()), CompanyHighleveltalentsLk[].class);
  267. System.err.println("requestListrequestListrequestListrequestList:{}" + JSON.toJSONString(requestList));
  268. try {
  269. List<CompanyHighleveltalentsLk> resultList = new ArrayList<CompanyHighleveltalentsLk>();
  270. if (requestList != null && requestList.size() > 0) {
  271. requestList.forEach(l -> {
  272. CompanyHighleveltalentsLk result = interviewDataEntryService.insertOrUpdate(l, requestModel.getNode());
  273. resultList.add(result);
  274. });
  275. }
  276. resultModel.setData(resultList);
  277. //资源库新建资源后,往sys_message表中插入一条数据
  278. homePageMessageService.insertOtherResourceToDB(requestModel, requestList);
  279. } catch (Exception e) {
  280. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  281. resultModel.setData(e.toString());
  282. e.printStackTrace();
  283. }
  284. return resultModel;
  285. }
  286. /**
  287. * 新增或修改高端产品
  288. *
  289. * @param requestModel
  290. * @return
  291. */
  292. @RequestMapping(value = "/interview/hignendproduct", method = RequestMethod.POST)
  293. @ApiOperation(value = "高端产品", notes = "新建或者更新高端产品信息")
  294. @ApiImplicitParams({
  295. @ApiImplicitParam(name = "requestModel", value = "通用请求接口,data中为CompanyHignendproductLk的list")
  296. })
  297. public ResultModel insertOrUpdateCompanyHignendproduct(@RequestBody RequestModel requestModel) {
  298. ResultModel resultModel = new ResultModel();
  299. List<CompanyHignendproductLk> requestList = Util.fromJson2List(Util.toJson(requestModel.getData()), CompanyHignendproductLk[].class);
  300. try {
  301. List<CompanyHignendproductLk> resultList = new ArrayList<CompanyHignendproductLk>();
  302. if (requestList != null && requestList.size() > 0) {
  303. requestList.forEach(l -> {
  304. CompanyHignendproductLk result = interviewDataEntryService.insertOrUpdate(l);
  305. resultList.add(result);
  306. });
  307. }
  308. //资源库新建资源后,往sys_message表中插入一条数据
  309. homePageMessageService.insertOtherResourceToDB(requestModel, requestList);
  310. resultModel.setData(resultList);
  311. } catch (Exception e) {
  312. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  313. resultModel.setData(e.toString());
  314. e.printStackTrace();
  315. }
  316. return resultModel;
  317. }
  318. /**
  319. * 新增或修改产学研
  320. *
  321. * @param requestModel
  322. * @return
  323. */
  324. @RequestMapping(value = "/interview/iur", method = RequestMethod.POST)
  325. @ApiOperation(value = "产学研", notes = "新建或者更新产学研信息")
  326. @ApiImplicitParams({
  327. @ApiImplicitParam(name = "requestModel", value = "通用请求接口,data中为CompanyIurLk的list")
  328. })
  329. public ResultModel insertOrUpdateCompanyIur(@RequestBody RequestModel requestModel) {
  330. ResultModel resultModel = new ResultModel();
  331. List<CompanyIurLk> requestList = Util.fromJson2List(Util.toJson(requestModel.getData()), CompanyIurLk[].class);
  332. try {
  333. List<CompanyIurLk> resultList = new ArrayList<CompanyIurLk>();
  334. if (requestList != null && requestList.size() > 0) {
  335. requestList.forEach(l -> {
  336. CompanyIurLk result = interviewDataEntryService.insertOrUpdate(l);
  337. resultList.add(result);
  338. });
  339. }
  340. //资源库新建资源后,往sys_message表中插入一条数据
  341. homePageMessageService.insertOtherResourceToDB(requestModel, requestList);
  342. resultModel.setData(resultList);
  343. } catch (Exception e) {
  344. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  345. resultModel.setData(e.toString());
  346. e.printStackTrace();
  347. }
  348. return resultModel;
  349. }
  350. /**
  351. * 新增或修改公司产品
  352. *
  353. * @param requestModel
  354. * @return
  355. */
  356. @RequestMapping(value = "/interview/product", method = RequestMethod.POST)
  357. @ApiOperation(value = "产品", notes = "新建或者更新产品信息")
  358. @ApiImplicitParams({
  359. @ApiImplicitParam(name = "requestModel", value = "通用请求接口,data中为CompanyProductLk的list")
  360. })
  361. public ResultModel insertOrUpdateCompanyProduct(@RequestBody RequestModel requestModel) {
  362. ResultModel resultModel = new ResultModel();
  363. try {
  364. if (requestModel.getPagecode() == 1000027L && "桐庐需求录入".equals(requestModel.getPagetitle()) && "330122000".equals(requestModel.getNode())) {
  365. //桐庐需求录入功能添加产品
  366. interviewDataEntryService.insertTLProduct(requestModel);
  367. } else {
  368. List<CompanyProductLk> requestList = Util.fromJson2List(Util.toJson(requestModel.getData()), CompanyProductLk[].class);
  369. List<CompanyProductLk> resultList = new ArrayList<CompanyProductLk>();
  370. if (requestList != null && requestList.size() > 0) {
  371. requestList.forEach(l -> {
  372. CompanyProductLk result = interviewDataEntryService.insertOrUpdate(l);
  373. resultList.add(result);
  374. });
  375. }
  376. //资源库新建资源后,往sys_message表中插入一条数据
  377. homePageMessageService.insertOtherResourceToDB(requestModel, requestList);
  378. resultModel.setData(resultList);
  379. }
  380. } catch (Exception e) {
  381. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  382. resultModel.setData(e.toString());
  383. e.printStackTrace();
  384. }
  385. return resultModel;
  386. }
  387. /**
  388. * 新增或修改公司技术需求
  389. *
  390. * @param requestModel
  391. * @return
  392. */
  393. @RequestMapping(value = "/interview/techrequirement", method = RequestMethod.POST)
  394. @ApiOperation(value = "技术需求", notes = "新建或者更新技术需求信息")
  395. @ApiImplicitParams({
  396. @ApiImplicitParam(name = "requestModel", value = "通用请求接口,data中为CompanyTechrequirementLk的list")
  397. })
  398. public ResultModel insertOrUpdateCompanyTechrequirement(@RequestBody RequestModel requestModel) {
  399. ResultModel resultModel = new ResultModel();
  400. try {
  401. List<CompanyTechrequirementLk> requestList = Util.fromJson2List(Util.toJson(requestModel.getData()), CompanyTechrequirementLk[].class);
  402. List<CompanyTechrequirementLk> resultList = new ArrayList<CompanyTechrequirementLk>();
  403. if (requestList != null && requestList.size() > 0) {
  404. requestList.forEach(l -> {
  405. CompanyTechrequirementLk result = interviewDataEntryService.insertOrUpdate(l, requestModel.getNode());
  406. resultList.add(result);
  407. });
  408. }
  409. resultModel.setData(resultList);
  410. //资源库新建资源后,往sys_message表中插入一条数据
  411. homePageMessageService.insertOtherResourceToDB(requestModel, requestList);
  412. } catch (Exception e) {
  413. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  414. resultModel.setData(e.toString());
  415. e.printStackTrace();
  416. }
  417. return resultModel;
  418. }
  419. /**
  420. * 新增或修改专利信息表
  421. *
  422. * @param requestModel
  423. * @return
  424. */
  425. @RequestMapping(value = "/interview/intellectualproperty", method = RequestMethod.POST)
  426. @ApiOperation(value = "专利", notes = "新建或者更新专利信息")
  427. @ApiImplicitParams({
  428. @ApiImplicitParam(name = "requestModel", value = "通用请求接口,data中为CompanyIntellectualpropertyLk的list")
  429. })
  430. public ResultModel insertOrUpdateCompanyIntellectualproperty(@RequestBody RequestModel requestModel) {
  431. ResultModel resultModel = new ResultModel();
  432. List<CompanyIntellectualpropertyLk> requestList = Util.fromJson2List(Util.toJson(requestModel.getData()), CompanyIntellectualpropertyLk[].class);
  433. try {
  434. List<CompanyIntellectualpropertyLk> resultList = new ArrayList<CompanyIntellectualpropertyLk>();
  435. if (requestList != null && requestList.size() > 0) {
  436. requestList.forEach(l -> {
  437. CompanyIntellectualpropertyLk result = interviewDataEntryService.insertOrUpdate(l, requestModel.getNode());
  438. resultList.add(result);
  439. });
  440. }
  441. resultModel.setData(resultList);
  442. //资源库新建资源后,往sys_message表中插入一条数据
  443. homePageMessageService.insertOtherResourceToDB(requestModel, requestList);
  444. } catch (Exception e) {
  445. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  446. resultModel.setData(e.toString());
  447. e.printStackTrace();
  448. }
  449. return resultModel;
  450. }
  451. /**
  452. * 新增或修改企业对接信息表
  453. *
  454. * @param requestModel
  455. * @return
  456. */
  457. @RequestMapping(value = "/interview/saveOrupdateAbut", method = RequestMethod.POST)
  458. @ApiOperation(value = "对接信息", notes = "新建或者更新企业对接信息")
  459. @ApiImplicitParams({
  460. @ApiImplicitParam(name = "requestModel", value = "通用请求接口,data中为CompanyAbutLk")
  461. })
  462. public ResultModel saveOrupdateAbut(@RequestBody RequestModel requestModel) {
  463. ResultModel resultModel = new ResultModel();
  464. String tasktitle = "";
  465. if(requestModel.getData() instanceof HashMap){
  466. HashMap map = (HashMap)requestModel.getData();
  467. tasktitle = String.valueOf(map.get("tasktitle"));
  468. }
  469. String node = requestModel.getNode();
  470. CompanyAbutLk companyAbutLk = Util.fromJson(Util.toJson(requestModel.getData()), CompanyAbutLk.class);
  471. try {
  472. resultModel.setData(interviewDataEntryService.insertOrUpdate(companyAbutLk, tasktitle, node));
  473. //保存到对接入录标签表中
  474. // if (Util.ISINSERTFLAG) {//新增
  475. // labelRecordService.saveEntryLabel(requestModel.getNode(), companyAbutLk.getCreator(),
  476. // companyAbutLk.getCompanyid(), companyAbutLk.getLabelname(), companyAbutLk.getTitle(), true);
  477. // } else {//编辑
  478. // labelRecordService.saveEntryLabel(requestModel.getNode(), companyAbutLk.getCreator(),
  479. // companyAbutLk.getCompanyid(), companyAbutLk.getLabelname(), companyAbutLk.getTitle(), false);
  480. // }
  481. //任务对接录入后,往sys_message表中插入一条数据
  482. homePageMessageService.insertAbutToDB(requestModel, companyAbutLk);
  483. } catch (Exception e) {
  484. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  485. resultModel.setData(e.toString());
  486. e.printStackTrace();
  487. }
  488. return resultModel;
  489. }
  490. /**
  491. * 新增或修改专利信息表
  492. *
  493. * @param requestModel
  494. * @return
  495. */
  496. @RequestMapping(value = "/interview/staffinfo", method = RequestMethod.POST)
  497. @ApiOperation(value = "人力资源", notes = "新建或者更新人力资源信息")
  498. @ApiImplicitParams({
  499. @ApiImplicitParam(name = "requestModel", value = "通用请求接口,data中为CompanyStaffInfo的list")
  500. })
  501. public ResultModel insertOrUpdateCompanyStaffInfo(@RequestBody RequestModel requestModel) {
  502. ResultModel resultModel = new ResultModel();
  503. List<CompanyStaffInfo> requestList = Util.fromJson2List(Util.toJson(requestModel.getData()), CompanyStaffInfo[].class);
  504. try {
  505. List<CompanyStaffInfo> resultList = new ArrayList<CompanyStaffInfo>();
  506. if (requestList != null && requestList.size() > 0) {
  507. requestList.forEach(l -> {
  508. CompanyStaffInfo result = interviewDataEntryService.insertOrUpdate(l, requestModel.getUserid());
  509. resultList.add(result);
  510. });
  511. }
  512. resultModel.setData(resultList);
  513. //资源库新建资源后,往sys_message表中插入一条数据
  514. homePageMessageService.insertOtherResourceToDB(requestModel, requestList);
  515. } catch (Exception e) {
  516. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  517. resultModel.setData(e.toString());
  518. e.printStackTrace();
  519. }
  520. return resultModel;
  521. }
  522. /**
  523. * 新增或修改成果信息表
  524. *
  525. * @param requestModel
  526. * @return
  527. */
  528. @RequestMapping(value = "/interview/researchfinding", method = RequestMethod.POST)
  529. @ApiOperation(value = "成果", notes = "新建或者更新成果信息")
  530. @ApiImplicitParams({
  531. @ApiImplicitParam(name = "requestModel", value = "通用请求接口,data中为CompanyResearchfindingLk的list")
  532. })
  533. public ResultModel insertOrUpdateCompanyResearchfinding(@RequestBody RequestModel requestModel) {
  534. ResultModel resultModel = new ResultModel();
  535. try {
  536. List<CompanyResearchfindingLk> requestList = Util.fromJson2List(Util.toJson(requestModel.getData()), CompanyResearchfindingLk[].class);
  537. List<CompanyResearchfindingLk> resultList = new ArrayList<CompanyResearchfindingLk>();
  538. if (requestList != null && requestList.size() > 0) {
  539. requestList.forEach(l -> {
  540. CompanyResearchfindingLk result = interviewDataEntryService.insertOrUpdate(l, requestModel.getNode());
  541. resultList.add(result);
  542. });
  543. }
  544. resultModel.setData(resultList);
  545. //资源库新建资源后,往sys_message表中插入一条数据
  546. homePageMessageService.insertOtherResourceToDB(requestModel, requestList);
  547. } catch (Exception e) {
  548. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  549. resultModel.setData(e.toString());
  550. e.printStackTrace();
  551. }
  552. return resultModel;
  553. }
  554. /**
  555. * 新增或修改特色专业信息表
  556. *
  557. * @param requestModel
  558. * @return
  559. */
  560. @RequestMapping(value = "/interview/specialty", method = RequestMethod.POST)
  561. @ApiOperation(value = "特色专业", notes = "新建或者更新特色专业信息")
  562. @ApiImplicitParams({
  563. @ApiImplicitParam(name = "requestModel", value = "通用请求接口,data中为CompanySpecialtyLk的list")
  564. })
  565. public ResultModel insertOrUpdateCompanySpecialty(@RequestBody RequestModel requestModel) {
  566. ResultModel resultModel = new ResultModel();
  567. try {
  568. List<CompanySpecialtyLk> requestList = Util.fromJson2List(Util.toJson(requestModel.getData()), CompanySpecialtyLk[].class);
  569. List<CompanySpecialtyLk> resultList = new ArrayList<CompanySpecialtyLk>();
  570. if (requestList != null && requestList.size() > 0) {
  571. requestList.forEach(l -> {
  572. CompanySpecialtyLk result = interviewDataEntryService.insertOrUpdate(l, requestModel.getNode());
  573. resultList.add(result);
  574. });
  575. }
  576. resultModel.setData(resultList);
  577. //资源库新建资源后,往sys_message表中插入一条数据
  578. homePageMessageService.insertOtherResourceToDB(requestModel, requestList);
  579. } catch (Exception e) {
  580. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  581. resultModel.setData(e.toString());
  582. e.printStackTrace();
  583. }
  584. return resultModel;
  585. }
  586. /**
  587. * 新增或修改实验室信息表
  588. *
  589. * @param requestModel
  590. * @return
  591. */
  592. @RequestMapping(value = "/interview/lab", method = RequestMethod.POST)
  593. @ApiOperation(value = "实验室", notes = "新建或者更新实验室信息")
  594. @ApiImplicitParams({
  595. @ApiImplicitParam(name = "requestModel", value = "通用请求接口,data中为CompanyLabLk的list")
  596. })
  597. public ResultModel insertOrUpdateCompanyLab(@RequestBody RequestModel requestModel) {
  598. ResultModel resultModel = new ResultModel();
  599. try {
  600. List<CompanyLabLk> requestList = Util.fromJson2List(Util.toJson(requestModel.getData()), CompanyLabLk[].class);
  601. List<CompanyLabLk> resultList = new ArrayList<CompanyLabLk>();
  602. if (requestList != null && requestList.size() > 0) {
  603. requestList.forEach(l -> {
  604. CompanyLabLk result = interviewDataEntryService.insertOrUpdate(l, requestModel.getNode());
  605. resultList.add(result);
  606. });
  607. }
  608. resultModel.setData(resultList);
  609. //资源库新建资源后,往sys_message表中插入一条数据
  610. homePageMessageService.insertOtherResourceToDB(requestModel, requestList);
  611. } catch (Exception e) {
  612. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  613. resultModel.setData(e.toString());
  614. e.printStackTrace();
  615. }
  616. return resultModel;
  617. }
  618. /**
  619. * 新增货修改走访申报项目接口
  620. *
  621. * @param requestModel
  622. * @return
  623. */
  624. @RequestMapping(value = "/interview/project", method = RequestMethod.POST)
  625. @ApiOperation(value = "项目发布", notes = "新建或者更新项目发布信息")
  626. @ApiImplicitParams({
  627. @ApiImplicitParam(name = "requestModel", value = "通用请求接口,data中为CompanyProject的list")
  628. })
  629. public ResultModel insertOrUpdateCompanyProjectLk(@RequestBody RequestModel requestModel) {
  630. ResultModel resultModel = new ResultModel();
  631. try {
  632. List<CompanyProjectLk> requestList = Util.fromJson2List(Util.toJson(requestModel.getData()), CompanyProjectLk[].class);
  633. List<CompanyProjectLk> resultList = new ArrayList<CompanyProjectLk>();
  634. if (requestList != null && requestList.size() > 0) {
  635. requestList.forEach(l -> {
  636. CompanyProjectLk result = interviewDataEntryService.insertOrUpdate(l, requestModel.getNode());
  637. resultList.add(result);
  638. });
  639. }
  640. resultModel.setData(resultList);
  641. //资源库新建资源后,往sys_message表中插入一条数据
  642. homePageMessageService.insertOtherResourceToDB(requestModel, requestList);
  643. } catch (Exception e) {
  644. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  645. resultModel.setData(e.toString());
  646. e.printStackTrace();
  647. }
  648. return resultModel;
  649. }
  650. /**
  651. * 新增货修改走访申报项目接口
  652. *
  653. * @param requestModel
  654. * @return
  655. */
  656. @RequestMapping(value = "/interview/abutment", method = RequestMethod.POST)
  657. @ApiOperation(value = "对接进度", notes = "新建或者更新项目发布信息")
  658. @ApiImplicitParams({
  659. @ApiImplicitParam(name = "requestModel", value = "通用请求接口,data中为CompanyAbutmentStatus的list")
  660. })
  661. public ResultModel insertOrUpdateCompanyAbutmentStatus(@RequestBody RequestModel requestModel) {
  662. ResultModel resultModel = new ResultModel();
  663. try {
  664. List<CompanyAbutmentStatus> requestList = Util.fromJson2List(Util.toJson(requestModel.getData()), CompanyAbutmentStatus[].class);
  665. List<CompanyAbutmentStatus> resultList = new ArrayList<CompanyAbutmentStatus>();
  666. if (requestList != null && requestList.size() > 0) {
  667. requestList.forEach(l -> {
  668. CompanyAbutmentStatus result = interviewDataEntryService.insertOrUpdate(l, requestModel.getNode());
  669. resultList.add(result);
  670. });
  671. }
  672. resultModel.setData(resultList);
  673. //资源库新建资源后,往sys_message表中插入一条数据
  674. homePageMessageService.insertOtherResourceToDB(requestModel, requestList);
  675. } catch (Exception e) {
  676. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  677. resultModel.setData(e.toString());
  678. e.printStackTrace();
  679. }
  680. return resultModel;
  681. }
  682. /**
  683. * 我的走访列表(分页)
  684. *
  685. * @param userid 用户id
  686. * @param funid 所属功能:1走访、2录入等
  687. * @return
  688. */
  689. @RequestMapping(value = "/interview/myinfolist/{keyword}/{userid}/{pagenum}/{funid}/{node}", method = RequestMethod.GET)
  690. @ApiOperation(value = "我的走访、录入", notes = "分页获取我的走访和录入")
  691. @ApiImplicitParams({
  692. @ApiImplicitParam(name = "keyword", paramType = "path", dataType = "String", value = "关键词"),
  693. @ApiImplicitParam(name = "userid", paramType = "path", dataType = "long", value = "用户id"),
  694. @ApiImplicitParam(name = "pagenum", paramType = "path", dataType = "int", value = "页码,默认从1开始"),
  695. @ApiImplicitParam(name = "funid", paramType = "path", dataType = "int", value = "所属功能:1走访、2录入"),
  696. @ApiImplicitParam(name = "node", paramType = "path", dataType = "String", value = "节点")
  697. })
  698. public ResultModel getMyInterviewList(@PathVariable String keyword, @PathVariable long userid, @PathVariable int pagenum, @PathVariable int funid, @PathVariable String node) {
  699. ResultModel resultModel = new ResultModel();
  700. try {
  701. PageModel pageModel = new PageModel();
  702. pageModel.setStartIndex(pagenum);
  703. pageModel.setCurrentPage(pagenum);
  704. // pageModel.setPageSize(Constant.PAGE_SIZE);
  705. resultModel = interviewDataEntryService.getMyConnectioninfoList(pageModel, userid, keyword.trim(), funid,node);
  706. } catch (Exception e) {
  707. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  708. resultModel.setData(e.toString());
  709. e.printStackTrace();
  710. }
  711. return resultModel;
  712. }
  713. /**
  714. * 我的走访列表
  715. *
  716. * @param userid 用户id
  717. * @param funid 所属功能:1走访、2录入等
  718. * @return
  719. */
  720. @RequestMapping(value = "/interview/myinfolist/all/{userid}/{funid}/{node}", method = RequestMethod.GET)
  721. @ApiOperation(value = "我的走访、录入", notes = "获取全部我的走访和录入")
  722. @ApiImplicitParams({
  723. @ApiImplicitParam(name = "userid", paramType = "path", dataType = "long", value = "用户id"),
  724. @ApiImplicitParam(name = "funid", paramType = "path", dataType = "int", value = "所属功能:1走访、2录入"),
  725. @ApiImplicitParam(name = "node", paramType = "path", dataType = "String", value = "节点")
  726. })
  727. public ResultModel getMyInterviewInfoList(@PathVariable long userid, @PathVariable int funid, @PathVariable String node) {
  728. System.out.println("我的走访:userid:" + userid + ",funid:" + funid + ",node:" + node);
  729. ResultModel resultModel = new ResultModel();
  730. try {
  731. // PageModel pageModel = new PageModel();
  732. // pageModel.setStartIndex(pagenum);
  733. // pageModel.setCurrentPage(pagenum);
  734. // pageModel.setPageSize(Constant.PAGE_SIZE);
  735. resultModel = interviewDataEntryService.getMyInterviewInfoList(userid, funid, node);
  736. } catch (Exception e) {
  737. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  738. resultModel.setData(e.toString());
  739. e.printStackTrace();
  740. }
  741. return resultModel;
  742. }
  743. /**
  744. * 云走访列表(列表模式)
  745. *
  746. * @param userid 用户id
  747. * @param keyword 搜索关键词
  748. * @param pagenum 页码
  749. * @param funid 所属功能:1走访、2录入等
  750. * @return
  751. */
  752. @Deprecated
  753. @RequestMapping(value = {"/interview/allinfolist/{keyword}/{userid}/{pagenum}/{funid}",
  754. "/interview/allinfolist/{keyword}/{userid}/{pagenum}/{funid}/{node}"}, method = RequestMethod.GET)
  755. @ApiOperation(value = "云走访列表(列表模式)", notes = "通过关键词、模板分页查询云走访列表")
  756. @ApiImplicitParams({
  757. @ApiImplicitParam(name = "keyword", paramType = "path", dataType = "String", value = "关键词"),
  758. @ApiImplicitParam(name = "userid", paramType = "path", dataType = "long", value = "用户id"),
  759. @ApiImplicitParam(name = "pagenum", paramType = "path", dataType = "int", value = "页码,默认从1开始"),
  760. @ApiImplicitParam(name = "funid", paramType = "path", dataType = "int", value = "所属功能:1走访、2录入"),
  761. @ApiImplicitParam(name = "node", paramType = "path", dataType = "String", value = "所属节点号", defaultValue = "000000000")
  762. })
  763. public ResultModel getAllInterviewList(@PathVariable String keyword, @PathVariable long userid, @PathVariable int pagenum, @PathVariable int funid,
  764. @PathVariable(required = false) String node) {
  765. ResultModel resultModel = new ResultModel();
  766. try {
  767. PageModel pageModel = new PageModel();
  768. pageModel.setStartIndex(pagenum);
  769. pageModel.setCurrentPage(pagenum);
  770. pageModel.setPageSize(Constant.PAGE_SIZE);
  771. resultModel = interviewDataEntryService.getAllConnectioninfoList(pageModel, userid, keyword.trim(), funid, node);
  772. } catch (Exception e) {
  773. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  774. resultModel.setData(e.toString());
  775. e.printStackTrace();
  776. }
  777. return resultModel;
  778. }
  779. /**
  780. * 云走访列表(列表模式)
  781. *
  782. * @param userid 用户id
  783. * @param keyword 搜索关键词
  784. * @param pagenum 页码
  785. * @param funid 所属功能:1走访、2录入等
  786. * @return
  787. */
  788. @RequestMapping(value = {"/interview/infolistforall/{keyword}/{userid}/{pagenum}/{funid}",
  789. "/interview/infolistforall/{keyword}/{userid}/{pagenum}/{funid}/{node}"}, method = RequestMethod.GET)
  790. @ApiOperation(value = "云走访列表(列表模式)", notes = "通过关键词、模板分页查询云走访列表")
  791. @ApiImplicitParams({
  792. @ApiImplicitParam(name = "keyword", paramType = "path", dataType = "String", value = "关键词"),
  793. @ApiImplicitParam(name = "userid", paramType = "path", dataType = "long", value = "用户id"),
  794. @ApiImplicitParam(name = "pagenum", paramType = "path", dataType = "int", value = "页码,默认从1开始"),
  795. @ApiImplicitParam(name = "funid", paramType = "path", dataType = "int", value = "所属功能:1走访、2录入"),
  796. @ApiImplicitParam(name = "node", paramType = "path", dataType = "String", value = "所属节点号", defaultValue = "000000000")
  797. })
  798. public ResultModel getAllViewInterviewList(@PathVariable String keyword, @PathVariable long userid, @PathVariable int pagenum, @PathVariable int funid,
  799. @PathVariable(required = false) String node) {
  800. ResultModel resultModel = new ResultModel();
  801. try {
  802. PageModel pageModel = new PageModel();
  803. pageModel.setStartIndex(pagenum);
  804. pageModel.setCurrentPage(pagenum);
  805. // pageModel.setPageSize(Constant.PAGE_SIZE);
  806. resultModel = interviewDataEntryService.getAllViewConnectioninfoList(pageModel, userid, keyword.trim(), funid, node);
  807. } catch (Exception e) {
  808. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  809. resultModel.setData(e.toString());
  810. e.printStackTrace();
  811. }
  812. return resultModel;
  813. }
  814. /**
  815. * 历史走访信息
  816. *
  817. * @param userid 用户id
  818. * @param keyword 搜索关键词
  819. * @param pagenum 页码
  820. * @return
  821. */
  822. @RequestMapping(value = {"/interview/historyinfolist/{keyword}/{userid}/{orgid}/{pagenum}/{funid}",
  823. "/interview/historyinfolist/{keyword}/{userid}/{orgid}/{pagenum}/{funid}/{node}"}, method = RequestMethod.GET)
  824. @ApiOperation(value = "历史走访信息", notes = "通过关键词、模板分页查询历史走访列表")
  825. @ApiImplicitParams({
  826. @ApiImplicitParam(name = "keyword", paramType = "path", dataType = "String", value = "关键词"),
  827. @ApiImplicitParam(name = "userid", paramType = "path", dataType = "long", value = "用户id"),
  828. @ApiImplicitParam(name = "oid", paramType = "path", dataType = "long", value = "机构的id"),
  829. @ApiImplicitParam(name = "pagenum", paramType = "path", dataType = "int", value = "页码,默认从1开始"),
  830. @ApiImplicitParam(name = "funid", paramType = "path", dataType = "int", value = "所属功能:1走访、2录入"),
  831. @ApiImplicitParam(name = "node", paramType = "path", dataType = "String", value = "所属节点号", defaultValue = "000000000")
  832. })
  833. public ResultModel getHistoryInterviewList(@PathVariable String keyword, @PathVariable long userid, @PathVariable long orgid,
  834. @PathVariable int pagenum, @PathVariable int funid,
  835. @PathVariable(required = false) String node) {
  836. ResultModel resultModel = new ResultModel();
  837. try {
  838. PageModel pageModel = new PageModel();
  839. pageModel.setStartIndex(pagenum);
  840. pageModel.setCurrentPage(pagenum);
  841. pageModel.setPageSize(Constant.PAGE_SIZE);
  842. resultModel = interviewDataEntryService.getHistoryConnectioninfoList(pageModel, userid, keyword.trim(), orgid, funid, node);
  843. } catch (Exception e) {
  844. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  845. resultModel.setData(e.toString());
  846. e.printStackTrace();
  847. }
  848. return resultModel;
  849. }
  850. /**
  851. * 通过数据录入id查询录入的所有信息
  852. *
  853. * @param connid 履历id
  854. * @param userid 用户id
  855. * @return
  856. */
  857. @RequestMapping(value = "/interview/conndetail/{connid}/{userid}/{node}/{pagecode}/{innertype}", method = RequestMethod.GET)
  858. @ApiOperation(value = "走访详情", notes = "通过走访id查询走访详情")
  859. @ApiImplicitParams({
  860. @ApiImplicitParam(name = "connid", paramType = "path", dataType = "long", value = "走访id"),
  861. @ApiImplicitParam(name = "userid", paramType = "path", dataType = "long", value = "用户id"),
  862. @ApiImplicitParam(name = "node", paramType = "path", dataType = "String", value = "节点号"),
  863. @ApiImplicitParam(name = "pagecode", paramType = "path", dataType = "int", value = "页面编号"),
  864. @ApiImplicitParam(name = "innertype", paramType = "path", dataType = "int", value = "内部类型(通常用于单个表有多个属性)")
  865. })
  866. public ResultModel getConnectioninfoDetailByConnid(@PathVariable long connid, @PathVariable Long userid,
  867. @PathVariable String node, @PathVariable Integer pagecode, @PathVariable Integer innertype) {
  868. ResultModel resultModel = new ResultModel();
  869. try {
  870. resultModel.setData(interviewDataEntryService.getConnectioninfoDetail(connid, userid, node, pagecode, innertype));
  871. // //详情页显示自定义标签
  872. // resultModel.setOtherObj(labelRecordService.userSettingLabelList(node, connid));
  873. } catch (Exception e) {
  874. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  875. resultModel.setData(e.toString());
  876. e.printStackTrace();
  877. }
  878. return resultModel;
  879. }
  880. /**
  881. * @param connid
  882. * @param userid
  883. * @param node
  884. * @param pagecode
  885. * @param innertype
  886. * @return
  887. */
  888. @RequestMapping(value = "/interviewOtherDetail/conndetail/{connid}/{userid}/{node}/{pagecode}/{innertype}", method = RequestMethod.GET)
  889. @ApiOperation(value = "走访详情附属信息", notes = "通过走访id查询走访详情附属信息")
  890. @ApiImplicitParams({
  891. @ApiImplicitParam(name = "connid", paramType = "path", dataType = "long", value = "走访id"),
  892. @ApiImplicitParam(name = "userid", paramType = "path", dataType = "long", value = "用户id"),
  893. @ApiImplicitParam(name = "node", paramType = "path", dataType = "String", value = "节点号"),
  894. @ApiImplicitParam(name = "pagecode", paramType = "path", dataType = "int", value = "页面编号"),
  895. @ApiImplicitParam(name = "innertype", paramType = "path", dataType = "int", value = "内部类型(通常用于单个表有多个属性)")
  896. })
  897. public ResultModel getConnectioninfoAllDetail(@PathVariable long connid, @PathVariable Long userid,
  898. @PathVariable String node, @PathVariable Integer pagecode, @PathVariable Integer innertype) {
  899. ResultModel resultModel = new ResultModel();
  900. try {
  901. resultModel.setData(interviewDataEntryService.getConnectioninfoAllDetail(connid, userid, node, pagecode, innertype));
  902. } catch (Exception e) {
  903. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  904. resultModel.setData(e.toString());
  905. e.printStackTrace();
  906. }
  907. return resultModel;
  908. }
  909. /**
  910. * 根据orgid获取对应的机构信息
  911. *
  912. * @param orgid 机构id
  913. * @return
  914. * @author yun.jia
  915. * @version 1.0, 2018年6月29日
  916. */
  917. @RequestMapping(value = "/org/id/{orgid}/{userid}/{node}/{pagecode}/{innertype}", method = RequestMethod.GET)
  918. @ApiOperation(value = "机构信息", notes = "通过走访id查询走访详情")
  919. @ApiImplicitParams({
  920. @ApiImplicitParam(name = "orgid", paramType = "path", dataType = "long", value = "机构id"),
  921. @ApiImplicitParam(name = "userid", paramType = "path", dataType = "long", value = "用户id"),
  922. @ApiImplicitParam(name = "node", paramType = "path", dataType = "String", value = "节点号"),
  923. @ApiImplicitParam(name = "pagecode", paramType = "path", dataType = "int", value = "页面编号"),
  924. @ApiImplicitParam(name = "innertype", paramType = "path", dataType = "int", value = "内部类型(通常用于单个表有多个属性)")
  925. })
  926. public ResultModel getOrganizationModelByOrgid(@PathVariable Long orgid, @PathVariable long userid, @PathVariable String node,
  927. @PathVariable Integer pagecode, @PathVariable Integer innertype) {
  928. ResultModel resultModel = new ResultModel();
  929. try {
  930. resultModel.setData(organizationInfoServiceImpl.getOrganizationModelByOrgid(orgid, userid, node, pagecode, innertype));
  931. } catch (Exception e) {
  932. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  933. resultModel.setData(e.toString());
  934. e.printStackTrace();
  935. }
  936. return resultModel;
  937. }
  938. /**
  939. * 根据orgname获取对应的机构信息
  940. *
  941. * @param orgname
  942. * @param userid
  943. * @param pagenum
  944. * @param node
  945. * @param pagecode
  946. * @param innertype
  947. * @param orgTypeSign
  948. * @return
  949. */
  950. @RequestMapping(value = "/org/name/{orgname}/{userid}/{pagenum}/{node}/{pagecode}/{innertype}/{orgTypeSign}", method = RequestMethod.GET)
  951. @ApiOperation(value = "机构联想", notes = "分页获取联想的机构,用于走访、录入时调取机构的信息")
  952. @ApiImplicitParams({
  953. @ApiImplicitParam(name = "orgname", paramType = "path", dataType = "String", value = "机构名称"),
  954. @ApiImplicitParam(name = "userid", paramType = "path", dataType = "long", value = "用户id"),
  955. @ApiImplicitParam(name = "pagenum", paramType = "path", dataType = "int", value = "页码,默认从1开始"),
  956. @ApiImplicitParam(name = "node", paramType = "path", dataType = "String", value = "节点号"),
  957. @ApiImplicitParam(name = "pagecode", paramType = "path", dataType = "int", value = "页面编号"),
  958. @ApiImplicitParam(name = "innertype", paramType = "path", dataType = "int", value = "内部类型(通常用于单个表有多个属性)"),
  959. @ApiImplicitParam(name = "orgTypeSign", paramType = "path", dataType = "String", value = "挂靠机构,为1时即查找挂靠机构")
  960. })
  961. public ResultModel getOrganizationModelByOrgname(@PathVariable String orgname, @PathVariable long userid, @PathVariable int pagenum,
  962. @PathVariable String node,
  963. @PathVariable Integer pagecode, @PathVariable Integer innertype,
  964. @PathVariable String orgTypeSign) {
  965. ResultModel resultModel = new ResultModel();
  966. try {
  967. resultModel.setData(organizationInfoServiceImpl.getSignOrgOrOrganizationMode(orgname, userid, pagenum, node, 0, innertype, orgTypeSign));
  968. } catch (Exception e) {
  969. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  970. resultModel.setData(e.toString());
  971. e.printStackTrace();
  972. }
  973. return resultModel;
  974. }
  975. /**
  976. * 根据orgname获取对应的机构信息
  977. *
  978. * @param oid
  979. * @param userid
  980. * @param node
  981. * @param pagecode
  982. * @param innertype
  983. * @return
  984. */
  985. @RequestMapping(value = "/org/staffinfo/{oid}/{userid}/{node}/{pagecode}/{innertype}", method = RequestMethod.GET)
  986. @ApiOperation(value = "人力资源联想", notes = "通过机构id获取人力资源id")
  987. @ApiImplicitParams({
  988. @ApiImplicitParam(name = "oid", paramType = "path", dataType = "String", value = "机构id"),
  989. @ApiImplicitParam(name = "userid", paramType = "path", dataType = "String", value = "用户")
  990. })
  991. public ResultModel getCompanyStaffInfoByOid(@PathVariable long oid, @PathVariable long userid,
  992. @PathVariable String node, @PathVariable Integer pagecode, @PathVariable Integer innertype) {
  993. ResultModel resultModel = new ResultModel();
  994. try {
  995. resultModel.setData(interviewDataEntryService.getCompanyStaffInfoByOid(oid, userid, node, 0, innertype));
  996. } catch (Exception e) {
  997. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  998. resultModel.setData(e.toString());
  999. e.printStackTrace();
  1000. }
  1001. return resultModel;
  1002. }
  1003. /**
  1004. * 根据Integer datatype, String datatimeyear, String datatimemonth, String orgid获取对应的机构报表详情
  1005. *
  1006. * @param orgid
  1007. * @param datatype
  1008. * @param datatimeyear
  1009. * @param datatimemonth
  1010. * @return
  1011. */
  1012. @RequestMapping(value = "/orgstats/query/{orgid}/{datatype}/{datatimeyear}/{datatimemonth}", method = RequestMethod.GET)
  1013. @ApiOperation(value = "报表数据查询", notes = "通过机构id、时间进行查询报表的详细数据")
  1014. @ApiImplicitParams({
  1015. @ApiImplicitParam(name = "orgid", paramType = "path", dataType = "long", value = "机构id,如:806"),
  1016. @ApiImplicitParam(name = "datatype", paramType = "path", dataType = "Integer", value = "数据类型,0总量 1增量,如:0"),
  1017. @ApiImplicitParam(name = "datatimeyear", paramType = "path", dataType = "String", value = "年份,如:2018"),
  1018. @ApiImplicitParam(name = "datatimemonth", paramType = "path", dataType = "String", value = "月,如:1-6月"),
  1019. })
  1020. public ResultModel getOrgstatsDatalist(@PathVariable Long orgid, @PathVariable Integer datatype, @PathVariable String datatimeyear, @PathVariable String datatimemonth) {
  1021. ResultModel resultModel = new ResultModel();
  1022. try {
  1023. resultModel = orgStatsDataService.getOrgstatsDatalist(datatype, datatimeyear, datatimemonth, orgid);
  1024. } catch (Exception e) {
  1025. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  1026. resultModel.setData(e.toString());
  1027. e.printStackTrace();
  1028. }
  1029. return resultModel;
  1030. }
  1031. @RequestMapping(value = "/orgstats/save", method = RequestMethod.POST)
  1032. @ApiOperation(value = "报表数据新增或编辑", notes = "报表数据新增或编辑")
  1033. @ApiImplicitParams({
  1034. @ApiImplicitParam(name = "requestModel", value = "requestModel")
  1035. })
  1036. public ResultModel saveOrgstatsDatalist(@RequestBody RequestModel requestModel) {
  1037. ResultModel resultModel = new ResultModel();
  1038. try {
  1039. List<OrgStatsData> requestList = Util.fromJson2List(Util.toJson(requestModel.getData()), OrgStatsData[].class);
  1040. resultModel = orgStatsDataService.saveOrgstatsDatalist(requestList, requestModel.getUserid());
  1041. } catch (Exception e) {
  1042. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  1043. resultModel.setData(e.toString());
  1044. e.printStackTrace();
  1045. }
  1046. return resultModel;
  1047. }
  1048. @RequestMapping(value = "/orgstats/orglist/{nodeid}/{key}/{pagenum}/{pagesize}", method = RequestMethod.GET)
  1049. @ApiOperation(value = "报表企业列表查询", notes = "通过节点id查询节点下企业列表")
  1050. @ApiImplicitParams({
  1051. @ApiImplicitParam(name = "nodeid", paramType = "path", dataType = "String", value = "所在节点id,如:320117001"),
  1052. @ApiImplicitParam(name = "key", paramType = "path", dataType = "String", value = "关键词,可以为空"),
  1053. @ApiImplicitParam(name = "pagenum", paramType = "path", dataType = "int", value = "页码,默认从1开始"),
  1054. @ApiImplicitParam(name = "pagesize", paramType = "path", dataType = "int", value = "每页显示,默认15"),
  1055. })
  1056. public ResultModel getOrgstatsOrglist(@PathVariable String nodeid, @PathVariable int pagenum, @PathVariable int pagesize, @PathVariable String key) {
  1057. ResultModel resultModel = new ResultModel();
  1058. try {
  1059. resultModel = orgStatsDataService.getOrgstatsCompanylist(nodeid, key.trim(), pagenum, pagesize);
  1060. } catch (Exception e) {
  1061. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  1062. resultModel.setData(e.toString());
  1063. e.printStackTrace();
  1064. }
  1065. return resultModel;
  1066. }
  1067. @RequestMapping(value = "/orgstats/count/{nodeid}/{datatype}", method = RequestMethod.GET)
  1068. @ApiOperation(value = "节点下报表总数", notes = "通过节点id查询节点下报表总数")
  1069. @ApiImplicitParams({
  1070. @ApiImplicitParam(name = "nodeid", paramType = "path", dataType = "String", value = "所在节点id,如:320117001"),
  1071. @ApiImplicitParam(name = "datatype", paramType = "path", dataType = "Integer", value = "数据类型,0总量 1增量,如:0")
  1072. })
  1073. public ResultModel getOrgstatsDataCount(@PathVariable String nodeid, @PathVariable Integer datatype) {
  1074. ResultModel resultModel = new ResultModel();
  1075. try {
  1076. resultModel = orgStatsDataService.getstatsCount(nodeid, datatype);
  1077. } catch (Exception e) {
  1078. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  1079. resultModel.setData(e.toString());
  1080. e.printStackTrace();
  1081. }
  1082. return resultModel;
  1083. }
  1084. /**
  1085. * 获取资源库的走访履历
  1086. *
  1087. * @param resid
  1088. * @param node
  1089. * @param pagecode
  1090. * @param userid
  1091. * @return
  1092. */
  1093. @RequestMapping(value = "/resconn/{resid}/{node}/{pagecode}/{userid}", method = RequestMethod.GET)
  1094. @ApiOperation(value = "资源库下的走访履历", notes = "通过资源id查询走访履历")
  1095. @ApiImplicitParams({
  1096. @ApiImplicitParam(name = "resid", paramType = "path", dataType = "Long", value = "资源id"),
  1097. @ApiImplicitParam(name = "node", paramType = "path", dataType = "String", value = "所在节点id,如:320117001"),
  1098. @ApiImplicitParam(name = "pagecode", paramType = "path", dataType = "Integer", value = "页面编号,如是资源库下的履历则传入资源库对应的pagecode"),
  1099. @ApiImplicitParam(name = "userid", paramType = "path", dataType = "Long", value = "用户id")
  1100. })
  1101. public ResultModel getResConnHistory(@PathVariable Long resid, @PathVariable String node, @PathVariable Integer pagecode,
  1102. @PathVariable Long userid) {
  1103. ResultModel resultModel = new ResultModel();
  1104. try {
  1105. List<ConnectioninfoModel> connectioninfoModelList = dataEntryServiceImpl.getDataentryDetail(resid, userid);
  1106. connectioninfoModelList = connectioninfoModelList.stream().filter(l -> resourceServiceImpl.
  1107. judgeResourceConnectHistory(node, pagecode, l.getTemplettype())).collect(Collectors.toList());
  1108. resultModel.setData(connectioninfoModelList);
  1109. } catch (Exception e) {
  1110. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  1111. resultModel.setData(e.toString());
  1112. e.printStackTrace();
  1113. }
  1114. return resultModel;
  1115. }
  1116. /**
  1117. * 通过企业名判断该企业是否已存在
  1118. *
  1119. * @param orgName
  1120. * @return
  1121. */
  1122. @RequestMapping(value = "/org/exist/{orgName}/{node}", method = RequestMethod.GET)
  1123. @ApiOperation(value = "通过企业名判断该企业是否已存在", notes = "通过企业名判断该企业是否已存在")
  1124. @ApiImplicitParams({
  1125. @ApiImplicitParam(name = "orgName", paramType = "path", dataType = "String", value = "企业名称"),
  1126. @ApiImplicitParam(name = "node", paramType = "path", dataType = "String", value = "节点信息")
  1127. })
  1128. public ResultModel getResConnHistory(@PathVariable String orgName, @PathVariable String node) {
  1129. ResultModel resultModel = new ResultModel();
  1130. try {
  1131. dataEntryServiceImpl.judgeOrgIsExist(resultModel, orgName, node);
  1132. } catch (Exception e) {
  1133. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  1134. resultModel.setData(e.toString());
  1135. e.printStackTrace();
  1136. }
  1137. return resultModel;
  1138. }
  1139. /**
  1140. * 通过企业名判断该企业是否已存在于资源库
  1141. * @param orgName
  1142. * @return
  1143. */
  1144. @RequestMapping(value = "/resource/org/exist/{orgName}/{node}", method = RequestMethod.GET)
  1145. @ApiOperation(value = "通过企业名判断该企业是否已存在于资源库", notes = "通过企业名判断该企业是否已存在于资源库")
  1146. @ApiImplicitParams({
  1147. @ApiImplicitParam(name = "orgName", paramType = "path", dataType = "String", value = "企业名称"),
  1148. @ApiImplicitParam(name = "node", paramType = "path", dataType = "String", value = "节点信息")
  1149. })
  1150. public ResultModel judgeOrgExistResource(@PathVariable String orgName, @PathVariable String node) {
  1151. ResultModel resultModel = new ResultModel();
  1152. try {
  1153. dataEntryServiceImpl.judgeOrgExistResource(resultModel, orgName, node);
  1154. } catch (Exception e) {
  1155. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  1156. resultModel.setData(e.toString());
  1157. e.printStackTrace();
  1158. }
  1159. return resultModel;
  1160. }
  1161. @RequestMapping(value = "/technical/contract/get/{contractid}", method = RequestMethod.GET)
  1162. @ApiOperation(value = "获取签订技术合同时的上传的图片", notes = "获取签订技术合同时的上传的图片")
  1163. @ApiImplicitParams({
  1164. @ApiImplicitParam(name = "contractid", paramType = "path", dataType = "long", value = "技术合同id")
  1165. })
  1166. public ResultModel judgeOrgExistResource(@PathVariable Long contractid) {
  1167. ResultModel resultModel = new ResultModel();
  1168. try {
  1169. List<SystemPicture> systemPictureList = dataEntryServiceImpl.getContractPhoto(contractid);
  1170. resultModel.setData(systemPictureList);
  1171. } catch (Exception e) {
  1172. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  1173. resultModel.setData(e.toString());
  1174. e.printStackTrace();
  1175. }
  1176. return resultModel;
  1177. }
  1178. @RequestMapping(value = "/saveUnion", method = RequestMethod.POST)
  1179. @ApiOperation(value = "联盟编辑", notes = "联盟编辑")
  1180. @ApiImplicitParams({
  1181. @ApiImplicitParam(name = "requestModel", value = "requestModel,requestModel中data为联盟库数据")
  1182. })
  1183. public ResultModel saveUnion(@RequestBody RequestModel requestModel) {
  1184. ResultModel resultModel = new ResultModel();
  1185. try {
  1186. dataEntryServiceImpl.saveUnion(requestModel);
  1187. resultModel.setData("");
  1188. } catch (Exception e) {
  1189. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  1190. resultModel.setData(e.toString());
  1191. e.printStackTrace();
  1192. }
  1193. return resultModel;
  1194. }
  1195. @RequestMapping(value = "/conn/id/get/{title}", method = RequestMethod.GET)
  1196. @ApiOperation(value = "由名称查询对接id", notes = "由名称查询对接id")
  1197. @ApiImplicitParams({
  1198. @ApiImplicitParam(name = "title", paramType = "path", dataType = "String", value = "对接名称")
  1199. })
  1200. public ResultModel getConnId(@PathVariable String title) {
  1201. ResultModel resultModel = new ResultModel();
  1202. try {
  1203. resultModel.setData(dataEntryServiceImpl.getConnId(title));
  1204. } catch (Exception e) {
  1205. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  1206. resultModel.setData(e.toString());
  1207. e.printStackTrace();
  1208. }
  1209. return resultModel;
  1210. }
  1211. @RequestMapping(value = "/monthReport/list/{oid}/{year}/{month}/{node}", method = RequestMethod.GET)
  1212. @ApiOperation(value = "查询企业的月报表信息", notes = "查询企业的月报表信息")
  1213. @ApiImplicitParams({
  1214. @ApiImplicitParam(name = "oid", paramType = "path", dataType = "long", value = "企业id"),
  1215. @ApiImplicitParam(name = "year", paramType = "path", dataType = "String", value = "年份"),
  1216. @ApiImplicitParam(name = "month", paramType = "path", dataType = "String", value = "月份"),
  1217. @ApiImplicitParam(name = "node", paramType = "path", dataType = "long", value = "节点")
  1218. })
  1219. public ResultModel getMonthReportList(@PathVariable long oid, @PathVariable String year, @PathVariable String month, @PathVariable long node) {
  1220. ResultModel resultModel = new ResultModel();
  1221. try {
  1222. resultModel.setData(dataEntryServiceImpl.getMonthReportList(oid, year, month, node));
  1223. } catch (Exception e) {
  1224. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  1225. resultModel.setData(e.toString());
  1226. e.printStackTrace();
  1227. }
  1228. return resultModel;
  1229. }
  1230. @RequestMapping(value = "/Report/month/list/{oid}/{year}/{node}", method = RequestMethod.GET)
  1231. @ApiOperation(value = "查询企业的月报表信息的月份", notes = "查询企业的月报表信息的月份")
  1232. @ApiImplicitParams({
  1233. @ApiImplicitParam(name = "oid", paramType = "path", dataType = "long", value = "企业id"),
  1234. @ApiImplicitParam(name = "year", paramType = "path", dataType = "String", value = "年份"),
  1235. @ApiImplicitParam(name = "node", paramType = "path", dataType = "long", value = "节点")
  1236. })
  1237. public ResultModel getReportMonthList(@PathVariable long oid, @PathVariable String year, @PathVariable long node) {
  1238. ResultModel resultModel = new ResultModel();
  1239. try {
  1240. resultModel.setData(dataEntryServiceImpl.getReportMonthList(oid, year, node));
  1241. } catch (Exception e) {
  1242. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  1243. resultModel.setData(e.toString());
  1244. e.printStackTrace();
  1245. }
  1246. return resultModel;
  1247. }
  1248. @RequestMapping(value = "/Report/year/list/{oid}/{node}/{flag}",method = RequestMethod.GET)
  1249. @ApiOperation(value = "查询企业的月报表信息的年份", notes = "查询企业的 月报表信息的年份")
  1250. @ApiImplicitParams({
  1251. @ApiImplicitParam(name = "oid", paramType = "path", dataType = "long", value = "企业id"),
  1252. @ApiImplicitParam(name = "node", paramType = "path", dataType = "long", value = "节点"),
  1253. @ApiImplicitParam(name = "flag", paramType = "path", dataType = "boolean", value = "标志是否与走访录入有关(true,有关)")
  1254. })
  1255. public ResultModel getReportYearList(@PathVariable long oid, @PathVariable long node, @PathVariable boolean flag) {
  1256. ResultModel resultModel = new ResultModel();
  1257. try {
  1258. resultModel.setData(dataEntryServiceImpl.getReportYearList(oid, node, flag));
  1259. } catch (Exception e) {
  1260. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  1261. resultModel.setData(e.toString());
  1262. e.printStackTrace();
  1263. }
  1264. return resultModel;
  1265. }
  1266. @RequestMapping(value = "/cooperate/list/{node}",method = RequestMethod.GET)
  1267. @ApiOperation(value = "获取产学研补助审核列表", notes = "获取产学研补助审核列表")
  1268. @ApiImplicitParams({ @ApiImplicitParam(name = "node", paramType = "path", dataType = "long", value = "节点") })
  1269. public ResultModel getCooperateList(@PathVariable long node) {
  1270. ResultModel resultModel = new ResultModel();
  1271. try {
  1272. List<String> hasAuths = new ArrayList<>();
  1273. hasAuths.add("2865");
  1274. hasAuths.add("2880");
  1275. hasAuths.add("3040");
  1276. resultModel.setOtherObj(hasAuths);
  1277. resultModel.setData(dataEntryServiceImpl.getCooperateList(node));
  1278. } catch (Exception e) {
  1279. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  1280. resultModel.setData(e.toString());
  1281. e.printStackTrace();
  1282. }
  1283. return resultModel;
  1284. }
  1285. @RequestMapping(value = "/techContract/contractid/get/{technicalcontractid}",method = RequestMethod.GET)
  1286. @ApiOperation(value = "通过technicalcontractid获取TechnicalContract数据", notes = "通过technicalcontractid获取TechnicalContract数据")
  1287. @ApiImplicitParams({ @ApiImplicitParam(name = "int", paramType = "path", dataType = "String", value = "技术合同id") })
  1288. public ResultModel getTechContractByContractid(@PathVariable int technicalcontractid) {
  1289. ResultModel resultModel = new ResultModel();
  1290. try {
  1291. resultModel.setData(dataEntryServiceImpl.getTechContractByContractid(technicalcontractid));
  1292. } catch (Exception e) {
  1293. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  1294. resultModel.setData(e.toString());
  1295. e.printStackTrace();
  1296. }
  1297. return resultModel;
  1298. }
  1299. @RequestMapping(value = "/cooperation/report/export", method = RequestMethod.POST)
  1300. @ApiOperation(value = "产学研补助导出功能", notes = "产学研补助导出功能")
  1301. @ApiImplicitParams({
  1302. })
  1303. public ResultModel exportCooperationReport(@RequestBody RequestModel requestModel, HttpServletResponse response) {
  1304. ResultModel resultModel = new ResultModel();
  1305. try {
  1306. HSSFWorkbook workbook = dataEntryServiceImpl.exportCooperationReport(requestModel);
  1307. //文档输出
  1308. Long time = new Date().getTime();
  1309. String path = time + ".xls";
  1310. FileOutputStream out = new FileOutputStream(path);
  1311. workbook.write(out);
  1312. out.close();
  1313. SystemPicture systemPicture = new SystemPicture();
  1314. try {
  1315. File file = new File(path);
  1316. FileInputStream input = new FileInputStream(new File(path));
  1317. MultipartFile multipartFile = new MockMultipartFile("file", file.getName(), "text/plain", IOUtils.toByteArray(input));
  1318. if (!multipartFile.isEmpty()) {
  1319. String[] filename = imageSpiderCommon.getImagePath(multipartFile).toString().split(",");
  1320. systemPicture.setPhotoName(filename[0].trim());//缩略图
  1321. systemPicture.setOriginalName(filename[1].trim());//放大图
  1322. systemPicture.setSourceName(filename[2].trim());//原图
  1323. if(StringUtils.isBlank(systemPicture.getSourceName())){
  1324. systemPicture.setSourceName(filename[4].trim());//原图
  1325. }
  1326. systemPicture.setSourceSize(filename[3].trim());//大小
  1327. String fileExtName = filename[0].trim().substring(filename[0].trim().lastIndexOf(".") + 1);
  1328. System.out.println(fileExtName);
  1329. systemPicture.setDoctype(Util.getAttachmentType(fileExtName));
  1330. }
  1331. } catch (IOException e) {
  1332. e.printStackTrace();
  1333. }
  1334. resultModel.setData(systemPicture);
  1335. } catch (Exception e) {
  1336. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  1337. resultModel.setData(e.toString());
  1338. e.printStackTrace();
  1339. throw new RuntimeException("产学研补助导出功能出现异常");
  1340. }
  1341. return resultModel;
  1342. }
  1343. @RequestMapping(value = "/cooperation/report/share/{demandid}", method = RequestMethod.GET)
  1344. @ApiOperation(value = "产学研补助共享功能", notes = "产学研补助共享功能")
  1345. @ApiImplicitParams({ @ApiImplicitParam(name = "demandid", paramType = "path", dataType = "Long", value = "产学研补助id") })
  1346. public ResultModel shareCooperationReport(@PathVariable Long demandid) {
  1347. ResultModel resultModel = new ResultModel();
  1348. try {
  1349. dataEntryServiceImpl.shareCooperationReport(demandid);
  1350. resultModel.setData("");
  1351. } catch (Exception e) {
  1352. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  1353. resultModel.setData(e.toString());
  1354. e.printStackTrace();
  1355. }
  1356. return resultModel;
  1357. }
  1358. /**
  1359. * 获取桐庐科技局成员的走访记录信息。
  1360. *
  1361. * @param interviewExportParam
  1362. * @return
  1363. */
  1364. @RequestMapping(value = "/sel/interviewinfo", method = RequestMethod.POST)
  1365. @ApiOperation(value = "导出桐庐科技局成员提交的走访记录信息", notes = "导出桐庐科技局成员提交的走访记录信息接口")
  1366. @ApiImplicitParams({
  1367. @ApiImplicitParam(name = "roleModel", value = "角色的model")
  1368. })
  1369. public ResultModel selInterviewinfo(@RequestBody InterviewExportParam interviewExportParam) {
  1370. System.err.println("sel interviewExportParam:" + JSON.toJSONString(interviewExportParam));
  1371. ResultModel resultModel = new ResultModel();
  1372. try {
  1373. resultModel = interviewDataEntryService.exportInterviewinfo(interviewExportParam);
  1374. } catch (Exception e) {
  1375. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  1376. resultModel.setData(e.toString());
  1377. }
  1378. return resultModel;
  1379. }
  1380. /**
  1381. * 导出桐庐科技局成员提交的走访记录信息。
  1382. *
  1383. * @param interviewExportParam
  1384. * @return
  1385. */
  1386. @RequestMapping(value = "/export/interviewinfo", method = RequestMethod.POST)
  1387. @ApiOperation(value = "导出桐庐科技局成员提交的走访记录信息", notes = "导出桐庐科技局成员提交的走访记录信息接口")
  1388. @ApiImplicitParams({
  1389. @ApiImplicitParam(name = "roleModel", value = "角色的model")
  1390. })
  1391. public ResultModel exportInterviewinfo(@RequestBody InterviewExportParam interviewExportParam) {
  1392. System.err.println("export interviewExportParam:" + JSON.toJSONString(interviewExportParam));
  1393. ResultModel resultModel = new ResultModel();
  1394. try {
  1395. resultModel = interviewDataEntryService.exportInterviewinfo(interviewExportParam);
  1396. } catch (Exception e) {
  1397. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  1398. resultModel.setData(e.toString());
  1399. }
  1400. return resultModel;
  1401. }
  1402. /**
  1403. * 获取导出走访记录基本信息字段。
  1404. *
  1405. * @param
  1406. * @return
  1407. */
  1408. @RequestMapping(value = "/sel/basic/param/{node}", method = RequestMethod.GET)
  1409. @ApiOperation(value = "获取导出走访记录基本信息字段", notes = "获取导出走访记录基本信息字段接口")
  1410. public ResultModel selBasicParam(@PathVariable String node) {
  1411. ResultModel resultModel = new ResultModel();
  1412. try {
  1413. resultModel = interviewDataEntryService.selBasicParam(node);
  1414. } catch (Exception e) {
  1415. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  1416. resultModel.setData(e.toString());
  1417. }
  1418. return resultModel;
  1419. }
  1420. @RequestMapping(value = "/cooperate/research/list",method = RequestMethod.POST)
  1421. @ApiOperation(value = "获取研发后补助审核列表", notes = "获取研发后补助审核列表")
  1422. public ResultModel getCooperateOrResearchList(@RequestBody CheckParam checkParam) {
  1423. System.out.println("checkParam:" + JSON.toJSONString(checkParam));
  1424. ResultModel resultModel = new ResultModel();
  1425. try {
  1426. // resultModel.setData(dataEntryServiceImpl.getCooperateOrResearchList(checkParam));
  1427. return dataEntryServiceImpl.getCooperateOrResearchList(checkParam);
  1428. } catch (Exception e) {
  1429. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  1430. resultModel.setData(e.toString());
  1431. e.printStackTrace();
  1432. }
  1433. return resultModel;
  1434. }
  1435. @RequestMapping(value = "/research/cost/detail/{detailId}/{type}",method = RequestMethod.GET)
  1436. @ApiOperation(value = "根据id获取研发后补助详情接口", notes = "根据id获取研发后补助详情接口")
  1437. @ApiImplicitParams({ @ApiImplicitParam(name = "Integer", paramType = "path", dataType = "String", value = "研发后补助id") })
  1438. public ResultModel getResearchDetailsById(@PathVariable Integer detailId,@PathVariable Integer type) {
  1439. ResultModel resultModel = new ResultModel();
  1440. try {
  1441. return dataEntryServiceImpl.getResearchDetailsById(detailId,type);
  1442. } catch (Exception e) {
  1443. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  1444. resultModel.setData(e.toString());
  1445. e.printStackTrace();
  1446. }
  1447. return resultModel;
  1448. }
  1449. @RequestMapping(value = "/sel/subsidies/{nodeId}/{pageNum}",method = RequestMethod.GET)
  1450. @ApiOperation(value = "获取杭州市补助名单列表", notes = "获取杭州市补助名单列表接口")
  1451. @ApiImplicitParams({
  1452. @ApiImplicitParam(name = "Integer", paramType = "path", dataType = "String", value = "研发后补助id")
  1453. })
  1454. public ResultModel getHzSubsidiesList(@PathVariable String nodeId,@PathVariable Integer pageNum) {
  1455. ResultModel resultModel = new ResultModel();
  1456. try {
  1457. return interviewDataEntryService.getHzSubsidiesList(nodeId,pageNum);
  1458. } catch (Exception e) {
  1459. resultModel.setCode(Constant.INTERFACE_STATUS_CODE_3351);
  1460. resultModel.setData(e.toString());
  1461. e.printStackTrace();
  1462. }
  1463. return resultModel;
  1464. }
  1465. }