ソースを参照

Merge branch 'feature-V2.0' of http://git.mooctest.com/crowd-2019/crowd-test-service-backend into feature-V2.0

 Conflicts:
	site/src/main/java/com/mooctest/crowd/site/mediator/impl/WebMediatorImpl.java
	site/src/main/java/com/mooctest/crowd/site/service/impl/CrowdProjectServiceImpl.java
	site/src/main/java/com/mooctest/crowd/site/service/impl/CrowdTaskServiceImpl.java
xuxuan 5 年 前
コミット
63f5725f22
27 ファイル変更218 行追加341 行削除
  1. 0 0
      core/src/main/java/com/mooctest/crowd/domain/controller/TestUserController.java
  2. 4 3
      core/src/main/java/com/mooctest/crowd/domain/domainobject/EnterpriseAuthentication.java
  3. 13 9
      core/src/main/java/com/mooctest/crowd/domain/domainobject/EvaluationAgency.java
  4. 9 12
      core/src/main/java/com/mooctest/crowd/domain/domainobject/PersonalAuthentication.java
  5. 6 1
      core/src/main/java/com/mooctest/crowd/domain/domainobject/User.java
  6. 26 16
      core/src/main/java/com/mooctest/crowd/domain/model/EvaluationAgencyPO.java
  7. 8 7
      core/src/main/java/com/mooctest/crowd/domain/model/PersonalAuthenticationPO.java
  8. 1 1
      core/src/test/java/com/mooctest/crowd/domain/domainobject/UserTest.java
  9. 18 14
      site/src/main/java/com/mooctest/crowd/site/command/ApplyAgencyAuthCommand.java
  10. 3 2
      site/src/main/java/com/mooctest/crowd/site/command/ApplyEnterpriseAuthCommand.java
  11. 16 17
      site/src/main/java/com/mooctest/crowd/site/command/ApplyPersonalAuthCommand.java
  12. 0 2
      site/src/main/java/com/mooctest/crowd/site/controller/CrowdProjectController.java
  13. 11 3
      site/src/main/java/com/mooctest/crowd/site/data/vo/AgencyVO.java
  14. 2 0
      site/src/main/java/com/mooctest/crowd/site/data/vo/CrowdProjectVO.java
  15. 4 3
      site/src/main/java/com/mooctest/crowd/site/data/vo/EnterpriseAuthVO.java
  16. 9 10
      site/src/main/java/com/mooctest/crowd/site/data/vo/PersonalAuthVO.java
  17. 4 0
      site/src/main/java/com/mooctest/crowd/site/mediator/ViewMediator.java
  18. 59 30
      site/src/main/java/com/mooctest/crowd/site/mediator/impl/WebMediatorImpl.java
  19. 0 8
      site/src/main/java/com/mooctest/crowd/site/service/ThemeSchedulerTaskService.java
  20. 0 7
      site/src/main/java/com/mooctest/crowd/site/service/ThemeStatusTaskService.java
  21. 20 37
      site/src/main/java/com/mooctest/crowd/site/service/impl/AgencyServiceImpl.java
  22. 4 6
      site/src/main/java/com/mooctest/crowd/site/service/impl/CrowdProjectServiceImpl.java
  23. 0 3
      site/src/main/java/com/mooctest/crowd/site/service/impl/CrowdTaskServiceImpl.java
  24. 1 1
      site/src/main/java/com/mooctest/crowd/site/service/impl/ThemeSchedulerServiceImpl.java
  25. 0 119
      site/src/main/java/com/mooctest/crowd/site/service/impl/ThemeSchedulerTaskServiceImpl.java
  26. 0 30
      site/src/main/java/com/mooctest/crowd/site/service/impl/ThemeStatusTaskServiceImpl.java
  27. 0 0
      site/src/main/java/com/mooctest/crowd/site/service/impl/UserServiceImpl.java

ファイルの差分が大きいため隠しています
+ 0 - 0
core/src/main/java/com/mooctest/crowd/domain/controller/TestUserController.java


+ 4 - 3
core/src/main/java/com/mooctest/crowd/domain/domainobject/EnterpriseAuthentication.java

@@ -5,6 +5,7 @@ import com.mooctest.crowd.domain.model.EnterpriseAuthenticationPO;
 import lombok.Data;
 import org.springframework.beans.BeanUtils;
 
