Browse Source

成果详情--匹配需求列表

Antiloveg 8 years ago
parent
commit
01a5beaaa0

+ 7 - 4
src/main/java/com/goafanti/achievement/bo/AchievementDemandListBo.java

@@ -4,6 +4,8 @@ import java.util.Date;
 
 import org.apache.commons.lang3.time.DateFormatUtils;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.fasterxml.jackson.annotation.JsonFormat.Shape;
 import com.goafanti.common.constant.AFTConstants;
 /**
  * 成果需求匹配列表对象
@@ -11,7 +13,7 @@ import com.goafanti.common.constant.AFTConstants;
 public class AchievementDemandListBo {
 	private String id;
 	
-	private String serialNumber;
+	private Integer serialNumber;
 	
 	private String dataCategory;
 	
@@ -37,11 +39,11 @@ public class AchievementDemandListBo {
 		this.id = id;
 	}
 
-	public String getSerialNumber() {
+	public Integer getSerialNumber() {
 		return serialNumber;
 	}
 
-	public void setSerialNumber(String serialNumber) {
+	public void setSerialNumber(Integer serialNumber) {
 		this.serialNumber = serialNumber;
 	}
 
@@ -76,7 +78,8 @@ public class AchievementDemandListBo {
 	public void setCategory(String category) {
 		this.category = category;
 	}
-
+	
+	@JsonFormat(shape = Shape.STRING)
 	public Integer getOwnerType() {
 		return ownerType;
 	}

+ 3 - 0
src/main/java/com/goafanti/achievement/service/AchievementService.java

@@ -7,6 +7,7 @@ import com.goafanti.achievement.bo.AchievementOrgOwnerDetailBo;
 import com.goafanti.achievement.bo.AchievementUserOwnerDetailBo;
 import com.goafanti.common.model.Achievement;
 import com.goafanti.core.mybatis.page.Pagination;
+import com.goafanti.demand.bo.DemandAchievementListBo;
 
 public interface AchievementService {
 
@@ -38,5 +39,7 @@ public interface AchievementService {
 
 	AchievementOrgOwnerDetailBo selectOrgOwnerDetail(String id);
 
+	List<DemandAchievementListBo> selectAchievementDemandListByAchievementId(String id);
+
 
 }

+ 10 - 1
src/main/java/com/goafanti/achievement/service/impl/AchievementServiceImpl.java

@@ -41,6 +41,7 @@ import com.goafanti.common.utils.DateUtils;
 import com.goafanti.core.mybatis.BaseMybatisDao;
 import com.goafanti.core.mybatis.page.Pagination;
 import com.goafanti.core.shiro.token.TokenManager;
+import com.goafanti.demand.bo.DemandAchievementListBo;
 
 @Service
 public class AchievementServiceImpl extends BaseMybatisDao<AchievementMapper> implements AchievementService {
@@ -266,6 +267,12 @@ public class AchievementServiceImpl extends BaseMybatisDao<AchievementMapper> im
 	public AchievementOrgOwnerDetailBo selectOrgOwnerDetail(String id) {
 		return achievementMapper.selectOrgOwnerDetail(id);
 	}
+	
+	@Override
+	public List<DemandAchievementListBo> selectAchievementDemandListByAchievementId(String id) {
+		return achievementDemandMapper.selectAchievementDemandListByAchievementId(id);
+	}
+
 
 	private void createTechBorkerNotice(Achievement a) {
 		noticeMapper.insert(disposeNotice(a, null));
@@ -328,8 +335,9 @@ public class AchievementServiceImpl extends BaseMybatisDao<AchievementMapper> im
 				achievementKeywordMapper.batcheDeleteByDemandId(a.getId());
 			}
 			List<AchievementKeyword> list = new ArrayList<>();
+			AchievementKeyword ak = null;
 			for (int i = 0; i < keywords.length; i++) {
-				AchievementKeyword ak = new AchievementKeyword();
+				ak = new AchievementKeyword();
 				ak.setId(UUID.randomUUID().toString());
 				ak.setAchievementId(a.getId());
 				ak.setKeyword(keywords[i].trim());
@@ -339,4 +347,5 @@ public class AchievementServiceImpl extends BaseMybatisDao<AchievementMapper> im
 		}
 	}
 
+	
 }

+ 10 - 0
src/main/java/com/goafanti/admin/controller/AdminAchievementApiController.java

@@ -46,6 +46,16 @@ public class AdminAchievementApiController extends CertifyApiController {
 	private AftFileService aftFileService;
 	
 	/**
+	 * 成果需求匹配列表
+	 */
+	@RequestMapping(value = "/achievementDemand", method = RequestMethod.GET)
+	public Result achievementDemand(String id){
+		Result res = new Result();
+		res.setData(achievementService.selectAchievementDemandListByAchievementId(id));
+		return res;
+	}
+	
+	/**
 	 * 上传技术需求批量导入Excel模板
 	 * 
 	 * @param req

+ 3 - 0
src/main/java/com/goafanti/common/dao/AchievementDemandMapper.java

@@ -4,6 +4,7 @@ import java.util.List;
 
 import com.goafanti.achievement.bo.AchievementDemandListBo;
 import com.goafanti.common.model.AchievementDemand;
+import com.goafanti.demand.bo.DemandAchievementListBo;
 
 public interface AchievementDemandMapper {
     int deleteByPrimaryKey(AchievementDemand key);
@@ -23,4 +24,6 @@ public interface AchievementDemandMapper {
 	int batchDeleteByAchievementIds(List<String> id);
 
 	List<AchievementDemandListBo> selectAchievementDemandListByDemandId(String id);
+
+	List<DemandAchievementListBo> selectAchievementDemandListByAchievementId(String id);
 }

+ 16 - 0
src/main/java/com/goafanti/common/mapper/AchievementDemandMapper.xml

@@ -81,4 +81,20 @@
 		and a.audit_status = 4 
 		and a.release_status = 1
   </select>
+  
+  <select id="selectAchievementDemandListByAchievementId" parameterType="java.lang.String" resultType="com.goafanti.demand.bo.DemandAchievementListBo">
+  	select
+  		d.id, d.serial_number as serialNumber, d.data_category as dataCategory,
+  		d.name, d.keyword, d.demand_type as demandType, 
+  		d.release_date as releaseDate, d.validity_period as validityPeriod, oi.unit_name as unitName,
+  		ui.username
+  	from demand d
+  	LEFT JOIN achievement_demand ad on ad.demand_id = d.id
+  	LEFT JOIN user_identity ui on ui.uid = d.employer_id
+  	LEFT JOIN organization_identity oi on oi.uid = d.employer_id
+  	where ad.achievement_id = #{id,jdbcType=VARCHAR}
+  	and d.deleted_sign = 0
+  	and d.audit_status = 4
+  	and d.release_status = 1
+  </select>
 </mapper>

+ 25 - 22
src/main/java/com/goafanti/copyright/service/impl/CopyrightInfoServiceImpl.java

@@ -122,27 +122,28 @@ public class CopyrightInfoServiceImpl extends BaseMybatisDao<CopyrightInfoMapper
 
 	@SuppressWarnings("unchecked")
 	@Override
-	public Pagination<CopyrightInfo> listCopyrightInfo(String contractId, String province, String unitName, String copyrightName,
-			CopyrightStatus status, String[] createTime, String[] acceptTime, String[] authTime, Integer pageNo,
-			Integer pageSize) {
-		return (Pagination<CopyrightInfo>) findPage("findListByPage", "findListCount", buildListParams(contractId , province,
-				unitName, copyrightName, status, createTime, acceptTime, authTime, pageNo, pageSize, null), pageNo,
-				pageSize);
+	public Pagination<CopyrightInfo> listCopyrightInfo(String contractId, String province, String unitName,
+			String copyrightName, CopyrightStatus status, String[] createTime, String[] acceptTime, String[] authTime,
+			Integer pageNo, Integer pageSize) {
+		return (Pagination<CopyrightInfo>) findPage("findListByPage", "findListCount", buildListParams(contractId,
+				province, unitName, copyrightName, status, createTime, acceptTime, authTime, pageNo, pageSize, null),
+				pageNo, pageSize);
 	}
 
 	@SuppressWarnings("unchecked")
 	@Override
-	public Pagination<CopyrightInfoSummary> listMyCopyrightInfo(String contractId, String province, String unitName, String copyrightName,
-			CopyrightStatus status, String[] createTime, String[] acceptTime, String[] authTime, Integer pageNo,
-			Integer pageSize, String uid) {
-		return (Pagination<CopyrightInfoSummary>) findPage("findListByPage", "findListCount", buildListParams(contractId, province,
-				unitName, copyrightName, status, createTime, acceptTime, authTime, pageNo, pageSize, uid), pageNo,
-				pageSize);
+	public Pagination<CopyrightInfoSummary> listMyCopyrightInfo(String contractId, String province, String unitName,
+			String copyrightName, CopyrightStatus status, String[] createTime, String[] acceptTime, String[] authTime,
+			Integer pageNo, Integer pageSize, String uid) {
+		return (Pagination<CopyrightInfoSummary>) findPage("findListByPage", "findListCount",
+				buildListParams(contractId, province, unitName, copyrightName, status, createTime, acceptTime, authTime,
+						pageNo, pageSize, uid),
+				pageNo, pageSize);
 	}
 
-	private Map<String, Object> buildListParams(String contractId, String province, String unitName, String copyrightName,
-			CopyrightStatus status, String[] createTime, String[] acceptTime, String[] authTime, Integer pageNo,
-			Integer pageSize, String uid) {
+	private Map<String, Object> buildListParams(String contractId, String province, String unitName,
+			String copyrightName, CopyrightStatus status, String[] createTime, String[] acceptTime, String[] authTime,
+			Integer pageNo, Integer pageSize, String uid) {
 		Map<String, Object> params = new HashMap<>();
 
 		if (TokenManager.getAdminToken() != null && !TokenManager.hasRole(AFTConstants.SUPERADMIN)) {
@@ -236,8 +237,9 @@ public class CopyrightInfoServiceImpl extends BaseMybatisDao<CopyrightInfoMapper
 		List<CopyrightLog> log = new ArrayList<CopyrightLog>();
 		List<CopyrightInfo> list = copyrightInfoMapper.selectByPrimaryKeys(Arrays.asList(ids));
 		if (null != list && list.size() > 0) {
+			CopyrightLog copyrightLog = null;
 			for (CopyrightInfo copyrightInfo : list) {
-				CopyrightLog copyrightLog = new CopyrightLog();
+				copyrightLog = new CopyrightLog();
 				BeanUtils.copyProperties(cl, copyrightLog);
 				copyrightLog.setId(UUID.randomUUID().toString());
 				copyrightLog.setCid(copyrightInfo.getId());
@@ -295,13 +297,14 @@ public class CopyrightInfoServiceImpl extends BaseMybatisDao<CopyrightInfoMapper
 	public void batchInsertContractRecord(Contract contract) {
 		contract.setCopyrightStatus(ContractBusinessStatus.CREATE.getCode());
 		contractMapper.updateByPrimaryKeySelective(contract);
-		
+
 		List<CopyrightInfo> ci = new ArrayList<>();
 		List<CopyrightLog> cl = new ArrayList<>();
-
+		CopyrightInfo c = null;
+		CopyrightLog l = null;
 		for (int i = 0; i < contract.getCopyrightNum(); i++) {
-			CopyrightInfo c = new CopyrightInfo();
-			CopyrightLog l = new CopyrightLog();
+			c = new CopyrightInfo();
+			l = new CopyrightLog();
 			c.getId();
 			c.setUid(contract.getUid());
 			c.setContact(contract.getContacts());
@@ -313,14 +316,14 @@ public class CopyrightInfoServiceImpl extends BaseMybatisDao<CopyrightInfoMapper
 			now.set(Calendar.MILLISECOND, 0);
 			c.setCreateTime(now.getTime());
 			c.setDeleteSign(DeleteStatus.UNDELETE.getCode());
-			
+
 			l.getId();
 			l.setCid(c.getId());
 			l.setStatus(CopyrightStatus.CREATE.getCode());
 			l.setOperator(TokenManager.getAdminId());
 			l.setOperator(TokenManager.getAdminId());
 			l.setRecordTime(now.getTime());
-			
+
 			ci.add(c);
 			cl.add(l);
 		}

+ 141 - 0
src/main/java/com/goafanti/demand/bo/DemandAchievementListBo.java

@@ -0,0 +1,141 @@
+package com.goafanti.demand.bo;
+
+import java.util.Date;
+
+import org.apache.commons.lang3.time.DateFormatUtils;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.fasterxml.jackson.annotation.JsonFormat.Shape;
+import com.goafanti.common.constant.AFTConstants;
+/**
+ * 需求成果匹配LISTBO
+ */
+public class DemandAchievementListBo {
+
+	private String	id;
+
+	private Integer	serialNumber;
+
+	private Integer	dataCategory;
+
+	private String	name;
+
+	private String	keyword;
+
+	private Integer	demandType;
+
+	private Date	releaseDate;
+
+	private Date	validityPeriod;
+
+	private String	unitName;
+
+	private String	username;
+	
+
+	public String getId() {
+		return id;
+	}
+
+	public void setId(String id) {
+		this.id = id;
+	}
+
+	public Integer getSerialNumber() {
+		return serialNumber;
+	}
+
+	public void setSerialNumber(Integer serialNumber) {
+		this.serialNumber = serialNumber;
+	}
+
+	public Integer getDataCategory() {
+		return dataCategory;
+	}
+
+	public void setDataCategory(Integer dataCategory) {
+		this.dataCategory = dataCategory;
+	}
+
+	public String getName() {
+		return name;
+	}
+
+	public void setName(String name) {
+		this.name = name;
+	}
+
+	public String getKeyword() {
+		return keyword;
+	}
+
+	public void setKeyword(String keyword) {
+		this.keyword = keyword;
+	}
+	
+	@JsonFormat(shape = Shape.STRING)
+	public Integer getDemandType() {
+		return demandType;
+	}
+
+	public void setDemandType(Integer demandType) {
+		this.demandType = demandType;
+	}
+
+	public Date getReleaseDate() {
+		return releaseDate;
+	}
+
+	public void setReleaseDate(Date releaseDate) {
+		this.releaseDate = releaseDate;
+	}
+
+	public Date getValidityPeriod() {
+		return validityPeriod;
+	}
+
+	public void setValidityPeriod(Date validityPeriod) {
+		this.validityPeriod = validityPeriod;
+	}
+
+	public String getUnitName() {
+		return unitName;
+	}
+
+	public void setUnitName(String unitName) {
+		this.unitName = unitName;
+	}
+
+	public String getUsername() {
+		return username;
+	}
+
+	public void setUsername(String username) {
+		this.username = username;
+	}
+
+	public String getValidityPeriodFormattedDate() {
+		if (this.validityPeriod == null) {
+			return null;
+		} else {
+			return DateFormatUtils.format(this.getValidityPeriod(), AFTConstants.YYYYMMDD);
+		}
+	}
+
+	public void setValidityPeriodFormattedDate(String validityPeriodFormattedDate) {
+
+	}
+
+	public String getReleaseDateFormattedDate() {
+		if (this.releaseDate == null) {
+			return null;
+		} else {
+			return DateFormatUtils.format(this.getReleaseDate(), AFTConstants.YYYYMMDD);
+		}
+	}
+
+	public void setReleaseDateFormattedDate(String releaseDateFormattedDate) {
+
+	}
+
+}

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

