Antiloveg 8 years ago
parent
commit
c44a452b47
25 changed files with 1035 additions and 609 deletions
  1. 30 0
      schema/2017-04-19.sql
  2. 30 0
      src/main/java/com/goafanti/admin/bo/NoticeBo.java
  3. 1 1
      src/main/java/com/goafanti/admin/controller/AdminApiController.java
  4. 3 3
      src/main/java/com/goafanti/admin/service/NoticeService.java
  5. 5 4
      src/main/java/com/goafanti/admin/service/impl/NoticeServiceImpl.java
  6. 11 1
      src/main/java/com/goafanti/cognizance/bo/CognizanceBo.java
  7. 2 2
      src/main/java/com/goafanti/cognizance/service/impl/OrgActivityServiceImpl.java
  8. 26 6
      src/main/java/com/goafanti/cognizance/service/impl/OrgCognizanceServiceImpl.java
  9. 56 0
      src/main/java/com/goafanti/common/enums/NoticeReadStatus.java
  10. 17 5
      src/main/java/com/goafanti/common/mapper/CopyrightInfoMapper.xml
  11. 69 22
      src/main/java/com/goafanti/common/mapper/NoticeMapper.xml
  12. 19 5
      src/main/java/com/goafanti/common/mapper/OrgCognizanceMapper.xml
  13. 17 5
      src/main/java/com/goafanti/common/mapper/PatentInfoMapper.xml
  14. 19 6
      src/main/java/com/goafanti/common/mapper/TechProjectMapper.xml
  15. 16 1
      src/main/java/com/goafanti/common/model/CopyrightInfo.java
  16. 46 1
      src/main/java/com/goafanti/common/model/Notice.java
  17. 266 257
      src/main/java/com/goafanti/common/model/OrgCognizance.java
  18. 15 0
      src/main/java/com/goafanti/common/model/PatentInfo.java
  19. 288 275
      src/main/java/com/goafanti/common/model/TechProject.java
  20. 12 0
      src/main/java/com/goafanti/copyright/bo/CopyrightInfoSummary.java
  21. 19 2
      src/main/java/com/goafanti/copyright/service/impl/CopyrightInfoServiceImpl.java
  22. 12 0
      src/main/java/com/goafanti/patent/bo/PatentManageListBo.java
  23. 26 13
      src/main/java/com/goafanti/patent/service/impl/PatentInfoServiceImpl.java
  24. 12 0
      src/main/java/com/goafanti/techproject/bo/TechProjectManageListBo.java
  25. 18 0
      src/main/java/com/goafanti/techproject/service/impl/TechProjectServiceImpl.java

+ 30 - 0
schema/2017-04-19.sql

@@ -0,0 +1,30 @@
+
+alter table `notice`
+ADD COLUMN  `uid` VARCHAR(36) NULL COMMENT '用户ID',
+ADD COLUMN  `principle` VARCHAR(36) NULL COMMENT '录入信息业务员ID',
+ADD COLUMN  `rid` VARCHAR(36) NULL COMMENT '业务记录ID';
+
+alter table `patent_info`
+ADD COLUMN  `founder` VARCHAR(36) NULL COMMENT '申请创建人ID';
+
+alter table `copyright_info`
+ADD COLUMN  `founder` VARCHAR(36) NULL COMMENT '申请创建人ID';
+
+
+alter table `org_cognizance`
+ADD COLUMN  `founder` VARCHAR(36) NULL COMMENT '申请创建人ID';
+
+
+alter table `tech_project`
+ADD COLUMN  `founder` VARCHAR(36) NULL COMMENT '申请创建人ID';
+
+
+
+
+
+
+
+
+
+
+

+ 30 - 0
src/main/java/com/goafanti/admin/bo/NoticeBo.java

@@ -0,0 +1,30 @@
+package com.goafanti.admin.bo;
+
+import com.goafanti.common.model.Notice;
+
+public class NoticeBo extends Notice{
+	
+	private String unitName;
+	
+	private String principle;
+
+	public String getUnitName() {
+		return unitName;
+	}
+
+	public void setUnitName(String unitName) {
+		this.unitName = unitName;
+	}
+
+	public String getPrinciple() {
+		return principle;
+	}
+
+	public void setPrinciple(String principle) {
+		this.principle = principle;
+	}
+	
+	
+	
+
+}

+ 1 - 1
src/main/java/com/goafanti/admin/controller/AdminApiController.java

@@ -1626,7 +1626,7 @@ public class AdminApiController extends CertifyApiController {
 			}
 		}
 
