package com.goafanti.techservice.cognizance.controller; import java.io.IOException; import java.text.ParseException; import java.util.ArrayList; import java.util.Calendar; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import java.util.UUID; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.multipart.MultipartFile; import com.goafanti.common.bo.Result; import com.goafanti.common.constant.ErrorConstants; import com.goafanti.common.controller.BaseApiController; import com.goafanti.common.model.OrgActivity; import com.goafanti.common.model.OrgActivityCost; import com.goafanti.common.model.OrgCognizance; import com.goafanti.common.model.OrgFinance; import com.goafanti.common.model.OrgHonorDatum; import com.goafanti.common.model.OrgIntellectualProperty; import com.goafanti.common.model.OrgRatepay; import com.goafanti.common.model.OrgStandard; import com.goafanti.common.model.OrgTechAchievement; import com.goafanti.common.model.OrgTechCenter; import com.goafanti.common.model.OrgTechCenterDetail; import com.goafanti.common.model.OrgTechProduct; import com.goafanti.common.model.OrganizationIdentity; import com.goafanti.common.utils.DateUtils; import com.goafanti.common.utils.FileUtils; import com.goafanti.common.utils.LoggerUtils; import com.goafanti.common.utils.StringUtils; import com.goafanti.core.shiro.token.TokenManager; import com.goafanti.techservice.cognizance.bo.ActivityNumberBo; import com.goafanti.techservice.cognizance.service.OrgActivityCostService; import com.goafanti.techservice.cognizance.service.OrgActivityService; import com.goafanti.techservice.cognizance.service.OrgCognizanceService; import com.goafanti.techservice.cognizance.service.OrgFinanceService; import com.goafanti.techservice.cognizance.service.OrgHonorDatumService; import com.goafanti.techservice.cognizance.service.OrgIntellectualPropertyService; import com.goafanti.techservice.cognizance.service.OrgRatepayService; import com.goafanti.techservice.cognizance.service.OrgStandardService; import com.goafanti.techservice.cognizance.service.OrgTechAchievementService; import com.goafanti.techservice.cognizance.service.OrgTechCenterDetailService; import com.goafanti.techservice.cognizance.service.OrgTechCenterService; import com.goafanti.techservice.cognizance.service.OrgTechProductService; import com.goafanti.user.service.OrganizationIdentityService; import com.goafanti.user.service.UserService; @Controller @RequestMapping(value = "/techservice/cognizance") public class CognizanceApiController extends BaseApiController { @Resource private UserService userService; @Resource private OrgStandardService orgStandardService; @Resource private OrgActivityService orgActivityService; @Resource private OrgIntellectualPropertyService orgIntellectualPropertyService; @Resource private OrganizationIdentityService organizationIdentityService; @Resource private OrgTechProductService orgTechProductService; @Resource private OrgActivityCostService orgActivityCostService; @Resource private OrgRatepayService orgRatepayService; @Resource private OrgFinanceService orgFinanceService; @Resource private OrgTechAchievementService orgTechAchievementService; @Resource private OrgHonorDatumService orgHonorDatumService; @Resource private OrgTechCenterService orgTechCenterService; @Resource private OrgTechCenterDetailService orgTechCenterDetailService; @Resource private OrgCognizanceService orgCognizanceService; /** * 企业研究开发活动情况表入口 * * @param activityNumber * @param activityName * @param startDate * @param endDate * @param pageNo * @param pageSize * @return * @throws ParseException */ @RequestMapping(value = "/activityList", method = RequestMethod.POST) public Result activityList(String activityNumber, String activityName, String startDateFormattedDate, String endDateFormattedDate, String pageNo, String pageSize) throws ParseException { Result res = new Result(); res = checkCertify(res); if (res.getError().isEmpty()) { Integer pNo = 1; Integer pSize = 10; if (StringUtils.isNumeric(pageSize)) { pSize = Integer.parseInt(pageSize); } if (StringUtils.isNumeric(pageNo)) { pNo = Integer.parseInt(pageNo); } res.setData(orgActivityService.listOrgActivity(activityNumber, activityName, startDateFormattedDate, endDateFormattedDate, pNo, pSize, TokenManager.getUserId())); } return res; } /** * 企业研究开发活动情况新增、修改 * * @param orgActivity * @return * @throws ParseException */ @RequestMapping(value = "/activity", method = RequestMethod.POST) public Result activity(OrgActivity orgActivity, String startDateFormattedDate, String endDateFormattedDate) throws ParseException { Result res = new Result(); orgActivity.setDeletedSign(0); if (!StringUtils.isBlank(startDateFormattedDate)) { orgActivity.setStartDate(DateUtils.parseDate(startDateFormattedDate, "yyyy-MM-dd")); } if (!StringUtils.isBlank(endDateFormattedDate)) { orgActivity.setEndDate(DateUtils.parseDate(endDateFormattedDate, "yyyy-MM-dd")); } if (StringUtils.isBlank(orgActivity.getId())) { orgActivity.setId(UUID.randomUUID().toString()); orgActivity.setUid(TokenManager.getUserId()); orgActivityService.insert(orgActivity); } else { orgActivityService.updateByPrimaryKeySelective(orgActivity); Boolean flag = false; OrgActivityCost cost = orgActivityCostService.selectOrgActivityCostByAid(orgActivity.getId()); if (null != cost) { if (!StringUtils.isBlank(orgActivity.getActivityNumber())) { cost.setActivityNumber(orgActivity.getActivityNumber()); flag = true; } if (null == orgActivity.getStartDate()) { cost.setStartDate(orgActivity.getStartDate()); flag = true; } if (null == orgActivity.getEndDate()) { cost.setEndDate(orgActivity.getEndDate()); flag = true; } } if (flag) { orgActivityCostService.updateByPrimaryKeySelective(cost); } } res.setData(orgActivity); return res; } /** * 删除企业研究开发活动情况 * * @param ids * @return */ @RequestMapping(value = "/deleteActivity", method = RequestMethod.POST) public Result deleteActivity(@RequestParam(name = "ids[]", required = true) String[] ids) { Result res = new Result(); List id = new ArrayList(); for (String s : ids) { id.add(s); } orgActivityService.batchDeleteByPrimaryKey(id); orgActivityCostService.batchDeleteByAid(id); return res; } /** * 企业年度研究开发费用结构明细表列表入口 * * @return * @throws ParseException */ @RequestMapping(value = "/activityCostList", method = RequestMethod.POST) public Result activityCostList(String activityNumber, String startDateFormattedDate, String endDateFormattedDate, String pageNo, String pageSize) throws ParseException { Result res = new Result(); res = checkCertify(res); if (res.getError().isEmpty()) { Integer pNo = 1; Integer pSize = 10; if (StringUtils.isNumeric(pageSize)) { pSize = Integer.parseInt(pageSize); } if (StringUtils.isNumeric(pageNo)) { pNo = Integer.parseInt(pageNo); } res.setData(orgActivityCostService.listOrgActivityCost(activityNumber, startDateFormattedDate, endDateFormattedDate, pNo, pSize, TokenManager.getUserId())); } return res; } /** * 企业年度研究开发费用结构明细表(新增+修改) * * @return * @throws ParseException */ @RequestMapping(value = "/activityCost", method = RequestMethod.POST) public Result activityCost(OrgActivityCost orgActivityCost, String signDateFormattedDate) throws ParseException { Result res = new Result(); if (!StringUtils.isBlank(signDateFormattedDate)) { orgActivityCost.setSignDate(DateUtils.parseDate(signDateFormattedDate, "yyyy-MM-dd")); } if (null == orgActivityCost.getId()) { OrgActivity ac = orgActivityService.selectOrgActivityByPrimaryKey(orgActivityCost.getAid()); orgActivityCost.setStartDate(ac.getStartDate()); orgActivityCost.setEndDate(ac.getEndDate()); orgActivityCost.setId(UUID.randomUUID().toString()); orgActivityCost.setUid(TokenManager.getUserId()); orgActivityCost.setDeletedSign(0); orgActivityCostService.insert(orgActivityCost); } else { orgActivityCostService.updateByPrimaryKeySelective(orgActivityCost); } return res; } /** * 删除企业年度研究开发费用结构明细表 * * @param ids * @return */ @RequestMapping(value = "/deleteActivityCost", method = RequestMethod.POST) public Result deleteActivityCost(@RequestParam(name = "ids[]", required = true) String[] ids) { Result res = new Result(); List id = new ArrayList(); for (String s : ids) { id.add(s); } res.setData(orgActivityCostService.batchDeleteByPrimaryKey(id)); return res; } /** * 企业参与国家标准或行业标准制定情况明细入口 * * @return */ @RequestMapping(value = "/standard", method = RequestMethod.POST) public Result standard(String standardName, String standardNumber, Integer standardLevel, Integer participateWay, String pageNo, String pageSize) { Result res = new Result(); res = checkCertify(res); if (res.getError().isEmpty()) { Integer pNo = 1; Integer pSize = 10; if (StringUtils.isNumeric(pageSize)) { pSize = Integer.parseInt(pageSize); } if (StringUtils.isNumeric(pageNo)) { pNo = Integer.parseInt(pageNo); } res.setData(orgStandardService.listOrgStandard(standardName, standardNumber, standardLevel, participateWay, pNo, pSize, TokenManager.getUserId())); } return res; } /** * 企业参与国家标准或行业标准制定情况明细修改保存 * * @return */ @RequestMapping(value = "/developStandard", method = RequestMethod.POST) public Result developStandard(OrgStandard orgStandard) { Result res = new Result(); if (StringUtils.isBlank(orgStandard.getId())) { orgStandard.setId(UUID.randomUUID().toString()); orgStandard.setUid(TokenManager.getUserId()); orgStandard.setDeletedSign(0); Calendar now = Calendar.getInstance(); now.set(Calendar.MILLISECOND, 0); orgStandard.setCreateTime(now.getTime()); orgStandardService.insert(orgStandard); } else { orgStandardService.updateByPrimaryKeySelective(orgStandard); } res.setData(orgStandard); return res; } /** * 删除选中标准制定情况记录 * * @param id * 记录id * @return */ @RequestMapping(value = "/deleteStandard", method = RequestMethod.POST) public Result deleteStandard(@RequestParam(name = "ids[]", required = true) String[] ids) { Result res = new Result(); List id = new ArrayList(); for (String s : ids) { id.add(s); } res.setData(orgStandardService.batchDeleteByPrimaryKey(id)); return res; } /** * 用户端录入+修改知识产权信息(专利+软著) * * @return * @throws ParseException */ @RequestMapping(value = "/intellectual", method = RequestMethod.POST) public Result intellectual(OrgIntellectualProperty orgIntellectualProperty, String authorizationDateFormattedDate) throws ParseException { Result res = new Result(); if (!StringUtils.isBlank(authorizationDateFormattedDate)) { orgIntellectualProperty .setAuthorizationDate(DateUtils.parseDate(authorizationDateFormattedDate, "yyyy-MM-dd")); } if (null == orgIntellectualProperty.getId()) { orgIntellectualProperty.setId(UUID.randomUUID().toString()); orgIntellectualProperty.setUid(TokenManager.getUserId()); orgIntellectualProperty.setEvaluationCategory( (orgIntellectualProperty.getCatagory() >= 2 && orgIntellectualProperty.getCatagory() <= 4) ? 1 : 0); orgIntellectualProperty.setDeletedSign(0); res.setData(orgIntellectualPropertyService.insert(orgIntellectualProperty)); } else { orgIntellectualProperty.setEvaluationCategory(orgIntellectualProperty.getCatagory() <= 2 ? 1 : 0); res.setData(orgIntellectualPropertyService.updateByPrimaryKeySelective(orgIntellectualProperty)); } return res; } /** * 用户知识产权列表 * * @param pageNo * @param pageSize * @return */ @RequestMapping(value = "/intellectualList", method = RequestMethod.GET) public Result intellectualList(String pageNo, String pageSize) { Result res = new Result(); res = checkCertify(res); if (res.getError().isEmpty()) { Integer pNo = 1; Integer pSize = 10; if (StringUtils.isNumeric(pageSize)) { pSize = Integer.parseInt(pageSize); } if (StringUtils.isNumeric(pageNo)) { pNo = Integer.parseInt(pageNo); } res.setData(orgIntellectualPropertyService.listIntellectual(pNo, pSize, TokenManager.getUserId())); } return res; } /** * 删除选中知识产权记录 * * @param id * @return */ @RequestMapping(value = "/deleteIntellectual", method = RequestMethod.POST) public Result deleteIntellectual(@RequestParam(name = "ids[]", required = true) String[] ids) { Result res = new Result(); List id = new ArrayList(); for (String s : ids) { id.add(s); } res.setData(orgIntellectualPropertyService.batchDeleteByPrimaryKey(id)); return res; } /** * 上年度高新技术产品(服务)情况列表 * * @param pageNo * @param pageSize * @return */ @RequestMapping(value = "/techProductList", method = RequestMethod.GET) public Result techProductList(String pageNo, String pageSize) { Result res = new Result(); res = checkCertify(res); if (res.getError().isEmpty()) { Integer pNo = 1; Integer pSize = 10; if (StringUtils.isNumeric(pageSize)) { pSize = Integer.parseInt(pageSize); } if (StringUtils.isNumeric(pageNo)) { pNo = Integer.parseInt(pageNo); } res.setData(orgTechProductService.listTechProduct(pNo, pSize, TokenManager.getUserId())); } return res; } /** * 上年度高新技术产品(服务)情况(新增+修改) * * @param orgTechProduct * @return */ @RequestMapping(value = "/techProduct", method = RequestMethod.POST) public Result techProduct(OrgTechProduct orgTechProduct) { Result res = new Result(); if (StringUtils.isBlank(orgTechProduct.getId())) { orgTechProduct.setId(UUID.randomUUID().toString()); orgTechProduct.setUid(TokenManager.getUserId()); orgTechProduct.setDeletedSign(0); Calendar now = Calendar.getInstance(); now.set(Calendar.MILLISECOND, 0); orgTechProduct.setCreateTime(now.getTime()); orgTechProduct.setYear(Calendar.getInstance().get(Calendar.YEAR) - 1); orgTechProductService.insert(orgTechProduct); } else { orgTechProductService.updateByPrimaryKeySelective(orgTechProduct); } res.setData(orgTechProduct); return res; } /** * 删除选中上年度高新技术产品(服务)情况记录 * * @param ids * @return */ @RequestMapping(value = "/deleteTechProduct", method = RequestMethod.POST) public Result deleteTechProduct(@RequestParam(name = "ids[]", required = true) String[] ids) { Result res = new Result(); List id = new ArrayList(); for (String s : ids) { id.add(s); } res.setData(orgTechProductService.batchDeleteByPrimaryKey(id)); return res; } /** * 企业纳税申报信息入口 * * @return */ @RequestMapping(value = "/ratepay", method = RequestMethod.GET) public Result ratepay(Integer year, String pageNo, String pageSize) { Result res = new Result(); res = checkCertify(res); if (res.getError().isEmpty()) { Integer pNo = 1; Integer pSize = 10; if (StringUtils.isNumeric(pageSize)) { pSize = Integer.parseInt(pageSize); } if (StringUtils.isNumeric(pageNo)) { pNo = Integer.parseInt(pageNo); } res.setData(orgRatepayService.listOrgRatepay(year, pNo, pSize, TokenManager.getUserId())); } return res; } /** * 企业纳税申报信息录入+修改 */ @RequestMapping(value = "/disposeRatepay", method = RequestMethod.POST) public Result disposeRatepay(OrgRatepay orgRatepay) { Result res = new Result(); if (null == orgRatepay.getId()) { orgRatepay.setId(UUID.randomUUID().toString()); orgRatepay.setUid(TokenManager.getUserId()); orgRatepay.setDeletedSign(0); orgRatepayService.insert(orgRatepay); } else { orgRatepayService.updateByPrimaryKeySelective(orgRatepay); } return res; } /** * 刪除企业纳税申报信息 * * @param ids * @return */ @RequestMapping(value = "/deleteRatepay", method = RequestMethod.POST) public Result deleteRatepay(@RequestParam(name = "ids[]", required = true) String[] ids) { Result res = new Result(); List id = new ArrayList(); for (String s : ids) { id.add(s); } res.setData(orgRatepayService.batchDeleteByPrimaryKey(id)); return res; } /** * 财务报表信息入口 * * @return */ @RequestMapping(value = "/finance", method = RequestMethod.GET) public Result finance(Integer year, String pageNo, String pageSize) { Result res = new Result(); res = checkCertify(res); if (res.getError().isEmpty()) { Integer pNo = 1; Integer pSize = 10; if (StringUtils.isNumeric(pageSize)) { pSize = Integer.parseInt(pageSize); } if (StringUtils.isNumeric(pageNo)) { pNo = Integer.parseInt(pageNo); } res.setData(orgFinanceService.listFinance(year, pNo, pSize, TokenManager.getUserId())); } return res; } /** * 财务报表录入+修改 * * @param orgFinance * @return */ @RequestMapping(value = "/disposeFinance", method = RequestMethod.POST) public Result disposeFinance(OrgFinance orgFinance) { Result res = new Result(); if (null == orgFinance.getId()) { orgFinance.setId(UUID.randomUUID().toString()); orgFinance.setUid(TokenManager.getUserId()); orgFinance.setDeletedSign(0); orgFinanceService.insert(orgFinance); } else { orgFinanceService.updateByPrimaryKeySelective(orgFinance); } return res; } /** * 删除财务报表 * * @param ids * @return */ @RequestMapping(value = "/deleteFinance", method = RequestMethod.POST) public Result deleteFinance(@RequestParam(name = "ids[]", required = true) String[] ids) { Result res = new Result(); List id = new ArrayList(); for (String s : ids) { id.add(s); } res.setData(orgFinanceService.batchDeleteByPrimaryKey(id)); return res; } /** * 获取当前用户已录入项目标号列表 * * @param uid * @return */ @RequestMapping(value = "/activityNumber", method = RequestMethod.GET) public Result listActivityNumber() { Result res = new Result(); List activityNumberBo = orgActivityService .selectOrgActivityNumberBoByUid(TokenManager.getUserId()); res.setData(activityNumberBo); return res; } /** * 高企相关材料上传(技术协议除外) * * @param req * @param sign * @return */ @RequestMapping(value = "/upload", method = RequestMethod.POST) public Result cognizanceFile(HttpServletRequest req, String sign, String uid) { Result res = new Result(); res.setData(handleFile(res, "/cognizance/", true, req, sign, uid)); return res; } /** * 技术协议上传 * @param req * @param uid * @param id * @return */ /*@RequestMapping(value = "/uploadProtocol", method = RequestMethod.POST) public Result uploadProtocolFile(HttpServletRequest req, String uid, String id){ Result res = new Result(); res.setData(handleProtocolFile(res, "/cognizance/", true , req, uid)); return res; }*/ /** * 科技成果转化情况列表入口 * * @param pageNo * @param pageSize * @return */ @RequestMapping(value = "/achievementList", method = RequestMethod.GET) public Result achievementList(String pageNo, String pageSize) { Result res = new Result(); res = checkCertify(res); if (res.getError().isEmpty()) { Integer pNo = 1; Integer pSize = 10; if (StringUtils.isNumeric(pageSize)) { pSize = Integer.parseInt(pageSize); } if (StringUtils.isNumeric(pageNo)) { pNo = Integer.parseInt(pageNo); } res.setData(orgTechAchievementService.listOrgTechAchievement(pNo, pSize, TokenManager.getUserId())); } return res; } /** * 科技成果转化情况新增+修改 * * @param achievement * @return * @throws ParseException */ @RequestMapping(value = "/disposeAchievement", method = RequestMethod.POST) public Result disposeAchievement(OrgTechAchievement achievement) throws ParseException { Result res = new Result(); if (null == achievement.getId()) { achievement.setId(UUID.randomUUID().toString()); achievement.setUid(TokenManager.getUserId()); achievement.setDeletedSign(0); orgTechAchievementService.inset(achievement); } else { orgTechAchievementService.updateByPrimaryKeySelective(achievement); } return res; } /** * 删除科技成果转化情况 * * @param ids * @return */ @RequestMapping(value = "/deleteAchievement", method = RequestMethod.POST) public Result deleteAchievement(@RequestParam(name = "ids[]", required = true) String[] ids) { Result res = new Result(); List id = new ArrayList(); for (String s : ids) { id.add(s); } res.setData(orgTechAchievementService.batchDeleteByPrimaryKey(id)); return res; } /** * 企业荣誉及其他证明材料列表入口 * * @return */ @RequestMapping(value = "/honorList", method = RequestMethod.GET) public Result honorList(String pageNo, String pageSize) { Result res = new Result(); res = checkCertify(res); if (res.getError().isEmpty()) { Integer pNo = 1; Integer pSize = 10; if (StringUtils.isNumeric(pageSize)) { pSize = Integer.parseInt(pageSize); } if (StringUtils.isNumeric(pageNo)) { pNo = Integer.parseInt(pageNo); } res.setData(orgHonorDatumService.listOrgHonorDatum(pNo, pSize, TokenManager.getUserId())); } return res; } /** * 企业荣誉及其他证明材料新增+修改 * * @param achievement * @return * @throws ParseException */ @RequestMapping(value = "/disposeHonor", method = RequestMethod.POST) public Result disposeHonor(OrgHonorDatum honor, String issuingTimeFormattedDate) throws ParseException { Result res = new Result(); if (!StringUtils.isBlank(issuingTimeFormattedDate)) { honor.setIssuingTime(DateUtils.parseDate(issuingTimeFormattedDate, "yyyy-MM-dd")); } if (null == honor.getId()) { honor.setId(UUID.randomUUID().toString()); honor.setUid(TokenManager.getUserId()); honor.setDeletedSign(0); orgHonorDatumService.inset(honor); } else { orgHonorDatumService.updateByPrimaryKeySelective(honor); } return res; } /** * 删除企业荣誉及其他证明材料 * * @param ids * @return */ @RequestMapping(value = "/deleteHonor", method = RequestMethod.POST) public Result deleteHonor(@RequestParam(name = "ids[]", required = true) String[] ids) { Result res = new Result(); List id = new ArrayList(); for (String s : ids) { id.add(s); } res.setData(orgHonorDatumService.batchDeleteByPrimaryKey(id)); return res; } /** * 技术中心入口 * * @return */ @RequestMapping(value = "/center", method = RequestMethod.GET) public Result center() { Result res = new Result(); res = checkCertify(res); if (res.getError().isEmpty()) { res.setData(orgTechCenterService.selectOrgTechCenterByUid(TokenManager.getUserId())); } return res; } /** * 技术中心新增+修改 * * @return * @throws ParseException */ @RequestMapping(value = "/disposeCenter", method = RequestMethod.POST) public Result disposeCenter(OrgTechCenter orgTechCenter, String foundingTimeFormattedDate) throws ParseException { Result res = new Result(); if (!StringUtils.isBlank(foundingTimeFormattedDate)) { orgTechCenter.setFoundingTime(DateUtils.parseDate(foundingTimeFormattedDate, "yyyy-MM-dd")); } if (null == orgTechCenter.getId()) { orgTechCenter.setId(UUID.randomUUID().toString()); orgTechCenter.setUid(TokenManager.getUserId()); orgTechCenter.setDeletedSign(0); orgTechCenterService.insert(orgTechCenter); } else { orgTechCenterService.updateByPrimaryKeySelective(orgTechCenter); } return res; } /** * 技术中心明细列表入口(管理+用户) * * @return */ @RequestMapping(value = "/centerDetail", method = RequestMethod.POST) public Result centerDetail(String pageNo, String pageSize, String cid) { Result res = new Result(); res = checkCertify(res); if (res.getError().isEmpty()) { Integer pNo = 1; Integer pSize = 10; if (StringUtils.isNumeric(pageSize)) { pSize = Integer.parseInt(pageSize); } if (StringUtils.isNumeric(pageNo)) { pNo = Integer.parseInt(pageNo); } res.setData(orgTechCenterDetailService.listOrgTechCenterDetail(pNo, pSize, cid)); } return res; } /** * 技术中心明细新增+修改(管理+用户) * @param orgTechCenterDetail * @param projectTimeFormattedDate * @param termTimeFormattedDate * @return * @throws ParseException */ @RequestMapping(value = "/disposeCenterDetail", method = RequestMethod.POST) public Result disposeCenterDetail(OrgTechCenterDetail orgTechCenterDetail, String projectTimeFormattedDate, String termTimeFormattedDate) throws ParseException { Result res = new Result(); if (!StringUtils.isBlank(projectTimeFormattedDate)){ orgTechCenterDetail.setProjectTime(DateUtils.parseDate(projectTimeFormattedDate, "yyyy-MM-dd")); } if (!StringUtils.isBlank(termTimeFormattedDate)){ orgTechCenterDetail.setTermTime(DateUtils.parseDate(termTimeFormattedDate, "yyyy-MM-dd")); } if (null == orgTechCenterDetail.getId()){ orgTechCenterDetail.setId(UUID.randomUUID().toString()); orgTechCenterDetail.setDeletedSign(0); orgTechCenterDetailService.inset(orgTechCenterDetail); } else { orgTechCenterDetailService.updateByPrimaryKeySelective(orgTechCenterDetail); } return res; } /** * 删除技术中心明细 * @param ids * @return */ @RequestMapping(value = "/deleteOrgTechCenterDetail", method = RequestMethod.POST) public Result deleteOrgTechCenterDetail(@RequestParam(name = "ids[]", required = true) String[] ids) { Result res = new Result(); List id = new ArrayList(); for (String s : ids) { id.add(s); } res.setData(orgTechCenterDetailService.batchDeleteByPrimaryKey(id)); return res; } /** * 获取公司联系人 * @return */ @RequestMapping(value = "/getContacts", method = RequestMethod.GET) public Result getContacts(){ Result res = new Result(); OrganizationIdentity i = organizationIdentityService.selectOrgIdentityByUserId(TokenManager.getUserId()); Map map = new LinkedHashMap(); if (!StringUtils.isBlank(i.getFirstContacts()) && !StringUtils.isBlank(i.getFirstMobile())){ map.put(i.getFirstContacts(), i.getFirstMobile()); } if (!StringUtils.isBlank(i.getSecondContacts()) && !StringUtils.isBlank(i.getSecondMobile())){ map.put(i.getSecondContacts(), i.getSecondMobile()); } if (!StringUtils.isBlank(i.getThirdContacts()) && !StringUtils.isBlank(i.getThirdMobile())){ map.put(i.getThirdContacts(), i.getThirdMobile()); } res.setData(map); return res; } /** * 申请高企认定 * @return */ @RequestMapping(value = "/applyCognizance", method = RequestMethod.POST) public Result applyCognizance(String contacts, String comment, String consultant){ Result res = new Result(); OrgCognizance c = new OrgCognizance(); c.setId(UUID.randomUUID().toString()); c.setUid(TokenManager.getUserId()); c.setContacts(contacts); c.setComment(comment); c.setConsultant(consultant); c.setDeletedSign(0); c.setYear(Calendar.getInstance().get(Calendar.YEAR)); orgCognizanceService.insert(c); return res; } private String handleFile(Result res, String path, boolean isPrivate, HttpServletRequest req, String sign, String uid) { List files = getFiles(req); MultipartFile mf = files.get(0); String fileName = FileUtils.mosaicFileName(mf, isPrivate, sign, path, StringUtils.isBlank(uid) ? TokenManager.getUserId() : uid); if (!files.isEmpty()) { try { mf.transferTo(toPrivateFile(fileName)); LoggerUtils.debug(getClass(), fileName + " 文件上传成功"); } catch (IllegalStateException | IOException e) { LoggerUtils.error(getClass(), "文件上传失败", e); res.getError().add(buildError("", "文件上传失败!")); return ""; } } else { res.getError().add(buildError("", "文件上传失败!")); return ""; } return fileName; } // 判断用户是否通过认证 private Result checkCertify(Result res) { if (5 != organizationIdentityService.selectOrgIdentityByUserId(TokenManager.getUserId()).getAuditStatus()) { res.getError().add(buildError(ErrorConstants.NON_CERTIFIED, "未通过实名认证,无法操作!")); } return res; } }