Ver Fonte

1.文件柜功能,增删改查上传文件,赋予部门和个人权限功能
2.内部通知功能,增删改查上传文件,赋予部门和个人权限功能

yanliming há 1 ano atrás
pai
commit
faee6f8cc1
26 ficheiros alterados com 708 adições e 156 exclusões
  1. 3 0
      common/src/main/java/com/jpsoft/railroad/modules/base/dao/NetworkNoticeRalationDAO.java
  2. 3 0
      common/src/main/java/com/jpsoft/railroad/modules/base/dao/OaFileRegUserInfoDAO.java
  3. 2 1
      common/src/main/java/com/jpsoft/railroad/modules/base/dao/OrganizationDAO.java
  4. 1 0
      common/src/main/java/com/jpsoft/railroad/modules/base/dao/RegUserDAO.java
  5. 10 0
      common/src/main/java/com/jpsoft/railroad/modules/base/dto/NetworkNoticeRalationDTO.java
  6. 12 0
      common/src/main/java/com/jpsoft/railroad/modules/base/dto/OaFileRelationDTO.java
  7. 14 2
      common/src/main/java/com/jpsoft/railroad/modules/base/entity/NetworkNotice.java
  8. 19 2
      common/src/main/java/com/jpsoft/railroad/modules/base/entity/OaFileInfo.java
  9. 4 0
      common/src/main/java/com/jpsoft/railroad/modules/base/service/NetworkNoticeRalationService.java
  10. 4 0
      common/src/main/java/com/jpsoft/railroad/modules/base/service/OaFileRegUserInfoService.java
  11. 1 0
      common/src/main/java/com/jpsoft/railroad/modules/base/service/OrganizationService.java
  12. 1 0
      common/src/main/java/com/jpsoft/railroad/modules/base/service/RegUserService.java
  13. 62 1
      common/src/main/java/com/jpsoft/railroad/modules/base/service/impl/NetworkNoticeRalationServiceImpl.java
  14. 111 50
      common/src/main/java/com/jpsoft/railroad/modules/base/service/impl/OaFileRegUserInfoServiceImpl.java
  15. 5 0
      common/src/main/java/com/jpsoft/railroad/modules/base/service/impl/OrganizationServiceImpl.java
  16. 6 0
      common/src/main/java/com/jpsoft/railroad/modules/base/service/impl/RegUserServiceImpl.java
  17. 1 0
      common/src/main/resources/mapper/base/NetworkNotice.xml
  18. 3 0
      common/src/main/resources/mapper/base/NetworkNoticeRalation.xml
  19. 2 2
      common/src/main/resources/mapper/base/OaFileInfo.xml
  20. 4 0
      common/src/main/resources/mapper/base/OaFileRegUserInfo.xml
  21. 13 1
      common/src/main/resources/mapper/base/Organization.xml
  22. 3 0
      common/src/main/resources/mapper/base/RegUser.xml
  23. 85 2
      web/src/main/java/com/jpsoft/railroad/modules/base/controller/NetworkNoticeController.java
  24. 75 1
      web/src/main/java/com/jpsoft/railroad/modules/base/controller/NetworkNoticeRalationController.java
  25. 130 48
      web/src/main/java/com/jpsoft/railroad/modules/base/controller/OaFileInfoController.java
  26. 134 46
      web/src/main/java/com/jpsoft/railroad/modules/base/controller/OaFileRegUserInfoController.java

+ 3 - 0
common/src/main/java/com/jpsoft/railroad/modules/base/dao/NetworkNoticeRalationDAO.java

@@ -1,6 +1,8 @@
 package com.jpsoft.railroad.modules.base.dao;
 package com.jpsoft.railroad.modules.base.dao;
 
 
 import java.util.List;
 import java.util.List;
+
+import org.apache.ibatis.annotations.Param;
 import org.springframework.stereotype.Repository;
 import org.springframework.stereotype.Repository;
 import com.jpsoft.railroad.modules.base.entity.NetworkNoticeRalation;
 import com.jpsoft.railroad.modules.base.entity.NetworkNoticeRalation;
 import java.util.Map;
 import java.util.Map;
@@ -14,5 +16,6 @@ public interface NetworkNoticeRalationDAO {
 	NetworkNoticeRalation get(String id);
 	NetworkNoticeRalation get(String id);
 	int delete(String id);
 	int delete(String id);
 	List<NetworkNoticeRalation> list();
 	List<NetworkNoticeRalation> list();
+	List<NetworkNoticeRalation> findRelationByFileId(@Param("fileId") String fileId, @Param("type")String type);
 	List<NetworkNoticeRalation> search(Map<String, Object> searchParams, List<Sort> sortList);
 	List<NetworkNoticeRalation> search(Map<String, Object> searchParams, List<Sort> sortList);
 }
 }

+ 3 - 0
common/src/main/java/com/jpsoft/railroad/modules/base/dao/OaFileRegUserInfoDAO.java

@@ -1,6 +1,8 @@
 package com.jpsoft.railroad.modules.base.dao;
 package com.jpsoft.railroad.modules.base.dao;
 
 
 import java.util.List;
 import java.util.List;
+
+import org.apache.ibatis.annotations.Param;
 import org.springframework.stereotype.Repository;
 import org.springframework.stereotype.Repository;
 import com.jpsoft.railroad.modules.base.entity.OaFileRegUserInfo;
 import com.jpsoft.railroad.modules.base.entity.OaFileRegUserInfo;
 import java.util.Map;
 import java.util.Map;
@@ -14,5 +16,6 @@ public interface OaFileRegUserInfoDAO {
 	OaFileRegUserInfo get(String id);
 	OaFileRegUserInfo get(String id);
 	int delete(String id);
 	int delete(String id);
 	List<OaFileRegUserInfo> list();
 	List<OaFileRegUserInfo> list();
+	List<OaFileRegUserInfo> findRelationByFileId(@Param("fileId") String fileId, @Param("type")String type);
 	List<OaFileRegUserInfo> search(Map<String, Object> searchParams, List<Sort> sortList);
 	List<OaFileRegUserInfo> search(Map<String, Object> searchParams, List<Sort> sortList);
 }
 }

+ 2 - 1
common/src/main/java/com/jpsoft/railroad/modules/base/dao/OrganizationDAO.java