-		if (StringUtils.isBlank(endDateFormattedDate)) {
+		if (!StringUtils.isBlank(endDateFormattedDate)) {
 			try {
 				orgActivity.setEndDate(DateUtils.parseDate(endDateFormattedDate, AFTConstants.YYYYMMDD));
 			} catch (ParseException e) {

+ 3 - 3
src/main/java/com/goafanti/admin/service/NoticeService.java

@@ -1,13 +1,13 @@
 package com.goafanti.admin.service;
 
-import com.goafanti.common.model.Notice;
+import com.goafanti.admin.bo.NoticeBo;
 import com.goafanti.core.mybatis.page.Pagination;
 
 public interface NoticeService {
 
-	Pagination<Notice> updateListUnreadNoticeByAid(Integer pageNo, Integer pageSize, String adminId);
+	Pagination<NoticeBo> updateListUnreadNoticeByAid(Integer pageNo, Integer pageSize, String adminId);
 
-	Pagination<Notice> ListReadedNoticeByAid(Integer pNo, Integer pSize, String adminId);
+	Pagination<NoticeBo> ListReadedNoticeByAid(Integer pNo, Integer pSize, String adminId);
 
 	int findUnreadNoticeCount();
 

+ 5 - 4
src/main/java/com/goafanti/admin/service/impl/NoticeServiceImpl.java

@@ -8,6 +8,7 @@ import java.util.Map;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import com.goafanti.admin.bo.NoticeBo;
 import com.goafanti.admin.service.NoticeService;
 import com.goafanti.common.constant.AFTConstants;
 import com.goafanti.common.dao.NoticeMapper;
@@ -23,7 +24,7 @@ public class NoticeServiceImpl extends BaseMybatisDao<NoticeMapper> implements N
 
 	@SuppressWarnings("unchecked")
 	@Override
-	public Pagination<Notice> updateListUnreadNoticeByAid(Integer pageNo, Integer pageSize, String aid) {
+	public Pagination<NoticeBo> updateListUnreadNoticeByAid(Integer pageNo, Integer pageSize, String aid) {
 		Map<String, Object> params = new HashMap<>();
 
 		if (!TokenManager.hasRole(AFTConstants.SUPERADMIN)) {
@@ -37,7 +38,7 @@ public class NoticeServiceImpl extends BaseMybatisDao<NoticeMapper> implements N
 		if (pageSize == null || pageSize < 0) {
 			pageSize = 10;
 		}
-		Pagination<Notice> notice = (Pagination<Notice>) findPage("findUnreadNoticeListByPage", "findUnreadNoticeCount",
+		Pagination<NoticeBo> notice = (Pagination<NoticeBo>) findPage("findUnreadNoticeListByPage", "findUnreadNoticeCount",
 				params, pageNo, pageSize);
 
 		if (!TokenManager.hasRole(AFTConstants.SUPERADMIN) && null != notice.getList() && notice.getList().size()>0) {
@@ -53,7 +54,7 @@ public class NoticeServiceImpl extends BaseMybatisDao<NoticeMapper> implements N
 
 	@SuppressWarnings("unchecked")
 	@Override
-	public Pagination<Notice> ListReadedNoticeByAid(Integer pageNo, Integer pageSize, String aid) {
+	public Pagination<NoticeBo> ListReadedNoticeByAid(Integer pageNo, Integer pageSize, String aid) {
 		Map<String, Object> params = new HashMap<>();
 
 		if (!TokenManager.hasRole(AFTConstants.SUPERADMIN)) {
@@ -67,7 +68,7 @@ public class NoticeServiceImpl extends BaseMybatisDao<NoticeMapper> implements N
 		if (pageSize == null || pageSize < 0) {
 			pageSize = 10;
 		}
-		return (Pagination<Notice>) findPage("findReadedNoticeListByPage", "findReadedNoticeCount", params, pageNo,
+		return (Pagination<NoticeBo>) findPage("findReadedNoticeListByPage", "findReadedNoticeCount", params, pageNo,
 				pageSize);
 	}
 

+ 11 - 1
src/main/java/com/goafanti/cognizance/bo/CognizanceBo.java

@@ -43,6 +43,16 @@ public class CognizanceBo {
 
 	private String	thirdContacts;
 
+	private String	founder;
+
+	public String getFounder() {
+		return founder;
+	}
+
+	public void setFounder(String founder) {
+		this.founder = founder;
+	}
+
 	public String getUid() {
 		return uid;
 	}
@@ -140,7 +150,7 @@ public class CognizanceBo {
 	public void setConsultant(String consultant) {
 		this.consultant = consultant;
 	}
-	
+
 	public Integer getYear() {
 		return year;
 	}

+ 2 - 2
src/main/java/com/goafanti/cognizance/service/impl/OrgActivityServiceImpl.java

@@ -108,11 +108,11 @@ public class OrgActivityServiceImpl extends BaseMybatisDao<OrgActivityMapper> im
 				cost.setActivityNumber(orgActivity.getActivityNumber());
 				flag = true;
 			}
-			if (null == orgActivity.getStartDate()) {
+			if (null != orgActivity.getStartDate()) {
 				cost.setStartDate(orgActivity.getStartDate());
 				flag = true;
 			}
-			if (null == orgActivity.getEndDate()) {
+			if (null != orgActivity.getEndDate()) {
 				cost.setEndDate(orgActivity.getEndDate());
 				flag = true;
 			}

+ 26 - 6
src/main/java/com/goafanti/cognizance/service/impl/OrgCognizanceServiceImpl.java

@@ -27,7 +27,9 @@ import com.goafanti.common.dao.OrgCognizanceLogMapper;
 import com.goafanti.common.dao.OrgCognizanceMapper;
 import com.goafanti.common.dao.OrgCognizanceProportionMapper;
 import com.goafanti.common.dao.OrganizationIdentityMapper;
+import com.goafanti.common.dao.UserMapper;
 import com.goafanti.common.enums.CopyrightStatus;
+import com.goafanti.common.enums.NoticeReadStatus;
 import com.goafanti.common.enums.NoticeStatus;
 import com.goafanti.common.enums.OrgCognizanceStatus;
 import com.goafanti.common.enums.ProportionStatus;
@@ -37,6 +39,7 @@ import com.goafanti.common.model.OrgCognizance;
 import com.goafanti.common.model.OrgCognizanceLog;
 import com.goafanti.common.model.OrgCognizanceProportion;
 import com.goafanti.common.model.OrganizationIdentity;
+import com.goafanti.common.model.User;
 import com.goafanti.core.mybatis.BaseMybatisDao;
 import com.goafanti.core.mybatis.page.Pagination;
 import com.goafanti.core.shiro.token.TokenManager;
@@ -53,6 +56,8 @@ public class OrgCognizanceServiceImpl extends BaseMybatisDao<OrgCognizanceMapper
 	private NoticeMapper					noticeMapper;
 	@Autowired
 	private OrgCognizanceProportionMapper	orgCognizanceProportionMapper;
+	@Autowired
+	private UserMapper						userMapper;
 
 	@Override
 	public OrgCognizance insert(OrgCognizance c) {
@@ -149,7 +154,7 @@ public class OrgCognizanceServiceImpl extends BaseMybatisDao<OrgCognizanceMapper
 			cog.setTechTotal(null == catagory.getTechTotal() ? 0 : catagory.getTechTotal());
 			cog.setTotalRevenue(null == catagory.getTotalRevenue() ? new BigDecimal(0) : catagory.getTotalRevenue());
 		}
-		BigDecimal revenue = orgCognizanceMapper.selectLastYearRevenueByUidAndYear(year, uid); //上年度销售收入
+		BigDecimal revenue = orgCognizanceMapper.selectLastYearRevenueByUidAndYear(year, uid); // 上年度销售收入
 		cog.setLastYearRevenue(null == revenue ? new BigDecimal(0) : revenue);
 		return cog;
 	}
@@ -233,6 +238,9 @@ public class OrgCognizanceServiceImpl extends BaseMybatisDao<OrgCognizanceMapper
 		c.setId(UUID.randomUUID().toString());
 		c.setState(CopyrightStatus.CREATE.getCode());
 		c.setDeletedSign(0);
+		if (TokenManager.getToken() instanceof Admin) {
+			c.setFounder(TokenManager.getAdminId());
+		}
 		Calendar now = Calendar.getInstance();
 		now.set(Calendar.MILLISECOND, 0);
 		c.setRecordTime(now.getTime());
@@ -254,9 +262,11 @@ public class OrgCognizanceServiceImpl extends BaseMybatisDao<OrgCognizanceMapper
 		}
 		log.setComment(c.getComment());
 		orgCognizanceLogMapper.insert(log);
-		
+
+		createNotice(c, log);
+
 		OrgCognizanceProportion ocp = orgCognizanceProportionMapper.selectByUid(c.getUid());
-		if (null == ocp){
+		if (null == ocp) {
 			OrgCognizanceProportion o = new OrgCognizanceProportion();
 			o.setId(UUID.randomUUID().toString());
 			o.setUid(c.getUid());
@@ -304,7 +314,16 @@ public class OrgCognizanceServiceImpl extends BaseMybatisDao<OrgCognizanceMapper
 		now.set(Calendar.MILLISECOND, 0);
 		n.setId(UUID.randomUUID().toString());
 		n.setCreateTime(now.getTime());
-		n.setReaded(0);
+		n.setReaded(NoticeReadStatus.UNREAD.getCode());
+		
+		User u = userMapper.selectByPrimaryKey(cog.getUid());
+		if (null != u){
+			n.setPid(u.getAid());
+		}
+		
+		n.setUid(cog.getUid());
+		n.setRid(cog.getId());
+		
 		n.setAid(l.getPrincipal());
 		n.setContent("编号" + info.getSerialNumber() + "  " + OrgCognizanceStatus.getStatus(l.getState()).getDesc());
 		n.setNoticeType(NoticeStatus.COGNIZANCE.getCode());
@@ -320,8 +339,8 @@ public class OrgCognizanceServiceImpl extends BaseMybatisDao<OrgCognizanceMapper
 	public LatelyCogRecord selectLatelyRecord(String uid) {
 		return orgCognizanceMapper.selectLatelyRecord(uid);
 	}
-	
-	private OrgCognizanceProportion disposeProportion(OrgCognizanceProportion o){
+
+	private OrgCognizanceProportion disposeProportion(OrgCognizanceProportion o) {
 		o.setAbility(ProportionStatus.UNFINISHED.getCode());
 		o.setAchievement(ProportionStatus.UNFINISHED.getCode());
 		o.setActivity(ProportionStatus.UNFINISHED.getCode());
@@ -336,4 +355,5 @@ public class OrgCognizanceServiceImpl extends BaseMybatisDao<OrgCognizanceMapper
 		o.setTechProject(ProportionStatus.UNFINISHED.getCode());
 		return o;
 	}
+
 }

+ 56 - 0
src/main/java/com/goafanti/common/enums/NoticeReadStatus.java

@@ -0,0 +1,56 @@
+package com.goafanti.common.enums;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.commons.lang3.StringUtils;
+
+public enum NoticeReadStatus {
+	
+	UNREAD(0, "通知未读"),
+	READED(1, "通知已读"),
+	OTHER(5, "其他");
+
+	private NoticeReadStatus(Integer code, String desc) {
+		this.code = code;
+		this.desc = desc;
+	}
+
+	private static Map<Integer, NoticeReadStatus> status = new HashMap<Integer, NoticeReadStatus>();
+
+	static {
+		for (NoticeReadStatus value : NoticeReadStatus.values()) {
+			status.put(value.getCode(), value);
+		}
+	}
+
+	public static NoticeReadStatus getStatus(Integer code) {
+		if (containsType(code)) {
+			return status.get(code);
+		}
+		return OTHER;
+	}
+
+	public static NoticeReadStatus getStatus(String code) {
+		if (StringUtils.isNumeric(code)) {
+			return getStatus(Integer.parseInt(code));
+		}
+		return OTHER;
+	}
+
+	public static boolean containsType(Integer code) {
+		return status.containsKey(code);
+	}
+
+	private Integer	code;
+	private String	desc;
+
+	public Integer getCode() {
+		return code;
+	}
+
+	public String getDesc() {
+		return desc;
+	}
+
+}

+ 17 - 5
src/main/java/com/goafanti/common/mapper/CopyrightInfoMapper.xml

@@ -21,11 +21,12 @@
     <result column="copyright_number" jdbcType="VARCHAR" property="copyrightNumber" />
     <result column="application_url" jdbcType="VARCHAR" property="applicationUrl" />
     <result column="delete_sign" jdbcType="INTEGER" property="deleteSign" />
+    <result column="founder" jdbcType="VARCHAR" property="founder" />
   </resultMap>
   <sql id="Base_Column_List">
     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, application_url, delete_sign, copyright_number
+    certificate_url, application_url, delete_sign, copyright_number, founder
   </sql>
   <select id="selectByPrimaryKey" parameterType="java.lang.String" resultMap="BaseResultMap">
     select 
@@ -43,7 +44,7 @@
       contact, copyright_info, copyright_name, 
       status, work_issue, comment, 
       outsource, in_urgent, authorized_date, 
-      certificate_url, copyright_number, application_url, delete_sign
+      certificate_url, copyright_number, application_url, delete_sign, founder
       )
     values (#{id,jdbcType=VARCHAR}, #{uid,jdbcType=VARCHAR}, #{serialNumber,jdbcType=INTEGER}, 
       #{createTime,jdbcType=TIMESTAMP}, #{acceptTime,jdbcType=TIMESTAMP}, #{principal,jdbcType=VARCHAR}, 
@@ -52,7 +53,7 @@
       #{outsource,jdbcType=VARCHAR}, #{inUrgent,jdbcType=INTEGER}, #{authorizedDate,jdbcType=TIMESTAMP}, 
       #{certificateUrl,jdbcType=VARCHAR}, 
       #{copyrightNumber,jdbcType=VARCHAR}, 
-      #{applicationUrl,jdbcType=VARCHAR}, #{deleteSign,jdbcType=INTEGER}
+      #{applicationUrl,jdbcType=VARCHAR}, #{deleteSign,jdbcType=INTEGER}, #{founder,jdbcType=VARCHAR}
       )
   </insert>
   <insert id="insertSelective" parameterType="com.goafanti.common.model.CopyrightInfo">
@@ -115,6 +116,9 @@
       <if test="deleteSign != null">
         delete_sign,
       </if>
+      <if test="founder != null">
+        founder,
+      </if>
     </trim>
     <trim prefix="values (" suffix=")" suffixOverrides=",">
       <if test="id != null">
@@ -174,6 +178,9 @@
       <if test="deleteSign != null">
         #{deleteSign,jdbcType=INTEGER},
       </if>
+      <if test="founder != null">
+        #{founder,jdbcType=VARCHAR},
+      </if>
     </trim>
   </insert>
   <update id="updateByPrimaryKeySelective" parameterType="com.goafanti.common.model.CopyrightInfo">
@@ -233,6 +240,9 @@
       <if test="deleteSign != null">
         delete_sign = #{deleteSign,jdbcType=INTEGER},
       </if>
+      <if test="founder != null">
+        founder = #{founder,jdbcType=VARCHAR},
+      </if>
     </set>
     where id = #{id,jdbcType=VARCHAR}
   </update>
@@ -255,7 +265,8 @@
       certificate_url = #{certificateUrl,jdbcType=VARCHAR},
       copyright_number = #{copyrightNumber,jdbcType=VARCHAR},
       application_url = #{applicationUrl,jdbcType=VARCHAR},
-      delete_sign = #{deleteSign,jdbcType=INTEGER}
+      delete_sign = #{deleteSign,jdbcType=INTEGER},
+      founder = #{founder,jdbcType=VARCHAR}
     where id = #{id,jdbcType=VARCHAR}
   </update>
   
@@ -268,10 +279,11 @@
 	concat(oi.first_contacts,'  ', oi.first_mobile) as firstContact,
 	concat(oi.second_contacts,'  ', oi.second_mobile) as secondContact,
 	concat(oi.third_contacts,'  ', oi.third_mobile) as thirdContact,
-	a.name as principal
+	a.name as principal, ad.name as founder
 	from copyright_info ci 
 	left join organization_identity oi on ci.uid = oi.uid
 	left join admin a on ci.principal = a.id
+	left join admin ad on ci.founder = ad.id
 	<if test="principal != null">
 	left join copyright_log cl on ci.id=cl.cid
 	</if>

+ 69 - 22
src/main/java/com/goafanti/common/mapper/NoticeMapper.xml

@@ -8,9 +8,12 @@
     <result column="content" property="content" jdbcType="VARCHAR" />
     <result column="create_time" property="createTime" jdbcType="TIMESTAMP" />
     <result column="readed" property="readed" jdbcType="INTEGER" />
+    <result column="uid" property="uid" jdbcType="VARCHAR" />
+    <result column="pid" property="pid" jdbcType="VARCHAR" />
+    <result column="rid" property="rid" jdbcType="VARCHAR" />
   </resultMap>
   <sql id="Base_Column_List" >
-    id, aid, notice_type, content, create_time, readed
+    id, aid, notice_type, content, create_time, readed, uid, pid, rid
   </sql>
   <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.String" >
     select 
@@ -24,10 +27,11 @@
   </delete>
   <insert id="insert" parameterType="com.goafanti.common.model.Notice" >
     insert into notice (id, aid, notice_type, 
-      content, create_time, readed
+      content, create_time, readed, uid, pid, rid
       )
     values (#{id,jdbcType=VARCHAR}, #{aid,jdbcType=VARCHAR}, #{noticeType,jdbcType=INTEGER}, 
-      #{content,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, #{readed,jdbcType=INTEGER}
+      #{content,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, #{readed,jdbcType=INTEGER},
+      #{uid,jdbcType=VARCHAR}, #{pid,jdbcType=VARCHAR}, #{rid,jdbcType=VARCHAR}
       )
   </insert>
   <insert id="insertSelective" parameterType="com.goafanti.common.model.Notice" >
@@ -51,6 +55,18 @@
       <if test="readed != null" >
         readed,
       </if>
+      
+       <if test="uid != null" >
+        uid,
+      </if>
+      <if test="pid != null" >
+        pid,
+      </if>
+      
+      <if test="rid != null" >
+        rid,
+      </if>
+      
     </trim>
     <trim prefix="values (" suffix=")" suffixOverrides="," >
       <if test="id != null" >
@@ -71,6 +87,17 @@
       <if test="readed != null" >
         #{readed,jdbcType=INTEGER},
       </if>
+      
+      <if test="uid != null" >
+        #{uid,jdbcType=VARCHAR},
+      </if>
+      <if test="pid != null" >
+        #{pid,jdbcType=VARCHAR},
+      </if>
+      
+      <if test="rid != null" >
+        #{rid,jdbcType=VARCHAR},
+      </if>
     </trim>
   </insert>
   <update id="updateByPrimaryKeySelective" parameterType="com.goafanti.common.model.Notice" >
@@ -91,6 +118,17 @@
       <if test="readed != null" >
         readed = #{readed,jdbcType=INTEGER},
       </if>
+      
+      <if test="uid != null" >
+        uid = #{uid,jdbcType=VARCHAR},
+      </if>
+      <if test="pid != null" >
+        pid = #{pid,jdbcType=VARCHAR},
+      </if>
+      
+      <if test="rid != null" >
+        rid = #{rid,jdbcType=VARCHAR},
+      </if>
     </set>
     where id = #{id,jdbcType=VARCHAR}
   </update>
@@ -100,17 +138,24 @@
       notice_type = #{noticeType,jdbcType=INTEGER},
       content = #{content,jdbcType=VARCHAR},
       create_time = #{createTime,jdbcType=TIMESTAMP},
-      readed = #{readed,jdbcType=INTEGER}
+      readed = #{readed,jdbcType=INTEGER},
+      
+      uid = #{uid,jdbcType=VARCHAR},
+      pid = #{pid,jdbcType=VARCHAR},
+      
+      rid = #{rid,jdbcType=VARCHAR}
     where id = #{id,jdbcType=VARCHAR}
   </update>
   
-  <select id="findUnreadNoticeListByPage" parameterType="java.lang.String" resultMap="BaseResultMap">
-     select  
-     <include refid="Base_Column_List" />
-    from notice
-    where readed = 0 
+  <select id="findUnreadNoticeListByPage" parameterType="java.lang.String" resultType="com.goafanti.admin.bo.NoticeBo">
+    select n.id, n.aid, n.uid, n.notice_type as noticeType, n.content, n.create_time as createTime, 
+		oi.unit_name as unitName, n.rid, a.name as principle, n.readed
+		from notice n 
+		LEFT JOIN organization_identity oi on n.uid = oi.uid
+		LEFT JOIN admin a on a.id = n.pid 
+    where n.readed = 0 
     <if test="aid != null">
-    	and aid = #{aid,jdbcType=VARCHAR}
+    	and n.aid = #{aid,jdbcType=VARCHAR}
     </if>
     <if test="page_sql!=null">
 		${page_sql}
@@ -119,20 +164,22 @@
   
    <select id="findUnreadNoticeCount" resultType="java.lang.Integer" parameterType="java.lang.String">
  	select count(1) 
- 	 from notice
-    where readed = 0 
+ 	 from notice n
+    where n.readed = 0 
     <if test="aid != null">
-    	and aid = #{aid,jdbcType=VARCHAR}
+    	and n.aid = #{aid,jdbcType=VARCHAR}
     </if>
   </select>
   
-  <select id="findReadedNoticeListByPage" parameterType="java.lang.String" resultMap="BaseResultMap">
-     select  
-     <include refid="Base_Column_List" />
-    from notice
-    where readed = 1 
+  <select id="findReadedNoticeListByPage" parameterType="java.lang.String" resultType="com.goafanti.admin.bo.NoticeBo">
+     select n.id, n.uid, n.aid, n.notice_type as noticeType, n.content, n.create_time as createTime, 
+		oi.unit_name as unitName, n.rid, a.name as principle, n.readed
+		from notice n 
+		LEFT JOIN organization_identity oi on n.uid = oi.uid
+		LEFT JOIN admin a on a.id = n.pid 
+    where n.readed = 1 
     <if test="aid != null">
-    and aid = #{aid,jdbcType=VARCHAR}
+    and n.aid = #{aid,jdbcType=VARCHAR}
     </if>
     <if test="page_sql!=null">
 		${page_sql}
@@ -141,10 +188,10 @@
   
    <select id="findReadedNoticeCount" resultType="java.lang.Integer" parameterType="java.lang.String">
  	select count(1) 
- 	 from notice
-    where readed = 1 
+ 	 from notice n
+    where n.readed = 1 
     <if test="aid != null">
-    and aid = #{aid,jdbcType=VARCHAR}
+    and n.aid = #{aid,jdbcType=VARCHAR}
     </if>
   </select>
   

+ 19 - 5
src/main/java/com/goafanti/common/mapper/OrgCognizanceMapper.xml

@@ -23,11 +23,13 @@
     <result column="record_time" property="recordTime" jdbcType="TIMESTAMP" />
     <result column="large_order" property="largeOrder" jdbcType="INTEGER" />
     <result column="deleted_sign" property="deletedSign" jdbcType="INTEGER" />
+    <result column="founder" property="founder" jdbcType="VARCHAR" />
   </resultMap>
   <sql id="Base_Column_List" >
     id, uid, serial_number, contacts, comment, consultant, technical_field1, technical_field2, 
     technical_field3, basic_research_cost, accident, create_time, accept_date, issuing_date, 
-    certificate_number, certificate_url, state, year, record_time, large_order, deleted_sign
+    certificate_number, certificate_url, state, year, record_time, large_order, deleted_sign,
+    founder
   </sql>
   <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.String" >
     select 
@@ -45,7 +47,7 @@
       technical_field1, technical_field2, technical_field3, 
       basic_research_cost, accident, create_time, 
       accept_date, issuing_date, certificate_number, 
-      certificate_url, state, year, record_time, large_order, deleted_sign
+      certificate_url, state, year, record_time, large_order, deleted_sign, founder
       )
     values (#{id,jdbcType=VARCHAR}, #{uid,jdbcType=VARCHAR}, #{serialNumber,jdbcType=INTEGER}, 
       #{contacts,jdbcType=INTEGER}, #{comment,jdbcType=VARCHAR}, #{consultant,jdbcType=VARCHAR}, 
@@ -53,7 +55,7 @@
       #{basicResearchCost,jdbcType=DECIMAL}, #{accident,jdbcType=INTEGER}, #{createTime,jdbcType=TIMESTAMP}, 
       #{acceptDate,jdbcType=TIMESTAMP}, #{issuingDate,jdbcType=TIMESTAMP}, #{certificateNumber,jdbcType=VARCHAR}, 
       #{certificateUrl,jdbcType=VARCHAR}, #{state,jdbcType=INTEGER}, #{year,jdbcType=INTEGER}, #{recordTime,jdbcType=TIMESTAMP},
-      #{largeOrder,jdbcType=INTEGER}, #{deletedSign,jdbcType=INTEGER}
+      #{largeOrder,jdbcType=INTEGER}, #{deletedSign,jdbcType=INTEGER}, #{founder,jdbcType=VARCHAR}
       )
   </insert>
   <insert id="insertSelective" parameterType="com.goafanti.common.model.OrgCognizance" >
@@ -122,6 +124,9 @@
       <if test="deletedSign != null" >
         deleted_sign,
       </if>
+      <if test="founder != null" >
+        founder,
+      </if>
     </trim>
     <trim prefix="values (" suffix=")" suffixOverrides="," >
       <if test="id != null" >
@@ -187,6 +192,9 @@
       <if test="deletedSign != null" >
         #{deletedSign,jdbcType=INTEGER},
       </if>
+       <if test="founder != null" >
+        #{founder,jdbcType=VARCHAR},
+      </if>
     </trim>
   </insert>
   <update id="updateByPrimaryKeySelective" parameterType="com.goafanti.common.model.OrgCognizance" >
@@ -252,6 +260,9 @@
       <if test="deletedSign != null" >
         deleted_sign = #{deletedSign,jdbcType=INTEGER},
       </if>
+      <if test="founder != null" >
+        founder = #{founder,jdbcType=VARCHAR},
+      </if>
     </set>
     where id = #{id,jdbcType=VARCHAR}
   </update>
@@ -276,7 +287,8 @@
       year = #{year,jdbcType=INTEGER},
       record_time = #{recordTime,jdbcType=TIMESTAMP},
       large_order = #{largeOrder,jdbcType=INTEGER},
-      deleted_sign = #{deletedSign,jdbcType=INTEGER}
+      deleted_sign = #{deletedSign,jdbcType=INTEGER},
+      founder = #{founder,jdbcType=VARCHAR}
     where id = #{id,jdbcType=VARCHAR}
   </update>
   
@@ -287,10 +299,12 @@
 	c.issuing_date as issuingDate, c.year, a.name as consultant,
     CONCAT(i.first_contacts,'  ', i.first_mobile) as firstContacts,
     CONCAT(i.second_contacts,'  ', i.second_mobile) as secondContacts,
-    CONCAT(i.third_contacts,'  ', i.third_mobile) as thirdContacts
+    CONCAT(i.third_contacts,'  ', i.third_mobile) as thirdContacts,
+    ad.name as founder
 	from org_cognizance c 
 	LEFT JOIN organization_identity i on c.uid = i.uid
 	LEFT JOIN admin a on c.consultant = a.id 
+	LEFT JOIN admin ad on c.founder = ad.id 
 	<if test="principal != null">
 		left join org_cognizance_log l on c.id=l.cid 
 	</if>

+ 17 - 5
src/main/java/com/goafanti/common/mapper/PatentInfoMapper.xml

@@ -55,6 +55,7 @@
 		<result column="record_time" property="recordTime" jdbcType="TIMESTAMP" />
 		<result column="deleted_sign" property="deletedSign" jdbcType="INTEGER" />
 		<result column="contacts" property="contacts" jdbcType="INTEGER" />
+		<result column="founder" property="founder" jdbcType="VARCHAR" />
 	</resultMap>
 	<sql id="Base_Column_List">
 		id, uid, serial_number, patent_number, patent_name,
@@ -74,7 +75,7 @@
 		third_inventor_is_publish,
 		create_time, author, authorized_date,office,
 		principal ,confirm_state,
-		record_time, deleted_sign, contacts
+		record_time, deleted_sign, contacts, founder
 	</sql>
 	<select id="selectByPrimaryKey" resultMap="BaseResultMap"
 		parameterType="java.lang.String">
@@ -102,7 +103,7 @@
 		second_inventor_nationality, second_inventor_is_publish,
 		third_inventor_name, third_inventor_nationality,
 		third_inventor_is_publish, create_time, author, authorized_date,
-		office, principal, confirm_state, record_time, deleted_sign, contacts)
+		office, principal, confirm_state, record_time, deleted_sign, contacts, founder)
 
 		values (#{id,jdbcType=VARCHAR}, #{uid,jdbcType=VARCHAR},
 		#{serialNumber,jdbcType=INTEGER},
@@ -131,7 +132,7 @@
 		#{principal,jdbcType=VARCHAR}, #{confirmState,jdbcType=INTEGER},
 		#{recordTime,jdbcType=TIMESTAMP},
 		#{deletedSign,jdbcType=INTEGER},
-		#{contacts,jdbcType=INTEGER})
+		#{contacts,jdbcType=INTEGER}, #{founder,jdbcType=VARCHAR})
 	</insert>
 	<insert id="insertSelective" parameterType="com.goafanti.common.model.PatentInfo">
 		insert into patent_info
@@ -235,6 +236,9 @@
 			<if test="contacts != null">
 				contacts,
 			</if>
+			<if test="founder != null">
+				founder,
+			</if>
 		</trim>
 		<trim prefix="values (" suffix=")" suffixOverrides=",">
 			<if test="id != null">
@@ -336,6 +340,9 @@
 			<if test="contacts != null">
 				#{contacts,jdbcType=INTEGER},
 			</if>
+			<if test="founder != null">
+				#{founder,jdbcType=VARCHAR},
+			</if>
 		</trim>
 	</insert>
 	<update id="updateByPrimaryKeySelective" parameterType="com.goafanti.common.model.PatentInfo">
@@ -452,6 +459,9 @@
 			<if test="contacts != null">
 				contacts = #{contacts,jdbcType=INTEGER},
 			</if>
+			<if test="founder != null">
+				founder = #{founder,jdbcType=VARCHAR},
+			</if>
 		</set>
 		where id = #{id,jdbcType=VARCHAR}
 	</update>
@@ -516,7 +526,8 @@
 		deleted_sign =
 		#{deletedSign,jdbcType=INTEGER},
 		contacts =
-		#{contacts,jdbcType=INTEGER}
+		#{contacts,jdbcType=INTEGER},
+		#{founder,jdbcType=VARCHAR}
 		where id = #{id,jdbcType=VARCHAR}
 	</update>
 
@@ -583,11 +594,12 @@
 		p.patent_application_date as
 		patentApplicationDate, p.authorized_date as authorizedDate,
 		a.name as
-		author
+		author, ad.name as founder
 		from patent_info p
 		LEFT JOIN organization_identity o on p.uid =
 		o.uid
 		LEFT JOIN admin a on a.id = p.author
+		LEFT JOIN admin ad on ad.id = p.founder
 		<if test="principal != null">
 			left join patent_log l on p.id=l.pid
 		</if>

+ 19 - 6
src/main/java/com/goafanti/common/mapper/TechProjectMapper.xml

@@ -28,13 +28,15 @@
 			jdbcType="TIMESTAMP" />
 		<result column="record_time" property="recordTime" jdbcType="TIMESTAMP" />
 		<result column="deleted_sign" property="deletedSign" jdbcType="INTEGER" />
+		<result column="founder" property="founder" jdbcType="VARCHAR" />
 	</resultMap>
 	<sql id="Base_Column_List">
 		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
+		state, create_time, accept_date, approved_date, record_time, deleted_sign,
+		founder
 	</sql>
 	<select id="selectByPrimaryKey" resultMap="BaseResultMap"
 		parameterType="java.lang.String">
@@ -54,7 +56,7 @@
 		project_des, project_mode, project_approval,
 		subsidy, consultant, approval_url,
 		state, create_time, accept_date,
-		approved_date, record_time, deleted_sign
+		approved_date, record_time, deleted_sign, founder
 		)
 		values (#{id,jdbcType=VARCHAR}, #{uid,jdbcType=VARCHAR},
 		#{serialNumber,jdbcType=INTEGER},
@@ -66,7 +68,7 @@
 		#{approvalUrl,jdbcType=VARCHAR},
 		#{state,jdbcType=INTEGER}, #{createTime,jdbcType=TIMESTAMP}, #{acceptDate,jdbcType=TIMESTAMP},
 		#{approvedDate,jdbcType=TIMESTAMP}, #{recordTime,jdbcType=TIMESTAMP},
-		#{deletedSign,jdbcType=INTEGER}
+		#{deletedSign,jdbcType=INTEGER}, #{founder,jdbcType=VARCHAR}
 		)
 	</insert>
 	<insert id="insertSelective" parameterType="com.goafanti.common.model.TechProject">
@@ -135,6 +137,9 @@
 			<if test="deletedSign != null">
 				deleted_sign,
 			</if>
+			<if test="founder != null">
+				founder,
+			</if>
 		</trim>
 		<trim prefix="values (" suffix=")" suffixOverrides=",">
 			<if test="id != null">
@@ -200,6 +205,9 @@
 			<if test="deletedSign != null">
 				#{deletedSign,jdbcType=INTEGER},
 			</if>
+			<if test="founder != null">
+				#{founder,jdbcType=VARCHAR},
+			</if>
 		</trim>
 	</insert>
 	<update id="updateByPrimaryKeySelective" parameterType="com.goafanti.common.model.TechProject">
@@ -265,6 +273,9 @@
 			<if test="deletedSign != null">
 				deleted_sign = #{deletedSign,jdbcType=INTEGER},
 			</if>
+			<if test="founder != null">
+				founder = #{founder,jdbcType=VARCHAR},
+			</if>
 		</set>
 		where id = #{id,jdbcType=VARCHAR}
 	</update>
@@ -289,7 +300,8 @@
 		accept_date = #{acceptDate,jdbcType=TIMESTAMP},
 		approved_date = #{approvedDate,jdbcType=TIMESTAMP},
 		record_time = #{recordTime,jdbcType=TIMESTAMP},
-		deleted_sign = #{deletedSign,jdbcType=INTEGER}
+		deleted_sign = #{deletedSign,jdbcType=INTEGER},
+		founder = #{founder,jdbcType=VARCHAR}
 		where id = #{id,jdbcType=VARCHAR}
 	</update>
 
@@ -335,12 +347,13 @@
 		    CONCAT(i.second_contacts,'  ', i.second_mobile) as secondContacts,
 		    CONCAT(i.third_contacts,'  ', i.third_mobile) as thirdContacts, 
 		    p.serial_number as serialNumber, p.create_time as createTime, p.approved_date as approvedDate, 
-		    p.accept_date as acceptDate, a.name as consultant, p.contacts,
-		    p.project_name as projectName, p.project_catagory as projectCatagory, p.tech_field as techField, p.state,
+		    p.accept_date as acceptDate, a.name as consultant, p.contacts, ad.name as founder,
+		    p.project_name as projectName, p.project_catagory as projectCatagory, p.tech_field as techField, p.state, 
         w.id as wid, w.website, w.account_number as accountNumber, w.department, w.password, p.deleted_sign as pd, w.deleted_sign as wd
 	  FROM  tech_project p
 		LEFT JOIN organization_identity i on i.uid = p.uid
 		LEFT JOIN admin a on p.consultant = a.id 
+		LEFT JOIN admin ad on p.founder = ad.id 
    	    LEFT JOIN tech_website w on p.department = w.id 
     <if test="principal != null">
 		left join tech_project_log l on p.id=l.pid

+ 16 - 1
src/main/java/com/goafanti/common/model/CopyrightInfo.java

@@ -94,10 +94,25 @@ public class CopyrightInfo extends BaseModel {
 	private Integer				deleteSign;
 
 	/**
-	 * 申请号/专利号
+	 * 申请号
 	 */
 	private String				copyrightNumber;
 
+	/**
+	 * 申请创建人
+	 */
+	private String				founder;
+	
+	
+
+	public String getFounder() {
+		return founder;
+	}
+
+	public void setFounder(String founder) {
+		this.founder = founder;
+	}
+
 	public String getUid() {
 		return uid;
 	}

+ 46 - 1
src/main/java/com/goafanti/common/model/Notice.java

@@ -27,8 +27,26 @@ public class Notice {
 	 * 创建时间
 	 */
 	private Date	createTime;
-
+	
+	/**
+	 * 已读标记
+	 */
 	private Integer	readed;
+	
+	/**
+	 * 用户id
+	 */
+	private String uid;
+	
+	/**
+	 * 录入公司信息业务员ID
+	 */
+	private String pid;
+	
+	/**
+	 * 业务记录ID
+	 */
+	private String rid;
 
 	public String getId() {
 		return id;
@@ -80,6 +98,33 @@ public class Notice {
 		this.readed = readed;
 	}
 	
+	
+	public String getUid() {
+		return uid;
+	}
+
+	public void setUid(String uid) {
+		this.uid = uid;
+	}
+
+	
+
+	public String getPid() {
+		return pid;
+	}
+
+	public void setPid(String pid) {
+		this.pid = pid;
+	}
+
+	public String getRid() {
+		return rid;
+	}
+
+	public void setRid(String rid) {
+		this.rid = rid;
+	}
+
 	public String getNoticeTypeName(){
 		if (null == this.noticeType){
 			return null;

+ 266 - 257
src/main/java/com/goafanti/common/model/OrgCognizance.java

@@ -10,131 +10,143 @@ import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.goafanti.common.constant.AFTConstants;
 
 public class OrgCognizance {
-    private String id;
-
-    private String uid;
-
-    /**
-    * 编号
-    */
-    private Integer serialNumber;
-
-    /**
-    * 联系人及联系方式
-    */
-    private Integer contacts;
-
-    /**
-    * 备注
-    */
-    private String comment;
-
-    /**
-    * 咨询师
-    */
-    private String consultant;
-
-    /**
-    * 技术领域1st select
-    */
-    private Integer technicalField1;
-
-    /**
-    * 技术领域2nd select
-    */
-    private Integer technicalField2;
-
-    /**
-    * 技术领域3rd select
-    */
-    private Integer technicalField3;
-
-    /**
-    * 基础研究投入费用总额(万元)
-    */
-    private Integer basicResearchCost;
-
-    /**
-    * 申请认定前一年内是否发生过重大安全、重大质量或严重环境违法行为
-    */
-    private Integer accident;
-
-    /**
-    * 派单日
-    */
-    private Date createTime;
-
-    /**
-    * 受理日
-    */
-    private Date acceptDate;
-
-    /**
-    * 发证日
-    */
-    private Date issuingDate;
-
-    /**
-    * 证书编号
-    */
-    private String certificateNumber;
-
-    /**
-    * 证书URL
-    */
-    private String certificateUrl;
-
-    /**
-    * 状态
-    */
-    private Integer state;
-    
-    /**
-     * 申请年份
-     */
-    private Integer year;
-    
-    /**
-     * 高企申请时间
-     */
-    private Date recordTime;
-    
-    /**
-     * 是否为大额订单
-     */
-    private Integer largeOrder;
-
-    /**
-    * 删除标记
-    */
-    private Integer deletedSign;
-
-    public String getId() {
-        return id;
-    }
-
-    public void setId(String id) {
-        this.id = id;
-    }
-
-    public String getUid() {
-        return uid;
-    }
-
-    public void setUid(String uid) {
-        this.uid = uid;
-    }
-
-    public Integer getSerialNumber() {
-        return serialNumber;
-    }
-
-    public void setSerialNumber(Integer serialNumber) {
-        this.serialNumber = serialNumber;
-    }
-
-
-    public Integer getContacts() {
+	private String	id;
+
+	private String	uid;
+
+	/**
+	 * 编号
+	 */
+	private Integer	serialNumber;
+
+	/**
+	 * 联系人及联系方式
+	 */
+	private Integer	contacts;
+
+	/**
+	 * 备注
+	 */
+	private String	comment;
+
+	/**
+	 * 咨询师
+	 */
+	private String	consultant;
+
+	/**
+	 * 技术领域1st select
+	 */
+	private Integer	technicalField1;
+
+	/**
+	 * 技术领域2nd select
+	 */
+	private Integer	technicalField2;
+
+	/**
+	 * 技术领域3rd select
+	 */
+	private Integer	technicalField3;
+
+	/**
+	 * 基础研究投入费用总额(万元)
+	 */
+	private Integer	basicResearchCost;
+
+	/**
+	 * 申请认定前一年内是否发生过重大安全、重大质量或严重环境违法行为
+	 */
+	private Integer	accident;
+
+	/**
+	 * 派单日
+	 */
+	private Date	createTime;
+
+	/**
+	 * 受理日
+	 */
+	private Date	acceptDate;
+
+	/**
+	 * 发证日
+	 */
+	private Date	issuingDate;
+
+	/**
+	 * 证书编号
+	 */
+	private String	certificateNumber;
+
+	/**
+	 * 证书URL
+	 */
+	private String	certificateUrl;
+
+	/**
+	 * 状态
+	 */
+	private Integer	state;
+
+	/**
+	 * 申请年份
+	 */
+	private Integer	year;
+
+	/**
+	 * 高企申请时间
+	 */
+	private Date	recordTime;
+
+	/**
+	 * 是否为大额订单
+	 */
+	private Integer	largeOrder;
+
+	/**
+	 * 删除标记
+	 */
+	private Integer	deletedSign;
+
+	/**
+	 * 申请创建人
+	 */
+	private String	founder;
+
+	public String getFounder() {
+		return founder;
+	}
+
+	public void setFounder(String founder) {
+		this.founder = founder;
+	}
+
+	public String getId() {
+		return id;
+	}
+
+	public void setId(String id) {
+		this.id = id;
+	}
+
+	public String getUid() {
+		return uid;
+	}
+
+	public void setUid(String uid) {
+		this.uid = uid;
+	}
+
+	public Integer getSerialNumber() {
+		return serialNumber;
+	}
+
+	public void setSerialNumber(Integer serialNumber) {
+		this.serialNumber = serialNumber;
+	}
+
+	public Integer getContacts() {
 		return contacts;
 	}
 
@@ -143,120 +155,118 @@ public class OrgCognizance {
 	}
 
 	public String getComment() {
-        return comment;
-    }
-
-    public void setComment(String comment) {
-        this.comment = comment;
-    }
-
-    public String getConsultant() {
-        return consultant;
-    }
-
-    public void setConsultant(String consultant) {
-        this.consultant = consultant;
-    }
-
-    public Integer getTechnicalField1() {
-        return technicalField1;
-    }
-
-    public void setTechnicalField1(Integer technicalField1) {
-        this.technicalField1 = technicalField1;
-    }
-
-    public Integer getTechnicalField2() {
-        return technicalField2;
-    }
-
-    public void setTechnicalField2(Integer technicalField2) {
-        this.technicalField2 = technicalField2;
-    }
-
-    public Integer getTechnicalField3() {
-        return technicalField3;
-    }
-
-    public void setTechnicalField3(Integer technicalField3) {
-        this.technicalField3 = technicalField3;
-    }
-
-    public Integer getBasicResearchCost() {
-        return basicResearchCost;
-    }
-
-    public void setBasicResearchCost(Integer basicResearchCost) {
-        this.basicResearchCost = basicResearchCost;
-    }
-
-    public Integer getAccident() {
-        return accident;
-    }
-
-    public void setAccident(Integer accident) {
-        this.accident = accident;
-    }
-
-    public Date getCreateTime() {
-        return createTime;
-    }
-
-    public void setCreateTime(Date createTime) {
-        this.createTime = createTime;
-    }
-
-    public Date getAcceptDate() {
-        return acceptDate;
-    }
-
-    public void setAcceptDate(Date acceptDate) {
-        this.acceptDate = acceptDate;
-    }
-
-    public Date getIssuingDate() {
-        return issuingDate;
-    }
-
-    public void setIssuingDate(Date issuingDate) {
-        this.issuingDate = issuingDate;
-    }
-
-    public String getCertificateNumber() {
-        return certificateNumber;
-    }
-
-    public void setCertificateNumber(String certificateNumber) {
-        this.certificateNumber = certificateNumber;
-    }
-
-    public String getCertificateUrl() {
-        return certificateUrl;
-    }
-
-    public void setCertificateUrl(String certificateUrl) {
-        this.certificateUrl = certificateUrl;
-    }
-    
-    
-    public Integer getState() {
-        return state;
-    }
-
-    public void setState(Integer state) {
-        this.state = state;
-    }
-    
-    
-    public Integer getYear() {
+		return comment;
+	}
+
+	public void setComment(String comment) {
+		this.comment = comment;
+	}
+
+	public String getConsultant() {
+		return consultant;
+	}
+
+	public void setConsultant(String consultant) {
+		this.consultant = consultant;
+	}
+
+	public Integer getTechnicalField1() {
+		return technicalField1;
+	}
+
+	public void setTechnicalField1(Integer technicalField1) {
+		this.technicalField1 = technicalField1;
+	}
+
+	public Integer getTechnicalField2() {
+		return technicalField2;
+	}
+
+	public void setTechnicalField2(Integer technicalField2) {
+		this.technicalField2 = technicalField2;
+	}
+
+	public Integer getTechnicalField3() {
+		return technicalField3;
+	}
+
+	public void setTechnicalField3(Integer technicalField3) {
+		this.technicalField3 = technicalField3;
+	}
+
+	public Integer getBasicResearchCost() {
+		return basicResearchCost;
+	}
+
+	public void setBasicResearchCost(Integer basicResearchCost) {
+		this.basicResearchCost = basicResearchCost;
+	}
+
+	public Integer getAccident() {
+		return accident;
+	}
+
+	public void setAccident(Integer accident) {
+		this.accident = accident;
+	}
+
+	public Date getCreateTime() {
+		return createTime;
+	}
+
+	public void setCreateTime(Date createTime) {
+		this.createTime = createTime;
+	}
+
+	public Date getAcceptDate() {
+		return acceptDate;
+	}
+
+	public void setAcceptDate(Date acceptDate) {
+		this.acceptDate = acceptDate;
+	}
+
+	public Date getIssuingDate() {
+		return issuingDate;
+	}
+
+	public void setIssuingDate(Date issuingDate) {
+		this.issuingDate = issuingDate;
+	}
+
+	public String getCertificateNumber() {
+		return certificateNumber;
+	}
+
+	public void setCertificateNumber(String certificateNumber) {
+		this.certificateNumber = certificateNumber;
+	}
+
+	public String getCertificateUrl() {
+		return certificateUrl;
+	}
+
+	public void setCertificateUrl(String certificateUrl) {
+		this.certificateUrl = certificateUrl;
+	}
+
+	public Integer getState() {
+		return state;
+	}
+
+	public void setState(Integer state) {
+		this.state = state;
+	}
+
+	public Integer getYear() {
 		return year;
 	}
 
 	public void setYear(Integer year) {
 		this.year = year;
 	}
-	
-    @JsonIgnore
+
+	@JsonIgnore
 	public Date getRecordTime() {
 		return recordTime;
 	}
@@ -264,8 +274,7 @@ public class OrgCognizance {
 	public void setRecordTime(Date recordTime) {
 		this.recordTime = recordTime;
 	}
-	
-	
+
 	@JsonFormat(shape = Shape.STRING)
 	public Integer getLargeOrder() {
 		return largeOrder;
@@ -276,47 +285,47 @@ public class OrgCognizance {
 	}
 
 	@JsonIgnore
-    public Integer getDeletedSign() {
-        return deletedSign;
-    }
-
-    public void setDeletedSign(Integer deletedSign) {
-        this.deletedSign = deletedSign;
-    }
-    
-    public String getCreateTimeFormattedDate(){
+	public Integer getDeletedSign() {
+		return deletedSign;
+	}
+
+	public void setDeletedSign(Integer deletedSign) {
+		this.deletedSign = deletedSign;
+	}
+
+	public String getCreateTimeFormattedDate() {
 		if (this.createTime == null) {
 			return null;
 		} else {
 			return DateFormatUtils.format(this.getCreateTime(), AFTConstants.YYYYMMDDHHMMSS);
 		}
 	}
-	
-	public void setCreateTimeFormattedDate(String createTimeFormattedDate){
-		
+
+	public void setCreateTimeFormattedDate(String createTimeFormattedDate) {
+
 	}
-	
-	public String getAcceptDateFormattedDate(){
+
+	public String getAcceptDateFormattedDate() {
 		if (this.acceptDate == null) {
 			return null;
 		} else {
 			return DateFormatUtils.format(this.getCreateTime(), AFTConstants.YYYYMMDDHHMMSS);
 		}
 	}
-	
-	public void setAcceptDateFormattedDate(String acceptDateFormattedDate){
-		
+
+	public void setAcceptDateFormattedDate(String acceptDateFormattedDate) {
+
 	}
-	
-	public String getIssuingDateFormattedDate(){
+
+	public String getIssuingDateFormattedDate() {
 		if (this.issuingDate == null) {
 			return null;
 		} else {
 			return DateFormatUtils.format(this.getCreateTime(), AFTConstants.YYYYMMDDHHMMSS);
 		}
 	}
-	
-	public void setIssuingDateFormattedDate(String issuingDateFormattedDate){
-		
+
+	public void setIssuingDateFormattedDate(String issuingDateFormattedDate) {
+
 	}
 }

+ 15 - 0
src/main/java/com/goafanti/common/model/PatentInfo.java

@@ -170,6 +170,21 @@ public class PatentInfo {
 	 * 联系人及联系方式
 	 */
 	private Integer	contacts;
+	
+	/**
+	 * 申请创建人
+	 */
+	private String founder;
+	
+	
+
+	public String getFounder() {
+		return founder;
+	}
+
+	public void setFounder(String founder) {
+		this.founder = founder;
+	}
 
 	public String getId() {
 		return id;

+ 288 - 275
src/main/java/com/goafanti/common/model/TechProject.java

@@ -11,285 +11,298 @@ import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.goafanti.common.utils.FileUtils;
 
 public class TechProject {
-    private String id;
-
-    private String uid;
-
-    /**
-    * 编号
-    */
-    private Integer serialNumber;
-
-    /**
-    * 联系人
-    */
-    private Integer contacts;
-
-    /**
-    * 科技项目申报部门
-    */
-    private String department;
-
-    /**
-    * 派单信息
-    */
-    private String dispatchInfo;
-
-    /**
-    * 项目名称
-    */
-    private String projectName;
-
-    /**
-    * 项目类型
-    */
-    private String projectCatagory;
-
-    /**
-    * 技术领域
-    */
-    private String techField;
-
-    /**
-    * 项目简介
-    */
-    private String projectDes;
-
-    /**
-    * 是否立项
-    */
-    private Integer projectMode;
-
-    /**
-    * 立项金额
-    */
-    private BigDecimal projectApproval;
-
-    /**
-    * 是否补助
-    */
-    private Integer subsidy;
-
-    /**
-    * 咨询师
-    */
-    private String consultant;
-
-    /**
-    * 项目材料URL
-    */
-    private String approvalUrl;
-
-    /**
-    * 申报状态
-    */
-    private Integer state;
-
-    /**
-    * 派单日
-    */
-    private Date createTime;
-
-    /**
-    * 受理日
-    */
-    private Date acceptDate;
-
-    /**
-    * 项目批复日期
-    */
-    private Date approvedDate;
-
-    /**
-    * 记录创建日期
-    */
-    private Date recordTime;
-
-    /**
-    * 删除标记
-    */
-    private Integer deletedSign;
-
-    public String getId() {
-        return id;
-    }
-
-    public void setId(String id) {
-        this.id = id;
-    }
-
-    public String getUid() {
-        return uid;
-    }
-
-    public void setUid(String uid) {
-        this.uid = uid;
-    }
-
-    public Integer getSerialNumber() {
-        return serialNumber;
-    }
-
-    public void setSerialNumber(Integer serialNumber) {
-        this.serialNumber = serialNumber;
-    }
-    
-    @JsonFormat(shape = Shape.STRING)
-    public Integer getContacts() {
-        return contacts;
-    }
-
-    public void setContacts(Integer contacts) {
-        this.contacts = contacts;
-    }
-
-    public String getDepartment() {
-        return department;
-    }
-
-    public void setDepartment(String department) {
-        this.department = department;
-    }
-
-    public String getDispatchInfo() {
-        return dispatchInfo;
-    }
-
-    public void setDispatchInfo(String dispatchInfo) {
-        this.dispatchInfo = dispatchInfo;
-    }
-
-    public String getProjectName() {
-        return projectName;
-    }
-
-    public void setProjectName(String projectName) {
-        this.projectName = projectName;
-    }
-
-    public String getProjectCatagory() {
-        return projectCatagory;
-    }
-
-    public void setProjectCatagory(String projectCatagory) {
-        this.projectCatagory = projectCatagory;
-    }
-
-    public String getTechField() {
-        return techField;
-    }
-
-    public void setTechField(String techField) {
-        this.techField = techField;
-    }
-
-    public String getProjectDes() {
-        return projectDes;
-    }
-
-    public void setProjectDes(String projectDes) {
-        this.projectDes = projectDes;
-    }
-
-    public Integer getProjectMode() {
-        return projectMode;
-    }
-
-    public void setProjectMode(Integer projectMode) {
-        this.projectMode = projectMode;
-    }
-
-    public BigDecimal getProjectApproval() {
-        return projectApproval;
-    }
-
-    public void setProjectApproval(BigDecimal projectApproval) {
-        this.projectApproval = projectApproval;
-    }
-
-    public Integer getSubsidy() {
-        return subsidy;
-    }
-
-    public void setSubsidy(Integer subsidy) {
-        this.subsidy = subsidy;
-    }
-
-    public String getConsultant() {
-        return consultant;
-    }
-
-    public void setConsultant(String consultant) {
-        this.consultant = consultant;
-    }
-
-    public String getApprovalUrl() {
-        return approvalUrl;
-    }
-
-    public void setApprovalUrl(String approvalUrl) {
-        this.approvalUrl = approvalUrl;
-    }
-
-    public Integer getState() {
-        return state;
-    }
-
-    public void setState(Integer state) {
-        this.state = state;
-    }
-
-    public Date getCreateTime() {
-        return createTime;
-    }
-
-    public void setCreateTime(Date createTime) {
-        this.createTime = createTime;
-    }
-
-    public Date getAcceptDate() {
-        return acceptDate;
-    }
-
-    public void setAcceptDate(Date acceptDate) {
-        this.acceptDate = acceptDate;
-    }
-
-    public Date getApprovedDate() {
-        return approvedDate;
-    }
-
-    public void setApprovedDate(Date approvedDate) {
-        this.approvedDate = approvedDate;
-    }
-
-    public Date getRecordTime() {
-        return recordTime;
-    }
-
-    public void setRecordTime(Date recordTime) {
-        this.recordTime = recordTime;
-    }
-    
-    @JsonIgnore
-    public Integer getDeletedSign() {
-        return deletedSign;
-    }
-
-    public void setDeletedSign(Integer deletedSign) {
-        this.deletedSign = deletedSign;
-    }
-    
-    //科技项目资料
-    public String getApprovalDownloadFileName(){
-		if (StringUtils.isBlank(this.approvalUrl)){
+	private String		id;
+
+	private String		uid;
+
+	/**
+	 * 编号
+	 */
+	private Integer		serialNumber;
+
+	/**
+	 * 联系人
+	 */
+	private Integer		contacts;
+
+	/**
+	 * 科技项目申报部门
+	 */
+	private String		department;
+
+	/**
+	 * 派单信息
+	 */
+	private String		dispatchInfo;
+
+	/**
+	 * 项目名称
+	 */
+	private String		projectName;
+
+	/**
+	 * 项目类型
+	 */
+	private String		projectCatagory;
+
+	/**
+	 * 技术领域
+	 */
+	private String		techField;
+
+	/**
+	 * 项目简介
+	 */
+	private String		projectDes;
+
+	/**
+	 * 是否立项
+	 */
+	private Integer		projectMode;
+
+	/**
+	 * 立项金额
+	 */
+	private BigDecimal	projectApproval;
+
+	/**
+	 * 是否补助
+	 */
+	private Integer		subsidy;
+
+	/**
+	 * 咨询师
+	 */
+	private String		consultant;
+
+	/**
+	 * 项目材料URL
+	 */
+	private String		approvalUrl;
+
+	/**
+	 * 申报状态
+	 */
+	private Integer		state;
+
+	/**
+	 * 派单日
+	 */
+	private Date		createTime;
+
+	/**
+	 * 受理日
+	 */
+	private Date		acceptDate;
+
+	/**
+	 * 项目批复日期
+	 */
+	private Date		approvedDate;
+
+	/**
+	 * 记录创建日期
+	 */
+	private Date		recordTime;
+
+	/**
+	 * 删除标记
+	 */
+	private Integer		deletedSign;
+
+	/**
+	 * 申请创建人
+	 */
+	private String		founder;
+
+	public String getFounder() {
+		return founder;
+	}
+
+	public void setFounder(String founder) {
+		this.founder = founder;
+	}
+
+	public String getId() {
+		return id;
+	}
+
+	public void setId(String id) {
+		this.id = id;
+	}
+
+	public String getUid() {
+		return uid;
+	}
+
+	public void setUid(String uid) {
+		this.uid = uid;
+	}
+
+	public Integer getSerialNumber() {
+		return serialNumber;
+	}
+
+	public void setSerialNumber(Integer serialNumber) {
+		this.serialNumber = serialNumber;
+	}
+
+	@JsonFormat(shape = Shape.STRING)
+	public Integer getContacts() {
+		return contacts;
+	}
+
+	public void setContacts(Integer contacts) {
+		this.contacts = contacts;
+	}
+
+	public String getDepartment() {
+		return department;
+	}
+
+	public void setDepartment(String department) {
+		this.department = department;
+	}
+
+	public String getDispatchInfo() {
+		return dispatchInfo;
+	}
+
+	public void setDispatchInfo(String dispatchInfo) {
+		this.dispatchInfo = dispatchInfo;
+	}
+
+	public String getProjectName() {
+		return projectName;
+	}
+
+	public void setProjectName(String projectName) {
+		this.projectName = projectName;
+	}
+
+	public String getProjectCatagory() {
+		return projectCatagory;
+	}
+
+	public void setProjectCatagory(String projectCatagory) {
+		this.projectCatagory = projectCatagory;
+	}
+
+	public String getTechField() {
+		return techField;
+	}
+
+	public void setTechField(String techField) {
+		this.techField = techField;
+	}
+
+	public String getProjectDes() {
+		return projectDes;
+	}
+
+	public void setProjectDes(String projectDes) {
+		this.projectDes = projectDes;
+	}
+
+	public Integer getProjectMode() {
+		return projectMode;
+	}
+
+	public void setProjectMode(Integer projectMode) {
+		this.projectMode = projectMode;
+	}
+
+	public BigDecimal getProjectApproval() {
+		return projectApproval;
+	}
+
+	public void setProjectApproval(BigDecimal projectApproval) {
+		this.projectApproval = projectApproval;
+	}
+
+	public Integer getSubsidy() {
+		return subsidy;
+	}
+
+	public void setSubsidy(Integer subsidy) {
+		this.subsidy = subsidy;
+	}
+
+	public String getConsultant() {
+		return consultant;
+	}
+
+	public void setConsultant(String consultant) {
+		this.consultant = consultant;
+	}
+
+	public String getApprovalUrl() {
+		return approvalUrl;
+	}
+
+	public void setApprovalUrl(String approvalUrl) {
+		this.approvalUrl = approvalUrl;
+	}
+
+	public Integer getState() {
+		return state;
+	}
+
+	public void setState(Integer state) {
+		this.state = state;
+	}
+
+	public Date getCreateTime() {
+		return createTime;
+	}
+
+	public void setCreateTime(Date createTime) {
+		this.createTime = createTime;
+	}
+
+	public Date getAcceptDate() {
+		return acceptDate;
+	}
+
+	public void setAcceptDate(Date acceptDate) {
+		this.acceptDate = acceptDate;
+	}
+
+	public Date getApprovedDate() {
+		return approvedDate;
+	}
+
+	public void setApprovedDate(Date approvedDate) {
+		this.approvedDate = approvedDate;
+	}
+
+	public Date getRecordTime() {
+		return recordTime;
+	}
+
+	public void setRecordTime(Date recordTime) {
+		this.recordTime = recordTime;
+	}
+
+	@JsonIgnore
+	public Integer getDeletedSign() {
+		return deletedSign;
+	}
+
+	public void setDeletedSign(Integer deletedSign) {
+		this.deletedSign = deletedSign;
+	}
+
+	// 科技项目资料
+	public String getApprovalDownloadFileName() {
+		if (StringUtils.isBlank(this.approvalUrl)) {
 			return null;
 		} else {
 			return FileUtils.getDownloadFileName(this.approvalUrl);
 		}
 	}
-	
-	public void setApprovalDownloadFileName(String approvalDownloadFileName){
-		
+
+	public void setApprovalDownloadFileName(String approvalDownloadFileName) {
+
 	}
 }

+ 12 - 0
src/main/java/com/goafanti/copyright/bo/CopyrightInfoSummary.java

@@ -92,6 +92,18 @@ public class CopyrightInfoSummary {
 	private String	secondContact;
 
 	private String	thirdContact;
+	
+	private String founder;
+	
+	
+
+	public String getFounder() {
+		return founder;
+	}
+
+	public void setFounder(String founder) {
+		this.founder = founder;
+	}
 
 	public String getProvince() {
 		return province;

+ 19 - 2
src/main/java/com/goafanti/copyright/service/impl/CopyrightInfoServiceImpl.java

@@ -17,14 +17,17 @@ 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.CopyrightStatus;
 import com.goafanti.common.enums.IntellectualPropertyType;
+import com.goafanti.common.enums.NoticeReadStatus;
 import com.goafanti.common.enums.NoticeStatus;
 import com.goafanti.common.model.Admin;
 import com.goafanti.common.model.CopyrightInfo;
 import com.goafanti.common.model.CopyrightLog;
 import com.goafanti.common.model.Notice;
 import com.goafanti.common.model.OrgIntellectualProperty;
+import com.goafanti.common.model.User;
 import com.goafanti.copyright.bo.CopyrightInfoDetail;
 import com.goafanti.copyright.bo.CopyrightInfoSummary;
 import com.goafanti.copyright.bo.CopyrightLogBO;
@@ -43,12 +46,17 @@ public class CopyrightInfoServiceImpl extends BaseMybatisDao<CopyrightInfoMapper
 	private OrgIntellectualPropertyMapper	orgIntellectualPropertyMapper;
 	@Autowired
 	private NoticeMapper					noticeMapper;
+	@Autowired
+	private UserMapper						userMapper;
 
 	@Override
 	public CopyrightInfo insert(CopyrightInfo copyrightInfo, String aid) {
 		Calendar now = Calendar.getInstance();
 		now.set(Calendar.MILLISECOND, 0);
 		copyrightInfo.setCreateTime(now.getTime());
+		if (TokenManager.getToken() instanceof Admin) {
+			copyrightInfo.setFounder(TokenManager.getAdminId());
+		}
 		CopyrightLog log = new CopyrightLog();
 		log.setCid(copyrightInfo.getId());
 		log.setRecordTime(copyrightInfo.getCreateTime());
@@ -97,7 +105,7 @@ public class CopyrightInfoServiceImpl extends BaseMybatisDao<CopyrightInfoMapper
 				o.setType(IntellectualPropertyType.COPYRIGHT.getCode());
 				o.setPropertyRightUrl(copyrightInfo.getCertificateUrl());
 				orgIntellectualPropertyMapper.insert(o);
-			} else if (CopyrightStatus.getStatus(copyrightLog.getStatus()) == CopyrightStatus.CIRCULATION){
+			} else if (CopyrightStatus.getStatus(copyrightLog.getStatus()) == CopyrightStatus.CIRCULATION) {
 				copyrightInfo.setStatus(CopyrightStatus.DELIVERD.getCode());
 			}
 		}
@@ -218,7 +226,16 @@ public class CopyrightInfoServiceImpl extends BaseMybatisDao<CopyrightInfoMapper
 		now.set(Calendar.MILLISECOND, 0);
 		n.setId(UUID.randomUUID().toString());
 		n.setCreateTime(now.getTime());
-		n.setReaded(0);
+		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());

+ 12 - 0
src/main/java/com/goafanti/patent/bo/PatentManageListBo.java

@@ -33,6 +33,18 @@ public class PatentManageListBo {
 
 	private String	author;
 
+	private String	founder;
+	
+	
+
+	public String getFounder() {
+		return founder;
+	}
+
+	public void setFounder(String founder) {
+		this.founder = founder;
+	}
+
 	public String getId() {
 		return id;
 	}

+ 26 - 13
src/main/java/com/goafanti/patent/service/impl/PatentInfoServiceImpl.java

@@ -20,6 +20,7 @@ import com.goafanti.common.dao.PatentLogMapper;
 import com.goafanti.common.dao.PatentRegistrationMapper;
 import com.goafanti.common.dao.UserMapper;
 import com.goafanti.common.enums.IntellectualPropertyType;
+import com.goafanti.common.enums.NoticeReadStatus;
 import com.goafanti.common.enums.NoticeStatus;
 import com.goafanti.common.enums.PatentInfoStatus;
 import com.goafanti.common.model.Admin;
@@ -29,6 +30,7 @@ import com.goafanti.common.model.PatentCost;
 import com.goafanti.common.model.PatentInfo;
 import com.goafanti.common.model.PatentLog;
 import com.goafanti.common.model.PatentRegistration;
+import com.goafanti.common.model.User;
 import com.goafanti.common.utils.DateUtils;
 import com.goafanti.common.utils.StringUtils;
 import com.goafanti.core.mybatis.BaseMybatisDao;
@@ -55,7 +57,8 @@ public class PatentInfoServiceImpl extends BaseMybatisDao<PatentInfoMapper> impl
 	@Autowired
 	OrgIntellectualPropertyMapper	orgIntellectualPropertyMapper;
 	@Autowired
-	NoticeMapper noticeMapper;
+	NoticeMapper					noticeMapper;
+	
 
 	@Override
 	public PatentInfo insert(PatentInfo patentInfo) {
@@ -306,6 +309,9 @@ public class PatentInfoServiceImpl extends BaseMybatisDao<PatentInfoMapper> impl
 		patentInfo.setDeletedSign(0);
 		patentInfo.setConfirmState(0);
 		patentInfo.setPatentState(PatentInfoStatus.CREATE.getCode());
+		if (TokenManager.getToken() instanceof Admin) {
+			patentInfo.setFounder(TokenManager.getAdminId());
+		}
 		Calendar now = Calendar.getInstance();
 		now.set(Calendar.MILLISECOND, 0);
 		patentInfo.setRecordTime(now.getTime());
@@ -343,6 +349,7 @@ public class PatentInfoServiceImpl extends BaseMybatisDao<PatentInfoMapper> impl
 		}
 		log.setComment(patentInfo.getPatentDes());
 		patentLogMapper.insert(log);
+
 		createNotice(patentInfo, log);
 		return patentInfo;
 	}
@@ -362,9 +369,9 @@ public class PatentInfoServiceImpl extends BaseMybatisDao<PatentInfoMapper> impl
 				p.setPatentApplicationDate(recordTime);
 			} else if (PatentInfoStatus.getStatus(log.getState()) == PatentInfoStatus.AUTHORIZE) {
 				p.setAuthorizedDate(recordTime);
-			} else if (PatentInfoStatus.getStatus(log.getState()) == PatentInfoStatus.REVIEWNOTICE){
+			} else if (PatentInfoStatus.getStatus(log.getState()) == PatentInfoStatus.REVIEWNOTICE) {
 				p.setRecordTime(recordTime);
-			} else if (PatentInfoStatus.getStatus(log.getState()) == PatentInfoStatus.CORRECTIONNOTICE){
+			} else if (PatentInfoStatus.getStatus(log.getState()) == PatentInfoStatus.CORRECTIONNOTICE) {
 				p.setRecordTime(recordTime);
 			}
 			if (PatentInfoStatus.getStatus(log.getState()) != PatentInfoStatus.CIRCULATION) {
@@ -372,7 +379,7 @@ public class PatentInfoServiceImpl extends BaseMybatisDao<PatentInfoMapper> impl
 			}
 			p.setPrincipal(log.getPrincipal());
 			patentLogMapper.insert(log);
-			
+
 			patentInfoMapper.updateByPrimaryKeySelective(p);
 			if (PatentInfoStatus.getStatus(p.getPatentState()) == PatentInfoStatus.AUTHORIZE) {
 				OrgIntellectualProperty o = new OrgIntellectualProperty();
@@ -391,7 +398,7 @@ public class PatentInfoServiceImpl extends BaseMybatisDao<PatentInfoMapper> impl
 				o.setPropertyRightUrl(p.getPatentCertificateUrl());
 				orgIntellectualPropertyMapper.insert(o);
 			}
-			
+
 			if (PatentInfoStatus.getStatus(p.getPatentState()) == PatentInfoStatus.LICENSE) {
 				OrgIntellectualProperty o = orgIntellectualPropertyMapper.selectOrgIntellectualPropertyByPid(p.getId());
 				if (null != o) {
@@ -414,14 +421,11 @@ public class PatentInfoServiceImpl extends BaseMybatisDao<PatentInfoMapper> impl
 					orgIntellectualPropertyMapper.updateByPrimaryKeySelective(o);
 				}
 			}
-			
+
 			createNotice(p, log);
-			
-			
+
 		}
-		
 
-		
 	}
 
 	@Override
@@ -454,8 +458,8 @@ public class PatentInfoServiceImpl extends BaseMybatisDao<PatentInfoMapper> impl
 	public PatentInfoDetailBo selectPatentInfoDetail(String id) {
 		return patentInfoMapper.selectPatentInfoDetail(id);
 	}
-	
-	private void createNotice(PatentInfo p, PatentLog l){
+
+	private void createNotice(PatentInfo p, PatentLog l) {
 		PatentInfo info = patentInfoMapper.selectByPrimaryKey(p.getId());
 
 		Notice n = new Notice();
@@ -463,7 +467,16 @@ public class PatentInfoServiceImpl extends BaseMybatisDao<PatentInfoMapper> impl
 		now.set(Calendar.MILLISECOND, 0);
 		n.setId(UUID.randomUUID().toString());
 		n.setCreateTime(now.getTime());
-		n.setReaded(0);
+		n.setReaded(NoticeReadStatus.UNREAD.getCode());
+		
+		User u = userMapper.selectByPrimaryKey(p.getUid());
+		if (null != u){
+			n.setPid(u.getAid());
+		}
+		
+		n.setUid(p.getUid());
+		n.setRid(p.getId());
+		
 		n.setAid(l.getPrincipal());
 		n.setContent("编号" + info.getSerialNumber() + "  " + PatentInfoStatus.getStatus(l.getState()).getDesc());
 		n.setNoticeType(NoticeStatus.PATENTINFO.getCode());

+ 12 - 0
src/main/java/com/goafanti/techproject/bo/TechProjectManageListBo.java

@@ -11,6 +11,18 @@ public class TechProjectManageListBo extends TechProjectClientListBo {
 	
 	private String password;
 	
+	private String founder;
+	
+	
+	
+	public String getFounder() {
+		return founder;
+	}
+
+	public void setFounder(String founder) {
+		this.founder = founder;
+	}
+
 	public String getWid() {
 		return wid;
 	}

+ 18 - 0
src/main/java/com/goafanti/techproject/service/impl/TechProjectServiceImpl.java

@@ -14,12 +14,14 @@ import com.goafanti.common.constant.AFTConstants;
 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.NoticeStatus;
 import com.goafanti.common.enums.TechProjectStatus;
 import com.goafanti.common.model.Admin;
 import com.goafanti.common.model.Notice;
 import com.goafanti.common.model.TechProject;
 import com.goafanti.common.model.TechProjectLog;
+import com.goafanti.common.model.User;
 import com.goafanti.common.utils.StringUtils;
 import com.goafanti.core.mybatis.BaseMybatisDao;
 import com.goafanti.core.mybatis.page.Pagination;
@@ -37,6 +39,8 @@ public class TechProjectServiceImpl extends BaseMybatisDao<TechProjectMapper> im
 	private TechProjectLogMapper	techProjectLogMapper;
 	@Autowired
 	private NoticeMapper			noticeMapper;
+	@Autowired
+	private UserMapper				userMapper;
 
 	@SuppressWarnings("unchecked")
 	@Override
@@ -91,6 +95,11 @@ public class TechProjectServiceImpl extends BaseMybatisDao<TechProjectMapper> im
 		techProject.setRecordTime(now.getTime());
 		techProject.setState(TechProjectStatus.CREATE.getCode());
 		techProject.setDeletedSign(0);
+
+		if (TokenManager.getToken() instanceof Admin) {
+			techProject.setFounder(TokenManager.getAdminId());
+		}
+
 		techProjectMapper.insert(techProject);
 
 		TechProjectLog log = new TechProjectLog();
@@ -163,6 +172,15 @@ public class TechProjectServiceImpl extends BaseMybatisDao<TechProjectMapper> im
 		n.setId(UUID.randomUUID().toString());
 		n.setCreateTime(now.getTime());
 		n.setReaded(0);
+
+		User u = userMapper.selectByPrimaryKey(t.getUid());
+		if (null != u) {
+			n.setPid(u.getAid());
+		}
+
+		n.setUid(t.getUid());
+		n.setRid(t.getId());
+
 		n.setAid(l.getPrincipal());
 		n.setContent("编号" + info.getSerialNumber() + "  " + TechProjectStatus.getStatus(l.getState()).getDesc());
 		n.setNoticeType(NoticeStatus.TECHPROJECT.getCode());