Browse Source

合同管理--软著、科技项目批量创建,高企认定创建

Antiloveg 8 years ago
parent
commit
bf2fca82b1

+ 83 - 0
src/main/java/com/goafanti/admin/controller/AdminContractApiController.java

@@ -62,10 +62,93 @@ public class AdminContractApiController extends CertifyApiController {
 	private TechProjectService		techProjectService;
 	
 	/**
+	 * 合同管理--创建高企认定申请
+	 */
+	@RequestMapping(value = "/createCognizance", method = RequestMethod.POST)
+	public Result createCognizance(String id){
+		Result res = new Result();
+		if (StringUtils.isBlank(id)) {
+			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "找不到合同ID", "合同ID"));
+			return res;
+		}
+		Contract c = contractService.selectByPrimaryKey(id);
+		if (null == c) {
+			res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "合同ID"));
+			return res;
+		}
+		if (!c.getCognizanceStatus().equals(ContractBusinessStatus.UNCREATE.getCode())){
+			res.getError().add(buildError(ErrorConstants.CONTRACT_COPYRIGHT_CREATED, "", "当前合同高企认定申请已创建,无法重复创建!"));
+			return res;
+		}
+		
+		if (null == c.getCognizanceYear()){
+			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "找不到高企认定申请年份", "高企认定申请年份"));
+			return res;
+		}
+		
+		if (null != c.getCognizanceYear()) {
+			if (!disposeCog(c.getUid(), res).getError().isEmpty()) {
+				return res;
+			}
+		}
+		
+		orgCognizanceService.insertContractRecord(c);
+		return res;
+	}
+	
+	/**
+	 * 合同管理--批量创建科技项目
+	 */
+	@RequestMapping(value = "/createTechProject", method = RequestMethod.POST)
+	public Result createTechProject(String id){
+		Result res = new Result();
+		if (StringUtils.isBlank(id)) {
+			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "找不到合同ID", "合同ID"));
+			return res;
+		}
+		Contract c = contractService.selectByPrimaryKey(id);
+		if (null == c) {
+			res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "合同ID"));
+			return res;
+		}
+		if (!c.getTechProjectStatus().equals(ContractBusinessStatus.UNCREATE.getCode())){
+			res.getError().add(buildError(ErrorConstants.CONTRACT_COPYRIGHT_CREATED, "", "当前合同科技项目申请已创建,无法重复创建!"));
+			return res;
+		}
+		
+		if (c.getTechProjectNum() >= 1 && c.getTechProjectNum() <= 30) {
+			techProjectService.batchInsertContractRecord(c);
+		} else {
+			res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "软著数量"));
+		}
+		return res;
+	}
+	
+	/**
 	 * 合同管理--批量创建软著
 	 */
+	@RequestMapping(value = "/createCopyright", method = RequestMethod.POST)
 	public Result createCopyright(String id){
 		Result res = new Result();
+		if (StringUtils.isBlank(id)) {
+			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "找不到合同ID", "合同ID"));
+			return res;
+		}
+		Contract c = contractService.selectByPrimaryKey(id);
+		if (null == c) {
+			res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "合同ID"));
+			return res;
+		}
+		if (!c.getCopyrightStatus().equals(ContractBusinessStatus.UNCREATE.getCode())){
+			res.getError().add(buildError(ErrorConstants.CONTRACT_COPYRIGHT_CREATED, "", "当前合同软著申请已创建,无法重复创建!"));
+			return res;
+		}
+		
+		if (c.getCopyrightNum() >= 1 && c.getCopyrightNum() <= 30) {
+			copyrightInfoService.batchInsertContractRecord(c);
+		} else {
+			res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "软著数量"));
+		}
 		return res;
 	}
 

+ 3 - 0
src/main/java/com/goafanti/cognizance/service/OrgCognizanceService.java

@@ -14,6 +14,7 @@ import com.goafanti.cognizance.bo.CognizanceOrgInfoBo;
 import com.goafanti.cognizance.bo.CognizanceResearchCostBo;
 import com.goafanti.cognizance.bo.CultivationListBo;
 import com.goafanti.cognizance.bo.LatelyCogRecord;
+import com.goafanti.common.model.Contract;
 import com.goafanti.common.model.OrgCognizance;
 import com.goafanti.common.model.OrgCognizanceLog;
 import com.goafanti.core.mybatis.page.Pagination;