@@ -248,7 +248,7 @@ public class DemandServiceImpl extends BaseMybatisDao<DemandMapper> implements D
 			if (null != keywords && keywords.size() > 0) {
 				List<AchievementDemand> list = achievementKeywordMapper.selectAchievementDemand(keywords);
 				if (null != list && list.size() > 0) {
-					for(AchievementDemand ad : list){
+					for (AchievementDemand ad : list) {
 						ad.setDemandId(d.getId());
 					}
 					achievementDemandMapper.insertBatch(list);
@@ -292,7 +292,7 @@ public class DemandServiceImpl extends BaseMybatisDao<DemandMapper> implements D
 		demandMapper.insert(d);
 		disposeDemandKeyword(keywords, d, false);
 	}
-	
+
 	@Override
 	public List<AchievementDemandListBo> selectAchievementDemandListByDemandId(String id) {
 		return achievementDemandMapper.selectAchievementDemandListByDemandId(id);
@@ -457,8 +457,9 @@ public class DemandServiceImpl extends BaseMybatisDao<DemandMapper> implements D
 				demandKeywordMapper.batchDeleteByDemandId(d.getId());
 			}
 			List<DemandKeyword> list = new ArrayList<>();
+			DemandKeyword dk = null;
 			for (int i = 0; i < keywords.length; i++) {
-				DemandKeyword dk = new DemandKeyword();
+				dk = new DemandKeyword();
 				dk.setId(UUID.randomUUID().toString());
 				dk.setDemandId(d.getId());
 				dk.setKeyword(keywords[i].trim());
@@ -468,5 +469,4 @@ public class DemandServiceImpl extends BaseMybatisDao<DemandMapper> implements D
 		}
 	}
 
-	
 }

