git 5 lat temu
rodzic
commit
44a1357d59

+ 3 - 0
core/src/main/java/com/mooctest/crowd/domain/dao/QualificationDao.java

@@ -8,6 +8,7 @@ import org.springframework.data.repository.PagingAndSortingRepository;
 
 import javax.transaction.Transactional;
 import java.util.List;
+import java.util.Optional;
 
 
 @Transactional
@@ -15,4 +16,6 @@ public interface QualificationDao extends PagingAndSortingRepository<Qualificati
 
     List<QualificationPO> findByUserId(Long userId);
 
+    Optional<QualificationPO> findById(Long id);
+
 }

+ 2 - 4
core/src/main/java/com/mooctest/crowd/domain/model/QualificationPO.java

@@ -2,10 +2,7 @@ package com.mooctest.crowd.domain.model;
 
 import lombok.Data;
 
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.Id;
-import javax.persistence.Table;
+import javax.persistence.*;
 import java.sql.Date;
 import java.sql.Timestamp;
 
@@ -17,6 +14,7 @@ public class QualificationPO {
 
     @Id
     @Column(name = "Q_ID")
+    @GeneratedValue(strategy = GenerationType.IDENTITY)
     private Long id;
 
     @Column(name = "Q_NAME")

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

@@ -2,6 +2,7 @@ package com.mooctest.crowd.site.controller;
 
 import com.mooctest.crowd.site.data.dto.QualificationDTO;
 import com.mooctest.crowd.site.data.dto.UserDTO;
+import com.mooctest.crowd.site.data.vo.QualificationVO;
 import com.mooctest.crowd.site.data.vo.UserVO;
 import com.mooctest.crowd.site.service.PersonalDataService;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -30,9 +31,13 @@ public class PersonalDataController {
         return  personalDataService.getQualification(userId);
     }
 
-    public QualificationDTO addQualification(@PathVariable("userId") long userId){
-        return  personalDataService.addQualification(userId);
+    @RequestMapping(value = "/addqualification/{userId:\\d+}", method = RequestMethod.PUT)
+    public QualificationDTO addQualification(@PathVariable("userId") long userId, @RequestBody QualificationVO qualificationVO){
+        return  personalDataService.addQualification(userId,qualificationVO);
     }
 
-
+    @RequestMapping(value = "/updatequalification/{id:\\d+}/{userId:\\d+}", method = RequestMethod.PUT)
+    public QualificationDTO updateQualification(@PathVariable("id") long id, @PathVariable("userId") long userId,@RequestBody QualificationVO qualificationVO){
+        return  personalDataService.updateQualification(id,userId,qualificationVO);
+    }
 }

+ 0 - 1
site/src/main/java/com/mooctest/crowd/site/controller/TechnicalArticlesController.java

@@ -1,6 +1,5 @@
 package com.mooctest.crowd.site.controller;
 
-import com.google.gson.Gson;
 import com.mooctest.crowd.site.constants.CommonConstant;
 import com.mooctest.crowd.site.data.dto.TechnicalArticlesDTO;
 import com.mooctest.crowd.site.data.response.ResponseVO;

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

@@ -11,7 +11,7 @@ public class QualificationVO{
     private Long id;
     private String name;
     private String  number;
-    private String  LicensingAuthority;
+    private String  licensingAuthority;
     private Date time;
     private Long userId;
 

+ 3 - 1
site/src/main/java/com/mooctest/crowd/site/mediator/ViewMediator.java

@@ -75,5 +75,7 @@ public interface ViewMediator {
 
     QualificationDTO getQualification(long userId);
 
-    QualificationDTO addQualification(long userId);
+    QualificationDTO addQualification(long userId,QualificationVO qualificationVO);
+
+    QualificationDTO updateQualification(long id,long userId,QualificationVO qualificationVO);
 }

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

@@ -801,9 +801,28 @@ public class WebMediatorImpl implements ViewMediator {
     }
 
     @Override
-    public QualificationDTO addQualification(long userId) {
+    public QualificationDTO addQualification(long userId,QualificationVO qualificationVO) {
+        QualificationPO  qualificationPO=new QualificationPO();
+        qualificationPO.setName(qualificationVO.getName());
+        qualificationPO.setNumber(qualificationVO.getNumber());
+        qualificationPO.setLicensingAuthority(qualificationVO.getLicensingAuthority());
+        qualificationPO.setTime(qualificationVO.getTime());
+        qualificationPO.setUserId(userId);
+        qualificationDao.save(qualificationPO);
+        this.getQualification(userId);
+        return this.getQualification(userId);
+    }
 
-        return null;
+    @Override
+    public QualificationDTO updateQualification(long id, long userId,QualificationVO qualificationVO) {
+        Optional<QualificationPO> qualificationPO=qualificationDao.findById(id);
+        qualificationPO.get().setName(qualificationVO.getName());
+        qualificationPO.get().setNumber(qualificationVO.getNumber());
+        qualificationPO.get().setLicensingAuthority(qualificationVO.getLicensingAuthority());
+        qualificationPO.get().setTime(qualificationVO.getTime());
+        qualificationDao.save(qualificationPO.get());
+        this.getQualification(userId);
+        return this.getQualification(userId);
     }
 
     private ProjectOperationControl initProjectPermission(CrowdTestProject project, User user) {

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

@@ -2,6 +2,7 @@ package com.mooctest.crowd.site.service;
 
 import com.mooctest.crowd.site.data.dto.QualificationDTO;
 import com.mooctest.crowd.site.data.dto.UserDTO;
+import com.mooctest.crowd.site.data.vo.QualificationVO;
 import com.mooctest.crowd.site.data.vo.UserVO;
 
 
@@ -12,5 +13,7 @@ public interface PersonalDataService {
 
     QualificationDTO getQualification(long userId);
 
-    QualificationDTO addQualification(long userId);
+    QualificationDTO addQualification(long userId,QualificationVO qualificationVO);
+
+    QualificationDTO updateQualification(long id,long userId,QualificationVO qualificationVO);
 }

+ 8 - 2
site/src/main/java/com/mooctest/crowd/site/service/impl/PersonalDataServiceImpl.java

@@ -2,6 +2,7 @@ package com.mooctest.crowd.site.service.impl;
 
 import com.mooctest.crowd.site.data.dto.QualificationDTO;
 import com.mooctest.crowd.site.data.dto.UserDTO;
+import com.mooctest.crowd.site.data.vo.QualificationVO;
 import com.mooctest.crowd.site.data.vo.UserVO;
 import com.mooctest.crowd.site.mediator.ViewMediator;
 import com.mooctest.crowd.site.service.PersonalDataService;
@@ -30,7 +31,12 @@ public class PersonalDataServiceImpl implements PersonalDataService {
     }
 
     @Override
-    public QualificationDTO addQualification(long userId) {
-        return null;
+    public QualificationDTO addQualification(long userId,QualificationVO qualificationVO) {
+        return viewMediator.addQualification(userId,qualificationVO);
+    }
+
+    @Override
+    public QualificationDTO updateQualification(long id, long userId,QualificationVO qualificationVO) {
+        return viewMediator.updateQualification(id,userId,qualificationVO);
     }
 }