@@ -58,5 +59,7 @@ public interface OrgCognizanceService {
 
 	List<CognizanceContractBo> selectContractCognizanceByContractId(String contractId);
 
+	void insertContractRecord(Contract c);
+
 
 }

+ 28 - 0
src/main/java/com/goafanti/cognizance/service/impl/OrgCognizanceServiceImpl.java

@@ -38,6 +38,7 @@ import com.goafanti.common.enums.NoticeReadStatus;
 import com.goafanti.common.enums.NoticeStatus;
 import com.goafanti.common.enums.OrgCognizanceStatus;
 import com.goafanti.common.enums.ProportionStatus;
+import com.goafanti.common.model.Contract;
 import com.goafanti.common.model.Notice;
 import com.goafanti.common.model.OrgCognizance;
 import com.goafanti.common.model.OrgCognizanceLog;
@@ -416,4 +417,31 @@ public class OrgCognizanceServiceImpl extends BaseMybatisDao<OrgCognizanceMapper
 		return orgCognizanceMapper.selectContractCognizanceByContractId(contractId);
 	}
 
+	@Override
+	public void insertContractRecord(Contract c) {
+		OrgCognizance oc = new OrgCognizance();
+		oc.setId(UUID.randomUUID().toString());
+		oc.setUid(c.getUid());
+		oc.setContractId(c.getId());
+		oc.setYear(c.getCognizanceYear());
+		oc.setDeletedSign(DeleteStatus.UNDELETE.getCode());
+		oc.setState(OrgCognizanceStatus.CREATE.getCode());
+		oc.setTechPrincipal(TokenManager.getAdminId());
+		oc.setFounder(TokenManager.getAdminId());
+		Calendar now = Calendar.getInstance();
+		now.set(Calendar.MILLISECOND, 0);
+		oc.setRecordTime(now.getTime());
+		
+		OrgCognizanceLog ocl = new OrgCognizanceLog();
+		ocl.setId(UUID.randomUUID().toString());
+		ocl.setCid(oc.getId());
+		ocl.setPrincipal(TokenManager.getAdminId());
+		ocl.setOperator(TokenManager.getAdminId());
+		ocl.setRecordTime(now.getTime());
+		ocl.setState(OrgCognizanceStatus.CREATE.getCode());
+		
+		orgCognizanceMapper.insert(oc);
+		orgCognizanceLogMapper.insert(ocl);
+	}
+
 }

+ 6 - 0
src/main/java/com/goafanti/common/constant/ErrorConstants.java

@@ -72,4 +72,10 @@ public class ErrorConstants {
 
 	public static final String	CONTRACT_PATENT_CREATED			= "CONTRACT_PATENT_CREATED";
 
+	public static final String	CONTRACT_COPYRIGHT_CREATED		= "CONTRACT_COPYRIGHT_CREATED";
+
+	public static final String	CONTRACT_TECHPROJECT_CREATED	= "CONTRACT_TECHPROJECT_CREATED";
+
+	public static final String	CONTRACT_COGNIZANCE_CREATED		= "CONTRACT_COGNIZANCE_CREATED";
+
 }

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

@@ -34,4 +34,6 @@ public interface CopyrightInfoMapper {
 	Integer countCopyrightDone(String uid);
 
 	List<CopyrightContractListBo> listContractCopyrightByContractId(String contractId);
+
+	void batchInsert(List<CopyrightInfo> ci);
 }

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

@@ -18,4 +18,6 @@ public interface TechProjectLogMapper {
     int updateByPrimaryKey(TechProjectLog record);
 
 	List<TechProjectLog> selectTechProjectLogByPid(String pid);
+
+	void batchInsert(List<TechProjectLog> tpl);
 }

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

@@ -31,4 +31,6 @@ public interface TechProjectMapper {
 	List<OrgUnitNames> selectWebsiteUnitNames(String principal);
 
 	List<TechProjectContractListBo> listContractTechProjectByContractId(String contractId);
+
+	void batchInsert(List<TechProject> tp);
 }

+ 24 - 0
src/main/java/com/goafanti/common/mapper/CopyrightInfoMapper.xml

@@ -450,4 +450,28 @@
   	where ci.contract_id = #{contractId,jdbcType=VARCHAR}
   </select>
   