@@ -17,8 +17,9 @@ public interface OrganizationDAO {
 	Organization get(String id);
 	Organization get(String id);
 	int delete(String id);
 	int delete(String id);
 	List<Organization> list();
 	List<Organization> list();
+	List<Organization> findAllListOrder();
 	List<Organization> search(Map<String,Object> searchParams,List<Sort> sortList);
 	List<Organization> search(Map<String,Object> searchParams,List<Sort> sortList);
-	List<Organization> findByParent(String parentId);
+	List<Organization> findByParent(@Param("parentId")String parentId);
 
 
 	List<OrgDTO> findTreeByParent(String parentId);
 	List<OrgDTO> findTreeByParent(String parentId);
 	List<Organization> findByIds(@Param("ids") List<String> ids);
 	List<Organization> findByIds(@Param("ids") List<String> ids);

+ 1 - 0
common/src/main/java/com/jpsoft/railroad/modules/base/dao/RegUserDAO.java

@@ -17,6 +17,7 @@ public interface RegUserDAO {
 	RegUser get(String id);
 	RegUser get(String id);
 	int delete(String id);
 	int delete(String id);
 	List<RegUser> list();
 	List<RegUser> list();
+	List<RegUser> findAllListOrder();
 	List<RegUser> search(Map<String,Object> searchParams,List<Sort> sortList);
 	List<RegUser> search(Map<String,Object> searchParams,List<Sort> sortList);
     RegUser findByOpenId(String openId);
     RegUser findByOpenId(String openId);
 	RegUser findByPhone(String phone);
 	RegUser findByPhone(String phone);

+ 10 - 0
common/src/main/java/com/jpsoft/railroad/modules/base/dto/NetworkNoticeRalationDTO.java

@@ -0,0 +1,10 @@
+package com.jpsoft.railroad.modules.base.dto;
+
+import lombok.Data;
+
+@Data
+public class NetworkNoticeRalationDTO {
+    private String fileId;
+    private String[] relatedUser;
+    private String[] orgSelected;
+}

+ 12 - 0
common/src/main/java/com/jpsoft/railroad/modules/base/dto/OaFileRelationDTO.java

@@ -0,0 +1,12 @@
+package com.jpsoft.railroad.modules.base.dto;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class OaFileRelationDTO {
+    private String fileId;
+    private String[] relatedUser;
+    private String[] orgSelected;
+}

+ 14 - 2
common/src/main/java/com/jpsoft/railroad/modules/base/entity/NetworkNotice.java

@@ -4,6 +4,10 @@ import java.io.Serializable;
 import java.util.Date;
 import java.util.Date;
 import java.text.SimpleDateFormat;
 import java.text.SimpleDateFormat;
 import java.math.BigDecimal;
 import java.math.BigDecimal;
+import java.util.List;
+import java.util.Map;
+
+import org.springframework.data.annotation.Transient;
 import org.springframework.format.annotation.DateTimeFormat;
 import org.springframework.format.annotation.DateTimeFormat;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.annotations.ApiModelProperty;
 import io.swagger.annotations.ApiModelProperty;
@@ -29,8 +33,8 @@ public class NetworkNotice {
 	private String type;
 	private String type;
 	
 	
 					@ApiModelProperty(value = "上传时间")
 					@ApiModelProperty(value = "上传时间")
-	@DateTimeFormat(pattern="yyyy-MM-dd HH:mm")
-	@JsonFormat(pattern = "yyyy-MM-dd HH:mm",timezone ="GMT+8")
+	@DateTimeFormat(pattern="yyyy-MM-dd")
+	@JsonFormat(pattern = "yyyy-MM-dd",timezone ="GMT+8")
 	private Date uploadTime;
 	private Date uploadTime;
 	
 	
 			@ApiModelProperty(value = "创建人")
 			@ApiModelProperty(value = "创建人")
@@ -51,5 +55,13 @@ public class NetworkNotice {
 	
 	
 			@ApiModelProperty(value = "是否删除")
 			@ApiModelProperty(value = "是否删除")
 	private Boolean delFlag;
 	private Boolean delFlag;
+
+	@Transient
+	@ApiModelProperty(value = "创建人")
+	private String createByN;
+
+	@Transient
+	@ApiModelProperty(value = "文件列表")
+	private List<Map> urlList;
 	
 	
 		}
 		}

+ 19 - 2
common/src/main/java/com/jpsoft/railroad/modules/base/entity/OaFileInfo.java

@@ -4,6 +4,10 @@ import java.io.Serializable;
 import java.util.Date;
 import java.util.Date;
 import java.text.SimpleDateFormat;
 import java.text.SimpleDateFormat;
 import java.math.BigDecimal;
 import java.math.BigDecimal;
+import java.util.List;
+import java.util.Map;
+
+import org.springframework.data.annotation.Transient;
 import org.springframework.format.annotation.DateTimeFormat;
 import org.springframework.format.annotation.DateTimeFormat;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.annotations.ApiModelProperty;
 import io.swagger.annotations.ApiModelProperty;
@@ -29,8 +33,8 @@ public class OaFileInfo {
 	private String type;
 	private String type;
 
 
 	@ApiModelProperty(value = "上传时间")
 	@ApiModelProperty(value = "上传时间")
-	@DateTimeFormat(pattern="yyyy-MM-dd HH:mm")
-	@JsonFormat(pattern = "yyyy-MM-dd HH:mm",timezone ="GMT+8")
+	@DateTimeFormat(pattern="yyyy-MM-dd")
+	@JsonFormat(pattern = "yyyy-MM-dd",timezone ="GMT+8")
 	private Date uploadTime;
 	private Date uploadTime;
 	
 	
 				@ApiModelProperty(value = "创建人")
 				@ApiModelProperty(value = "创建人")
@@ -51,5 +55,18 @@ public class OaFileInfo {
 	
 	
 			@ApiModelProperty(value = "是否删除")
 			@ApiModelProperty(value = "是否删除")
 	private Boolean delFlag;
 	private Boolean delFlag;
+
+
+	@Transient
+	@ApiModelProperty(value = "创建人")
+	private String createByN;
+
+			@Transient
+	@ApiModelProperty(value = "文件列表")
+	private List<Map> urlList;
+
+
+	@ApiModelProperty(value = "文件地址")
+	private String urlName;
 	
 	
 		}
 		}

+ 4 - 0
common/src/main/java/com/jpsoft/railroad/modules/base/service/NetworkNoticeRalationService.java

@@ -2,6 +2,8 @@ package com.jpsoft.railroad.modules.base.service;
 
 
 import java.util.List;
 import java.util.List;
 import java.util.Map;
 import java.util.Map;
+
+import com.jpsoft.railroad.modules.base.dto.NetworkNoticeRalationDTO;
 import com.jpsoft.railroad.modules.base.entity.NetworkNoticeRalation;
 import com.jpsoft.railroad.modules.base.entity.NetworkNoticeRalation;
 import com.github.pagehelper.Page;
 import com.github.pagehelper.Page;
 import com.jpsoft.railroad.modules.common.dto.Sort;
 import com.jpsoft.railroad.modules.common.dto.Sort;
@@ -11,7 +13,9 @@ public interface NetworkNoticeRalationService {
 	boolean exist(String id);
 	boolean exist(String id);
 	int insert(NetworkNoticeRalation model);
 	int insert(NetworkNoticeRalation model);
 	int update(NetworkNoticeRalation model);
 	int update(NetworkNoticeRalation model);
+	int relationItem(NetworkNoticeRalationDTO dto, String subject);
 	int delete(String id);
 	int delete(String id);
 	List<NetworkNoticeRalation> list();
 	List<NetworkNoticeRalation> list();
+	List<NetworkNoticeRalation> findRelationByFileId(String fileId, String type);
 	Page<NetworkNoticeRalation> pageSearch(Map<String, Object> searchParams, int pageNum, int pageSize, boolean count, List<Sort> sortList);
 	Page<NetworkNoticeRalation> pageSearch(Map<String, Object> searchParams, int pageNum, int pageSize, boolean count, List<Sort> sortList);
 }
 }

+ 4 - 0
common/src/main/java/com/jpsoft/railroad/modules/base/service/OaFileRegUserInfoService.java

@@ -2,6 +2,8 @@ package com.jpsoft.railroad.modules.base.service;
 
 
 import java.util.List;
 import java.util.List;
 import java.util.Map;
 import java.util.Map;
+
+import com.jpsoft.railroad.modules.base.dto.OaFileRelationDTO;
 import com.jpsoft.railroad.modules.base.entity.OaFileRegUserInfo;
 import com.jpsoft.railroad.modules.base.entity.OaFileRegUserInfo;
 import com.github.pagehelper.Page;
 import com.github.pagehelper.Page;
 import com.jpsoft.railroad.modules.common.dto.Sort;
 import com.jpsoft.railroad.modules.common.dto.Sort;
@@ -11,7 +13,9 @@ public interface OaFileRegUserInfoService {
 	boolean exist(String id);
 	boolean exist(String id);
 	int insert(OaFileRegUserInfo model);
 	int insert(OaFileRegUserInfo model);
 	int update(OaFileRegUserInfo model);
 	int update(OaFileRegUserInfo model);
+	int relationItem(OaFileRelationDTO dto,String subject);
 	int delete(String id);
 	int delete(String id);
 	List<OaFileRegUserInfo> list();
 	List<OaFileRegUserInfo> list();
+	List<OaFileRegUserInfo> findRelationByFileId(String fileId, String type);
 	Page<OaFileRegUserInfo> pageSearch(Map<String, Object> searchParams, int pageNum, int pageSize, boolean count, List<Sort> sortList);
 	Page<OaFileRegUserInfo> pageSearch(Map<String, Object> searchParams, int pageNum, int pageSize, boolean count, List<Sort> sortList);
 }
 }

+ 1 - 0
common/src/main/java/com/jpsoft/railroad/modules/base/service/OrganizationService.java

@@ -15,6 +15,7 @@ public interface OrganizationService {
 	int update(Organization model);
 	int update(Organization model);
 	int delete(String id);
 	int delete(String id);
 	List<Organization> list();
 	List<Organization> list();
+	List<Organization> findAllListOrder();
 	Page<Organization> pageSearch(Map<String, Object> searchParams,int pageNum,int pageSize,boolean count,List<Sort> sortList);
 	Page<Organization> pageSearch(Map<String, Object> searchParams,int pageNum,int pageSize,boolean count,List<Sort> sortList);
 	List<Organization> findByParent(String parentId);
 	List<Organization> findByParent(String parentId);
 
 

+ 1 - 0
common/src/main/java/com/jpsoft/railroad/modules/base/service/RegUserService.java

@@ -15,6 +15,7 @@ public interface RegUserService {
 	int update(RegUser model);
 	int update(RegUser model);
 	int delete(String id);
 	int delete(String id);
 	List<RegUser> list();
 	List<RegUser> list();
+	List<RegUser> findAllListOrder();
 	Page<RegUser> pageSearch(Map<String, Object> searchParams,int pageNum,int pageSize,boolean count,List<Sort> sortList);
 	Page<RegUser> pageSearch(Map<String, Object> searchParams,int pageNum,int pageSize,boolean count,List<Sort> sortList);
     RegUser findByOpenId(String openId);
     RegUser findByOpenId(String openId);
 	RegUser findByPhone(String phone);
 	RegUser findByPhone(String phone);

+ 62 - 1
common/src/main/java/com/jpsoft/railroad/modules/base/service/impl/NetworkNoticeRalationServiceImpl.java

@@ -1,9 +1,12 @@
 package com.jpsoft.railroad.modules.base.service.impl;
 package com.jpsoft.railroad.modules.base.service.impl;
 
 
+import java.util.Date;
 import java.util.List;
 import java.util.List;
 import java.util.Map;
 import java.util.Map;
 import java.util.UUID;
 import java.util.UUID;
 import javax.annotation.Resource;
 import javax.annotation.Resource;
+
+import com.jpsoft.railroad.modules.base.dto.NetworkNoticeRalationDTO;
 import org.springframework.stereotype.Component;
 import org.springframework.stereotype.Component;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.annotation.Transactional;
 import com.jpsoft.railroad.modules.base.dao.NetworkNoticeRalationDAO;
 import com.jpsoft.railroad.modules.base.dao.NetworkNoticeRalationDAO;
@@ -39,6 +42,58 @@ public class NetworkNoticeRalationServiceImpl implements NetworkNoticeRalationSe
 		return networkNoticeRalationDAO.update(model);		
 		return networkNoticeRalationDAO.update(model);		
 	}
 	}
 
 
