Antiloveg 8 years ago
parent
commit
f9882a0d7d

+ 154 - 0
src/main/java/com/goafanti/achievement/bo/AchievementImportBo.java

@@ -0,0 +1,154 @@
+package com.goafanti.achievement.bo;
+/**
+ * 批量导入科技成果
+ */
+public class AchievementImportBo {
+	
+	/**
+	 * 数据类别
+	 */
+	private Integer	dataCategory;
+	
+	/**
+	 * 名称
+	 */
+	private String	name;
+	
+	
+	/**
+	 * 关键词
+	 */
+	private String	keyword;
+		
+	/**
+	 * 类型
+	 */
+	private Integer	category;
+	
+	/**
+	 * 所有人名称
+	 */
+	private String ownerName;
+	
+	
+	/**
+	 * 所有人类型
+	 * 
+	 */
+	private Integer ownerType;
+	
+	/**
+	 * 所有人证件号
+	 */
+	private String ownerIdNumber;
+	
+	/**
+	 * 所有人联系电话
+	 */
+	private String ownerMobile;
+	
+	/**
+	 * 所有人电子邮箱
+	 */
+	private String ownerEmail;
+	
+	/**
+	 * 所有人通讯地址
+	 */
+	private String ownerPostalAddress;
+	
+	/**
+	 * 合作方式
+	 */
+	private Integer cooperationMode;
+
+	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;
+	}
+
+	public Integer getCategory() {
+		return category;
+	}
+
+	public void setCategory(Integer category) {
+		this.category = category;
+	}
+
+	public String getOwnerName() {
+		return ownerName;
+	}
+
+	public void setOwnerName(String ownerName) {
+		this.ownerName = ownerName;
+	}
+
+	public Integer getOwnerType() {
+		return ownerType;
+	}
+
+	public void setOwnerType(Integer ownerType) {
+		this.ownerType = ownerType;
+	}
+
+	public String getOwnerIdNumber() {
+		return ownerIdNumber;
+	}
+
+	public void setOwnerIdNumber(String ownerIdNumber) {
+		this.ownerIdNumber = ownerIdNumber;
+	}
+
+	public String getOwnerMobile() {
+		return ownerMobile;
+	}
+
+	public void setOwnerMobile(String ownerMobile) {
+		this.ownerMobile = ownerMobile;
+	}
+
+	public String getOwnerEmail() {
+		return ownerEmail;
+	}
+
+	public void setOwnerEmail(String ownerEmail) {
+		this.ownerEmail = ownerEmail;
+	}
+
+	public String getOwnerPostalAddress() {
+		return ownerPostalAddress;
+	}
+
+	public void setOwnerPostalAddress(String ownerPostalAddress) {
+		this.ownerPostalAddress = ownerPostalAddress;
+	}
+
+	public Integer getCooperationMode() {
+		return cooperationMode;
+	}
+
+	public void setCooperationMode(Integer cooperationMode) {
+		this.cooperationMode = cooperationMode;
+	} 
+	
+	
+}

+ 1 - 8
src/main/java/com/goafanti/achievement/controller/AchievementApiController.java

