Browse Source

RD登录页、主页开发

anderx 3 years ago
parent
commit
0646aa349f

+ 27 - 1
src/main/java/com/goafanti/RD/controller/RDContorller.java

@@ -50,7 +50,7 @@ public class RDContorller extends BaseApiController {
                     ParamUtils.getParamName(in,bindingResult.getFieldError().getField())));
             return res;
         }
-        if (rdService.checkRdNo(in.getRdNo())){
+        if (rdService.checkRdNo(in.getRdNo(),null)){
             res.getError().add(buildErrorMessageParams(ErrorConstants.PARAM_BEING_ERROR,"研发活动编号"));
             return res;
         }
@@ -65,6 +65,31 @@ public class RDContorller extends BaseApiController {
         return res;
     }
 
+
+
+    @RequestMapping(value="/update",method = RequestMethod.POST)
+    public Result update(@Validated InputRdDetails in ,BindingResult bindingResult) {
+        Result res= new Result();
+        if (bindingResult.hasErrors()) {
+            res.getError().add(buildErrorByMsg(bindingResult.getFieldError().getDefaultMessage(),
+                    ParamUtils.getParamName(in,bindingResult.getFieldError().getField())));
+            return res;
+        }
+        if (rdService.checkRdNo(in.getRdNo(),in.getId())){
+            res.getError().add(buildErrorMessageParams(ErrorConstants.PARAM_BEING_ERROR,"研发活动编号"));
+            return res;
+        }
+        if (StringUtils.isNotBlank(in.getRdStartStr())){
+            in.setRdStart(DateUtils.StringToDate(in.getRdStartStr(), AFTConstants.YYYYMMDD));
+        }
+        if (StringUtils.isNotBlank(in.getRdEndStr())){
+            in.setRdEnd(DateUtils.StringToDate(in.getRdEndStr(),AFTConstants.YYYYMMDD));
+        }
+
+        res.data(rdService.update(in));
+        return res;
+    }
+
     @RequestMapping(value = "/details",method = RequestMethod.GET)
     public Result details(Long id){
         Result res =new Result();
@@ -126,4 +151,5 @@ public class RDContorller extends BaseApiController {
             LoggerUtils.error(PublicController.class,"下载文件失败", e);
         }
     }
+
 }

+ 12 - 1
src/main/java/com/goafanti/RD/service/RDService.java

@@ -1,5 +1,6 @@
 package com.goafanti.RD.service;
 
+import com.goafanti.RD.bo.InputRdDetails;
 import com.goafanti.RD.bo.InputRdList;
 import com.goafanti.RD.bo.OutRdDetails;
 import com.goafanti.common.bo.Result;
@@ -9,7 +10,7 @@ import org.springframework.web.multipart.MultipartFile;
 public interface RDService {
     int add(RdDetails in);
 
-    boolean checkRdNo(String rdNo);
+
 
     OutRdDetails details(Long id);
 
@@ -18,4 +19,14 @@ public interface RDService {
     Object batchList(MultipartFile file);
 
     Result exportList(InputRdList in, String uploadPath);
+
+    /**
+     *
+     * @param rdNo 编号
+     * @param id 新增为null 修改为当前编号
+     * @return
+     */
+    boolean checkRdNo(String rdNo, Long id);
+
+    int update(InputRdDetails in);
 }

+ 11 - 5
src/main/java/com/goafanti/RD/service/impl/RDServiceImpl.java

@@ -43,19 +43,25 @@ public class RDServiceImpl extends BaseMybatisDao<RdDetailsMapper> implements RD
 
     @Override
     public int add(RdDetails in) {
-        Admin admin = adminMapper.selectByPrimaryKey(TokenManager.getAdminId());
-        if (admin!=null)in.setConsultantName(admin.getName());
+        in.setAid(TokenManager.getAdminId());
         in.setStatus(0);
         return rdDetailsMapper.insertSelective(in);
     }
 
     @Override
-    public boolean checkRdNo(String rdNo) {
-        int i = rdDetailsMapper.checkRdNo(rdNo);
+    public int update(InputRdDetails in) {
+        return rdDetailsMapper.updateByPrimaryKeySelective(in);
+    }
+
+    @Override
+    public boolean checkRdNo(String rdNo, Long id) {
+        int i = rdDetailsMapper.checkRdNo(rdNo,id);
         if (i>0)return true;
         return false;
     }
 
+
+
     @Override
     public OutRdDetails details(Long id) {
         return rdDetailsMapper.details(id);
@@ -106,7 +112,7 @@ public class RDServiceImpl extends BaseMybatisDao<RdDetailsMapper> implements RD
         List<InputExcelRdDetails> relust= new ArrayList<>();
         List<String>errors=new ArrayList<>();
         for (InputExcelRdDetails in : list) {
-            boolean falg = checkRdNo(in.getRdNo());
+            boolean falg = checkRdNo(in.getRdNo(),null);
             if (falg){
                 errors.add(in.getRdNo());
             }else {

+ 2 - 2
src/main/java/com/goafanti/common/dao/RdDetailsMapper.java

@@ -1,9 +1,9 @@
 package com.goafanti.common.dao;
 
 import com.goafanti.RD.bo.InputExcelRdDetails;
-import com.goafanti.RD.bo.InputRdDetails;
 import com.goafanti.RD.bo.OutRdDetails;
 import com.goafanti.common.model.RdDetails;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 
@@ -22,7 +22,7 @@ public interface RdDetailsMapper {
 
     OutRdDetails details(Long id);
 
-    int checkRdNo(String rdNo);
+    int checkRdNo(@Param("rdNo") String rdNo,@Param("id")  Long id);
 
     void insertBatch(List<InputExcelRdDetails> list);
 }

+ 3 - 0
src/main/java/com/goafanti/common/mapper/RdDetailsMapper.xml

@@ -277,6 +277,9 @@
     select count(*)
     from rd_details
     where rd_no =#{rdNo}
+    <if test="id !=null">
+      and id !=#{id}
+    </if>
   </select>
   <sql id="details_List">
      a.id, a.user_name userName, a.rd_no rdNo, a.ip_no ipNo, a.rd_name rdName,a.technical_field technicalField,