+import java.sql.Date;
 import java.sql.Timestamp;
 
 /**
@@ -17,11 +18,11 @@ public class EnterpriseAuthentication {
     private String enterpriseName;
     private Long id;
     private Long userId;
-    private String IDCardNum;//身份证号码
+    private String idCardNum;//身份证号码
     private String legalPersonName;
     private String businessLicensePhoto;
     private String unifiedSocialCreditCode;
-    private String sex;//2.0新加性别
+    private String gender;//2.0新加性别
     private String idCardPositivePhoto;//身份证正面照
     private String idCardBackPhoto;//身份证反面照
     private String address;
@@ -30,7 +31,7 @@ public class EnterpriseAuthentication {
     private String explain;
     private Timestamp applyTime;
     private Timestamp checkTime;
-    private Timestamp IDCardDeadTime;//身份证过期时间
+    private Date idCardDeadTime;//身份证过期时间
     private String type;
 
 

+ 13 - 9
core/src/main/java/com/mooctest/crowd/domain/domainobject/EvaluationAgency.java

@@ -7,6 +7,7 @@ import lombok.Data;
 import lombok.NoArgsConstructor;
 import org.springframework.beans.BeanUtils;
 
+import java.sql.Date;
 import java.sql.Timestamp;
 import java.util.List;
 
@@ -18,16 +19,22 @@ import java.util.List;
 @AllArgsConstructor
 @NoArgsConstructor
 public class EvaluationAgency {
-    private String IdCardNum;
+
+    private String evaluationAgencyName;
+    private String businessLicensePhoto;
+    private String address;
+    private String agencyPhoto;
     private String legalPersonName;
+    private String IdCardNum;
+    private String gender;
+    private String idCardPositivePhoto;//身份证正面照
+    private String idCardBackPhoto;//身份证反面照
+    private Date idCardDeadTime;
+
     private Long id;
     private Long userId;
-    private String evaluationAgencyName;
-    private String bankAccount;
-    private String address;
     private List<EvaluationAgencyAbility> evaluationAgencyAbilityList;
     private List<EvaluationAgencyResource> evaluationAgencyResourceList;
-    private String agencyPhoto;
     private int isAuthentication;
     private String explain;
     private int isDeleted;
@@ -36,10 +43,7 @@ public class EvaluationAgency {
     private Timestamp checkTime;
     private Timestamp applyTime;
     private String type;
-    private String sex;
-    private String idCardPositivePhoto;//身份证正面照
-    private String idCardBackPhoto;//身份证反面照
-    private Timestamp idCardDeadTime;
+
 
 //    public EvaluationAgency(EvaluationAgencyPO evaluationAgencyPO) {
 //        BeanUtils.copyProperties(evaluationAgencyPO, this,"evaluationAgencyResourceList", "evaluationAgencyAbilityList");

+ 9 - 12
core/src/main/java/com/mooctest/crowd/domain/domainobject/PersonalAuthentication.java

@@ -4,8 +4,8 @@ import com.mooctest.crowd.domain.exception.BaseException;
 import com.mooctest.crowd.domain.model.PersonalAuthenticationPO;
 import lombok.Data;
 import org.springframework.beans.BeanUtils;
-import java.util.*;
 
+import java.sql.Date;
 import java.sql.Timestamp;
 
 /**
@@ -14,24 +14,21 @@ import java.sql.Timestamp;
  */
 @Data
 public class PersonalAuthentication {
-
-
     private Long id;
     private Long userId;
     private String realName;
-    private String IDCard;
-    private String IDCardPhoto;
-    private String IDCardPositivePhoto;//身份证正面照片
-    private String IDCardBackPhoto;//身份证反面照片
-    private String sex;
-    private String bankAccount;
+    private String idCard;
+    private String idCardPhoto;
+    private String idCardPositivePhoto;//身份证正面照片
+    private String idCardBackPhoto;//身份证反面照片
+    private String gender;
     private String address;
     private int isDeleted;
     private int isAuthentication;
     private String explain;
     private Timestamp applyTime;
     private Timestamp checkTime;
-    private Timestamp IDCardDeadTime;//身份证过期时间
+    private Date idCardDeadTime;//身份证过期时间
     private String type;
 
     /**
@@ -46,8 +43,8 @@ public class PersonalAuthentication {
 //        this.realName = authenticationPO.getRealName();
 //        this.address = authenticationPO.getAddress();
 //        this.applyTime = authenticationPO.getApplyTime();
-//        this.IDCard = authenticationPO.getIDCard();
-//        this.IDCardBackPhoto = authenticationPO.getIDCardPhoto();
+//        this.idCard = authenticationPO.getidCard();
+//        this.idCardBackPhoto = authenticationPO.getidCardPhoto();
 //        this.type = authenticationPO.getType();
 
     }

+ 6 - 1
core/src/main/java/com/mooctest/crowd/domain/domainobject/User.java

@@ -6,6 +6,7 @@ import com.mooctest.crowd.domain.model.UserPO;
 import lombok.Data;
 import org.springframework.beans.BeanUtils;
 
+import java.sql.Date;
 import java.sql.Timestamp;
 import java.util.List;
 
@@ -29,13 +30,17 @@ public class User {
     private int isAvailable;
     private int isDeleted;
     private Timestamp createTime;
+    private Date birthday;
+    private String personalCompetence;
+    private String unit;
+    private String county;
+    private List<Role> roleList;
 
     private RegionalManager regionalManager;
     private EvaluationAgency evaluationAgency;
     private PersonalAuthentication personalAuthentication;
     private EnterpriseAuthentication enterpriseAuthentication;
     private SystemAdministratorToUser systemAdministratorToUser;
-    private List<Role> roleList;
 
 
     public User() {

+ 26 - 16
core/src/main/java/com/mooctest/crowd/domain/model/EvaluationAgencyPO.java

@@ -3,6 +3,7 @@ package com.mooctest.crowd.domain.model;
 import lombok.Data;
 
 import javax.persistence.*;
+import java.sql.Date;
 import java.sql.Timestamp;
 
 /**
@@ -11,7 +12,7 @@ import java.sql.Timestamp;
  */
 @Data
 @Entity(name = "evaluation_agency")
-public class EvaluationAgencyPO{
+public class EvaluationAgencyPO {
 
     @Id
     @Column(name = "EA_ID")
@@ -33,6 +34,30 @@ public class EvaluationAgencyPO{
     @Column(name = "EA_PHOTO")
     private String agencyPhoto;
 
+    @Column(name = "EA_TYPE")
+    private String type;
+
+    @Column(name = "EA_ID_CARD_NUM")
+    private String idCardNum;
+
+    @Column(name = "EA_ID_CARD_BACK_PHOTO")
+    private String idCardBackPhoto;//身份证反面照片
+
+    @Column(name = "EA_ID_CARD_POSITIVE_PHOTO")
+    private String idCardPositivePhoto;//身份证正面照片
+
+    @Column(name = "EA_BUSINESS_LICENSE_PHOTO")
+    private String businessLicensePhoto;
+
+    @Column(name = "EA_LEGAL_PERSON_NAME")
+    private String legalPersonName;
+
+    @Column(name = "EA_GENDER")
+    private String gender;
+
+    @Column(name = "EA_ID_CARD_DEAD_TIME")
+    private Date idCardDeadTime;
+
     @Column(name = "EA_UPDATE_TIME")
     private Timestamp updateTime;
 
@@ -53,19 +78,4 @@ public class EvaluationAgencyPO{
 
     @Column(name = "EA_CHECK_TIME")
     private Timestamp checkTime;
-
-    @Column(name = "EA_TYPE")
-    private String type;
-
-    @Column(name = "EA_IDNUM")
-    private  String idCardNum;
-
-    @Column(name = "EA_IDCARD_BACK_OHOTO")
-    private  String  idCardBackPhoto;//身份证反面照片
-
-
-    @Column(name = "EA_IDCARD_POSITIVE_PHOTO")
-    private   String idCardPositivePhoto;//身份证正面照片
-
-
 }

+ 8 - 7
core/src/main/java/com/mooctest/crowd/domain/model/PersonalAuthenticationPO.java

@@ -3,6 +3,7 @@ package com.mooctest.crowd.domain.model;
 import lombok.Data;
 
 import javax.persistence.*;
+import java.sql.Date;
 import java.sql.Timestamp;
 
 /**
@@ -26,10 +27,10 @@ public class PersonalAuthenticationPO {
     private String realName;
 
     @Column(name = "PA_ID_CARD")
-    private String IDCard;
+    private String idCard;
 
     @Column(name = "PA_ID_CARD_PHOTO")
-    private String IDCardPhoto;
+    private String idCardPhoto;
 
     @Column(name = "PA_BANK_ACCOUNT")
     private String bankAccount;
@@ -53,16 +54,16 @@ public class PersonalAuthenticationPO {
     private Timestamp checkTime;
 
     @Column(name = "PA_ID_CARD_POS_PHOTO")
-    private String  IDCardPositivePhoto;//身份证正面照片
+    private String idCardPositivePhoto;//身份证正面照片
 
     @Column(name = "PA_ID_CARD_BACK_PHOTO")
-    private String  IDCardBackPhoto;//身份证正面照片
+    private String idCardBackPhoto;//身份证正面照片
 
     @Column(name = "PA_EXPIRE_TIME")
-    private Timestamp  IDCardDeadTime;
+    private Date idCardDeadTime;
 
-    @Column(name = "PA_Sex")
-    private  String  sex;
+    @Column(name = "PA_GENDER")
+    private String gender;
 
     @Column(name = "PA_TYPE")
     private String type;

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

@@ -67,7 +67,7 @@ public class UserTest {
         evaluationAgency.setId(1L);
         evaluationAgency.setUserId(user.getId());
         evaluationAgency.setEvaluationAgencyName("测评机构");
-        evaluationAgency.setBankAccount("111111111");
+//        evaluationAgency.setBankAccount("111111111");
         evaluationAgency.setAgencyPhoto("https://mooctest.phone.com");
         evaluationAgency.setAddress(user.getProvince()+user.getCity());
         evaluationAgency.setIsDeleted(DeletedStatus.isNotDeleted);

+ 18 - 14
site/src/main/java/com/mooctest/crowd/site/command/ApplyAgencyAuthCommand.java

@@ -6,8 +6,9 @@ import com.mooctest.crowd.domain.domainobject.EvaluationAgencyAbility;
 import com.mooctest.crowd.domain.factory.UserFactory;
 import lombok.Data;
 import org.springframework.beans.BeanUtils;
+
 import javax.validation.constraints.NotNull;
-import java.sql.Timestamp;
+import java.sql.Date;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.stream.Collectors;
@@ -20,31 +21,34 @@ import java.util.stream.Collectors;
 @Data
 public class ApplyAgencyAuthCommand{
 
+    @NotNull(message = "企业名称不可为空")
+    private String evaluationAgencyName;
+    @NotNull(message = "营业执照图片不可为空")
+    private String businessLicensePhoto;
+    @NotNull(message = "企业地址不可为空")
+    private String address;
+    @NotNull(message = "LOGO不可为空")
+    private String agencyPhoto;
+
+    @NotNull(message = "法人姓名不能为空")
+    private  String legalPersonName;
     @NotNull(message = "身份证号码不能为空")
     private  String  IdCardNum;
-
     @NotNull(message = "请选择性别")
-    private String sex;
-//    @NotNull(message = "机构名称不可为空")
-    private String evaluationAgencyName;
+    private String gender;
     @NotNull(message = "请上传身份证正面照")
     private String idCardPositivePhoto;//身份证正面照
     @NotNull(message = "请上传身份证反面照")
     private String idCardBackPhoto;//身份证反面照
     @NotNull(message = "请正确填写身份证过期时间")
-    private Timestamp idCardDeadTime;
-    @NotNull(message = "机构地址不可为空")
-    private String address;
+    private Date idCardDeadTime;
+    @NotNull(message = "请选择企业认证类型")
+    private ArrayList<Integer> roleList;
+
 //    @NotNull(message = "评测能力不可为空")
     private List<String> evaluationAgencyAbilityList;
 //    @NotNull(message = "机构资源不可为空")
     private List<AgencyResourceCommand> evaluationAgencyResourceList;
-//    @NotNull(message = "LOGO不可为空")
-    private String agencyPhoto;
-    @NotNull(message = "请选择认证研发机构或者评测机构")
-    private ArrayList<Integer> roleList;
-//    @NotNull(message = "法人姓名不能为空")
-    private  String legalPersonName;
 
     public EvaluationAgency toAgency(){
         EvaluationAgency agency = UserFactory.defaultAgency();

+ 3 - 2
site/src/main/java/com/mooctest/crowd/site/command/ApplyEnterpriseAuthCommand.java

@@ -8,6 +8,7 @@ import lombok.NoArgsConstructor;
 import org.springframework.beans.BeanUtils;
 
 import javax.validation.constraints.NotNull;
+import java.sql.Date;
 import java.sql.Timestamp;
 import java.util.ArrayList;
 
@@ -34,13 +35,13 @@ public class ApplyEnterpriseAuthCommand {
     @NotNull(message = "地址不可为空")
     private String address;
     @NotNull(message = "请选择性别")
-    private String sex;
+    private String gender;
     @NotNull(message = "请上传身份证正面照")
     private String idCardPositivePhoto;//身份证正面照
     @NotNull(message = "请上传身份证反面照")
     private String idCardBackPhoto;//身份证反面照
     @NotNull(message = "请正确填写身份证过期时间")
-    private Timestamp idCardDeadTime;
+    private Date idCardDeadTime;
 
     public EnterpriseAuthentication toEnterpriseAuth() {
         EnterpriseAuthentication enterpriseAuthentication = new EnterpriseAuthentication();

+ 16 - 17
site/src/main/java/com/mooctest/crowd/site/command/ApplyPersonalAuthCommand.java

@@ -8,6 +8,7 @@ import org.springframework.beans.BeanUtils;
 
 import javax.validation.constraints.NotNull;
 import javax.validation.constraints.Pattern;
+import java.sql.Date;
 import java.sql.Timestamp;
 import java.util.List;
 
@@ -19,37 +20,35 @@ import java.util.List;
 @Data
 public class ApplyPersonalAuthCommand {
 
-    @NotNull(message = "请选择成为接包用户还是发包用户")
-    private List<Integer> roleList;
-
-    private String userId;
-
     @NotNull(message = "请填写真实姓名")
     private String realName;
 
-    //    @NotNull(message = "请选择性别")
-    private String sex;
+    @NotNull(message = "请选择性别")
+    private String gender;
 
-    @JsonProperty(value = "IDCard")
+    @JsonProperty(value = "idCard")
     @NotNull(message = "请填写身份证号码")
     @Pattern(regexp = "\\d{15}(\\d{2}[0-9xX])?", message = "身份证号格式错误")
-    private String IDCard;
+    private String idCard;
 
-    @JsonProperty(value = "IDCardPositivePhoto")
+    @JsonProperty(value = "idCardPositivePhoto")
     @NotNull(message = "请上传身份证正面图片")
-    private String IDCardPositivePhoto;
+    private String idCardPositivePhoto;
 
-    @JsonProperty(value = "IDCardBackPhoto")
-//    @NotNull(message = "请上传身份证反面图片")
-    private String IDCardBackPhoto;
+    @JsonProperty(value = "idCardBackPhoto")
+    @NotNull(message = "请上传身份证反面图片")
+    private String idCardBackPhoto;
 
-    @JsonProperty(value = "IDCardDeadTime")
-//    @NotNull(message = "请正确填写身份证过期时间")
-    private Timestamp IDCardDeadTime;
+    @JsonProperty(value = "idCardDeadTime")
+    @NotNull(message = "请正确填写身份证过期时间")
+    private Date idCardDeadTime;
 
     @NotNull(message = "请填写单位或者家庭地址")
     private String address;
 
+    @NotNull(message = "请选择个人认证类型")
+    private List<Integer> roleList;
+
     public PersonalAuthentication toPersonalAuth() {
         PersonalAuthentication personalAuthentication = new PersonalAuthentication();
         BeanUtils.copyProperties(this, personalAuthentication);

+ 0 - 2
site/src/main/java/com/mooctest/crowd/site/controller/CrowdProjectController.java

@@ -41,8 +41,6 @@ public class CrowdProjectController{
      */
     @RequestMapping(value = "/api/project/", method = RequestMethod.POST)
     public ProjectDetailsDTO createProject(@Validated @RequestBody CrowdTestProjectCommand crowdTestProjectCommand, BindingResult result,HttpSession session){
-
-
         long  userId=Long.parseLong((String) session.getAttribute("userId"));
 
         if (result.hasErrors()) {

+ 11 - 3
site/src/main/java/com/mooctest/crowd/site/data/vo/AgencyVO.java

@@ -7,6 +7,7 @@ import lombok.Data;
 import lombok.NoArgsConstructor;
 import org.springframework.beans.BeanUtils;
 
+import java.sql.Date;
 import java.sql.Timestamp;
 import java.util.List;
 import java.util.stream.Collectors;
@@ -21,7 +22,6 @@ import java.util.stream.Collectors;
 public class AgencyVO {
     private Long userId;
     private String evaluationAgencyName;
-    private String bankAccount;
     private String address;
     private List<String> evaluationAgencyAbilityList;
     private List<AgencyResourceVO> evaluationAgencyResourceList;
@@ -30,12 +30,20 @@ public class AgencyVO {
     private String explain;
     private Long taskCount;
     private int isDeleted;
+    private String businessLicensePhoto;
     private Timestamp updateTime;
     private Timestamp expireTime;
     private Timestamp createTime;
     private StatusVO authStatus;
     private Timestamp applyTime;
-    private List<String> type;
+    private List<String> roleList;
+    private String IdCardNum;
+    private String legalPersonName;
+    private Long id;
+    private String gender;
+    private String idCardPositivePhoto;//身份证正面照
+    private String idCardBackPhoto;//身份证反面照
+    private Date idCardDeadTime;
 
 
     public AgencyVO(EvaluationAgency agency){
@@ -51,7 +59,7 @@ public class AgencyVO {
         }
 
         if(agency.getType() != null && agency.getType() !=  ""){
-            this.type = (List<String>) JSONArray.parse(agency.getType());
+            this.roleList = (List<String>) JSONArray.parse(agency.getType());
         }
         this.authStatus = new StatusVO();
         this.authStatus.initAuthStatus(this.isAuthentication);

+ 2 - 0
site/src/main/java/com/mooctest/crowd/site/data/vo/CrowdProjectVO.java

@@ -5,6 +5,7 @@ import com.alibaba.fastjson.JSONArray;
 import com.google.common.collect.Lists;
 import com.mooctest.crowd.domain.domainobject.CrowdTestProject;
 import com.mooctest.crowd.domain.domainobject.CrowdTestProjectStatus;
+import lombok.AllArgsConstructor;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
@@ -20,6 +21,7 @@ import java.util.Map;
  */
 @Data
 @NoArgsConstructor
+@AllArgsConstructor
 public class CrowdProjectVO implements Serializable {
 
     private String id;

+ 4 - 3
site/src/main/java/com/mooctest/crowd/site/data/vo/EnterpriseAuthVO.java

@@ -5,6 +5,7 @@ import com.mooctest.crowd.domain.domainobject.EnterpriseAuthentication;
 import lombok.Data;
 import org.springframework.beans.BeanUtils;
 
+import java.sql.Date;
 import java.sql.Timestamp;
 import java.util.List;
 
@@ -18,11 +19,11 @@ public class EnterpriseAuthVO {
     private Long id;
     private Long userId;
     private String enterpriseName;
-    private String IDCardNum;//身份证号码
+    private String idCardNum;//身份证号码
     private String legalPersonName;
     private String businessLicensePhoto;
     private String unifiedSocialCreditCode;
-    private String sex;//2.0新加性别
+    private String gender;//2.0新加性别
     private String idCardPositivePhoto;//身份证正面照
     private String idCardBackPhoto;//身份证反面照
     private String address;
@@ -31,7 +32,7 @@ public class EnterpriseAuthVO {
     private String explain;
     private Timestamp applyTime;
     private Timestamp checkTime;
-    private Timestamp IDCardDeadTime;//身份证过期时间
+    private Date idCardDeadTime;//身份证过期时间
     private StatusVO authStatus;
     private List<String> type;
 

+ 9 - 10
site/src/main/java/com/mooctest/crowd/site/data/vo/PersonalAuthVO.java

@@ -6,6 +6,7 @@ import lombok.Data;
 import lombok.NoArgsConstructor;
 import org.springframework.beans.BeanUtils;
 
+import java.sql.Date;
 import java.sql.Timestamp;
 import java.util.List;
 
@@ -18,10 +19,9 @@ import java.util.List;
 @NoArgsConstructor
 public class PersonalAuthVO {
 
+    private Long userId;
     private String realName;
-    private String IDCard;
-    private String IDCardPhoto;
-    private String bankAccount;
+    private String idCard;
     private String address;
     private int isDeleted;
     private Integer isAuthentication;
@@ -29,21 +29,20 @@ public class PersonalAuthVO {
     private Timestamp applyTime;
     private Timestamp checkTime;
     private StatusVO authStatus;
-    private String IDCardPositivePhoto;//身份证正面照片
-    private String IDCardBackPhoto;//身份证反面照片
-    private String sex;
-    private List<String> type;
+    private String idCardPositivePhoto;//身份证正面照片
+    private String idCardBackPhoto;//身份证反面照片
+    private Date idCardDeadTime;//身份证过期时间
+    private String gender;
+    private List<String> roleList;
 
     public PersonalAuthVO(PersonalAuthentication personalAuthentication) {
         BeanUtils.copyProperties(personalAuthentication, this);
 
         if(personalAuthentication.getType() != null && personalAuthentication.getType() !=  ""){
-            this.type = (List<String>) JSONArray.parse(personalAuthentication.getType());
+            this.roleList = (List<String>) JSONArray.parse(personalAuthentication.getType());
         }
         this.authStatus = new StatusVO();
         this.authStatus.initAuthStatus(this.isAuthentication);
 
     }
-
-
 }

+ 4 - 0
site/src/main/java/com/mooctest/crowd/site/mediator/ViewMediator.java

@@ -89,6 +89,8 @@ public interface ViewMediator {
 
     List<CrowdTaskVO> crowdTaskVos();
 
+    List<CrowdTaskVO> crowdTaskVosWaitingAccept();
+
     UserDTO getInformation(long userId);
 
     UserDTO updateInformation(long userId, UserVO userVO);
@@ -118,4 +120,6 @@ public interface ViewMediator {
     QualificationDTO getOne(long id);
 
     BankCardDTO getBankType();
+
+    List<CrowdTestProjectVO> crowdTestProjectsWaitingAccept();
 }

+ 59 - 30
site/src/main/java/com/mooctest/crowd/site/mediator/impl/WebMediatorImpl.java

@@ -33,7 +33,6 @@ import org.springframework.data.domain.Pageable;
 import org.springframework.stereotype.Component;
 import org.springframework.web.client.RestTemplate;
 
-import java.text.SimpleDateFormat;
 import java.util.*;
 import java.util.stream.Collectors;
 
@@ -122,16 +121,6 @@ public class WebMediatorImpl implements ViewMediator {
     private UserToRoleDao userToRoleDao;
 
     @Override
-    public List<CrowdTaskVO> findIndexTask() {
-        List<CrowdTaskVO> hotMoreTestprojects = taskDao.findindexTask().stream().map(crowdTestTaskPO -> {
-            CrowdTestTask task = new CrowdTestTask();
-            BeanUtils.copyProperties(crowdTestTaskPO, task);
-            return new CrowdTaskVO(task);
-        }).collect(Collectors.toList());
-        return hotMoreTestprojects;
-    }
-
-    @Override
     public void saveEnterpriseRole(User user, ApplyEnterpriseAuthCommand applyEnterpriseAuthCommand) {
         //如果是研发机构那么能发包
         if(applyEnterpriseAuthCommand.getRoleList().contains(0) && applyEnterpriseAuthCommand.getRoleList().contains(1)){
@@ -541,7 +530,18 @@ public class WebMediatorImpl implements ViewMediator {
                     projectVO = changeApplicationType(projectVO);
                     return projectVO;
                 }).collect(Collectors.toList());
-        //对于区域管理员
+        List<CrowdProjectVO> myProject=new ArrayList<>();
+        List<CrowdProjectVO> finishedProjects=new ArrayList<>();
+        for(int i=0;i<myProejcts.size();i++){
+            if(myProejcts.get(i).getStatus()<CrowdTestProjectStatus.HAS_FINISHED){
+                myProject.add(myProejcts.get(i));
+                myCrowdDTO.setMyProjects(myProject);
+            }else if(myProejcts.get(i).getStatus()>=CrowdTestProjectStatus.HAS_FINISHED){
+                finishedProjects.add(myProejcts.get(i));
+                myCrowdDTO.setFinishedProjects(finishedProjects);
+            }
+        }
+        //对于区域管理员crowdTestProjectPO -> crowdTestProjectPO.getStatus() > CrowdTestProjectStatus.HAS_RELEASED
         if (user.getRoleList().stream().anyMatch(role -> role.getName().equals("RegionalManager"))) {
             List<CrowdTestProjectPO> crowdTestProjectPOList = projectDao.findByRegionalManagerIdAndIsDeleted(userId, DeletedStatus.isNotDeleted)
                     .stream().sorted(Comparator.comparing(CrowdTestProjectPO::getCreateTime).thenComparing(CrowdTestProjectPO::getStatus).reversed()).collect(Collectors.toList());
@@ -578,7 +578,6 @@ public class WebMediatorImpl implements ViewMediator {
             myCrowdDTO.setAcceptableProjectNoticeCount(Long.parseLong("" + acceptableProject.size()));
         }
         UserVO userVO = new UserVO(user);
-        myCrowdDTO.setMyProjects(myProejcts);
         myCrowdDTO.setUserVO(userVO);
         myCrowdDTO.setMyProjectNoticeCount(myProejcts.stream().filter(CrowdProjectVO::getNeedHandle).count());
         myCrowdDTO.setProcessProjectNoticeCount(myCrowdDTO.getHandlingProjects() == null ? 0 : myCrowdDTO
@@ -983,11 +982,11 @@ public class WebMediatorImpl implements ViewMediator {
             return new BaseAuthVO(personalAuthentication);
         }).collect(Collectors.toList()));
 
-        authingList.addAll(enterpriseAuthenticationDao.findByIsAuthentication(AuthenticationStatus.isAuthenIng).stream().map(enterpriseAuthenticationPO -> {
-            EnterpriseAuthentication enterpriseAuthentication = new EnterpriseAuthentication();
-            BeanUtils.copyProperties(enterpriseAuthenticationPO, enterpriseAuthentication);
-            return new BaseAuthVO(enterpriseAuthentication);
-        }).collect(Collectors.toList()));
+//        authingList.addAll(enterpriseAuthenticationDao.findByIsAuthentication(AuthenticationStatus.isAuthenIng).stream().map(enterpriseAuthenticationPO -> {
+//            EnterpriseAuthentication enterpriseAuthentication = new EnterpriseAuthentication();
+//            BeanUtils.copyProperties(enterpriseAuthenticationPO, enterpriseAuthentication);
+//            return new BaseAuthVO(enterpriseAuthentication);
+//        }).collect(Collectors.toList()));
 
         authingList.addAll(agencyDao.findByIsAuthentication(AuthenticationStatus.isAuthenIng).stream().map(evaluationAgencyPO -> {
             EvaluationAgency agency = new EvaluationAgency();
@@ -1046,19 +1045,29 @@ public class WebMediatorImpl implements ViewMediator {
     }
 
     @Override
-    public List<CrowdTestProjectVO> hotCrowdTestProjects() {
+    public List<CrowdTestProjectVO> crowdTestProjects() {
         List<CrowdTestProjectVO> authingList = new ArrayList<>();
-        authingList.addAll(projectDao.findall().stream().map(crowdTestProjectPO -> {
+        authingList.addAll(projectDao.findAll().stream().map(crowdTestProjectPO -> {
             CrowdTestProject crowdTestProject = new CrowdTestProject();
             BeanUtils.copyProperties(crowdTestProjectPO, crowdTestProject);
-            return  new CrowdTestProjectVO(crowdTestProject);
-    }).collect(Collectors.toList()));
-        return  authingList;
+            // 应用类型值的转换
+            Optional<ApplicationTypePO> applicationTypePO = applicationTypeDao.findByCode(crowdTestProject.getApplicationType());
+            if (applicationTypePO.isPresent()) {
+                crowdTestProject.setApplicationType(applicationTypePO.get().getName());
+            } else {
+                throw new HttpBadRequestException("请选择应用类型");
+            }
+            return new CrowdTestProjectVO(crowdTestProject);
 
+        }).collect(Collectors.toList()));
+        return authingList;
     }
-    public List<CrowdTestProjectVO> crowdTestProjects(){
-        List<CrowdTestProjectVO> authingList = new ArrayList<>();
-        authingList.addAll(projectDao.findindexProject().stream().map(crowdTestProjectPO -> {
+
+
+    @Override
+    public List<CrowdTestProjectVO> crowdTestProjectsWaitingAccept() {
+        return projectDao.findAll().stream().filter(crowdTestProjectPO -> crowdTestProjectPO.getStatus() == CrowdTestProjectStatus.HAS_RELEASED
+            && crowdTestProjectPO.getDeadTime().getTime() > System.currentTimeMillis()).map(crowdTestProjectPO -> {
             CrowdTestProject crowdTestProject = new CrowdTestProject();
             BeanUtils.copyProperties(crowdTestProjectPO, crowdTestProject);
             // 应用类型值的转换
@@ -1070,14 +1079,13 @@ public class WebMediatorImpl implements ViewMediator {
             }
             return new CrowdTestProjectVO(crowdTestProject);
 
-        }).collect(Collectors.toList()));
-        return authingList;
+        }).collect(Collectors.toList());
     }
 
     @Override
     public List<CrowdTaskVO> crowdTaskVos() {
         List<CrowdTaskVO> authingList = new ArrayList<>();
-        authingList.addAll(taskDao.findAll().stream().map(crowdTestTaskPO ->{
+        authingList.addAll(taskDao.findAll().stream().map(crowdTestTaskPO -> {
             //根据code值查询出来该任务的type
             Optional<TestTypePO> serviceType = testTypeDao.findByCode(crowdTestTaskPO.getType());
             CrowdTestTask crowdTestTask = new CrowdTestTask();
@@ -1089,6 +1097,19 @@ public class WebMediatorImpl implements ViewMediator {
     }
 
     @Override
+    public List<CrowdTaskVO> crowdTaskVosWaitingAccept() {
+        return taskDao.findAll().stream().filter(crowdTestTaskPO -> crowdTestTaskPO.getStatus() == CrowdTestTaskStatus.HAS_RELEASED
+                && crowdTestTaskPO.getDeadTime().getTime() > System.currentTimeMillis()).map(crowdTestTaskPO -> {
+            //根据code值查询出来该任务的type
+            Optional<TestTypePO> serviceType = testTypeDao.findByCode(crowdTestTaskPO.getType());
+            CrowdTestTask crowdTestTask = new CrowdTestTask();
+            BeanUtils.copyProperties(crowdTestTaskPO, crowdTestTask);
+            crowdTestTask.setType(serviceType.get().getName());
+            return new CrowdTaskVO(crowdTestTask);
+        }).collect(Collectors.toList());
+    }
+
+    @Override
     public UserDTO getInformation(long userId) {
         UserDTO userDTO = new UserDTO();
         Optional<UserPO> userPO = userDao.findById(userId);
@@ -1181,6 +1202,14 @@ public class WebMediatorImpl implements ViewMediator {
 
     @Override
     public QualificationDTO updateQualification(long id, long userId, QualificationVO qualificationVO) {
+        String regex = "^[a-z0-9A-Z]+$";
+        if (!qualificationVO.getNumber().matches(regex)) {
+            throw new HttpBadRequestException("请输入正确的证书编号");
+        }
+        Date now = new Date();
+        if(qualificationVO.getTime().after(now)){
+            throw new HttpBadRequestException("请输入正确的发证时间");
+        }
         Optional<QualificationPO> qualificationPO = qualificationDao.findById(id);
         qualificationPO.get().setName(qualificationVO.getName());
         qualificationPO.get().setNumber(qualificationVO.getNumber());
@@ -1243,7 +1272,7 @@ public class WebMediatorImpl implements ViewMediator {
         }
         String bank = String.valueOf(json.get("bank"));
         Optional<BankLogoPO> bankLogoPO = bankLogoDao.findByName(bankCardVO.getName());
-        if (!bank.equals(bankLogoPO.get().getName())) {
+        if (!bank.equals(bankLogoPO.get().getCode())) {
             throw new HttpBadRequestException("请输入与选定银行一致的账号");
         }
         List<BankCardPO> bankCardPOList = bankCardDao.findByUserIdAndIsDeleted(userId, DeletedStatus.isNotDeleted);

+ 0 - 8
site/src/main/java/com/mooctest/crowd/site/service/ThemeSchedulerTaskService.java

@@ -1,8 +0,0 @@
-package com.mooctest.crowd.site.service;
-
-import com.mooctest.crowd.domain.domainobject.CrowdTestTask;
-
-public interface ThemeSchedulerTaskService {
-    boolean createNewThemeScheduler(CrowdTestTask crowdTestProject);
-    boolean cancelThemeScheduler(CrowdTestTask crowdTestProject);
-}

+ 0 - 7
site/src/main/java/com/mooctest/crowd/site/service/ThemeStatusTaskService.java

@@ -1,7 +0,0 @@
-package com.mooctest.crowd.site.service;
-import com.mooctest.crowd.domain.domainobject.CrowdTestTask;
-
-
-public interface ThemeStatusTaskService {
-    Integer updateStatus(CrowdTestTask crowdTestProject);
-}

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

@@ -9,7 +9,6 @@ import com.mooctest.crowd.domain.exception.UserNotExistException;
 import com.mooctest.crowd.domain.model.EvaluationAgencyPO;
 import com.mooctest.crowd.domain.model.RankCountInfo;
 import com.mooctest.crowd.domain.model.UserTaskCountPO;
-import com.mooctest.crowd.domain.model.UserToRolePO;
 import com.mooctest.crowd.domain.repository.EvaluationAgencyRepo;
 import com.mooctest.crowd.domain.repository.UserRepo;
 import com.mooctest.crowd.site.anticorruption.UserAntiCorruption;
@@ -75,7 +74,7 @@ public class AgencyServiceImpl implements AgencyService {
         先根据机构id查询出机构信息,再从task-to-user表里面找到这个机构的接的任务的数量。
          */
         Optional<EvaluationAgencyPO> agencyPO = agencyDao.findById(agencyId);
-        if(!agencyPO.isPresent()){
+        if (!agencyPO.isPresent()) {
             throw new HttpBadRequestException("机构不存在!");
         }
         EvaluationAgency evaluationAgency = new EvaluationAgency(agencyPO.get());
@@ -93,11 +92,12 @@ public class AgencyServiceImpl implements AgencyService {
 
     /**
      * 获取首页机构 more模糊查询
+     *
      * @param keyword
      * @return
      */
     @Override
-    public List<EvaluationAgencyVO> findMoreAgencyVO(String keyword){
+    public List<EvaluationAgencyVO> findMoreAgencyVO(String keyword) {
         List<EvaluationAgencyVO> list = userTaskCountDao.findByType(RoleType.AGENCY.getId())
                 .stream().sorted(Comparator.comparing(UserTaskCountPO::getCount)).collect(Collectors.toList())
                 .stream().map(userTaskCountPO -> {
@@ -114,11 +114,12 @@ public class AgencyServiceImpl implements AgencyService {
         if (keyword == null) {
             return list.stream().sorted(Comparator.comparing(EvaluationAgencyVO::getTaskCount).reversed()).collect(Collectors.toList());
         } else {
-            list=list.stream().sorted(Comparator.comparing(EvaluationAgencyVO::getTaskCount).reversed()).collect(Collectors.toList());
+            list = list.stream().sorted(Comparator.comparing(EvaluationAgencyVO::getTaskCount).reversed()).collect(Collectors.toList());
 
-            return list.stream().filter(evaluationAgencyVO-> evaluationAgencyVO.getEvaluationAgencyName().contains(keyword)).collect(Collectors.toList());
+            return list.stream().filter(evaluationAgencyVO -> evaluationAgencyVO.getEvaluationAgencyName().contains(keyword)).collect(Collectors.toList());
         }
     }
+
     @Override
     public UserDTO applyAgency(Long userId, ApplyAgencyAuthCommand command) {
         EvaluationAgency agency = command.toAgency();
@@ -169,8 +170,8 @@ public class AgencyServiceImpl implements AgencyService {
     @Override
     public AgencyVO updateAgencyInfo(Long userId, ApplyAgencyAuthCommand command) {
         User user = userRepo.getByID(userId);
-        evaluationAgencyRepo.moveEvaluationAgencyAbility(user.getEvaluationAgency().getEvaluationAgencyAbilityList());
-        evaluationAgencyRepo.moveEvaluationAgencyResource(user.getEvaluationAgency().getEvaluationAgencyResourceList());
+//        evaluationAgencyRepo.moveEvaluationAgencyAbility(user.getEvaluationAgency().getEvaluationAgencyAbilityList());
+//        evaluationAgencyRepo.moveEvaluationAgencyResource(user.getEvaluationAgency().getEvaluationAgencyResourceList());
         user.getEvaluationAgency().updateAuthInfo(command.toAgency());
         return new AgencyVO(userRepo.saveUser(user).getEvaluationAgency());
     }
@@ -198,35 +199,17 @@ public class AgencyServiceImpl implements AgencyService {
         if (user.getEvaluationAgency() == null)
             throw new BaseException("该用户未申请机构认证!");
         user.getEvaluationAgency().passAuthentication();
-         if(user.getEvaluationAgency().getType().contains("1")&&user.getEvaluationAgency().getType().contains("2")){
-             UserToRolePO userToRolePO=new UserToRolePO();
-             userToRolePO.setUserId(userId);
-             //给发包角色
-             userToRolePO.setRoleId(RoleType.PARTY_USER.getId());
-              userToRoleDao.save(userToRolePO);
-              //给接包角色
-             UserToRolePO u2r=new UserToRolePO();
-             u2r.setUserId(userId);
-             u2r.setRoleId(RoleType.EVALUATION_USER.getId());
-             userToRoleDao.save(u2r); }
-
-         //1是认证为研发机构0是认证为评测机构
-      else   if(user.getEvaluationAgency().getType().contains("1")){
-
-             UserToRolePO userToRolePO=new UserToRolePO();
-             userToRolePO.setUserId(userId);
-            //给发包角色
-             userToRolePO.setRoleId(RoleType.PARTY_AGENCY.getId());
-             userToRoleDao.save(userToRolePO);
-         }
-      else if(user.getEvaluationAgency().getType().contains("0"))   {
-          //给接包角色
-             UserToRolePO userToRolePO=new UserToRolePO();
-             userToRolePO.setUserId(userId);
-             userToRolePO.setRoleId(RoleType.AGENCY.getId());
-             userToRoleDao.save(userToRolePO);
-         }
-        user.getRoleList().add(userRepo.getRole("evaluationAgency"));
+        if (user.getEvaluationAgency().getType().contains("0") && user.getEvaluationAgency().getType().contains("1")) {
+            user.getRoleList().add(userRepo.getRole(RoleType.PARTY_AGENCY.getName()));
+            user.getRoleList().add(userRepo.getRole(RoleType.AGENCY.getName()));
+        }
+        //1是认证为研发机构0是认证为评测机构
+        else if (user.getEvaluationAgency().getType().contains("1")) {
+            user.getRoleList().add(userRepo.getRole(RoleType.PARTY_AGENCY.getName()));
+        } else if (user.getEvaluationAgency().getType().contains("0")) {
+            //给接包角色
+            user.getRoleList().add(userRepo.getRole(RoleType.AGENCY.getName()));
+        }
         return new AgencyVO(userRepo.saveUser(user).getEvaluationAgency());
     }
 
@@ -247,7 +230,7 @@ public class AgencyServiceImpl implements AgencyService {
             throw new EvaluationAgencyNotExistException("当前用户未申请机构认证");
         AgencyVO agencyVO = new AgencyVO(user.getEvaluationAgency());
         UserTaskCount userTaskCount = userRepo.getUserTaskCountByUserId(userId);
-        if(userTaskCount != null){
+        if (userTaskCount != null) {
             agencyVO.setTaskCount(userTaskCount.getCount());
         }
         return agencyVO;

+ 4 - 6
site/src/main/java/com/mooctest/crowd/site/service/impl/CrowdProjectServiceImpl.java

@@ -93,14 +93,12 @@ public class CrowdProjectServiceImpl implements CrowdProjectService {
 
     @Override
     public List<CrowdTestProjectVO> findByNameLike(String name) {
-        if (name == null) {
-            return viewMediator.crowdTestProjects();
+        if (name == null || name.trim().equals("")) {
+            return viewMediator.crowdTestProjects().stream().sorted(Comparator.comparing(CrowdTestProjectVO::getCreateTime).reversed()).collect(Collectors.toList());
         }
-        if (name != null) {
-            return viewMediator.findByNameLike(name);
+        return viewMediator.findByNameLike(name).stream().sorted(Comparator.comparing(CrowdTestProjectVO::getCreateTime).reversed()).collect(Collectors.toList());
+
 
-        }
-        return null;
     }
 
     /**

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

@@ -15,10 +15,8 @@ import com.mooctest.crowd.site.data.dto.TaskSquareDTO;
 import com.mooctest.crowd.site.data.enums.ProjectType;
 import com.mooctest.crowd.site.data.enums.RoleType;
 import com.mooctest.crowd.site.data.vo.CrowdTaskVO;
-import com.mooctest.crowd.site.data.vo.CrowdTestProjectVO;
 import com.mooctest.crowd.site.mediator.ViewMediator;
 import com.mooctest.crowd.site.service.CrowdTaskService;
-import com.mooctest.crowd.site.service.ThemeSchedulerTaskService;
 import com.mooctest.crowd.site.util.GenerateFlowCodeUtil;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -99,7 +97,6 @@ public class CrowdTaskServiceImpl implements CrowdTaskService {
         CrowdTestProject project = projectRepo.getByProjectCode(projectCode);
         String taskCode = GenerateFlowCodeUtil.generateFlowCode("TASK-"+ ProjectType.getCode(command.getType()));
         task.create(taskCode);
-        themeSchedulerTaskService.createNewThemeScheduler(task);
         project.addTask(task);
         projectRepo.saveCrowdTestProject(project);
         return getTaskDetails(projectCode, taskCode, userId);

+ 1 - 1
site/src/main/java/com/mooctest/crowd/site/service/impl/ThemeSchedulerServiceImpl.java

@@ -96,7 +96,7 @@ public class ThemeSchedulerServiceImpl implements ThemeSchedulerService {
 
             private CrowdTestProject crowdTestProject;
 
-            public MyRunnable() {}
+            //public MyRunnable() {}
 
             public MyRunnable (CrowdTestProject crowdTestProject) {
                 this.crowdTestProject = crowdTestProject;

+ 0 - 119
site/src/main/java/com/mooctest/crowd/site/service/impl/ThemeSchedulerTaskServiceImpl.java

@@ -1,119 +0,0 @@
-package com.mooctest.crowd.site.service.impl;
-
-import com.mooctest.crowd.domain.domainobject.CrowdTestTask;
-import com.mooctest.crowd.site.service.ThemeSchedulerService;
-import com.mooctest.crowd.site.service.ThemeSchedulerTaskService;
-import com.mooctest.crowd.site.service.ThemeStatusService;
-import com.mooctest.crowd.site.service.ThemeStatusTaskService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler;
-import org.springframework.scheduling.support.CronTrigger;
-import org.springframework.stereotype.Service;
-
-import java.text.SimpleDateFormat;
-import java.util.Date;
-import java.util.Locale;
-import java.util.concurrent.ConcurrentHashMap;
-import java.util.concurrent.ScheduledFuture;
-
-
-/**
- * @program: crowd
- * @author: hanyuwei
- * @create: 2020-07-13 11:30
- **/
-@Service
-public class ThemeSchedulerTaskServiceImpl implements ThemeSchedulerTaskService {
-
-
-    @Autowired
-    private ThemeStatusTaskService themeStatusTaskService;
-
-    private ConcurrentHashMap<CrowdTestTask, ThemeScheduler> map = new ConcurrentHashMap<>();
-    @Override
-    public boolean createNewThemeScheduler(CrowdTestTask crowdTestTask) {
-        if(! this.map.containsKey(crowdTestTask)) {
-            String cronExp = this.generateNextCronExp(crowdTestTask);
-            if(cronExp==null){
-                return false;
-            }
-            ThemeScheduler crowdTestTaskScheduler = new ThemeScheduler(crowdTestTask, cronExp);
-            crowdTestTaskScheduler.startCron();
-            map.put(crowdTestTask, crowdTestTaskScheduler);
-            return true;
-        }
-        return false;
-    }
-
-    public String generateNextCronExp(CrowdTestTask crowdTestTask) {
-        String cronExp = null;
-        String dateFormat="ss mm HH dd MM EE";
-        SimpleDateFormat sdf = new SimpleDateFormat(dateFormat, Locale.US);
-        Date now = new Date();
-        if(now.before(crowdTestTask.getCreateTime())) {
-            cronExp = sdf.format(crowdTestTask.getCreateTime());
-        } else if(now.before(crowdTestTask.getDeadTime())){
-            cronExp = sdf.format(crowdTestTask.getDeadTime());
-        }
-        return cronExp;
-    }
-    @Override
-    public boolean cancelThemeScheduler(CrowdTestTask crowdTestTask) {
-        if(this.map.containsKey(crowdTestTask)) {
-            ThemeScheduler crowdTestTaskScheduler = map.get(crowdTestTask);
-            crowdTestTaskScheduler.stopCron();
-            map.remove(crowdTestTask);
-            return true;
-        }
-        return false;
-    }
-
-    private class ThemeScheduler {
-        private ThreadPoolTaskScheduler threadPoolTaskScheduler = new ThreadPoolTaskScheduler();
-        private ScheduledFuture<?> future;
-        private CrowdTestTask crowdTestTask = null;
-        private String cronExp = null;
-
-        ThemeScheduler() {}
-
-        ThemeScheduler (CrowdTestTask crowdTestTask, String cronExp) {
-            this.crowdTestTask = crowdTestTask;
-            this.cronExp =  cronExp;
-            this.threadPoolTaskScheduler =  new ThreadPoolTaskScheduler();
-            this.threadPoolTaskScheduler.initialize();
-        }
-        public String startCron() {
-            future = this.threadPoolTaskScheduler.schedule(new MyRunnable(this.crowdTestTask), new CronTrigger(this.cronExp));
-            return "startCron";
-        }
-
-        public String stopCron() {
-            if (future != null) {
-                future.cancel(true);
-            }
-            return "stopCron";
-        }
-
-        private class MyRunnable implements Runnable {
-
-            private CrowdTestTask crowdTestTask;
-
-            public MyRunnable() {}
-
-            public MyRunnable (CrowdTestTask crowdTestTask) {
-                this.crowdTestTask = crowdTestTask;
-            }
-
-            @Override
-            public void run() {
-                System.out.println("run111 ");
-                Integer result = themeStatusTaskService.updateStatus(this.crowdTestTask);
-                map.remove(crowdTestTask);
-                if(result.equals(CrowdTestTask.HAS_CREATED) || result.equals(CrowdTestTask.HAS_RELEASED)) {
-                    System.out.println("run22 ");
-                    createNewThemeScheduler(crowdTestTask);
-                }
-            }
-        }
-    }
-}

+ 0 - 30
site/src/main/java/com/mooctest/crowd/site/service/impl/ThemeStatusTaskServiceImpl.java

@@ -1,30 +0,0 @@
-package com.mooctest.crowd.site.service.impl;
-
-import com.mooctest.crowd.domain.dao.CrowdTestTaskDao;
-import com.mooctest.crowd.domain.domainobject.CrowdTestTask;
-import com.mooctest.crowd.site.service.ThemeStatusTaskService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-/**
- * @program: crowd
- * @author: hanyuwei
- * @create: 2020-07-13 13:11
- **/
-@Service
-public class ThemeStatusTaskServiceImpl implements ThemeStatusTaskService {
-
-    @Autowired
-    private CrowdTestTaskDao crowdTestProjectDao;
-
-    @Override
-    public Integer updateStatus(CrowdTestTask crowdTestProject) {
-        int status = 0;
-        long curr = System.currentTimeMillis();
-        if (crowdTestProject.getDeadTime().getTime() < curr) {
-            status = CrowdTestTask.HAS_TIME_OUT;
-        }
-        crowdTestProjectDao.updateStatusById(status,crowdTestProject.getCode());
-        return status;
-    }
-}

ファイルの差分が大きいため隠しています
+ 0 - 0
site/src/main/java/com/mooctest/crowd/site/service/impl/UserServiceImpl.java


この差分においてかなりの量のファイルが変更されているため、一部のファイルを表示していません