浏览代码

增加修改机构能力和资源信息接口

guochao 6 年之前
父节点
当前提交
b8f58240a0
共有 20 个文件被更改,包括 380 次插入41 次删除
  1. 0 0
      core/src/main/java/com/mooctest/crowd/domain/controller/TestUserController.java
  2. 4 1
      core/src/main/java/com/mooctest/crowd/domain/dao/AgencyAbilityDao.java
  3. 3 1
      core/src/main/java/com/mooctest/crowd/domain/dao/AgencyResourceDao.java
  4. 24 0
      core/src/main/java/com/mooctest/crowd/domain/dao/CompanyAuthDao.java
  5. 24 0
      core/src/main/java/com/mooctest/crowd/domain/dao/PersonalAuthDao.java
  6. 47 0
      core/src/main/java/com/mooctest/crowd/domain/domainobject/CompanyAuth.java
  7. 45 0
      core/src/main/java/com/mooctest/crowd/domain/domainobject/PersonalAuth.java
  8. 68 0
      core/src/main/java/com/mooctest/crowd/domain/model/CompanyAuthPO.java
  9. 0 7
      core/src/main/java/com/mooctest/crowd/domain/model/CrowdTestProjectPO.java
  10. 64 0
      core/src/main/java/com/mooctest/crowd/domain/model/PersonalAuthPO.java
  11. 20 11
      core/src/main/java/com/mooctest/crowd/domain/repository/EvaluationAgencyRepo.java
  12. 3 1
      core/src/main/java/com/mooctest/crowd/domain/repository/IEvaluationAgencyRepo.java
  13. 5 5
      core/src/main/java/com/mooctest/crowd/domain/repository/UserRepo.java
  14. 1 0
      core/src/test/java/com/mooctest/crowd/domain/domainobject/UserTest.java
  15. 5 5
      core/src/test/java/com/mooctest/crowd/domain/repository/UserRepoTest.java
  16. 28 0
      site/src/main/java/com/mooctest/crowd/site/command/AgencyUpdateCommand.java
  17. 14 2
      site/src/main/java/com/mooctest/crowd/site/controller/AgencyController.java
  18. 2 4
      site/src/main/java/com/mooctest/crowd/site/mediator/impl/WebMediatorImpl.java
  19. 3 0
      site/src/main/java/com/mooctest/crowd/site/service/AgencyService.java
  20. 20 4
      site/src/main/java/com/mooctest/crowd/site/service/impl/AgencyServiceImpl.java

文件差异内容过多而无法显示
+ 0 - 0
core/src/main/java/com/mooctest/crowd/domain/controller/TestUserController.java


+ 4 - 1
core/src/main/java/com/mooctest/crowd/domain/dao/EvaluationAgencyAbilityDao.java → core/src/main/java/com/mooctest/crowd/domain/dao/AgencyAbilityDao.java

@@ -9,7 +9,7 @@ import java.util.List;
 import java.util.Optional;
 
 @Transactional