+   <insert id="batchInsert" parameterType="com.goafanti.common.model.CopyrightInfo">
+    insert into copyright_info (id, uid, serial_number, 
+      create_time, accept_time, principal, 
+      contact, copyright_info, copyright_name, 
+      status, work_issue, comment, 
+      outsource, in_urgent, authorized_date, 
+      certificate_url, copyright_number, application_url, delete_sign, founder, contract_id
+      )
+    values 
+    <foreach item="item" index="index" collection="list" separator=",">
+     (
+      #{item.id,jdbcType=VARCHAR}, #{item.uid,jdbcType=VARCHAR}, #{item.serialNumber,jdbcType=INTEGER}, 
+      #{item.createTime,jdbcType=TIMESTAMP}, #{item.acceptTime,jdbcType=TIMESTAMP}, #{item.principal,jdbcType=VARCHAR}, 
+      #{item.contact,jdbcType=INTEGER}, #{item.copyrightInfo,jdbcType=VARCHAR}, #{item.copyrightName,jdbcType=VARCHAR}, 
+      #{item.status,jdbcType=INTEGER}, #{item.workIssue,jdbcType=VARCHAR}, #{item.comment,jdbcType=VARCHAR}, 
+      #{item.outsource,jdbcType=VARCHAR}, #{item.inUrgent,jdbcType=INTEGER}, #{item.authorizedDate,jdbcType=TIMESTAMP}, 
+      #{item.certificateUrl,jdbcType=VARCHAR}, 
+      #{item.copyrightNumber,jdbcType=VARCHAR}, 
+      #{item.applicationUrl,jdbcType=VARCHAR}, #{item.deleteSign,jdbcType=INTEGER}, #{item.founder,jdbcType=VARCHAR},
+      #{item.contractId,jdbcType=VARCHAR}
+      )
+    </foreach>
+  </insert>
+  
 </mapper>

+ 14 - 0
src/main/java/com/goafanti/common/mapper/TechProjectLogMapper.xml

@@ -122,4 +122,18 @@
 		on a.id = p.operator ) m LEFT JOIN admin b on m.pri = b. id
     where pid = #{pid,jdbcType=VARCHAR} order by m.record_time desc
   </select>
+  
+   <insert id="batchInsert" parameterType="com.goafanti.common.model.TechProjectLog">
+     insert into tech_project_log (id, pid, record_time, 
+      state, principal, operator, 
+      comment)
+    values 
+    <foreach item="item" index="index" collection="list" separator=",">
+     (
+      #{item.id,jdbcType=VARCHAR}, #{item.pid,jdbcType=VARCHAR}, #{item.recordTime,jdbcType=TIMESTAMP}, 
+      #{item.state,jdbcType=INTEGER}, #{item.principal,jdbcType=VARCHAR}, #{item.operator,jdbcType=VARCHAR}, 
+      #{item.comment,jdbcType=VARCHAR}
+     )
+    </foreach>
+  </insert>
 </mapper>

+ 30 - 0
src/main/java/com/goafanti/common/mapper/TechProjectMapper.xml

@@ -500,4 +500,34 @@
 		left join admin a on a.id = tp.principal
 		where tp.contract_id = #{contractId,jdbcType=VARCHAR}
 	</select>
+	
+  <insert id="batchInsert" parameterType="com.goafanti.common.model.TechProject">
+   insert into tech_project (id, uid, serial_number,
+		contacts, department, dispatch_info,
+		project_name, project_catagory, tech_field,
+		project_des, project_mode, project_approval,
+		subsidy, consultant, approval_url,
+		state, create_time, accept_date,
+		approved_date, record_time, deleted_sign, founder, contract_id, principal
+		)
+    values 
+    <foreach item="item" index="index" collection="list" separator=",">
+      (
+      	#{item.id,jdbcType=VARCHAR}, #{item.uid,jdbcType=VARCHAR},
+		#{item.serialNumber,jdbcType=INTEGER},
+		#{item.contacts,jdbcType=INTEGER}, #{item.department,jdbcType=VARCHAR}, #{item.dispatchInfo,jdbcType=VARCHAR},
+		#{item.projectName,jdbcType=VARCHAR}, #{item.projectCatagory,jdbcType=VARCHAR},
+		#{item.techField,jdbcType=VARCHAR},
+		#{item.projectDes,jdbcType=VARCHAR}, #{item.projectMode,jdbcType=INTEGER}, #{item.projectApproval,jdbcType=DECIMAL},
+		#{item.subsidy,jdbcType=INTEGER}, #{item.consultant,jdbcType=VARCHAR},
+		#{item.approvalUrl,jdbcType=VARCHAR},
+		#{item.state,jdbcType=INTEGER}, #{item.createTime,jdbcType=TIMESTAMP}, #{item.acceptDate,jdbcType=TIMESTAMP},
+		#{item.approvedDate,jdbcType=TIMESTAMP}, #{item.recordTime,jdbcType=TIMESTAMP},
+		#{item.deletedSign,jdbcType=INTEGER}, #{item.founder,jdbcType=VARCHAR}, #{item.contractId,jdbcType=VARCHAR},
+		#{item.principal,jdbcType=VARCHAR}
+		)
+  </foreach>
+  </insert>
+	
+	
 </mapper>