+
+	@Override
+	public int relationItem(NetworkNoticeRalationDTO dto, String subject) {
+		List<NetworkNoticeRalation> networkNoticeRalationList = networkNoticeRalationDAO.findRelationByFileId(dto.getFileId(), "1");
+
+		int affectCount = 0;
+		Date now = new Date();
+		for (NetworkNoticeRalation item : networkNoticeRalationList) {
+			item.setDelFlag(true);
+			item.setUpdateBy(subject);
+			item.setUpdateTime(now);
+			networkNoticeRalationDAO.update(item);
+		}
+
+		for (String orgId : dto.getOrgSelected()) {
+			NetworkNoticeRalation item = new NetworkNoticeRalation();
+			item.setId(UUID.randomUUID().toString());
+			item.setFileId(dto.getFileId());
+			item.setBusinessId(orgId);
+			item.setType("1");
+			item.setCreateBy(subject);
+			item.setCreateTime(now);
+			item.setDelFlag(false);
+
+			affectCount += networkNoticeRalationDAO.insert(item);
+		}
+
+		List<NetworkNoticeRalation> regUserRelationList = networkNoticeRalationDAO.findRelationByFileId(dto.getFileId(), "2");
+
+		for (NetworkNoticeRalation item : regUserRelationList) {
+			item.setDelFlag(true);
+			item.setUpdateBy(subject);
+			item.setUpdateTime(now);
+			networkNoticeRalationDAO.update(item);
+		}
+
+		for (String regUserId : dto.getRelatedUser()) {
+			NetworkNoticeRalation item = new NetworkNoticeRalation();
+			item.setId(UUID.randomUUID().toString());
+			item.setFileId(dto.getFileId());
+			item.setBusinessId(regUserId);
+			item.setType("2");
+			item.setCreateBy(subject);
+			item.setCreateTime(now);
+			item.setDelFlag(false);
+
+			affectCount += networkNoticeRalationDAO.insert(item);
+		}
+
+		return affectCount;
+	}
+
 	@Override
 	@Override
 	public int delete(String id) {
 	public int delete(String id) {
 		// TODO Auto-generated method stub
 		// TODO Auto-generated method stub
@@ -58,7 +113,13 @@ public class NetworkNoticeRalationServiceImpl implements NetworkNoticeRalationSe
 		// TODO Auto-generated method stub
 		// TODO Auto-generated method stub
 		return networkNoticeRalationDAO.list();
 		return networkNoticeRalationDAO.list();
 	}
 	}
