guo00guo преди 5 години
родител
ревизия
362b9ad257

+ 3 - 1
site/src/main/java/com/mooctest/crowd/site/controller/PersonalDataController.java

@@ -11,6 +11,8 @@ import org.codehaus.jettison.json.JSONException;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
+import java.io.UnsupportedEncodingException;
+
 @RestController
 @RequestMapping("/api/personal")
 public class PersonalDataController {
@@ -34,7 +36,7 @@ public class PersonalDataController {
     }
 
     @RequestMapping(value = "/addqualification/{userId:\\d+}", method = RequestMethod.POST)
-    public QualificationDTO addQualification(@PathVariable("userId") long userId, @RequestBody QualificationVO qualificationVO){
+    public QualificationDTO addQualification(@PathVariable("userId") long userId, @RequestBody QualificationVO qualificationVO) throws UnsupportedEncodingException {
         return  personalDataService.addQualification(userId,qualificationVO);
     }
 

+ 5 - 5
site/src/main/java/com/mooctest/crowd/site/controller/UserController.java

@@ -146,11 +146,11 @@ public class UserController extends BaseController{
     public PersonalAuthVO applyPersonalAuthentication(@PathVariable("userId") Long userId,
                                                       @Validated @RequestBody ApplyPersonalAuthCommand command,
                                                       BindingResult result, HttpSession session) {
-        if (!userId.equals(Long.parseLong((String) session.getAttribute("userId"))))
-            throw new UnauthorizedException("没有权限对他人账号进行操作!");
-        LOG.info("当前用户申请的认证信息为" + command);
-        if (result.hasErrors())
-            throw new BaseException(result.getFieldError().getDefaultMessage());
+//        if (!userId.equals(Long.parseLong((String) session.getAttribute("userId"))))
+//            throw new UnauthorizedException("没有权限对他人账号进行操作!");
+//        LOG.info("当前用户申请的认证信息为" + command);
+//        if (result.hasErrors())
+//            throw new BaseException(result.getFieldError().getDefaultMessage());
         return userService.applyPersonalAuth(userId, command);
     }
 

+ 2 - 1
site/src/main/java/com/mooctest/crowd/site/data/vo/UserVO.java

@@ -12,6 +12,7 @@ import org.springframework.beans.BeanUtils;
 
 import java.io.Serializable;
 import java.sql.Date;
+import java.util.List;
 
 /**
  * @Author: xuexb
@@ -35,7 +36,7 @@ public class UserVO implements Serializable {
     private String authType;
     private Long taskCount;
     private Date birthday;
-    private String personalCompetence;
+    private List<String> personalCompetence;
     private String unit;
     private String county;
     private String address;

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

@@ -5,6 +5,7 @@ import com.mooctest.crowd.domain.domainobject.User;
 import com.mooctest.crowd.domain.exception.AccountNotExistException;
 import com.mooctest.crowd.domain.exception.BadRequestException;
 import com.mooctest.crowd.domain.exception.PasswordErrorException;
+import com.mooctest.crowd.site.command.ApplyEnterpriseAuthCommand;
 import com.mooctest.crowd.site.command.ApplyPersonalAuthCommand;
 import com.mooctest.crowd.site.command.LoginCommand;
 import com.mooctest.crowd.site.command.RegisterCommand;
@@ -13,6 +14,7 @@ import com.mooctest.crowd.site.data.vo.*;
 import org.codehaus.jettison.json.JSONException;
 import org.springframework.data.domain.Pageable;
 
+import java.io.UnsupportedEncodingException;
 import java.util.List;
 
 /**
@@ -21,7 +23,7 @@ import java.util.List;
  */
 public interface ViewMediator {
 
-
+    void     saveEnterpriseRole(User user, ApplyEnterpriseAuthCommand applyEnterpriseAuthCommand);
     void    saveUserRole(User user, ApplyPersonalAuthCommand command);
 
     List<UserVO> renderMoreUser(Pageable pageable,String keyword);
@@ -85,7 +87,7 @@ public interface ViewMediator {
 
     QualificationDTO getQualification(long userId);
 
-    QualificationDTO addQualification(long userId, QualificationVO qualificationVO);
+    QualificationDTO addQualification(long userId, QualificationVO qualificationVO) throws UnsupportedEncodingException;
 
     QualificationDTO updateQualification(long id, long userId, QualificationVO qualificationVO);
 

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

@@ -1,5 +1,6 @@
 package com.mooctest.crowd.site.mediator.impl;
 
+import com.alibaba.fastjson.JSONArray;
 import com.mooctest.crowd.domain.dao.*;
 import com.mooctest.crowd.domain.domainobject.*;
 import com.mooctest.crowd.domain.exception.*;
@@ -10,6 +11,7 @@ import com.mooctest.crowd.domain.repository.CrowdTestProjectRepo;
 import com.mooctest.crowd.domain.repository.EvaluationAgencyRepo;
 import com.mooctest.crowd.domain.repository.UserRepo;
 import com.mooctest.crowd.domain.util.Converter;
+import com.mooctest.crowd.site.command.ApplyEnterpriseAuthCommand;
 import com.mooctest.crowd.site.command.ApplyPersonalAuthCommand;
 import com.mooctest.crowd.site.command.LoginCommand;
 import com.mooctest.crowd.site.command.RegisterCommand;
@@ -31,6 +33,7 @@ import org.springframework.data.domain.Pageable;
 import org.springframework.stereotype.Component;
 import org.springframework.web.client.RestTemplate;
 
+import java.io.UnsupportedEncodingException;
 import java.util.*;
 import java.util.stream.Collectors;
 
@@ -119,6 +122,30 @@ public class WebMediatorImpl implements ViewMediator {
     private UserToRoleDao userToRoleDao;
 
     @Override
+    public void saveEnterpriseRole(User user, ApplyEnterpriseAuthCommand applyEnterpriseAuthCommand) {
+        UserPO userPO = userDao.save(Converter.convert(UserPO.class, user));
+        //如果是研发机构那么能发包
+        if(applyEnterpriseAuthCommand.getIsDaOrEa().equals("研发机构")){
+            UserToRolePO u2r = new UserToRolePO();
+            u2r.setUserId(userPO.getId());
+            u2r.setRoleId(8L);
+            userToRoleDao.save(u2r);
+
+        }
+        if(applyEnterpriseAuthCommand.getIsDaOrEa().equals("测评机构")){
+            UserToRolePO u2r = new UserToRolePO();
+            u2r.setUserId(userPO.getId());
+            u2r.setRoleId(2L);
+            userToRoleDao.save(u2r);
+        }
+
+
+
+
+
+    }
+
+    @Override
     public void saveUserRole(User user, ApplyPersonalAuthCommand command) {
         if (command.getRoleList().size() == 0 || command.getRoleList() == null) {
             throw new BaseException("请选择成为发包或者接包用户");
@@ -1057,7 +1084,8 @@ public class WebMediatorImpl implements ViewMediator {
             userVO.setProvince(userPO.get().getProvince());
             userVO.setCity(userPO.get().getCity());
             userVO.setCounty(userPO.get().getCounty());
-            userVO.setPersonalCompetence(userPO.get().getPersonalCompetence());
+            List<String> competence = (List<String>) JSONArray.parse(userPO.get().getPersonalCompetence());
+            userVO.setPersonalCompetence(competence);
             userDTO.setUserVO(userVO);
             return userDTO;
         }
@@ -1102,7 +1130,10 @@ public class WebMediatorImpl implements ViewMediator {
     }
 
     @Override
-    public QualificationDTO addQualification(long userId, QualificationVO qualificationVO) {
+    public QualificationDTO addQualification(long userId, QualificationVO qualificationVO) throws UnsupportedEncodingException {
+        if (qualificationVO.getNumber().getBytes("UTF-8").length != qualificationVO.getNumber().length()) {
+            throw new HttpBadRequestException("请输入正确的证书编号");
+        }
         QualificationPO qualificationPO = new QualificationPO();
         List<QualificationPO> qualificationPOList = qualificationDao.findByUserIdAndIsDeleted(userId, DeletedStatus.isNotDeleted);
         for (int i = 0; i < qualificationPOList.size(); i++) {

+ 3 - 1
site/src/main/java/com/mooctest/crowd/site/service/PersonalDataService.java

@@ -8,6 +8,8 @@ import com.mooctest.crowd.site.data.vo.QualificationVO;
 import com.mooctest.crowd.site.data.vo.UserVO;
 import org.codehaus.jettison.json.JSONException;
 
+import java.io.UnsupportedEncodingException;
+
 
 public interface PersonalDataService {
     UserDTO getInformation(long userId);
@@ -16,7 +18,7 @@ public interface PersonalDataService {
 
     QualificationDTO getQualification(long userId);
 
-    QualificationDTO addQualification(long userId,QualificationVO qualificationVO);
+    QualificationDTO addQualification(long userId,QualificationVO qualificationVO) throws UnsupportedEncodingException;
 
     QualificationDTO updateQualification(long id,long userId,QualificationVO qualificationVO);
 

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

@@ -12,6 +12,8 @@ import org.codehaus.jettison.json.JSONException;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.io.UnsupportedEncodingException;
+
 @Service
 public class PersonalDataServiceImpl implements PersonalDataService {
 
@@ -34,7 +36,7 @@ public class PersonalDataServiceImpl implements PersonalDataService {
     }
 
     @Override
-    public QualificationDTO addQualification(long userId,QualificationVO qualificationVO) {
+    public QualificationDTO addQualification(long userId,QualificationVO qualificationVO) throws UnsupportedEncodingException {
         return viewMediator.addQualification(userId,qualificationVO);
     }
 

Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
site/src/main/java/com/mooctest/crowd/site/service/impl/UserServiceImpl.java


Някои файлове не бяха показани, защото твърде много файлове са промени