+ 3 - 0
src/main/java/com/goafanti/copyright/service/CopyrightInfoService.java

@@ -3,6 +3,7 @@ package com.goafanti.copyright.service;
 import java.util.List;
 
 import com.goafanti.common.enums.CopyrightStatus;
+import com.goafanti.common.model.Contract;
 import com.goafanti.common.model.CopyrightInfo;
 import com.goafanti.common.model.CopyrightLog;
 import com.goafanti.copyright.bo.CopyrightContractListBo;
@@ -41,4 +42,6 @@ public interface CopyrightInfoService {
 
 	List<CopyrightContractListBo> listContractCopyrightByContractId(String contractId);
 
+	void batchInsertContractRecord(Contract c);
+
 }

+ 65 - 23
src/main/java/com/goafanti/copyright/service/impl/CopyrightInfoServiceImpl.java

@@ -17,15 +17,19 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import com.goafanti.common.constant.AFTConstants;
+import com.goafanti.common.dao.ContractMapper;
 import com.goafanti.common.dao.CopyrightInfoMapper;
 import com.goafanti.common.dao.CopyrightLogMapper;
 import com.goafanti.common.dao.NoticeMapper;
 import com.goafanti.common.dao.OrgIntellectualPropertyMapper;
 import com.goafanti.common.dao.UserMapper;
+import com.goafanti.common.enums.ContractBusinessStatus;
 import com.goafanti.common.enums.CopyrightStatus;
+import com.goafanti.common.enums.DeleteStatus;
 import com.goafanti.common.enums.IntellectualPropertyType;
 import com.goafanti.common.enums.NoticeReadStatus;
 import com.goafanti.common.enums.NoticeStatus;
+import com.goafanti.common.model.Contract;
 import com.goafanti.common.model.CopyrightInfo;
 import com.goafanti.common.model.CopyrightLog;
 import com.goafanti.common.model.Notice;
@@ -52,6 +56,8 @@ public class CopyrightInfoServiceImpl extends BaseMybatisDao<CopyrightInfoMapper
 	private NoticeMapper					noticeMapper;
 	@Autowired
 	private UserMapper						userMapper;
+	@Autowired
+	private ContractMapper					contractMapper;
 
 	@Override
 	public CopyrightInfo insert(CopyrightInfo copyrightInfo, String aid) {
@@ -245,29 +251,6 @@ public class CopyrightInfoServiceImpl extends BaseMybatisDao<CopyrightInfoMapper
 		return 0;
 	}
 
-	private void createNotice(CopyrightInfo c, CopyrightLog l) {
-		CopyrightInfo info = copyrightInfoMapper.selectByPrimaryKey(c.getId());
-		Notice n = new Notice();
-		Calendar now = Calendar.getInstance();
-		now.set(Calendar.MILLISECOND, 0);
-		n.setId(UUID.randomUUID().toString());
-		n.setCreateTime(now.getTime());
-		n.setReaded(NoticeReadStatus.UNREAD.getCode());
-
-		User u = userMapper.selectByPrimaryKey(c.getUid());
-		if (null != u) {
-			n.setPid(u.getAid());
-		}
-
-		n.setUid(c.getUid());
-		n.setRid(c.getId());
-
-		n.setAid(l.getPrincipal());
-		n.setContent("编号" + info.getSerialNumber() + "  " + CopyrightStatus.getStatus(l.getStatus()).getDesc());
-		n.setNoticeType(NoticeStatus.COPYRIGHT.getCode());
-		noticeMapper.insert(n);
-	}
-
 	@Override
 	public CopyrightInfo saveCopyright(CopyrightInfo copyrightInfo, String salesman) {
 		Calendar now = Calendar.getInstance();
@@ -305,4 +288,63 @@ public class CopyrightInfoServiceImpl extends BaseMybatisDao<CopyrightInfoMapper
 		return copyrightInfoMapper.listContractCopyrightByContractId(contractId);
 	}
 