-		
+
+	@Override
+	public List<NetworkNoticeRalation> findRelationByFileId(String fileId, String type){
+		return networkNoticeRalationDAO.findRelationByFileId(fileId,type);
+	}
+
+
 	@Override
 	@Override
 	public Page<NetworkNoticeRalation> pageSearch(Map<String, Object> searchParams, int pageNumber, int pageSize,boolean count,List<Sort> sortList) {
 	public Page<NetworkNoticeRalation> pageSearch(Map<String, Object> searchParams, int pageNumber, int pageSize,boolean count,List<Sort> sortList) {
         Page<NetworkNoticeRalation> page = PageHelper.startPage(pageNumber,pageSize,count).doSelectPage(()->{
         Page<NetworkNoticeRalation> page = PageHelper.startPage(pageNumber,pageSize,count).doSelectPage(()->{

+ 111 - 50
common/src/main/java/com/jpsoft/railroad/modules/base/service/impl/OaFileRegUserInfoServiceImpl.java

@@ -1,9 +1,14 @@
 package com.jpsoft.railroad.modules.base.service.impl;
 package com.jpsoft.railroad.modules.base.service.impl;
 
 
+import java.util.Date;
 import java.util.List;
 import java.util.List;
 import java.util.Map;
 import java.util.Map;
 import java.util.UUID;
 import java.util.UUID;
 import javax.annotation.Resource;
 import javax.annotation.Resource;
+
+import com.jpsoft.railroad.modules.base.dto.OaFileRelationDTO;
+import com.jpsoft.railroad.modules.base.entity.Organization;
+import com.jpsoft.railroad.modules.base.entity.RegUser;
 import org.springframework.stereotype.Component;
 import org.springframework.stereotype.Component;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.annotation.Transactional;
 import com.jpsoft.railroad.modules.base.dao.OaFileRegUserInfoDAO;
 import com.jpsoft.railroad.modules.base.dao.OaFileRegUserInfoDAO;
@@ -14,57 +19,113 @@ import com.jpsoft.railroad.modules.common.dto.Sort;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageHelper;
 
 
 @Transactional
 @Transactional
-@Component(value="oaFileRegUserInfoService")
+@Component(value = "oaFileRegUserInfoService")
 public class OaFileRegUserInfoServiceImpl implements OaFileRegUserInfoService {
 public class OaFileRegUserInfoServiceImpl implements OaFileRegUserInfoService {
-	@Resource(name="oaFileRegUserInfoDAO")
-	private OaFileRegUserInfoDAO oaFileRegUserInfoDAO;
-
-	@Override
-	public OaFileRegUserInfo get(String id) {
-		// TODO Auto-generated method stub
-		return oaFileRegUserInfoDAO.get(id);
-	}
-
-	@Override
-	public int insert(OaFileRegUserInfo model) {
-		// TODO Auto-generated method stub
-		//model.setId(UUID.randomUUID().toString());
-		
-		return oaFileRegUserInfoDAO.insert(model);
-	}
-
-	@Override
-	public int update(OaFileRegUserInfo model) {
-		// TODO Auto-generated method stub
-		return oaFileRegUserInfoDAO.update(model);		
-	}
-
-	@Override
-	public int delete(String id) {
-		// TODO Auto-generated method stub
-		return oaFileRegUserInfoDAO.delete(id);
-	}
-
-	@Override
-	public boolean exist(String id) {
-		// TODO Auto-generated method stub
-		int count = oaFileRegUserInfoDAO.exist(id);
-		
-		return count > 0 ? true : false;
-	}
-	
-	@Override
-	public List<OaFileRegUserInfo> list() {
-		// TODO Auto-generated method stub
-		return oaFileRegUserInfoDAO.list();
-	}
-		
-	@Override
-	public Page<OaFileRegUserInfo> pageSearch(Map<String, Object> searchParams, int pageNumber, int pageSize,boolean count,List<Sort> sortList) {
-        Page<OaFileRegUserInfo> page = PageHelper.startPage(pageNumber,pageSize,count).doSelectPage(()->{
-            oaFileRegUserInfoDAO.search(searchParams,sortList);
+    @Resource(name = "oaFileRegUserInfoDAO")
+    private OaFileRegUserInfoDAO oaFileRegUserInfoDAO;
+
+    @Override
+    public OaFileRegUserInfo get(String id) {
+        // TODO Auto-generated method stub
+        return oaFileRegUserInfoDAO.get(id);
+    }
+
+    @Override
+    public int insert(OaFileRegUserInfo model) {
+        // TODO Auto-generated method stub
+        //model.setId(UUID.randomUUID().toString());
+
+        return oaFileRegUserInfoDAO.insert(model);
+    }
+
+    @Override
+    public int update(OaFileRegUserInfo model) {
+        // TODO Auto-generated method stub
+        return oaFileRegUserInfoDAO.update(model);
+    }
+
+    @Override
+    public int relationItem(OaFileRelationDTO dto, String subject) {
+        List<OaFileRegUserInfo> orgRelationList = oaFileRegUserInfoDAO.findRelationByFileId(dto.getFileId(), "1");
+
+        int affectCount = 0;
+        Date now = new Date();
+        for (OaFileRegUserInfo item : orgRelationList) {
+            item.setDelFlag(true);
+            item.setUpdateBy(subject);
+            item.setUpdateTime(now);
+            oaFileRegUserInfoDAO.update(item);
+        }
+
+        for (String orgId : dto.getOrgSelected()) {
+            OaFileRegUserInfo item = new OaFileRegUserInfo();
+            item.setId(UUID.randomUUID().toString());
+            item.setFileId(dto.getFileId());
+            item.setBusinessId(orgId);
+            item.setType("1");
+            item.setCreateBy(subject);
+            item.setCreateTime(now);
+            item.setDelFlag(false);
+
+            affectCount += oaFileRegUserInfoDAO.insert(item);
+        }
+
+        List<OaFileRegUserInfo> regUserRelationList = oaFileRegUserInfoDAO.findRelationByFileId(dto.getFileId(), "2");
+
+        for (OaFileRegUserInfo item : regUserRelationList) {
+            item.setDelFlag(true);
+            item.setUpdateBy(subject);
+            item.setUpdateTime(now);
+            oaFileRegUserInfoDAO.update(item);
+        }
+
+        for (String regUserId : dto.getRelatedUser()) {
+            OaFileRegUserInfo item = new OaFileRegUserInfo();
+            item.setId(UUID.randomUUID().toString());
+            item.setFileId(dto.getFileId());
+            item.setBusinessId(regUserId);
+            item.setType("2");
+            item.setCreateBy(subject);
+            item.setCreateTime(now);
+            item.setDelFlag(false);
+
+            affectCount += oaFileRegUserInfoDAO.insert(item);
+        }
+
+        return affectCount;
+    }
+
+    @Override
+    public int delete(String id) {
+        // TODO Auto-generated method stub
+        return oaFileRegUserInfoDAO.delete(id);
+    }
+
+    @Override
+    public boolean exist(String id) {
+        // TODO Auto-generated method stub
+        int count = oaFileRegUserInfoDAO.exist(id);
+
+        return count > 0 ? true : false;
+    }
+
+    @Override
+    public List<OaFileRegUserInfo> list() {
+        // TODO Auto-generated method stub
+        return oaFileRegUserInfoDAO.list();
+    }
+
+    @Override
+    public List<OaFileRegUserInfo> findRelationByFileId(String fileId, String type){
+        return oaFileRegUserInfoDAO.findRelationByFileId(fileId,type);
+    }
+
+    @Override
+    public Page<OaFileRegUserInfo> pageSearch(Map<String, Object> searchParams, int pageNumber, int pageSize, boolean count, List<Sort> sortList) {
+        Page<OaFileRegUserInfo> page = PageHelper.startPage(pageNumber, pageSize, count).doSelectPage(() -> {
+            oaFileRegUserInfoDAO.search(searchParams, sortList);
         });
         });
-        
+
         return page;
         return page;
-	}
+    }
 }
 }

+ 5 - 0
common/src/main/java/com/jpsoft/railroad/modules/base/service/impl/OrganizationServiceImpl.java

@@ -60,6 +60,11 @@ public class OrganizationServiceImpl implements OrganizationService {
 		// TODO Auto-generated method stub
 		// TODO Auto-generated method stub
 		return organizationDAO.list();
 		return organizationDAO.list();
 	}
 	}
+
+	@Override
+	public List<Organization> findAllListOrder(){
+		return organizationDAO.findAllListOrder();
+	}
 		
 		
 	@Override
 	@Override
 	public Page<Organization> pageSearch(Map<String, Object> searchParams, int pageNumber, int pageSize,boolean count,List<Sort> sortList) {
 	public Page<Organization> pageSearch(Map<String, Object> searchParams, int pageNumber, int pageSize,boolean count,List<Sort> sortList) {

+ 6 - 0
common/src/main/java/com/jpsoft/railroad/modules/base/service/impl/RegUserServiceImpl.java

@@ -74,6 +74,12 @@ public class RegUserServiceImpl implements RegUserService {
         return regUserDAO.list();
         return regUserDAO.list();
     }
     }
 
 
+
+    @Override
+    public List<RegUser> findAllListOrder(){
+        return regUserDAO.findAllListOrder();
+    }
+
     @Override
     @Override
     public Page<RegUser> pageSearch(Map<String, Object> searchParams, int pageNumber, int pageSize, boolean count, List<Sort> sortList) {
     public Page<RegUser> pageSearch(Map<String, Object> searchParams, int pageNumber, int pageSize, boolean count, List<Sort> sortList) {
         Page<RegUser> page = PageHelper.startPage(pageNumber, pageSize, count).doSelectPage(() -> {
         Page<RegUser> page = PageHelper.startPage(pageNumber, pageSize, count).doSelectPage(() -> {

+ 1 - 0
common/src/main/resources/mapper/base/NetworkNotice.xml

@@ -89,6 +89,7 @@
 			select * from base_network_notice
 			select * from base_network_notice
 		]]>
 		]]>
 		<where>
 		<where>
+			del_flag = false
 			<if test="searchParams.id != null">
 			<if test="searchParams.id != null">
 				and ID_ like #{searchParams.id}
 				and ID_ like #{searchParams.id}
 			</if>
 			</if>

+ 3 - 0
common/src/main/resources/mapper/base/NetworkNoticeRalation.xml

@@ -79,6 +79,9 @@
 	<select id="list" resultMap="NetworkNoticeRalationMap">
 	<select id="list" resultMap="NetworkNoticeRalationMap">
 		select * from base_network_notice_ralation
 		select * from base_network_notice_ralation
 	</select>
 	</select>
+	<select id="findRelationByFileId" resultMap="NetworkNoticeRalationMap">
+		select * from base_network_notice_ralation where del_flag = false and file_id=#{fileId} and type_= #{type}
+	</select>
 	<select id="search" parameterType="hashmap" resultMap="NetworkNoticeRalationMap">
 	<select id="search" parameterType="hashmap" resultMap="NetworkNoticeRalationMap">
 		<![CDATA[
 		<![CDATA[
 			select * from base_network_notice_ralation
 			select * from base_network_notice_ralation

+ 2 - 2
common/src/main/resources/mapper/base/OaFileInfo.xml

@@ -91,8 +91,8 @@
 		]]>
 		]]>
 		<where>
 		<where>
 			del_flag = false
 			del_flag = false
-			<if test="searchParams.id != null">
-				and ID_ like #{searchParams.id}
+			<if test="searchParams.name != null">
+				and name_ like #{searchParams.name}
 			</if>
 			</if>
 		</where>
 		</where>
 		<foreach item="sort" collection="sortList"  open="order by" separator=",">
 		<foreach item="sort" collection="sortList"  open="order by" separator=",">

+ 4 - 0
common/src/main/resources/mapper/base/OaFileRegUserInfo.xml

@@ -79,6 +79,10 @@
 	<select id="list" resultMap="OaFileRegUserInfoMap">
 	<select id="list" resultMap="OaFileRegUserInfoMap">
 		select * from base_oa_file_reg_user_info
 		select * from base_oa_file_reg_user_info
 	</select>
 	</select>
+	<select id="findRelationByFileId" resultMap="OaFileRegUserInfoMap">
+		select * from base_oa_file_reg_user_info where del_flag = false and file_id=#{fileId} and type_= #{type}
+	</select>
+
 	<select id="search" parameterType="hashmap" resultMap="OaFileRegUserInfoMap">
 	<select id="search" parameterType="hashmap" resultMap="OaFileRegUserInfoMap">
 		<![CDATA[
 		<![CDATA[
 			select * from base_oa_file_reg_user_info
 			select * from base_oa_file_reg_user_info

+ 13 - 1
common/src/main/resources/mapper/base/Organization.xml

@@ -102,6 +102,10 @@
 	<select id="list" resultMap="OrganizationMap">
 	<select id="list" resultMap="OrganizationMap">
 		select * from base_organization
 		select * from base_organization
 	</select>
 	</select>
+	<select id="findAllListOrder" resultMap="OrganizationMap">
+		select * from base_organization where del_flag=false order by CONVERT (name_ USING GBK) asc
+	</select>
+
 	<select id="search" parameterType="hashmap" resultMap="OrganizationMap">
 	<select id="search" parameterType="hashmap" resultMap="OrganizationMap">
 		<![CDATA[
 		<![CDATA[
 			SELECT a.*,b.name_ AS parent_name FROM base_organization a
 			SELECT a.*,b.name_ AS parent_name FROM base_organization a
@@ -136,7 +140,15 @@
 	 	</foreach>
 	 	</foreach>
 	</select>
 	</select>
 	<select id="findByParent" resultMap="OrganizationMap">
 	<select id="findByParent" resultMap="OrganizationMap">
-		SELECT * FROM base_organization WHERE parent_id = #{0}
+		SELECT * FROM base_organization
+		WHERE
+		del_flag = 0
+		<if test="parentId != null">
+			AND parent_id = #{parentId}
+		</if>
+		<if test="parentId == null">
+			AND parent_id is null
+		</if>
 	</select>
 	</select>
 
 
 	<select id="findTreeByParent" resultType="com.jpsoft.railroad.modules.base.dto.OrgDTO" parameterType="string">
 	<select id="findTreeByParent" resultType="com.jpsoft.railroad.modules.base.dto.OrgDTO" parameterType="string">

+ 3 - 0
common/src/main/resources/mapper/base/RegUser.xml

@@ -116,6 +116,9 @@
     <select id="list" resultMap="RegUserMap">
     <select id="list" resultMap="RegUserMap">
         select * from base_reg_user where del_flag = 0
         select * from base_reg_user where del_flag = 0
     </select>
     </select>
+    <select id="findAllListOrder" resultMap="RegUserMap">
+        select * from base_reg_user where del_flag = 0 order by CONVERT (name_ USING GBK) asc
+    </select>
     <select id="search" parameterType="hashmap" resultMap="RegUserMap">
     <select id="search" parameterType="hashmap" resultMap="RegUserMap">
         <![CDATA[
         <![CDATA[
 			SELECT a.*,b.name_ AS org_name,c.name_ AS regUserRoleName FROM base_reg_user a
 			SELECT a.*,b.name_ AS org_name,c.name_ AS regUserRoleName FROM base_reg_user a

+ 85 - 2
web/src/main/java/com/jpsoft/railroad/modules/base/controller/NetworkNoticeController.java

@@ -6,7 +6,12 @@ import com.jpsoft.railroad.modules.common.dto.Sort;
 import com.jpsoft.railroad.modules.common.dto.MessageResult;
 import com.jpsoft.railroad.modules.common.dto.MessageResult;
 import com.jpsoft.railroad.modules.base.entity.NetworkNotice;
 import com.jpsoft.railroad.modules.base.entity.NetworkNotice;
 import com.jpsoft.railroad.modules.base.service.NetworkNoticeService;
 import com.jpsoft.railroad.modules.base.service.NetworkNoticeService;
+import com.jpsoft.railroad.modules.sys.entity.User;
+import com.jpsoft.railroad.modules.sys.service.UserService;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiOperation;
+import net.sf.json.JSONArray;
+import net.sf.json.JSONObject;
+import org.apache.commons.collections.map.HashedMap;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.slf4j.LoggerFactory;
@@ -18,12 +23,15 @@ import java.text.SimpleDateFormat;
 import java.util.*;
 import java.util.*;
 
 
 @RestController
 @RestController
-@RequestMapping("/networkNotice")
+@RequestMapping("/base/networkNotice")
 public class NetworkNoticeController {
 public class NetworkNoticeController {
     private Logger logger = LoggerFactory.getLogger(getClass());
     private Logger logger = LoggerFactory.getLogger(getClass());
 
 
     @Autowired
     @Autowired
     private NetworkNoticeService networkNoticeService;
     private NetworkNoticeService networkNoticeService;
+
+    @Autowired
+    private UserService userService;
 	
 	
 	
 	
 	@ApiOperation(value="创建空记录")
 	@ApiOperation(value="创建空记录")
@@ -50,6 +58,22 @@ public class NetworkNoticeController {
             networkNotice.setCreateBy(subject);
             networkNotice.setCreateBy(subject);
             networkNotice.setCreateTime(new Date());
             networkNotice.setCreateTime(new Date());
 
 
+            JSONArray jsonArray = new JSONArray();
+
+            if (networkNotice.getUrlList() != null) {
+                for (Map<String, String> map : networkNotice.getUrlList()) {
+                    JSONObject jsonObject = new JSONObject();
+                    jsonObject.put("name", map.get("name"));
+                    jsonObject.put("url", map.get("url"));
+                    jsonArray.add(jsonObject);
+                }
+            }
+
+            if (jsonArray.size() > 0) {
+                networkNotice.setUrl(jsonArray.toString());
+            }
+
+
             int affectCount = networkNoticeService.insert(networkNotice);
             int affectCount = networkNoticeService.insert(networkNotice);
 
 
             if (affectCount > 0) {
             if (affectCount > 0) {
@@ -79,6 +103,29 @@ public class NetworkNoticeController {
             NetworkNotice networkNotice = networkNoticeService.get(id);
             NetworkNotice networkNotice = networkNoticeService.get(id);
 
 
             if (networkNotice != null) {
             if (networkNotice != null) {
+                String url = networkNotice.getUrl();
+
+                List<Map> annexFileList = new ArrayList<>();
+
+                if (StringUtils.isNotEmpty(url)) {
+
+                    JSONArray jsonArray = JSONArray.fromObject(url);
+
+                    for (Object object : jsonArray) {
+                        Map map = new HashedMap();
+                        JSONObject jsonObject = JSONObject.fromObject(object);
+                        String fileName = jsonObject.get("name").toString();
+                        String urlAddress = jsonObject.get("url").toString();
+                        map.put("fileName", fileName);
+                        map.put("url", urlAddress);
+                        map.put("name", fileName);
+                        annexFileList.add(map);
+                    }
+                }
+
+                networkNotice.setUrlList(annexFileList);
+
+
                 msgResult.setResult(true);
                 msgResult.setResult(true);
                 msgResult.setData(networkNotice);
                 msgResult.setData(networkNotice);
             } else {
             } else {
@@ -104,6 +151,21 @@ public class NetworkNoticeController {
         try {
         try {
 		    networkNotice.setUpdateBy(subject);
 		    networkNotice.setUpdateBy(subject);
             networkNotice.setUpdateTime(new Date());
             networkNotice.setUpdateTime(new Date());
+
+            JSONArray jsonArray = new JSONArray();
+
+            if (networkNotice.getUrlList() != null) {
+                for (Map<String, String> map : networkNotice.getUrlList()) {
+                    JSONObject jsonObject = new JSONObject();
+                    jsonObject.put("name", map.get("name"));
+                    jsonObject.put("url", map.get("url"));
+                    jsonArray.add(jsonObject);
+                }
+            }
+
+            if (jsonArray.size() > 0) {
+                networkNotice.setUrl(jsonArray.toString());
+            }
 		
 		
             int affectCount = networkNoticeService.update(networkNotice);
             int affectCount = networkNoticeService.update(networkNotice);
 
 
@@ -209,7 +271,7 @@ public class NetworkNoticeController {
         Map<String,Object> searchParams = new HashMap<>();
         Map<String,Object> searchParams = new HashMap<>();
 
 
         List<Sort> sortList = new ArrayList<>();
         List<Sort> sortList = new ArrayList<>();
-        sortList.add(new Sort("id_","asc"));
+        sortList.add(new Sort("create_time","desc"));
 
 
         if (StringUtils.isNotEmpty(id)) {
         if (StringUtils.isNotEmpty(id)) {
             searchParams.put("id","%" + id + "%");
             searchParams.put("id","%" + id + "%");
@@ -218,6 +280,27 @@ public class NetworkNoticeController {
 
 
         Page<NetworkNotice> page = networkNoticeService.pageSearch(searchParams,pageIndex,pageSize,true,sortList);
         Page<NetworkNotice> page = networkNoticeService.pageSearch(searchParams,pageIndex,pageSize,true,sortList);
 
 
+        for (NetworkNotice networkNotice : page) {
+            String createBy = networkNotice.getCreateBy();
+
+            User user = userService.get(createBy);
+
+            if (user != null) {
+                networkNotice.setCreateByN(user.getRealName());
+            }
+
+            String url = networkNotice.getUrl();
+
+            if (StringUtils.isNotEmpty(url)) {
+                JSONArray jsonArray = JSONArray.fromObject(url);
+                if (jsonArray.size() > 0) {
+                    JSONObject jsonObject = JSONObject.fromObject(jsonArray.get(0));
+                    String tempAddress = jsonObject.getString("url");
+                    networkNotice.setUrl(tempAddress);
+                }
+
+            }
+        }
 
 
         msgResult.setResult(true);
         msgResult.setResult(true);
         msgResult.setData(PojoUtils.pageWrapper(page));
         msgResult.setData(PojoUtils.pageWrapper(page));

+ 75 - 1
web/src/main/java/com/jpsoft/railroad/modules/base/controller/NetworkNoticeRalationController.java

@@ -1,6 +1,11 @@
 package com.jpsoft.railroad.modules.base.controller;
 package com.jpsoft.railroad.modules.base.controller;
 
 
 import com.github.pagehelper.Page;
 import com.github.pagehelper.Page;
+import com.jpsoft.railroad.modules.base.dto.NetworkNoticeRalationDTO;
+import com.jpsoft.railroad.modules.base.entity.Organization;
+import com.jpsoft.railroad.modules.base.entity.RegUser;
+import com.jpsoft.railroad.modules.base.service.OrganizationService;
+import com.jpsoft.railroad.modules.base.service.RegUserService;
 import com.jpsoft.railroad.modules.common.utils.PojoUtils;
 import com.jpsoft.railroad.modules.common.utils.PojoUtils;
 import com.jpsoft.railroad.modules.common.dto.Sort;
 import com.jpsoft.railroad.modules.common.dto.Sort;
 import com.jpsoft.railroad.modules.common.dto.MessageResult;
 import com.jpsoft.railroad.modules.common.dto.MessageResult;
@@ -18,12 +23,18 @@ import java.text.SimpleDateFormat;
 import java.util.*;
 import java.util.*;
 
 
 @RestController
 @RestController
-@RequestMapping("/networkNoticeRalation")
+@RequestMapping("/base/networkNoticeRalation")
 public class NetworkNoticeRalationController {
 public class NetworkNoticeRalationController {
     private Logger logger = LoggerFactory.getLogger(getClass());
     private Logger logger = LoggerFactory.getLogger(getClass());
 
 
     @Autowired
     @Autowired
     private NetworkNoticeRalationService networkNoticeRalationService;
     private NetworkNoticeRalationService networkNoticeRalationService;
+
+    @Autowired
+    private OrganizationService organizationService;
+
+    @Autowired
+    private RegUserService regUserService;
 	
 	
 	
 	
 	@ApiOperation(value="创建空记录")
 	@ApiOperation(value="创建空记录")
@@ -224,4 +235,67 @@ public class NetworkNoticeRalationController {
 
 
         return msgResult;
         return msgResult;
     }
     }
+
+
+    @ApiOperation(value = "获取部门和人员信息")
+    @GetMapping("query/{id}")
+    public MessageResult<Map> query(@PathVariable("id") String id) {
+        MessageResult<Map> msgResult = new MessageResult<>();
+
+        try {
+            Map map = new HashMap();
+
+            List<Organization> orgList = organizationService.findAllListOrder();
+
+            List<RegUser> regUserList = regUserService.findAllListOrder();
+
+            List<NetworkNoticeRalation> orgRelationList = networkNoticeRalationService.findRelationByFileId(id, "1");
+
+            List<NetworkNoticeRalation> regUserRelationList = networkNoticeRalationService.findRelationByFileId(id, "2");
+
+
+            map.put("orgList",orgList);
+            map.put("regUserList",regUserList);
+            map.put("orgRelationList",orgRelationList);
+            map.put("regUserRelationList",regUserRelationList);
+
+            msgResult.setResult(true);
+            msgResult.setData(map);
+        } catch (Exception ex) {
+            logger.error(ex.getMessage(), ex);
+
+            msgResult.setResult(false);
+            msgResult.setMessage(ex.getMessage());
+        }
+
+        return msgResult;
+    }
+
+
+
+    @ApiOperation(value = "更新相关联部门或者人员")
+    @PostMapping("relationItem")
+    public MessageResult<Integer> relationItem(@RequestBody NetworkNoticeRalationDTO dto, @RequestAttribute String subject) {
+        MessageResult<Integer> msgResult = new MessageResult<>();
+
+        try {
+
+            int affectCount = networkNoticeRalationService.relationItem(dto,subject);
+
+            if (affectCount > 0) {
+                msgResult.setResult(true);
+                msgResult.setData(affectCount);
+            } else {
+                msgResult.setResult(false);
+                msgResult.setMessage("数据库更新失败");
+            }
+        } catch (Exception ex) {
+            logger.error(ex.getMessage(), ex);
+
+            msgResult.setResult(false);
+            msgResult.setMessage(ex.getMessage());
+        }
+
+        return msgResult;
+    }
 }
 }

+ 130 - 48
web/src/main/java/com/jpsoft/railroad/modules/base/controller/OaFileInfoController.java

@@ -6,7 +6,12 @@ import com.jpsoft.railroad.modules.common.dto.Sort;
 import com.jpsoft.railroad.modules.common.dto.MessageResult;
 import com.jpsoft.railroad.modules.common.dto.MessageResult;
 import com.jpsoft.railroad.modules.base.entity.OaFileInfo;
 import com.jpsoft.railroad.modules.base.entity.OaFileInfo;
 import com.jpsoft.railroad.modules.base.service.OaFileInfoService;
 import com.jpsoft.railroad.modules.base.service.OaFileInfoService;
+import com.jpsoft.railroad.modules.sys.entity.User;
+import com.jpsoft.railroad.modules.sys.service.UserService;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiOperation;
+import net.sf.json.JSONArray;
+import net.sf.json.JSONObject;
+import org.apache.commons.collections.map.HashedMap;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.slf4j.LoggerFactory;
@@ -24,11 +29,14 @@ public class OaFileInfoController {
 
 
     @Autowired
     @Autowired
     private OaFileInfoService oaFileInfoService;
     private OaFileInfoService oaFileInfoService;
-	
-	
-	@ApiOperation(value="创建空记录")
+
+    @Autowired
+    private UserService userService;
+
+
+    @ApiOperation(value = "创建空记录")
     @GetMapping("create")
     @GetMapping("create")
-    public MessageResult<OaFileInfo> create(){
+    public MessageResult<OaFileInfo> create() {
         MessageResult<OaFileInfo> msgResult = new MessageResult<>();
         MessageResult<OaFileInfo> msgResult = new MessageResult<>();
 
 
         OaFileInfo oaFileInfo = new OaFileInfo();
         OaFileInfo oaFileInfo = new OaFileInfo();
@@ -39,17 +47,33 @@ public class OaFileInfoController {
         return msgResult;
         return msgResult;
     }
     }
 
 
-    @ApiOperation(value="添加信息")
+    @ApiOperation(value = "添加信息")
     @PostMapping("add")
     @PostMapping("add")
-    public MessageResult<OaFileInfo> add(@RequestBody OaFileInfo oaFileInfo,@RequestAttribute String subject){
+    public MessageResult<OaFileInfo> add(@RequestBody OaFileInfo oaFileInfo, @RequestAttribute String subject) {
         MessageResult<OaFileInfo> msgResult = new MessageResult<>();
         MessageResult<OaFileInfo> msgResult = new MessageResult<>();
 
 
         try {
         try {
             oaFileInfo.setId(UUID.randomUUID().toString());
             oaFileInfo.setId(UUID.randomUUID().toString());
-			oaFileInfo.setDelFlag(false);
+            oaFileInfo.setDelFlag(false);
             oaFileInfo.setCreateBy(subject);
             oaFileInfo.setCreateBy(subject);
             oaFileInfo.setCreateTime(new Date());
             oaFileInfo.setCreateTime(new Date());
 
 
+            JSONArray jsonArray = new JSONArray();
+
+            if (oaFileInfo.getUrlList() != null) {
+                for (Map<String, String> map : oaFileInfo.getUrlList()) {
+                    JSONObject jsonObject = new JSONObject();
+                    jsonObject.put("name", map.get("name"));
+                    jsonObject.put("url", map.get("url"));
+                    jsonArray.add(jsonObject);
+                }
+            }
+
+            if (jsonArray.size() > 0) {
+                oaFileInfo.setUrl(jsonArray.toString());
+            }
+
+
             int affectCount = oaFileInfoService.insert(oaFileInfo);
             int affectCount = oaFileInfoService.insert(oaFileInfo);
 
 
             if (affectCount > 0) {
             if (affectCount > 0) {
@@ -59,9 +83,8 @@ public class OaFileInfoController {
                 msgResult.setResult(false);
                 msgResult.setResult(false);
                 msgResult.setMessage("数据库添加失败");
                 msgResult.setMessage("数据库添加失败");
             }
             }
-        }
-        catch(Exception ex){
-            logger.error(ex.getMessage(),ex);
+        } catch (Exception ex) {
+            logger.error(ex.getMessage(), ex);
 
 
             msgResult.setResult(false);
             msgResult.setResult(false);
             msgResult.setMessage(ex.getMessage());
             msgResult.setMessage(ex.getMessage());
@@ -70,24 +93,46 @@ public class OaFileInfoController {
         return msgResult;
         return msgResult;
     }
     }
 
 
-    @ApiOperation(value="获取信息")
+    @ApiOperation(value = "获取信息")
     @GetMapping("edit/{id}")
     @GetMapping("edit/{id}")
-    public MessageResult<OaFileInfo> edit(@PathVariable("id") String id){
+    public MessageResult<OaFileInfo> edit(@PathVariable("id") String id) {
         MessageResult<OaFileInfo> msgResult = new MessageResult<>();
         MessageResult<OaFileInfo> msgResult = new MessageResult<>();
 
 
         try {
         try {
             OaFileInfo oaFileInfo = oaFileInfoService.get(id);
             OaFileInfo oaFileInfo = oaFileInfoService.get(id);
 
 
             if (oaFileInfo != null) {
             if (oaFileInfo != null) {
+                String url = oaFileInfo.getUrl();
+
+                List<Map> annexFileList = new ArrayList<>();
+
+                if (StringUtils.isNotEmpty(url)) {
+
+                    JSONArray jsonArray = JSONArray.fromObject(url);
+
+                    for (Object object : jsonArray) {
+                        Map map = new HashedMap();
+                        JSONObject jsonObject = JSONObject.fromObject(object);
+                        String fileName = jsonObject.get("name").toString();
+                        String urlAddress = jsonObject.get("url").toString();
+                        map.put("fileName", fileName);
+                        map.put("url", urlAddress);
+                        map.put("name", fileName);
+                        annexFileList.add(map);
+                    }
+                }
+
+                oaFileInfo.setUrlList(annexFileList);
+
+
                 msgResult.setResult(true);
                 msgResult.setResult(true);
                 msgResult.setData(oaFileInfo);
                 msgResult.setData(oaFileInfo);
             } else {
             } else {
                 msgResult.setResult(false);
                 msgResult.setResult(false);
                 msgResult.setMessage("数据库不存在该记录!");
                 msgResult.setMessage("数据库不存在该记录!");
             }
             }
-        }
-        catch(Exception ex){
-            logger.error(ex.getMessage(),ex);
+        } catch (Exception ex) {
+            logger.error(ex.getMessage(), ex);
 
 
             msgResult.setResult(false);
             msgResult.setResult(false);
             msgResult.setMessage(ex.getMessage());
             msgResult.setMessage(ex.getMessage());
@@ -96,15 +141,31 @@ public class OaFileInfoController {
         return msgResult;
         return msgResult;
     }
     }
 
 
-    @ApiOperation(value="更新用户")
+    @ApiOperation(value = "更新用户")
     @PostMapping("update")
     @PostMapping("update")
-    public MessageResult<OaFileInfo> update(@RequestBody OaFileInfo oaFileInfo,@RequestAttribute String subject){
+    public MessageResult<OaFileInfo> update(@RequestBody OaFileInfo oaFileInfo, @RequestAttribute String subject) {
         MessageResult<OaFileInfo> msgResult = new MessageResult<>();
         MessageResult<OaFileInfo> msgResult = new MessageResult<>();
 
 
         try {
         try {
-		    oaFileInfo.setUpdateBy(subject);
+            oaFileInfo.setUpdateBy(subject);
             oaFileInfo.setUpdateTime(new Date());
             oaFileInfo.setUpdateTime(new Date());
-		
+
+
+            JSONArray jsonArray = new JSONArray();
+
+            if (oaFileInfo.getUrlList() != null) {
+                for (Map<String, String> map : oaFileInfo.getUrlList()) {
+                    JSONObject jsonObject = new JSONObject();
+                    jsonObject.put("name", map.get("name"));
+                    jsonObject.put("url", map.get("url"));
+                    jsonArray.add(jsonObject);
+                }
+            }
+
+            if (jsonArray.size() > 0) {
+                oaFileInfo.setUrl(jsonArray.toString());
+            }
+
             int affectCount = oaFileInfoService.update(oaFileInfo);
             int affectCount = oaFileInfoService.update(oaFileInfo);
 
 
             if (affectCount > 0) {
             if (affectCount > 0) {
@@ -114,9 +175,8 @@ public class OaFileInfoController {
                 msgResult.setResult(false);
                 msgResult.setResult(false);
                 msgResult.setMessage("数据库更新失败");
                 msgResult.setMessage("数据库更新失败");
             }
             }
-        }
-        catch(Exception ex){
-            logger.error(ex.getMessage(),ex);
+        } catch (Exception ex) {
+            logger.error(ex.getMessage(), ex);
 
 
             msgResult.setResult(false);
             msgResult.setResult(false);
             msgResult.setMessage(ex.getMessage());
             msgResult.setMessage(ex.getMessage());
@@ -125,19 +185,19 @@ public class OaFileInfoController {
         return msgResult;
         return msgResult;
     }
     }
 
 
-    @ApiOperation(value="删除用户")
+    @ApiOperation(value = "删除用户")
     @PostMapping("delete/{id}")
     @PostMapping("delete/{id}")
-    public MessageResult<OaFileInfo> delete(@PathVariable("id") String id,@RequestAttribute String subject){
+    public MessageResult<OaFileInfo> delete(@PathVariable("id") String id, @RequestAttribute String subject) {
         MessageResult<OaFileInfo> msgResult = new MessageResult<>();
         MessageResult<OaFileInfo> msgResult = new MessageResult<>();
 
 
         try {
         try {
-			
-			OaFileInfo oaFileInfo = oaFileInfoService.get(id);
+
+            OaFileInfo oaFileInfo = oaFileInfoService.get(id);
             oaFileInfo.setDelFlag(true);
             oaFileInfo.setDelFlag(true);
             oaFileInfo.setUpdateBy(subject);
             oaFileInfo.setUpdateBy(subject);
             oaFileInfo.setUpdateTime(new Date());
             oaFileInfo.setUpdateTime(new Date());
-			
-			int affectCount = oaFileInfoService.update(oaFileInfo);
+
+            int affectCount = oaFileInfoService.update(oaFileInfo);
 
 
             if (affectCount > 0) {
             if (affectCount > 0) {
                 msgResult.setResult(true);
                 msgResult.setResult(true);
@@ -145,9 +205,8 @@ public class OaFileInfoController {
                 msgResult.setResult(false);
                 msgResult.setResult(false);
                 msgResult.setMessage("数据库删除失败");
                 msgResult.setMessage("数据库删除失败");
             }
             }
-        }
-        catch(Exception ex){
-            logger.error(ex.getMessage(),ex);
+        } catch (Exception ex) {
+            logger.error(ex.getMessage(), ex);
 
 
             msgResult.setResult(false);
             msgResult.setResult(false);
             msgResult.setMessage(ex.getMessage());
             msgResult.setMessage(ex.getMessage());
@@ -157,9 +216,9 @@ public class OaFileInfoController {
     }
     }
 
 
 
 
-    @ApiOperation(value="批量删除")
+    @ApiOperation(value = "批量删除")
     @PostMapping("batchDelete")
     @PostMapping("batchDelete")
-    public MessageResult<Integer> batchDelete(@RequestBody List<String> idList,@RequestAttribute String subject){
+    public MessageResult<Integer> batchDelete(@RequestBody List<String> idList, @RequestAttribute String subject) {
         MessageResult<Integer> msgResult = new MessageResult<>();
         MessageResult<Integer> msgResult = new MessageResult<>();
 
 
         try {
         try {
@@ -181,9 +240,8 @@ public class OaFileInfoController {
                 msgResult.setResult(false);
                 msgResult.setResult(false);
                 msgResult.setMessage("删除失败");
                 msgResult.setMessage("删除失败");
             }
             }
-        }
-        catch(Exception ex){
-            logger.error(ex.getMessage(),ex);
+        } catch (Exception ex) {
+            logger.error(ex.getMessage(), ex);
 
 
             msgResult.setResult(false);
             msgResult.setResult(false);
             msgResult.setMessage(ex.getMessage());
             msgResult.setMessage(ex.getMessage());
@@ -192,31 +250,55 @@ public class OaFileInfoController {
         return msgResult;
         return msgResult;
     }
     }
 
 
-    @ApiOperation(value="列表")
-    @RequestMapping(value = "pageList",method = RequestMethod.POST)
+    @ApiOperation(value = "列表")
+    @RequestMapping(value = "pageList", method = RequestMethod.POST)
     public MessageResult<Map> pageList(
     public MessageResult<Map> pageList(
-            String id,
-            @RequestParam(value="pageIndex",defaultValue="1") int pageIndex,
-            @RequestParam(value="pageSize",defaultValue="20") int pageSize,
-            HttpServletRequest request){
-        String subject = (String)request.getAttribute("subject");
+            String name,
+            @RequestParam(value = "pageIndex", defaultValue = "1") int pageIndex,
+            @RequestParam(value = "pageSize", defaultValue = "20") int pageSize,
+            HttpServletRequest request) {
+        String subject = (String) request.getAttribute("subject");
 
 
         //当前用户ID
         //当前用户ID
         System.out.println(subject);
         System.out.println(subject);
 
 
         MessageResult<Map> msgResult = new MessageResult<>();
         MessageResult<Map> msgResult = new MessageResult<>();
 
 
-        Map<String,Object> searchParams = new HashMap<>();
+        Map<String, Object> searchParams = new HashMap<>();
 
 
         List<Sort> sortList = new ArrayList<>();
         List<Sort> sortList = new ArrayList<>();
-        sortList.add(new Sort("create_time","desc"));
+        sortList.add(new Sort("create_time", "desc"));
 
 
-        if (StringUtils.isNotEmpty(id)) {
-            searchParams.put("id","%" + id + "%");
+        if (StringUtils.isNotEmpty(name)) {
+            searchParams.put("name", "%" + name + "%");
         }
         }
 
 
 
 
-        Page<OaFileInfo> page = oaFileInfoService.pageSearch(searchParams,pageIndex,pageSize,true,sortList);
+        Page<OaFileInfo> page = oaFileInfoService.pageSearch(searchParams, pageIndex, pageSize, true, sortList);
+
+        for (OaFileInfo oaFileInfo : page) {
+            String createBy = oaFileInfo.getCreateBy();
+
+            User user = userService.get(createBy);
+
+            if (user != null) {
+                oaFileInfo.setCreateByN(user.getRealName());
+            }
+
+            String url = oaFileInfo.getUrl();
+
+            if (StringUtils.isNotEmpty(url)) {
+                JSONArray jsonArray = JSONArray.fromObject(url);
+                if (jsonArray.size() > 0) {
+                    JSONObject jsonObject = JSONObject.fromObject(jsonArray.get(0));
+                    String tempAddress = jsonObject.getString("url");
+                    String urlName = jsonObject.getString("name");
+                    oaFileInfo.setUrl(tempAddress);
+                    oaFileInfo.setUrlName(urlName);
+                }
+
+            }
+        }
 
 
 
 
         msgResult.setResult(true);
         msgResult.setResult(true);

+ 134 - 46
web/src/main/java/com/jpsoft/railroad/modules/base/controller/OaFileRegUserInfoController.java

@@ -1,6 +1,12 @@
 package com.jpsoft.railroad.modules.base.controller;
 package com.jpsoft.railroad.modules.base.controller;
 
 
 import com.github.pagehelper.Page;
 import com.github.pagehelper.Page;
+import com.jpsoft.railroad.modules.base.dto.OaFileRelationDTO;
+import com.jpsoft.railroad.modules.base.dto.OrgDTO;
+import com.jpsoft.railroad.modules.base.entity.Organization;
+import com.jpsoft.railroad.modules.base.entity.RegUser;
+import com.jpsoft.railroad.modules.base.service.OrganizationService;
+import com.jpsoft.railroad.modules.base.service.RegUserService;
 import com.jpsoft.railroad.modules.common.utils.PojoUtils;
 import com.jpsoft.railroad.modules.common.utils.PojoUtils;
 import com.jpsoft.railroad.modules.common.dto.Sort;
 import com.jpsoft.railroad.modules.common.dto.Sort;
 import com.jpsoft.railroad.modules.common.dto.MessageResult;
 import com.jpsoft.railroad.modules.common.dto.MessageResult;
@@ -24,11 +30,16 @@ public class OaFileRegUserInfoController {
 
 
     @Autowired
     @Autowired
     private OaFileRegUserInfoService oaFileRegUserInfoService;
     private OaFileRegUserInfoService oaFileRegUserInfoService;
-	
-	
-	@ApiOperation(value="创建空记录")
+
+    @Autowired
+    private OrganizationService organizationService;
+
+    @Autowired
+    private RegUserService regUserService;
+
+    @ApiOperation(value = "创建空记录")
     @GetMapping("create")
     @GetMapping("create")
-    public MessageResult<OaFileRegUserInfo> create(){
+    public MessageResult<OaFileRegUserInfo> create() {
         MessageResult<OaFileRegUserInfo> msgResult = new MessageResult<>();
         MessageResult<OaFileRegUserInfo> msgResult = new MessageResult<>();
 
 
         OaFileRegUserInfo oaFileRegUserInfo = new OaFileRegUserInfo();
         OaFileRegUserInfo oaFileRegUserInfo = new OaFileRegUserInfo();
@@ -39,14 +50,14 @@ public class OaFileRegUserInfoController {
         return msgResult;
         return msgResult;
     }
     }
 
 
-    @ApiOperation(value="添加信息")
+    @ApiOperation(value = "添加信息")
     @PostMapping("add")
     @PostMapping("add")
-    public MessageResult<OaFileRegUserInfo> add(@RequestBody OaFileRegUserInfo oaFileRegUserInfo,@RequestAttribute String subject){
+    public MessageResult<OaFileRegUserInfo> add(@RequestBody OaFileRegUserInfo oaFileRegUserInfo, @RequestAttribute String subject) {
         MessageResult<OaFileRegUserInfo> msgResult = new MessageResult<>();
         MessageResult<OaFileRegUserInfo> msgResult = new MessageResult<>();
 
 
         try {
         try {
             oaFileRegUserInfo.setId(UUID.randomUUID().toString());
             oaFileRegUserInfo.setId(UUID.randomUUID().toString());
-			oaFileRegUserInfo.setDelFlag(false);
+            oaFileRegUserInfo.setDelFlag(false);
             oaFileRegUserInfo.setCreateBy(subject);
             oaFileRegUserInfo.setCreateBy(subject);
             oaFileRegUserInfo.setCreateTime(new Date());
             oaFileRegUserInfo.setCreateTime(new Date());
 
 
@@ -59,9 +70,8 @@ public class OaFileRegUserInfoController {
                 msgResult.setResult(false);
                 msgResult.setResult(false);
                 msgResult.setMessage("数据库添加失败");
                 msgResult.setMessage("数据库添加失败");
             }
             }
-        }
-        catch(Exception ex){
-            logger.error(ex.getMessage(),ex);
+        } catch (Exception ex) {
+            logger.error(ex.getMessage(), ex);
 
 
             msgResult.setResult(false);
             msgResult.setResult(false);
             msgResult.setMessage(ex.getMessage());
             msgResult.setMessage(ex.getMessage());
@@ -70,9 +80,9 @@ public class OaFileRegUserInfoController {
         return msgResult;
         return msgResult;
     }
     }
 
 
-    @ApiOperation(value="获取信息")
+    @ApiOperation(value = "获取信息")
     @GetMapping("edit/{id}")
     @GetMapping("edit/{id}")
-    public MessageResult<OaFileRegUserInfo> edit(@PathVariable("id") String id){
+    public MessageResult<OaFileRegUserInfo> edit(@PathVariable("id") String id) {
         MessageResult<OaFileRegUserInfo> msgResult = new MessageResult<>();
         MessageResult<OaFileRegUserInfo> msgResult = new MessageResult<>();
 
 
         try {
         try {
@@ -85,9 +95,8 @@ public class OaFileRegUserInfoController {
                 msgResult.setResult(false);
                 msgResult.setResult(false);
                 msgResult.setMessage("数据库不存在该记录!");
                 msgResult.setMessage("数据库不存在该记录!");
             }
             }
-        }
-        catch(Exception ex){
-            logger.error(ex.getMessage(),ex);
+        } catch (Exception ex) {
+            logger.error(ex.getMessage(), ex);
 
 
             msgResult.setResult(false);
             msgResult.setResult(false);
             msgResult.setMessage(ex.getMessage());
             msgResult.setMessage(ex.getMessage());
@@ -96,15 +105,15 @@ public class OaFileRegUserInfoController {
         return msgResult;
         return msgResult;
     }
     }
 
 
-    @ApiOperation(value="更新用户")
+    @ApiOperation(value = "更新用户")
     @PostMapping("update")
     @PostMapping("update")
-    public MessageResult<OaFileRegUserInfo> update(@RequestBody OaFileRegUserInfo oaFileRegUserInfo,@RequestAttribute String subject){
+    public MessageResult<OaFileRegUserInfo> update(@RequestBody OaFileRegUserInfo oaFileRegUserInfo, @RequestAttribute String subject) {
         MessageResult<OaFileRegUserInfo> msgResult = new MessageResult<>();
         MessageResult<OaFileRegUserInfo> msgResult = new MessageResult<>();
 
 
         try {
         try {
-		    oaFileRegUserInfo.setUpdateBy(subject);
+            oaFileRegUserInfo.setUpdateBy(subject);
             oaFileRegUserInfo.setUpdateTime(new Date());
             oaFileRegUserInfo.setUpdateTime(new Date());
-		
+
             int affectCount = oaFileRegUserInfoService.update(oaFileRegUserInfo);
             int affectCount = oaFileRegUserInfoService.update(oaFileRegUserInfo);
 
 
             if (affectCount > 0) {
             if (affectCount > 0) {
@@ -114,9 +123,8 @@ public class OaFileRegUserInfoController {
                 msgResult.setResult(false);
                 msgResult.setResult(false);
                 msgResult.setMessage("数据库更新失败");
                 msgResult.setMessage("数据库更新失败");
             }
             }
-        }
-        catch(Exception ex){
-            logger.error(ex.getMessage(),ex);
+        } catch (Exception ex) {
+            logger.error(ex.getMessage(), ex);
 
 
             msgResult.setResult(false);
             msgResult.setResult(false);
             msgResult.setMessage(ex.getMessage());
             msgResult.setMessage(ex.getMessage());
@@ -125,19 +133,19 @@ public class OaFileRegUserInfoController {
         return msgResult;
         return msgResult;
     }
     }
 
 
-    @ApiOperation(value="删除用户")
+    @ApiOperation(value = "删除用户")
     @PostMapping("delete/{id}")
     @PostMapping("delete/{id}")
-    public MessageResult<OaFileRegUserInfo> delete(@PathVariable("id") String id,@RequestAttribute String subject){
+    public MessageResult<OaFileRegUserInfo> delete(@PathVariable("id") String id, @RequestAttribute String subject) {
         MessageResult<OaFileRegUserInfo> msgResult = new MessageResult<>();
         MessageResult<OaFileRegUserInfo> msgResult = new MessageResult<>();
 
 
         try {
         try {
-			
-			OaFileRegUserInfo oaFileRegUserInfo = oaFileRegUserInfoService.get(id);
+
+            OaFileRegUserInfo oaFileRegUserInfo = oaFileRegUserInfoService.get(id);
             oaFileRegUserInfo.setDelFlag(true);
             oaFileRegUserInfo.setDelFlag(true);
             oaFileRegUserInfo.setUpdateBy(subject);
             oaFileRegUserInfo.setUpdateBy(subject);
             oaFileRegUserInfo.setUpdateTime(new Date());
             oaFileRegUserInfo.setUpdateTime(new Date());
-			
-			int affectCount = oaFileRegUserInfoService.update(oaFileRegUserInfo);
+
+            int affectCount = oaFileRegUserInfoService.update(oaFileRegUserInfo);
 
 
             if (affectCount > 0) {
             if (affectCount > 0) {
                 msgResult.setResult(true);
                 msgResult.setResult(true);
@@ -145,9 +153,8 @@ public class OaFileRegUserInfoController {
                 msgResult.setResult(false);
                 msgResult.setResult(false);
                 msgResult.setMessage("数据库删除失败");
                 msgResult.setMessage("数据库删除失败");
             }
             }
-        }
-        catch(Exception ex){
-            logger.error(ex.getMessage(),ex);
+        } catch (Exception ex) {
+            logger.error(ex.getMessage(), ex);
 
 
             msgResult.setResult(false);
             msgResult.setResult(false);
             msgResult.setMessage(ex.getMessage());
             msgResult.setMessage(ex.getMessage());
@@ -157,9 +164,9 @@ public class OaFileRegUserInfoController {
     }
     }
 
 
 
 
-    @ApiOperation(value="批量删除")
+    @ApiOperation(value = "批量删除")
     @PostMapping("batchDelete")
     @PostMapping("batchDelete")
-    public MessageResult<Integer> batchDelete(@RequestBody List<String> idList,@RequestAttribute String subject){
+    public MessageResult<Integer> batchDelete(@RequestBody List<String> idList, @RequestAttribute String subject) {
         MessageResult<Integer> msgResult = new MessageResult<>();
         MessageResult<Integer> msgResult = new MessageResult<>();
 
 
         try {
         try {
@@ -181,9 +188,8 @@ public class OaFileRegUserInfoController {
                 msgResult.setResult(false);
                 msgResult.setResult(false);
                 msgResult.setMessage("删除失败");
                 msgResult.setMessage("删除失败");
             }
             }
-        }
-        catch(Exception ex){
-            logger.error(ex.getMessage(),ex);
+        } catch (Exception ex) {
+            logger.error(ex.getMessage(), ex);
 
 
             msgResult.setResult(false);
             msgResult.setResult(false);
             msgResult.setMessage(ex.getMessage());
             msgResult.setMessage(ex.getMessage());
@@ -192,31 +198,31 @@ public class OaFileRegUserInfoController {
         return msgResult;
         return msgResult;
     }
     }
 
 
-    @ApiOperation(value="列表")
-    @RequestMapping(value = "pageList",method = RequestMethod.POST)
+    @ApiOperation(value = "列表")
+    @RequestMapping(value = "pageList", method = RequestMethod.POST)
     public MessageResult<Map> pageList(
     public MessageResult<Map> pageList(
             String id,
             String id,
-            @RequestParam(value="pageIndex",defaultValue="1") int pageIndex,
-            @RequestParam(value="pageSize",defaultValue="20") int pageSize,
-            HttpServletRequest request){
-        String subject = (String)request.getAttribute("subject");
+            @RequestParam(value = "pageIndex", defaultValue = "1") int pageIndex,
+            @RequestParam(value = "pageSize", defaultValue = "20") int pageSize,
+            HttpServletRequest request) {
+        String subject = (String) request.getAttribute("subject");
 
 
         //当前用户ID
         //当前用户ID
         System.out.println(subject);
         System.out.println(subject);
 
 
         MessageResult<Map> msgResult = new MessageResult<>();
         MessageResult<Map> msgResult = new MessageResult<>();
 
 
-        Map<String,Object> searchParams = new HashMap<>();
+        Map<String, Object> searchParams = new HashMap<>();
 
 
         List<Sort> sortList = new ArrayList<>();
         List<Sort> sortList = new ArrayList<>();
-        sortList.add(new Sort("create_time","desc"));
+        sortList.add(new Sort("create_time", "desc"));
 
 
         if (StringUtils.isNotEmpty(id)) {
         if (StringUtils.isNotEmpty(id)) {
-            searchParams.put("id","%" + id + "%");
+            searchParams.put("id", "%" + id + "%");
         }
         }
 
 
 
 
-        Page<OaFileRegUserInfo> page = oaFileRegUserInfoService.pageSearch(searchParams,pageIndex,pageSize,true,sortList);
+        Page<OaFileRegUserInfo> page = oaFileRegUserInfoService.pageSearch(searchParams, pageIndex, pageSize, true, sortList);
 
 
 
 
         msgResult.setResult(true);
         msgResult.setResult(true);
@@ -224,4 +230,86 @@ public class OaFileRegUserInfoController {
 
 
         return msgResult;
         return msgResult;
     }
     }
+
+    @ApiOperation(value = "获取部门和人员信息")
+    @GetMapping("query/{id}")
+    public MessageResult<Map> query(@PathVariable("id") String id) {
+        MessageResult<Map> msgResult = new MessageResult<>();
+
+        try {
+            Map map = new HashMap();
+
+            List<Organization> orgList = organizationService.findAllListOrder();
+
+            List<RegUser> regUserList = regUserService.findAllListOrder();
+
+            List<OaFileRegUserInfo> orgRelationList = oaFileRegUserInfoService.findRelationByFileId(id, "1");
+
+            List<OaFileRegUserInfo> regUserRelationList = oaFileRegUserInfoService.findRelationByFileId(id, "2");
+
+
+            map.put("orgList",orgList);
+            map.put("regUserList",regUserList);
+            map.put("orgRelationList",orgRelationList);
+            map.put("regUserRelationList",regUserRelationList);
+
+            msgResult.setResult(true);
+            msgResult.setData(map);
+        } catch (Exception ex) {
+            logger.error(ex.getMessage(), ex);
+
+            msgResult.setResult(false);
+            msgResult.setMessage(ex.getMessage());
+        }
+
+        return msgResult;
+    }
+
+    //构建树形结构
+    private List<Map> getChildrenList(String parentId) {
+        List<Organization> organizationList = organizationService.findByParent(parentId);
+        List<Map> mapList = new ArrayList<>();
+        for (Organization organization : organizationList) {
+            Map map = new HashMap();
+            map.put("pid", organization.getParentId());
+            map.put("id", organization.getId());
+            map.put("label", organization.getName());
+
+            List<Map> children = getChildrenList(organization.getId());
+            map.put("children", children);
+
+            mapList.add(map);
+        }
+
+        return mapList;
+    }
+
+
+
+    @ApiOperation(value = "更新相关联部门或者人员")
+    @PostMapping("relationItem")
+    public MessageResult<Integer> relationItem(@RequestBody OaFileRelationDTO dto, @RequestAttribute String subject) {
+        MessageResult<Integer> msgResult = new MessageResult<>();
+
+        try {
+
+            int affectCount = oaFileRegUserInfoService.relationItem(dto,subject);
+
+            if (affectCount > 0) {
+                msgResult.setResult(true);
+                msgResult.setData(affectCount);
+            } else {
+                msgResult.setResult(false);
+                msgResult.setMessage("数据库更新失败");
+            }
+        } catch (Exception ex) {
+            logger.error(ex.getMessage(), ex);
+
+            msgResult.setResult(false);
+            msgResult.setMessage(ex.getMessage());
+        }
+
+        return msgResult;
+    }
+
 }
 }