-public interface EvaluationAgencyAbilityDao extends PagingAndSortingRepository<EvaluationAgencyAbilityPO, Long>, JpaSpecificationExecutor<EvaluationAgencyAbilityPO> {
+public interface AgencyAbilityDao extends PagingAndSortingRepository<EvaluationAgencyAbilityPO, Long>, JpaSpecificationExecutor<EvaluationAgencyAbilityPO> {
 
     Optional<EvaluationAgencyAbilityPO> findById(Long Id);
 
@@ -24,4 +24,7 @@ public interface EvaluationAgencyAbilityDao extends PagingAndSortingRepository<E
 
     EvaluationAgencyAbilityPO save(EvaluationAgencyAbilityPO evaluationAgencyPO);
 
+    List<EvaluationAgencyAbilityPO> saveAll(List<EvaluationAgencyAbilityPO> evaluationAgencyAbilityPOList);
+
+
 }

+ 3 - 1
core/src/main/java/com/mooctest/crowd/domain/dao/EvaluationAgencyResourceDao.java → core/src/main/java/com/mooctest/crowd/domain/dao/AgencyResourceDao.java

@@ -9,7 +9,7 @@ import java.util.List;
 import java.util.Optional;
 
 @Transactional
-public interface EvaluationAgencyResourceDao extends PagingAndSortingRepository<EvaluationAgencyResourcePO, Long>, JpaSpecificationExecutor<EvaluationAgencyResourcePO> {
+public interface AgencyResourceDao extends PagingAndSortingRepository<EvaluationAgencyResourcePO, Long>, JpaSpecificationExecutor<EvaluationAgencyResourcePO> {
 
     Optional<EvaluationAgencyResourcePO> findById(Long Id);
 
@@ -21,6 +21,8 @@ public interface EvaluationAgencyResourceDao extends PagingAndSortingRepository<
 
     EvaluationAgencyResourcePO save(EvaluationAgencyResourcePO evaluationAgencyPO);
 
+    List<EvaluationAgencyResourcePO> saveAll(List<EvaluationAgencyResourcePO> evaluationAgencyResourcePOList);
+
     @Override
     void deleteAll(Iterable<? extends EvaluationAgencyResourcePO> iterable);
 

+ 24 - 0
core/src/main/java/com/mooctest/crowd/domain/dao/CompanyAuthDao.java

@@ -0,0 +1,24 @@
+package com.mooctest.crowd.domain.dao;
+
+import com.mooctest.crowd.domain.model.CompanyAuthPO;
+import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
+import org.springframework.data.repository.PagingAndSortingRepository;
+
+import javax.transaction.Transactional;
+import java.util.List;
+import java.util.Optional;
+
+@Transactional
+public interface CompanyAuthDao extends PagingAndSortingRepository<CompanyAuthPO, Long>, JpaSpecificationExecutor<CompanyAuthPO> {
+
+    Optional<CompanyAuthPO> findById(Long Id);
+
+    CompanyAuthPO findByUserId(Long userId);
+
+    List<CompanyAuthPO> findByStatus(int status);
+
+    List<CompanyAuthPO> findAll();
+
+    CompanyAuthPO save(CompanyAuthPO companyAuthPO);
+
+}

+ 24 - 0
core/src/main/java/com/mooctest/crowd/domain/dao/PersonalAuthDao.java

@@ -0,0 +1,24 @@
+package com.mooctest.crowd.domain.dao;
+
+import com.mooctest.crowd.domain.model.PersonalAuthPO;
+import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
+import org.springframework.data.repository.PagingAndSortingRepository;
+
+import javax.transaction.Transactional;
+import java.util.List;
+import java.util.Optional;
+
+@Transactional
+public interface PersonalAuthDao extends PagingAndSortingRepository<PersonalAuthPO, Long>, JpaSpecificationExecutor<PersonalAuthPO> {
+
+    Optional<PersonalAuthPO> findById(Long Id);
+
+    PersonalAuthPO findByUserId(Long userId);
+
+    List<PersonalAuthPO> findByStatus(int status);
+
+    List<PersonalAuthPO> findAll();
+
+    PersonalAuthPO save(PersonalAuthPO personalAuthPO);
+
+}

+ 47 - 0
core/src/main/java/com/mooctest/crowd/domain/domainobject/CompanyAuth.java

@@ -0,0 +1,47 @@
+package com.mooctest.crowd.domain.domainobject;
+
+import lombok.Data;
+
+import java.sql.Timestamp;
+
+/**
+ * @author guochao
+ * @date 2019-08-19 15:47
+ */
+@Data
+public class CompanyAuth {
+
+    private Long id;
+    private Long userId;
+    private String companyName;
+    private String legalPersonName;
+    private String businessLicensePhoto;
+    private String unifiedSocialCreditCode;
+    private String bankAccount;
+    private String address;
+    private int status;
+    private Timestamp applyTime;
+    private Timestamp checkTime;
+
+    @Override
+    public String toString() {
+        return "CompanyAuth{" +
+                "id=" + id +
+                ", userId=" + userId +
+                ", companyName='" + companyName + '\'' +
+                ", legalPersonName='" + legalPersonName + '\'' +
+                ", businessLicensePhoto='" + businessLicensePhoto + '\'' +
+                ", unifiedSocialCreditCode='" + unifiedSocialCreditCode + '\'' +
+                ", bankAccount='" + bankAccount + '\'' +
+                ", address='" + address + '\'' +
+                ", status=" + status +
+                ", applyTime='" + applyTime + '\'' +
+                ", checkTime='" + checkTime + '\'' +
+                '}';
+    }
+
+    public CompanyAuth applyAuth(){
+        this.status = AuthenticationStatus.isAuthenIng;
+        return this;
+    }
+}

+ 45 - 0
core/src/main/java/com/mooctest/crowd/domain/domainobject/PersonalAuth.java

@@ -0,0 +1,45 @@
+package com.mooctest.crowd.domain.domainobject;
+
+import lombok.Data;
+
+import java.sql.Timestamp;
+
+/**
+ * @author guochao
+ * @date 2019-08-19 15:47
+ */
+@Data
+public class PersonalAuth {
+
+    private Long id;
+    private Long userId;
+    private String realName;
+    private String IDCard;
+    private String IDCardPhoto;
+    private String bankAccount;
+    private String address;
+    private int status;
+    private Timestamp applyTime;
+    private Timestamp checkTime;
+
+    @Override
+    public String toString() {
+        return "PersonalAuth{" +
+                "id=" + id +
+                ", userId=" + userId +
+                ", realName='" + realName + '\'' +
+                ", IDCard='" + IDCard + '\'' +
+                ", IDCardPhoto='" + IDCardPhoto + '\'' +
+                ", bankAccount='" + bankAccount + '\'' +
+                ", address='" + address + '\'' +
+                ", status='" + status + '\'' +
+                ", applyTime='" + applyTime + '\'' +
+                ", checkTime='" + checkTime + '\'' +
+                '}';
+    }
+
+    public PersonalAuth applyAuth(){
+        this.status = AuthenticationStatus.isAuthenIng;
+        return this;
+    }
+}

+ 68 - 0
core/src/main/java/com/mooctest/crowd/domain/model/CompanyAuthPO.java

@@ -0,0 +1,68 @@
+package com.mooctest.crowd.domain.model;
+
+import lombok.Data;
+
+import javax.persistence.*;
+import java.sql.Timestamp;
+
+/**
+ * @author guochao
+ * @date 2019-08-19 15:47
+ */
+@Data
+@Entity
+@Table(name = "company_authentication")
+public class CompanyAuthPO {
+
+    @Id
+    @Column(name = "CA_ID")
+    @GeneratedValue(strategy = GenerationType.IDENTITY)
+    private Long id;
+
+    @Column(name = "CA_USER_ID")
+    private Long userId;
+
+    @Column(name = "CA_COMPANY_NAME")
+    private String companyName;
+
+    @Column(name = "CA_LEGAL_PERSON_NAME")
+    private String legalPersonName;
+
+    @Column(name = "CA_BUSINESS_LICENSE_PHOTO")
+    private String businessLicensePhoto;
+
+    @Column(name = "CA_UNIFIED_SOCIAL_CREDIT_CODE")
+    private String unifiedSocialCreditCode;
+
+    @Column(name = "CA_BANK_ACCOUNT")
+    private String bankAccount;
+
+    @Column(name = "CA_ADDRESS")
+    private String address;
+
+    @Column(name = "CA_STATUS")
+    private int status;
+
+    @Column(name = "CA_APPLY_TIME")
+    private Timestamp applyTime;
+
+    @Column(name = "CA_CHECK_TIME")
+    private Timestamp checkTime;
+
+    @Override
+    public String toString() {
+        return "CompanyAuth{" +
+                "id=" + id +
+                ", userId=" + userId +
+                ", companyName='" + companyName + '\'' +
+                ", legalPersonName='" + legalPersonName + '\'' +
+                ", businessLicensePhoto='" + businessLicensePhoto + '\'' +
+                ", unifiedSocialCreditCode='" + unifiedSocialCreditCode + '\'' +
+                ", bankAccount='" + bankAccount + '\'' +
+                ", address='" + address + '\'' +
+                ", status=" + status +
+                ", applyTime='" + applyTime + '\'' +
+                ", checkTime='" + checkTime + '\'' +
+                '}';
+    }
+}

+ 0 - 7
core/src/main/java/com/mooctest/crowd/domain/model/CrowdTestProjectPO.java

@@ -1,6 +1,5 @@
 package com.mooctest.crowd.domain.model;
 
-import cn.afterturn.easypoi.excel.annotation.Excel;
 import lombok.Data;
 
 import javax.persistence.*;
@@ -24,7 +23,6 @@ public class CrowdTestProjectPO implements Serializable {
     @Column(name = "CTP_CODE")
     private String code;
 
-    @Excel(name="项目名称")
     @Column(name = "CTP_NAME")
     private String name;
 
@@ -37,23 +35,18 @@ public class CrowdTestProjectPO implements Serializable {
     @Column(name = "CTP_PDT_ID")
     private Long projectDistributionTypeId;
 
-    @Excel(name="测试平台",replace = { "导师_1", "博士后_2","博士_3", "硕士_4","无_5"},orderNum = "0")
     @Column(name = "CTP_PLATFORM")
     private String platform;
 
-    @Excel(name="项目联系人")
     @Column(name = "CTP_LINK_MAN")
     private String linkMan;
 
-    @Excel(name="联系手机号")
     @Column(name = "CTP_Link_MAN_MOBILE")
     private String linkManMobile;
 
-    @Excel(name="项目类型")
     @Column(name = "CTP_TYPE")
     private String type;
 
-    @Excel(name="需求描述")
     @Column(name = "CTP_DESCRIPTION")
     private String description;
 

+ 64 - 0
core/src/main/java/com/mooctest/crowd/domain/model/PersonalAuthPO.java

@@ -0,0 +1,64 @@
+package com.mooctest.crowd.domain.model;
+
+import lombok.Data;
+
+import javax.persistence.*;
+import java.sql.Timestamp;
+
+/**
+ * @author guochao
+ * @date 2019-08-19 15:47
+ */
+@Data
+@Entity
+@Table(name = "personal_authentication")
+public class PersonalAuthPO {
+
+    @Id
+    @Column(name = "PA_ID")
+    @GeneratedValue(strategy = GenerationType.IDENTITY)
+    private Long id;
+
+    @Column(name = "PA_USER_ID")
+    private Long userId;
+
+    @Column(name = "PA_REAL_NAME")
+    private String realName;
+
+    @Column(name = "PA_ID_CARD")
+    private String IDCard;
+
+    @Column(name = "PA_ID_CARD_PHOTO")
+    private String IDCardPhoto;
+
+    @Column(name = "PA_BANK_ACCOUNT")
+    private String bankAccount;
+
+    @Column(name = "PA_ADDRESS")
+    private String address;
+
+    @Column(name = "PA_STATUS")
+    private int status;
+
+    @Column(name = "PA_APPLY_TIME")
+    private Timestamp applyTime;
+
+    @Column(name = "PA_CHECK_TIME")
+    private Timestamp checkTime;
+
+    @Override
+    public String toString() {
+        return "PersonalAuth{" +
+                "id=" + id +
+                ", userId=" + userId +
+                ", realName='" + realName + '\'' +
+                ", IDCard='" + IDCard + '\'' +
+                ", IDCardPhoto='" + IDCardPhoto + '\'' +
+                ", bankAccount='" + bankAccount + '\'' +
+                ", address='" + address + '\'' +
+                ", status='" + status + '\'' +
+                ", applyTime='" + applyTime + '\'' +
+                ", checkTime='" + checkTime + '\'' +
+                '}';
+    }
+}

+ 20 - 11
core/src/main/java/com/mooctest/crowd/domain/repository/EvaluationAgencyResourceRepo.java → core/src/main/java/com/mooctest/crowd/domain/repository/EvaluationAgencyRepo.java

@@ -1,7 +1,7 @@
 package com.mooctest.crowd.domain.repository;
 
-import com.mooctest.crowd.domain.dao.EvaluationAgencyAbilityDao;
-import com.mooctest.crowd.domain.dao.EvaluationAgencyResourceDao;
+import com.mooctest.crowd.domain.dao.AgencyAbilityDao;
+import com.mooctest.crowd.domain.dao.AgencyResourceDao;
 import com.mooctest.crowd.domain.domainobject.EvaluationAgencyAbility;
 import com.mooctest.crowd.domain.domainobject.EvaluationAgencyResource;
 import com.mooctest.crowd.domain.exception.EvaluationAgencyResourceNotExist;
@@ -20,16 +20,16 @@ import java.util.stream.Collectors;
  * @date 2019-08-14 09:51
  */
 @Component
-public class EvaluationAgencyResourceRepo implements IEvaluationAgencyResourceRepo{
+public class EvaluationAgencyRepo implements IEvaluationAgencyRepo {
     @Autowired
-    private EvaluationAgencyResourceDao evaluationAgencyResourceDao;
+    private AgencyResourceDao agencyResourceDao;
 
     @Autowired
-    private EvaluationAgencyAbilityDao evaluationAgencyAbilityDao;
+    private AgencyAbilityDao agencyAbilityDao;
 
     @Override
     public EvaluationAgencyResource findById(Long id){
-        Optional<EvaluationAgencyResourcePO> evaluationAgencyResourcePOOptional = evaluationAgencyResourceDao.findById(id);
+        Optional<EvaluationAgencyResourcePO> evaluationAgencyResourcePOOptional = agencyResourceDao.findById(id);
         if(!evaluationAgencyResourcePOOptional.isPresent()){
             throw new EvaluationAgencyResourceNotExist("测评机构资源不存在");
         }else{
@@ -39,7 +39,7 @@ public class EvaluationAgencyResourceRepo implements IEvaluationAgencyResourceRe
 
     @Override
     public List<EvaluationAgencyResource> findByEvaluationAgencyId(Long evaluationAgencyId){
-        List<EvaluationAgencyResourcePO> evaluationAgencyResourcePOList = evaluationAgencyResourceDao.findByEvaluationAgencyId(evaluationAgencyId);
+        List<EvaluationAgencyResourcePO> evaluationAgencyResourcePOList = agencyResourceDao.findByEvaluationAgencyId(evaluationAgencyId);
         return evaluationAgencyResourcePOList.stream().map(evaluationAgencyResourcePO -> Converter.convert(EvaluationAgencyResource.class, evaluationAgencyResourcePO)).collect(Collectors.toList());
 
     }
@@ -49,30 +49,39 @@ public class EvaluationAgencyResourceRepo implements IEvaluationAgencyResourceRe
         List<EvaluationAgencyResourcePO> evaluationAgencyResourcePOList = evaluationAgencyResourceList.stream()
                 .map(evaluationAgencyResource -> Converter.convert(EvaluationAgencyResourcePO.class, evaluationAgencyResource))
                 .collect(Collectors.toList());
-        evaluationAgencyResourceDao.deleteAll(evaluationAgencyResourcePOList);
+        agencyResourceDao.deleteAll(evaluationAgencyResourcePOList);
     }
 
     @Override
     public EvaluationAgencyResource saveEvaluationAgencyResource(EvaluationAgencyResource evaluationAgencyResource){
-        EvaluationAgencyResourcePO evaluationAgencyResourceResult = evaluationAgencyResourceDao.save(Converter.convert(EvaluationAgencyResourcePO.class, evaluationAgencyResource));
+        EvaluationAgencyResourcePO evaluationAgencyResourceResult = agencyResourceDao.save(Converter.convert(EvaluationAgencyResourcePO.class, evaluationAgencyResource));
         return Converter.convert(EvaluationAgencyResource.class, evaluationAgencyResourceResult);
     }
 
+    public List<EvaluationAgencyResource> saveAllResource(List<EvaluationAgencyResource> sourceList){
+        List<EvaluationAgencyResourcePO> evaluationAgencyResourcePOList = agencyResourceDao.saveAll(sourceList.stream().map(source -> Converter.convert(EvaluationAgencyResourcePO.class, source)).collect(Collectors.toList()));
+        return evaluationAgencyResourcePOList.stream().map(sourcePO -> Converter.convert(EvaluationAgencyResource.class, sourcePO)).collect(Collectors.toList());
+    }
 
 
     //能力
     @Override
     public EvaluationAgencyAbility saveEvaluationAgencyAbility(EvaluationAgencyAbility EvaluationAgencyAbility){
-        EvaluationAgencyAbilityPO evaluationAgencyAbilityPO = evaluationAgencyAbilityDao.save(Converter.convert(EvaluationAgencyAbilityPO.class, EvaluationAgencyAbility));
+        EvaluationAgencyAbilityPO evaluationAgencyAbilityPO = agencyAbilityDao.save(Converter.convert(EvaluationAgencyAbilityPO.class, EvaluationAgencyAbility));
         return Converter.convert(EvaluationAgencyAbility.class, evaluationAgencyAbilityPO);
     }
 
+    public List<EvaluationAgencyAbility> saveAllAbility(List<EvaluationAgencyAbility> abilityList){
+        List<EvaluationAgencyAbilityPO> evaluationAgencyAbilityPOList = agencyAbilityDao.saveAll(abilityList.stream().map(source -> Converter.convert(EvaluationAgencyAbilityPO.class, source)).collect(Collectors.toList()));
+        return evaluationAgencyAbilityPOList.stream().map(abilityPO -> Converter.convert(EvaluationAgencyAbility.class, abilityPO)).collect(Collectors.toList());
+    }
+
     @Override
     public void moveEvaluationAgencyAbility(List<EvaluationAgencyAbility> evaluationAgencyAbilityList){
         List<EvaluationAgencyAbilityPO> evaluationAgencyAbilityPOList = evaluationAgencyAbilityList.stream()
                 .map(evaluationAgencyAbility -> Converter.convert(EvaluationAgencyAbilityPO.class, evaluationAgencyAbility))
                 .collect(Collectors.toList());
-        evaluationAgencyAbilityDao.deleteAll(evaluationAgencyAbilityPOList);
+        agencyAbilityDao.deleteAll(evaluationAgencyAbilityPOList);
     }
 
 }

+ 3 - 1
core/src/main/java/com/mooctest/crowd/domain/repository/IEvaluationAgencyResourceRepo.java → core/src/main/java/com/mooctest/crowd/domain/repository/IEvaluationAgencyRepo.java

@@ -9,7 +9,7 @@ import java.util.List;
  * @author guochao
  * @date 2019-08-14 09:55
  */
-public interface IEvaluationAgencyResourceRepo {
+public interface IEvaluationAgencyRepo {
 
     EvaluationAgencyResource findById(Long id);
 
@@ -17,6 +17,8 @@ public interface IEvaluationAgencyResourceRepo {
 
     EvaluationAgencyResource saveEvaluationAgencyResource(EvaluationAgencyResource evaluationAgencyResource);
 
+    List<EvaluationAgencyResource> saveAllResource(List<EvaluationAgencyResource> sourceList);
+
     EvaluationAgencyAbility saveEvaluationAgencyAbility(EvaluationAgencyAbility EvaluationAgencyAbility);
 
     void moveEvaluationAgencyAbility(List<EvaluationAgencyAbility> evaluationAgencyAbilityList);

+ 5 - 5
core/src/main/java/com/mooctest/crowd/domain/repository/UserRepo.java

@@ -50,13 +50,13 @@ public class UserRepo implements IUserRepo {
     private RegionalDao regionalDao;
 
     @Autowired
-    private EvaluationAgencyResourceDao evaluationAgencyResourceDao;
+    private AgencyResourceDao agencyResourceDao;
 
     @Autowired
-    private EvaluationAgencyAbilityDao evaluationAgencyAbilityDao;
+    private AgencyAbilityDao agencyAbilityDao;
 
     @Autowired
-    private EvaluationAgencyResourceRepo resourceRepo;
+    private EvaluationAgencyRepo resourceRepo;
 
 
     private Timestamp currentTime = new Timestamp(System.currentTimeMillis());
@@ -315,7 +315,7 @@ public class UserRepo implements IUserRepo {
             EvaluationAgency evaluationAgencyResult = Converter.convert(EvaluationAgency.class, evaluationAgencyPO);
 
             /*获取测评机构能力*/
-            List<EvaluationAgencyAbilityPO> evaluationAgencyAbilityPOList = evaluationAgencyAbilityDao.findByEvaluationAgencyId(evaluationAgencyResult.getId());
+            List<EvaluationAgencyAbilityPO> evaluationAgencyAbilityPOList = agencyAbilityDao.findByEvaluationAgencyId(evaluationAgencyResult.getId());
             List<EvaluationAgencyAbility> evaluationAgencyAbilityList = new ArrayList<>();
             if(evaluationAgencyAbilityPOList.size() != 0){
                 for(EvaluationAgencyAbilityPO evaluationAgencyAbilityPO : evaluationAgencyAbilityPOList){
@@ -326,7 +326,7 @@ public class UserRepo implements IUserRepo {
             }
 
             /*获取测评机构资源*/
-            List<EvaluationAgencyResourcePO> evaluationAgencyResourcePOList = evaluationAgencyResourceDao.findByEvaluationAgencyId(evaluationAgencyResult.getId());
+            List<EvaluationAgencyResourcePO> evaluationAgencyResourcePOList = agencyResourceDao.findByEvaluationAgencyId(evaluationAgencyResult.getId());
             List<EvaluationAgencyResource> evaluationAgencyResourceList = new ArrayList<>();
             if(evaluationAgencyResourcePOList.size() != 0){
                 for(EvaluationAgencyResourcePO evaluationAgencyResourcePO : evaluationAgencyResourcePOList){

+ 1 - 0
core/src/test/java/com/mooctest/crowd/domain/domainobject/UserTest.java

@@ -95,6 +95,7 @@ public class UserTest {
 
     @Test
     public void createCrowdTestProject() {
+
     }
 
     @Test

+ 5 - 5
core/src/test/java/com/mooctest/crowd/domain/repository/UserRepoTest.java

@@ -48,9 +48,9 @@ public class UserRepoTest {
     @Mock
     private RegionalDao regionalDao;
     @Mock
-    private EvaluationAgencyAbilityDao evaluationAgencyAbilityDao;
+    private AgencyAbilityDao agencyAbilityDao;
     @Mock
-    private EvaluationAgencyResourceDao evaluationAgencyResourceDao;
+    private AgencyResourceDao agencyResourceDao;
 
     private UserPO expectUserPO;
     private RolePO expectRolePO;
@@ -146,8 +146,8 @@ public class UserRepoTest {
         when(roleToPermissionDao.findAllByRoleId(anyLong())).thenReturn(expectRoleToPermissionPOList);
         when(permissionDao.findById(anyLong())).thenReturn(Optional.of(expectPermission));
         when(evaluationAgencyDao.findByUserId(anyLong())).thenReturn(expectEvaluationAgencyPO);
-        when(evaluationAgencyAbilityDao.findByEvaluationAgencyId(anyLong())).thenReturn(evaluationAgencyAbilityPOList);
-        when(evaluationAgencyResourceDao.findByEvaluationAgencyId(anyLong())).thenReturn(evaluationAgencyResourcePOList);
+        when(agencyAbilityDao.findByEvaluationAgencyId(anyLong())).thenReturn(evaluationAgencyAbilityPOList);
+        when(agencyResourceDao.findByEvaluationAgencyId(anyLong())).thenReturn(evaluationAgencyResourcePOList);
         when(regionalManagerDao.findByUserId(anyLong())).thenReturn(expectRegionalPOManagerList);
         when(regionalDao.findById(anyLong())).thenReturn(Optional.of(expectRegionalPO));
         //action
@@ -173,7 +173,7 @@ public class UserRepoTest {
         when(roleToPermissionDao.findAllByRoleId(anyLong())).thenReturn(expectRoleToPermissionPOList);
         when(permissionDao.findById(anyLong())).thenReturn(Optional.of(expectPermission));
         when(evaluationAgencyDao.findByUserId(anyLong())).thenReturn(expectEvaluationAgencyPO);
-        when(evaluationAgencyAbilityDao.findByEvaluationAgencyId(anyLong())).thenReturn(evaluationAgencyAbilityPOList);
+        when(agencyAbilityDao.findByEvaluationAgencyId(anyLong())).thenReturn(evaluationAgencyAbilityPOList);
         when(regionalManagerDao.findByUserId(anyLong())).thenReturn(expectRegionalPOManagerList);
         when(regionalDao.findById(anyLong())).thenReturn(Optional.of(expectRegionalPO));
         when(roleDao.findById(anyLong())).thenReturn(Optional.empty());

+ 28 - 0
site/src/main/java/com/mooctest/crowd/site/command/AgencyUpdateCommand.java

@@ -0,0 +1,28 @@
+package com.mooctest.crowd.site.command;
+
+import lombok.Data;
+
+import javax.validation.constraints.NotNull;
+import java.util.List;
+
+/**
+ * @author: Diors.Po
+ * @Email: 171256175@qq.com
+ * @date 2019-08-12 01:05
+ */
+@Data
+public class AgencyUpdateCommand {
+//    @NotNull(message = "机构名称不可为空")
+//    private String evaluationAgencyName;
+//    @NotNull(message = "银行卡号不可为空")
+//    private String bankAccount;
+//    @NotNull(message = "机构地址不可为空")
+//    private String address;
+    @NotNull(message = "评测能力不可为空")
+    private List<String> evaluationAgencyAbilityList;
+    @NotNull(message = "机构资源不可为空")
+    private List<AgencyResourceCommand> evaluationAgencyResourceList;
+//    @NotNull(message = "LOGO不可为空")
+//    private String agencyPhoto;
+
+}

+ 14 - 2
site/src/main/java/com/mooctest/crowd/site/controller/AgencyController.java

@@ -1,6 +1,7 @@
 package com.mooctest.crowd.site.controller;
 
 import com.mooctest.crowd.domain.exception.BaseException;
+import com.mooctest.crowd.site.command.AgencyUpdateCommand;
 import com.mooctest.crowd.site.command.ApplyAgencyAuthCommand;
 import com.mooctest.crowd.site.command.GenerateAgencyCommand;
 import com.mooctest.crowd.site.data.dto.UserDTO;
@@ -10,8 +11,6 @@ import org.springframework.validation.BindingResult;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 
-import javax.validation.Valid;
-
 /**
  * @author: Diors.Po
  * @Email: 171256175@qq.com
@@ -61,4 +60,17 @@ public class AgencyController {
             throw new BaseException("错误的状态信息,无法更新认证状态为所选状态");
         return agencyService.updateAgencyStatus(userId, status);
     }
+
+    /**
+     * 测评机构修改能力和资源信息
+     * @param userId
+     * @param command
+     * @return
+     */
+    @RequestMapping(value = "/user/{userId}/updateAgency", method = RequestMethod.POST)
+    public UserDTO updateAgencyInfo(@PathVariable("userId") Long userId, @RequestBody @Validated AgencyUpdateCommand command, BindingResult result){
+        if (result.hasErrors())
+            throw new BaseException(result.getFieldError().getDefaultMessage());
+        return agencyService.updateAgencyInfo(userId, command);
+    }
 }

+ 2 - 4
site/src/main/java/com/mooctest/crowd/site/mediator/impl/WebMediatorImpl.java

@@ -1,10 +1,9 @@
 package com.mooctest.crowd.site.mediator.impl;
 
-import com.mooctest.crowd.domain.dao.EvaluationAgencyDao;
 import com.mooctest.crowd.domain.domainobject.*;
 import com.mooctest.crowd.domain.exception.AccountNotExistException;
 import com.mooctest.crowd.domain.repository.CrowdTestProjectRepo;
-import com.mooctest.crowd.domain.repository.EvaluationAgencyResourceRepo;
+import com.mooctest.crowd.domain.repository.EvaluationAgencyRepo;
 import com.mooctest.crowd.domain.repository.UserRepo;
 import com.mooctest.crowd.site.command.*;
 import com.mooctest.crowd.site.data.dto.*;
@@ -15,7 +14,6 @@ import org.springframework.stereotype.Component;
 
 import java.util.ArrayList;
 import java.util.Comparator;
-import java.util.Iterator;
 import java.util.List;
 import java.util.stream.Collectors;
 
@@ -33,7 +31,7 @@ public class WebMediatorImpl implements ViewMediator {
     private UserRepo userRepo;
 
     @Autowired
-    private EvaluationAgencyResourceRepo agencyResourceRepo;
+    private EvaluationAgencyRepo agencyResourceRepo;
 
 
     @Override

+ 3 - 0
site/src/main/java/com/mooctest/crowd/site/service/AgencyService.java

@@ -1,5 +1,6 @@
 package com.mooctest.crowd.site.service;
 
+import com.mooctest.crowd.site.command.AgencyUpdateCommand;
 import com.mooctest.crowd.site.command.ApplyAgencyAuthCommand;
 import com.mooctest.crowd.site.command.GenerateAgencyCommand;
 import com.mooctest.crowd.site.data.dto.UserDTO;
@@ -15,4 +16,6 @@ public interface AgencyService {
     UserDTO generateAgency(GenerateAgencyCommand command);
 
     UserDTO updateAgencyStatus(Long userId, Integer status);
+
+    UserDTO updateAgencyInfo(Long userId, AgencyUpdateCommand command);
 }

+ 20 - 4
site/src/main/java/com/mooctest/crowd/site/service/impl/AgencyServiceImpl.java

@@ -1,13 +1,13 @@
 package com.mooctest.crowd.site.service.impl;
 
-import com.mooctest.crowd.domain.domainobject.AuthenticationStatus;
-import com.mooctest.crowd.domain.domainobject.EvaluationAgency;
-import com.mooctest.crowd.domain.domainobject.Role;
-import com.mooctest.crowd.domain.domainobject.User;
+import com.mooctest.crowd.domain.domainobject.*;
 import com.mooctest.crowd.domain.exception.BaseException;
 import com.mooctest.crowd.domain.exception.UserNotExistException;
+import com.mooctest.crowd.domain.repository.EvaluationAgencyRepo;
 import com.mooctest.crowd.domain.repository.UserRepo;
 import com.mooctest.crowd.site.anticorruption.UserAntiCorruption;
+import com.mooctest.crowd.site.command.AgencyResourceCommand;
+import com.mooctest.crowd.site.command.AgencyUpdateCommand;
 import com.mooctest.crowd.site.command.ApplyAgencyAuthCommand;
 import com.mooctest.crowd.site.command.GenerateAgencyCommand;
 import com.mooctest.crowd.site.data.dto.UserDTO;
@@ -21,6 +21,7 @@ import org.springframework.stereotype.Service;
 
 import java.util.ArrayList;
 import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * @author: Diors.Po
@@ -40,6 +41,9 @@ public class AgencyServiceImpl implements AgencyService {
     @Autowired
     private ViewMediator mediator;
 
+    @Autowired
+    private EvaluationAgencyRepo evaluationAgencyRepo;
+
     @Override
     public UserDTO applyAgency(Long userId, ApplyAgencyAuthCommand command) {
         EvaluationAgency agency = command.toAgency();
@@ -85,4 +89,16 @@ public class AgencyServiceImpl implements AgencyService {
         user.getEvaluationAgency().setIsAuthentication(status);
         return mediator.renderUser(userRepo.saveUser(user));
     }
+
+    @Override
+    public UserDTO updateAgencyInfo(Long userId, AgencyUpdateCommand command) {
+        User user = userRepo.getByID(userId);
+        EvaluationAgency agency = user.getEvaluationAgency();
+        evaluationAgencyRepo.moveEvaluationAgencyAbility(agency.getEvaluationAgencyAbilityList());
+        evaluationAgencyRepo.moveEvaluationAgencyResource(agency.getEvaluationAgencyResourceList());
+        agency.setEvaluationAgencyAbilityList(command.getEvaluationAgencyAbilityList().stream().map(EvaluationAgencyAbility::new).collect(Collectors.toList()));
+        agency.setEvaluationAgencyResourceList(command.getEvaluationAgencyResourceList().stream().map(AgencyResourceCommand::toAgencyResource).collect(Collectors.toList()));
+        user.setEvaluationAgency(agency);
+        return mediator.renderUser(userRepo.saveUser(user));
+    }
 }

部分文件因为文件数量过多而无法显示