+	@Override
+	public void batchInsertContractRecord(Contract contract) {
+		contract.setCopyrightStatus(ContractBusinessStatus.CREATE.getCode());
+		contractMapper.updateByPrimaryKeySelective(contract);
+		
+		List<CopyrightInfo> ci = new ArrayList<>();
+		List<CopyrightLog> cl = new ArrayList<>();
+
+		for (int i = 0; i < contract.getCopyrightNum(); i++) {
+			CopyrightInfo c = new CopyrightInfo();
+			CopyrightLog l = new CopyrightLog();
+			c.getId();
+			c.setUid(contract.getUid());
+			c.setContractId(contract.getId());
+			c.setStatus(CopyrightStatus.CREATE.getCode());
+			c.setPrincipal(TokenManager.getAdminId());
+			c.setFounder(TokenManager.getAdminId());
+			Calendar now = Calendar.getInstance();
+			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);
+		}
+		copyrightInfoMapper.batchInsert(ci);
+		copyrightLogMapper.batchInsert(cl);
+	}
+
+	private void createNotice(CopyrightInfo c, CopyrightLog l) {
+		CopyrightInfo info = copyrightInfoMapper.selectByPrimaryKey(c.getId());
+		Notice n = new Notice();
+		Calendar now = Calendar.getInstance();
+		now.set(Calendar.MILLISECOND, 0);
+		n.setId(UUID.randomUUID().toString());
+		n.setCreateTime(now.getTime());
+		n.setReaded(NoticeReadStatus.UNREAD.getCode());
+
+		User u = userMapper.selectByPrimaryKey(c.getUid());
+		if (null != u) {
+			n.setPid(u.getAid());
+		}
+
+		n.setUid(c.getUid());
+		n.setRid(c.getId());
+
+		n.setAid(l.getPrincipal());
+		n.setContent("编号" + info.getSerialNumber() + "  " + CopyrightStatus.getStatus(l.getStatus()).getDesc());
+		n.setNoticeType(NoticeStatus.COPYRIGHT.getCode());
+		noticeMapper.insert(n);
+	}
+
 }

+ 3 - 0
src/main/java/com/goafanti/techproject/service/TechProjectService.java

@@ -3,6 +3,7 @@ package com.goafanti.techproject.service;
 import java.util.Date;
 import java.util.List;
 
+import com.goafanti.common.model.Contract;
 import com.goafanti.common.model.TechProject;
 import com.goafanti.common.model.TechProjectLog;
 import com.goafanti.core.mybatis.page.Pagination;
@@ -34,4 +35,6 @@ public interface TechProjectService {
 
 	List<TechProjectContractListBo> listContractTechProjectByContractId(String contractId);
 
+	void batchInsertContractRecord(Contract c);
+
 }

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

@@ -1,5 +1,6 @@
 package com.goafanti.techproject.service.impl;
 
+import java.util.ArrayList;
 import java.util.Calendar;
 import java.util.Date;
 import java.util.HashMap;
@@ -11,15 +12,18 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import com.goafanti.common.constant.AFTConstants;
+import com.goafanti.common.dao.ContractMapper;
 import com.goafanti.common.dao.NoticeMapper;
 import com.goafanti.common.dao.TechProjectLogMapper;
 import com.goafanti.common.dao.TechProjectMapper;
 import com.goafanti.common.dao.UserMapper;
+import com.goafanti.common.enums.ContractBusinessStatus;
 import com.goafanti.common.enums.DeleteStatus;
 import com.goafanti.common.enums.NoticeReadStatus;
 import com.goafanti.common.enums.NoticeStatus;
 import com.goafanti.common.enums.TechProjectStatus;
 import com.goafanti.common.model.Admin;
+import com.goafanti.common.model.Contract;
 import com.goafanti.common.model.Notice;
 import com.goafanti.common.model.TechProject;
 import com.goafanti.common.model.TechProjectLog;
@@ -45,6 +49,8 @@ public class TechProjectServiceImpl extends BaseMybatisDao<TechProjectMapper> im
 	private NoticeMapper			noticeMapper;
 	@Autowired
 	private UserMapper				userMapper;