@@ -37,14 +37,7 @@ public class AchievementApiController extends CertifyApiController {
 	@Resource
 	private AftFileService		aftFileService;
 	
-	/**
-	 * 批量导入科技成果
-	 */
-	@RequestMapping(value = "/importAchievement", method = RequestMethod.POST)
-	public Result importAchievement(){
-		Result res = new Result();
-		return res;
-	}
+	
 	
 	/**
 	 * 成果需求匹配列表

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

@@ -2,6 +2,7 @@ package com.goafanti.achievement.service;
 
 import java.util.List;
 
+import com.goafanti.achievement.bo.AchievementImportBo;
 import com.goafanti.achievement.bo.AchievementListBo;
 import com.goafanti.achievement.bo.AchievementOrgOwnerDetailBo;
 import com.goafanti.achievement.bo.AchievementUserOwnerDetailBo;
@@ -41,5 +42,7 @@ public interface AchievementService {
 
 	List<DemandAchievementListBo> selectAchievementDemandListByAchievementId(String id);
 
+	void insertImport(AchievementImportBo[] data);
+
 
 }

+ 14 - 4
src/main/java/com/goafanti/achievement/service/impl/AchievementServiceImpl.java

@@ -13,6 +13,7 @@ import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import com.goafanti.achievement.bo.AchievementImportBo;
 import com.goafanti.achievement.bo.AchievementListBo;
 import com.goafanti.achievement.bo.AchievementOrgOwnerDetailBo;
 import com.goafanti.achievement.bo.AchievementUserOwnerDetailBo;
@@ -135,7 +136,7 @@ public class AchievementServiceImpl extends BaseMybatisDao<AchievementMapper> im
 
 	@Override
 	public int deleteByPrimaryKey(List<String> id) {
-		achievementKeywordMapper.batcheDeleteByDemandIds(id);
+		achievementKeywordMapper.batchDeleteByDemandIds(id);
 		achievementDemandMapper.batchDeleteByAchievementIds(id);
 		return achievementMapper.batchDeleteByPrimaryKey(id);
 	}
@@ -267,12 +268,22 @@ 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);
 	}
 
+	@Override
+	public void insertImport(AchievementImportBo[] data) {
+		int length = data.length;
+		if (data != null && length > 0) {
+			for (int i = 0; i < length; i++) {
+				
+			}
+		}
+
+	}
 
 	private void createTechBorkerNotice(Achievement a) {
 		noticeMapper.insert(disposeNotice(a, null));
@@ -332,7 +343,7 @@ public class AchievementServiceImpl extends BaseMybatisDao<AchievementMapper> im
 	private void disposeAchievementKeyword(String[] keywords, Achievement a, boolean delete) {
 		if (null != keywords && keywords.length > 0) {
 			if (delete) {
-				achievementKeywordMapper.batcheDeleteByDemandId(a.getId());
+				achievementKeywordMapper.batchDeleteByDemandId(a.getId());
 			}
 			List<AchievementKeyword> list = new ArrayList<>();
 			AchievementKeyword ak = null;
@@ -347,5 +358,4 @@ public class AchievementServiceImpl extends BaseMybatisDao<AchievementMapper> im
 		}
 	}
 
-	
 }

+ 41 - 24
src/main/java/com/goafanti/admin/controller/AdminAchievementApiController.java

@@ -18,6 +18,7 @@ import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.multipart.MultipartFile;
 
+import com.goafanti.achievement.bo.AchievementImportBo;
 import com.goafanti.achievement.bo.InputAchievement;
 import com.goafanti.achievement.service.AchievementService;
 import com.goafanti.admin.service.AftFileService;
@@ -39,22 +40,44 @@ import com.goafanti.user.service.UserService;
 @RequestMapping(value = "/api/admin/achievement")
 public class AdminAchievementApiController extends CertifyApiController {
 	@Resource
-	private AchievementService achievementService;
+	private AchievementService	achievementService;
 	@Resource
-	private UserService userService;
+	private UserService			userService;
 	@Resource
-	private AftFileService aftFileService;
-	
+	private AftFileService		aftFileService;
+
+	/**
+	 * 批量导入科技成果
+	 */
+	@RequestMapping(value = "/importAchievement", method = RequestMethod.POST)
+	public Result importAchievement(@RequestParam(name = "data[]", required = false) AchievementImportBo[] data) {
+		Result res = new Result();
+		if (data == null || data.length < 1) {
+			res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", ""));
+			return res;
+		}
+
+		/*for (int i = 0; i < data.length; i++) {
+			for(Field f : data[i].getClass().getDeclaredFields()){
+		        f.setAccessible(true);
+		        if(f.get(data[i]) == null){
+		        }
+		    }
+		}*/
+		achievementService.insertImport(data);
+		return res;
+	}
+
 	/**
 	 * 成果需求匹配列表
 	 */
 	@RequestMapping(value = "/achievementDemand", method = RequestMethod.GET)
-	public Result achievementDemand(String id){
+	public Result achievementDemand(String id) {
 		Result res = new Result();
 		res.setData(achievementService.selectAchievementDemandListByAchievementId(id));
 		return res;
 	}
-	
+
 	/**
 	 * 上传技术需求批量导入Excel模板
 	 * 
@@ -92,7 +115,7 @@ public class AdminAchievementApiController extends CertifyApiController {
 		}
 		return res;
 	}
-	
+
 	/**
 	 * 下载技术需求批量导入Excel模板
 	 * 
@@ -120,35 +143,31 @@ public class AdminAchievementApiController extends CertifyApiController {
 		return res;
 	}
 
-	
-	
 	/**
 	 * 个人成果所有人列表
 	 */
 	@RequestMapping(value = "/userOwner", method = RequestMethod.GET)
-	public Result getAchievementUserOwner(String name){
+	public Result getAchievementUserOwner(String name) {
 		Result res = new Result();
-		if (StringUtils.isBlank(name)){
+		if (StringUtils.isBlank(name)) {
 			return res;
 		}
 		res.setData(userService.selectAchievementUserOwner(name));
 		return res;
 	}
-	
+
 	/**
 	 * 组织成果所有人列表
 	 */
 	@RequestMapping(value = "/orgOwner", method = RequestMethod.GET)
-	public Result getAchievementOrgOwner(String name){
+	public Result getAchievementOrgOwner(String name) {
 		Result res = new Result();
-		if (StringUtils.isBlank(name)){
+		if (StringUtils.isBlank(name)) {
 			return res;
 		}
 		res.setData(userService.selectAchievementOrgOwner(name));
 		return res;
 	}
-	
-	
 
 	/**
 	 * 成果撤消发布(下架)
@@ -268,7 +287,7 @@ public class AdminAchievementApiController extends CertifyApiController {
 		res.setData(achievementService.selectUserOwnerDetail(id));
 		return res;
 	}
-	
+
 	/**
 	 * 组织用户成果详情详情
 	 */
@@ -296,7 +315,6 @@ public class AdminAchievementApiController extends CertifyApiController {
 		if (StringUtils.isNumeric(pageSize)) {
 			pSize = Integer.parseInt(pageSize);
 		}
-
 		if (StringUtils.isNumeric(pageNo)) {
 			pNo = Integer.parseInt(pageNo);
 		}
@@ -348,7 +366,7 @@ public class AdminAchievementApiController extends CertifyApiController {
 
 		Achievement a = new Achievement();
 		BeanUtils.copyProperties(ia, a);
-		achievementService.saveAchievement(a,keywords);
+		achievementService.saveAchievement(a, keywords);
 		return res;
 	}
 
@@ -408,7 +426,6 @@ public class AdminAchievementApiController extends CertifyApiController {
 			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "找不到关键词", "关键词"));
 			return res;
 		}
-		
 
 		if (null == ia.getOwnerType()) {
 			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "找不到所有人类型", "所有人类型"));
@@ -419,16 +436,16 @@ public class AdminAchievementApiController extends CertifyApiController {
 			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "找不到合作方式", "合作方式"));
 			return res;
 		}
-		
-		for (int i=0; i<keywords.length; i++){
-			if (AFTConstants.KEYWORDLENTH < keywords[i].length()){
+
+		for (int i = 0; i < keywords.length; i++) {
+			if (AFTConstants.KEYWORDLENTH < keywords[i].length()) {
 				res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "关键词长度"));
 				return res;
 			}
 		}
 		return res;
 	}
-	
+
 	private String handleFile(Result res, HttpServletRequest req, String fileName, List<MultipartFile> files,
 			MultipartFile mf) {
 		if (!files.isEmpty()) {

+ 2 - 2
src/main/java/com/goafanti/common/dao/AchievementKeywordMapper.java

@@ -20,9 +20,9 @@ public interface AchievementKeywordMapper {
 
 	void insertBatch(List<AchievementKeyword> list);
 
-	int batcheDeleteByDemandId(String id);
+	int batchDeleteByDemandId(String id);
 
-	int batcheDeleteByDemandIds(List<String> id);
+	int batchDeleteByDemandIds(List<String> id);
 
 	List<AchievementDemand> selectAchievementDemand(List<String> keywords);
 

+ 1 - 1
src/main/java/com/goafanti/common/mapper/AchievementKeywordMapper.xml

@@ -84,7 +84,7 @@
        
   </delete>
   
-  <delete id="batcheDeleteByAchievementIds" parameterType="java.util.List">
+  <delete id="batchDeleteByAchievementIds" parameterType="java.util.List">
   	 delete from achievement_keyword where achievement_id in
         <foreach item="item" collection="index" open="(" separator="," close=")">
             #{item}