+ 11 - 9
src/main/java/com/goafanti/patent/service/impl/PatentInfoServiceImpl.java

@@ -133,9 +133,10 @@ public class PatentInfoServiceImpl extends BaseMybatisDao<PatentInfoMapper> impl
 
 	@SuppressWarnings("unchecked")
 	@Override
-	public Pagination<PatentManageListBo> getManagePatentList(String contractId, Integer serialNumber, String patentNumber, String office,
-			String locationProvince, String unitName, Integer patentCatagory, String patentName, Integer patentState,
-			String[] cDate, String[] pDate, String author, String uid, Integer pageNo, Integer pageSize) {
+	public Pagination<PatentManageListBo> getManagePatentList(String contractId, Integer serialNumber,
+			String patentNumber, String office, String locationProvince, String unitName, Integer patentCatagory,
+			String patentName, Integer patentState, String[] cDate, String[] pDate, String author, String uid,
+			Integer pageNo, Integer pageSize) {
 		Map<String, Object> params = new HashMap<>();
 		Date cStart = null;
 		Date cEnd = null;
@@ -179,8 +180,8 @@ public class PatentInfoServiceImpl extends BaseMybatisDao<PatentInfoMapper> impl
 		if (pEnd != null) {
 			params.put("pEnd", pEnd);
 		}
-		
-		if (!StringUtils.isBlank(contractId)){
+
+		if (!StringUtils.isBlank(contractId)) {
 			params.put("contractId", contractId);
 		}
 
@@ -367,13 +368,13 @@ public class PatentInfoServiceImpl extends BaseMybatisDao<PatentInfoMapper> impl
 
 	@Override
 	public void updatePatentInfo(PatentInfo p, PatentLog log, Date recordTime) {
-		
+
 		if (!StringUtils.isBlank(p.getPatentProryStatementUrl())) {
 			OrganizationIdentity oi = organizationIdentityMapper.selectOrgIdentityByUserId(p.getUid());
 			oi.setPatentProryStatementUrl(p.getPatentProryStatementUrl());
 			organizationIdentityMapper.updateByPrimaryKeySelective(oi);
 		}
-		
+
 		if (null != log.getState() && recordTime != null && null != log.getPrincipal()) {
 			log.setId(UUID.randomUUID().toString());
 			log.setPid(p.getId());
@@ -483,8 +484,9 @@ public class PatentInfoServiceImpl extends BaseMybatisDao<PatentInfoMapper> impl
 		List<PatentLog> p = new ArrayList<PatentLog>();
 		List<PatentInfo> list = patentInfoMapper.selectByPrimaryKeys(Arrays.asList(ids));
 		if (null != list && list.size() > 0) {
+			PatentLog patentLog = null;
 			for (PatentInfo patentInfo : list) {
-				PatentLog patentLog = new PatentLog();
+				patentLog = new PatentLog();
 				BeanUtils.copyProperties(pl, patentLog);
 				patentLog.setId(UUID.randomUUID().toString());
 				patentLog.setPid(patentInfo.getId());
@@ -564,7 +566,7 @@ public class PatentInfoServiceImpl extends BaseMybatisDao<PatentInfoMapper> impl
 		List<PatentLog> pl = new ArrayList<>();
 		contract.setPatentStatus(ContractBusinessStatus.CREATE.getCode());
 		contractMapper.updateByPrimaryKeySelective(contract);
-		
+
 		for (int i = 0; i < contract.getPatentNum(); i++) {
 			PatentInfo p = new PatentInfo();
 			PatentLog l = new PatentLog();

+ 16 - 15
src/main/java/com/goafanti/techproject/service/impl/TechProjectServiceImpl.java

@@ -50,7 +50,7 @@ public class TechProjectServiceImpl extends BaseMybatisDao<TechProjectMapper> im
 	@Autowired
 	private UserMapper				userMapper;
 	@Autowired
-	private ContractMapper 			contractMapper;	
+	private ContractMapper			contractMapper;
 
 	@SuppressWarnings("unchecked")
 	@Override
@@ -153,14 +153,14 @@ public class TechProjectServiceImpl extends BaseMybatisDao<TechProjectMapper> im
 
 	@SuppressWarnings("unchecked")
 	@Override
-	public Pagination<TechProjectManageListBo> listManageTechProject(String contractId, String province, String unitName, String uid,
-			Integer pageNo, Integer pageSize) {
+	public Pagination<TechProjectManageListBo> listManageTechProject(String contractId, String province,
+			String unitName, String uid, Integer pageNo, Integer pageSize) {
 		Map<String, Object> params = new HashMap<>();
 
 		if (!TokenManager.hasRole(AFTConstants.SUPERADMIN)) {
 			params.put("principal", TokenManager.getAdminId());
 		}
-		
+
 		if (!StringUtils.isBlank(contractId)) {
 			params.put("contractId", contractId);
 		}
@@ -171,8 +171,8 @@ public class TechProjectServiceImpl extends BaseMybatisDao<TechProjectMapper> im
 		if (!StringUtils.isBlank(unitName)) {
 			params.put("unitName", unitName);
 		}
-		
-		if (!StringUtils.isBlank(uid)){
+
+		if (!StringUtils.isBlank(uid)) {
 			params.put("uid", uid);
 		}
 		if (pageNo == null || pageNo < 0) {
@@ -229,13 +229,14 @@ public class TechProjectServiceImpl extends BaseMybatisDao<TechProjectMapper> im
 	public void batchInsertContractRecord(Contract contract) {
 		contract.setTechProjectStatus(ContractBusinessStatus.CREATE.getCode());
 		contractMapper.updateByPrimaryKeySelective(contract);
-		
+
 		List<TechProject> tp = new ArrayList<>();
 		List<TechProjectLog> tpl = new ArrayList<>();
-		
+		TechProject p = null;
+		TechProjectLog l = null;
 		for (int i = 0; i < contract.getTechProjectNum(); i++) {
-			TechProject p = new TechProject();
-			TechProjectLog l = new TechProjectLog();
+			p = new TechProject();
+			l = new TechProjectLog();
 			p.setId(UUID.randomUUID().toString());
 			p.setUid(contract.getUid());
 			p.setContractId(contract.getId());
@@ -247,23 +248,23 @@ public class TechProjectServiceImpl extends BaseMybatisDao<TechProjectMapper> im
 			Calendar now = Calendar.getInstance();
 			now.set(Calendar.MILLISECOND, 0);
 			p.setRecordTime(now.getTime());
-			
+
 			l.setId(UUID.randomUUID().toString());
 			l.setPid(p.getId());
 			l.setPrincipal(TokenManager.getAdminId());
 			l.setOperator(TokenManager.getAdminId());
 			l.setRecordTime(now.getTime());
 			l.setState(TechProjectStatus.CREATE.getCode());
-			
+
 			tp.add(p);
 			tpl.add(l);
 		}
-		
+
 		techProjectMapper.batchInsert(tp);
 		techProjectLogMapper.batchInsert(tpl);
-		
+
 	}
-	
+
 	private void createNotice(TechProject t, TechProjectLog l) {
 		TechProject info = techProjectMapper.selectByPrimaryKey(t.getId());