+	@Autowired
+	private ContractMapper 			contractMapper;	
 
 	@SuppressWarnings("unchecked")
 	@Override
@@ -200,6 +206,59 @@ public class TechProjectServiceImpl extends BaseMybatisDao<TechProjectMapper> im
 		return techProjectMapper.selectWebsiteUnitNames(principal);
 	}
 
+	private TechProject disposeTechProjectSave(TechProject techProject) {
+		techProject.setId(UUID.randomUUID().toString());
+		Calendar now = Calendar.getInstance();
+		now.set(Calendar.MILLISECOND, 0);
+		techProject.setRecordTime(now.getTime());
+		techProject.setDeletedSign(DeleteStatus.UNDELETE.getCode());
+		techProjectMapper.insert(techProject);
+		return techProject;
+	}
+
+	@Override
+	public List<TechProjectContractListBo> listContractTechProjectByContractId(String contractId) {
+		return techProjectMapper.listContractTechProjectByContractId(contractId);
+	}
+
+	@Override
+	public void batchInsertContractRecord(Contract contract) {
+		contract.setPatentStatus(ContractBusinessStatus.CREATE.getCode());
+		contractMapper.updateByPrimaryKeySelective(contract);
+		
+		List<TechProject> tp = new ArrayList<>();
+		List<TechProjectLog> tpl = new ArrayList<>();
+		
+		for (int i = 0; i < contract.getPatentNum(); i++) {
+			TechProject p = new TechProject();
+			TechProjectLog l = new TechProjectLog();
+			p.setId(UUID.randomUUID().toString());
+			p.setUid(contract.getUid());
+			p.setContractId(contract.getId());
+			p.setDeletedSign(DeleteStatus.UNDELETE.getCode());
+			p.setPrincipal(TokenManager.getAdminId());
+			p.setFounder(TokenManager.getAdminId());
+			p.setState(TechProjectStatus.CREATE.getCode());
+			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());
 
@@ -224,19 +283,4 @@ public class TechProjectServiceImpl extends BaseMybatisDao<TechProjectMapper> im
 		noticeMapper.insert(n);
 	}
 
-	private TechProject disposeTechProjectSave(TechProject techProject) {
-		techProject.setId(UUID.randomUUID().toString());
-		Calendar now = Calendar.getInstance();
-		now.set(Calendar.MILLISECOND, 0);
-		techProject.setRecordTime(now.getTime());
-		techProject.setDeletedSign(DeleteStatus.UNDELETE.getCode());
-		techProjectMapper.insert(techProject);
-		return techProject;
-	}
-
-	@Override
-	public List<TechProjectContractListBo> listContractTechProjectByContractId(String contractId) {
-		return techProjectMapper.listContractTechProjectByContractId(contractId);
-	}
-
 }

+ 6 - 0
src/main/resources/props/error.properties

@@ -45,3 +45,9 @@ RECORD_CALLBACK=\u5f53\u524d\u8bb0\u5f55\u5df2\u9000\u5355\uff0c\u65e0\u6cd5\u4f
 RECORD_SETTLEMENT=\u5f53\u524d\u8bb0\u5f55\u5df2\u7ed3\u6b3e\uff0c\u65e0\u6cd5\u4fee\u6539\uff01
 
 CONTRACT_PATENT_CREATED=\u5f53\u524d\u5408\u540c\u4e13\u5229\u7533\u8bf7\u5df2\u521b\u5efa,\u65e0\u6cd5\u91cd\u590d\u521b\u5efa\uff01
+
+CONTRACT_COPYRIGHT_CREATED=\u5f53\u524d\u5408\u540c\u8f6f\u8457\u7533\u8bf7\u5df2\u521b\u5efa,\u65e0\u6cd5\u91cd\u590d\u521b\u5efa\uff01
+
+CONTRACT_TECHPROJECT_CREATED=\u5f53\u524d\u5408\u540c\u79d1\u6280\u9879\u76ee\u7533\u8bf7\u5df2\u521b\u5efa,\u65e0\u6cd5\u91cd\u590d\u521b\u5efa\uff01
+
+CONTRACT_COGNIZANCE_CREATED=\u5f53\u524d\u5408\u540c\u9ad8\u4f01\u8ba4\u5b9a\u7533\u8bf7\u5df2\u521b\u5efa,\u65e0\u6cd5\u91cd\u590d\u521b\u5efa\uff01