Bläddra i källkod

评价管理移动端完成评价

phoenix 1 år sedan
förälder
incheckning
7a2eb9f689

+ 5 - 5
src/main/java/com/xjrsoft/module/evaluate/controller/EvaluateManageController.java

@@ -95,11 +95,11 @@ public class EvaluateManageController {
             return RT.ok(evaluateManageService.updateById(evaluateManage));
         }
         if(dto.getStatus() == 2){
-            EvaluateManage evaluateManage = BeanUtil.toBean(dto, EvaluateManage.class);
-            evaluateManage.setModifyDate(new Date());
-            evaluateManage.setModifyUserId(StpUtil.getLoginIdAsLong());
-
-            return RT.ok(evaluateManageService.updateById(evaluateManage));
+            return RT.ok(evaluateManageService.updateById(new EvaluateManage(){{
+                setCreateDate(new Date());
+                setCreateUserId(StpUtil.getLoginIdAsLong());
+                setStatus(1);
+            }}));
         }
 
         return RT.ok(true);

+ 3 - 6
src/main/java/com/xjrsoft/module/evaluate/controller/EvaluateWriteController.java

@@ -6,10 +6,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.xjrsoft.common.model.result.RT;
 import com.xjrsoft.common.page.ConventPage;
 import com.xjrsoft.common.page.PageOutput;
-import com.xjrsoft.module.evaluate.dto.DrillEvaluateClassListDto;
-import com.xjrsoft.module.evaluate.dto.EvaluateResultSaveDto;
-import com.xjrsoft.module.evaluate.dto.MobileIndexPageDto;
-import com.xjrsoft.module.evaluate.dto.MobileResultPageDto;
+import com.xjrsoft.module.evaluate.dto.*;
 import com.xjrsoft.module.evaluate.service.IEvaluateManageService;
 import com.xjrsoft.module.evaluate.service.IEvaluateResultService;
 import com.xjrsoft.module.evaluate.vo.*;
@@ -89,8 +86,8 @@ public class EvaluateWriteController {
     @GetMapping(value = "/result-list")
     @ApiOperation(value="评价结果列表")
     @SaCheckPermission("evaluatemanage:detail")
-    public RT<List<EvaluateManageItemVo>> resultList(@RequestParam Long id){
-        List<EvaluateManageItemVo> itemList = evaluateManageService.getResultList(id);
+    public RT<List<EvaluateManageItemVo>> resultList(@Valid ResultListDto dto){
+        List<EvaluateManageItemVo> itemList = evaluateManageService.getResultList(dto);
         return RT.ok(itemList);
     }
 

+ 6 - 0
src/main/java/com/xjrsoft/module/evaluate/dto/EvaluateResultSaveDto.java

@@ -22,6 +22,12 @@ public class EvaluateResultSaveDto implements Serializable {
     @ApiModelProperty(value = "评价管理主键编号",required = true)
     private Long evaluateManageId;
 
+    /**
+     * 评价管理主键编号
+     */
+    @ApiModelProperty(value = "评价对象主键编号",required = true)
+    private Long evaluateObjectId;
+
     @ApiModelProperty(value = "填写答案信息")
     private List<AddEvaluateResultDto> resultList;
 }

+ 32 - 0
src/main/java/com/xjrsoft/module/evaluate/dto/ResultListDto.java

@@ -0,0 +1,32 @@
+package com.xjrsoft.module.evaluate.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+
+
+/**
+* @title: 评价管理分页查询入参
+* @Author dzx
+* @Date: 2024-01-16
+* @Version 1.0
+*/
+@Data
+public class ResultListDto implements Serializable {
+
+    /**
+     * 评价管理主键编号
+     */
+    @ApiModelProperty(value = "评价管理主键编号",required = true)
+    private Long evaluateManageId;
+
+    /**
+     * 评价管理主键编号
+     */
+    @ApiModelProperty(value = "评价对象主键编号",required = true)
+    private Long evaluateObjectId;
+
+    @ApiModelProperty(value = "登录者id(前端不传,后端传)", hidden = true)
+    private Long loginUserId;
+}

+ 1 - 1
src/main/java/com/xjrsoft/module/evaluate/mapper/EvaluateManageMapper.java

@@ -38,7 +38,7 @@ public interface EvaluateManageMapper extends MPJBaseMapper<EvaluateManage> {
 
     List<EvaluateManageItemVo> getItemList(Long id);
 
-    List<EvaluateManageItemVo> getResultList(Long id, Long userId);
+    List<EvaluateManageItemVo> getResultList(@Param("dto")ResultListDto dto);
 
     List<EvaluateManageScoreVo> getScoreList(@Param("dto")EvaluateManageScoreDto dto);
 }

+ 1 - 1
src/main/java/com/xjrsoft/module/evaluate/service/IEvaluateManageService.java

@@ -66,5 +66,5 @@ public interface IEvaluateManageService extends MPJBaseService<EvaluateManage> {
     //查询题目信息
     List<EvaluateManageItemVo> getItemList(Long id);
 
-    List<EvaluateManageItemVo> getResultList(Long id);
+    List<EvaluateManageItemVo> getResultList(ResultListDto dto);
 }

+ 2 - 2
src/main/java/com/xjrsoft/module/evaluate/service/impl/EvaluateManageServiceImpl.java

@@ -183,8 +183,8 @@ public class EvaluateManageServiceImpl extends MPJBaseServiceImpl<EvaluateManage
     }
 
     @Override
-    public List<EvaluateManageItemVo> getResultList(Long id) {
-        return evaluateManageMapper.getResultList(id, StpUtil.getLoginIdAsLong());
+    public List<EvaluateManageItemVo> getResultList(ResultListDto dto) {
+        return evaluateManageMapper.getResultList(dto);
     }
 
 }

+ 8 - 4
src/main/java/com/xjrsoft/module/evaluate/service/impl/EvaluateResultServiceImpl.java

@@ -30,6 +30,7 @@ import com.xjrsoft.module.teacher.entity.XjrUser;
 import lombok.AllArgsConstructor;
 import org.springframework.http.ResponseEntity;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.io.ByteArrayOutputStream;
 import java.util.*;
@@ -260,6 +261,7 @@ public class EvaluateResultServiceImpl extends MPJBaseServiceImpl<EvaluateResult
     }
 
     @Override
+    @Transactional
     public String saveBatch(EvaluateResultSaveDto dto) {
         Long loginUserId = StpUtil.getLoginIdAsLong();
         Date createDate = new Date();
@@ -268,11 +270,8 @@ public class EvaluateResultServiceImpl extends MPJBaseServiceImpl<EvaluateResult
             new QueryWrapper<EvaluateExecuter>().lambda()
             .eq(EvaluateExecuter::getUserId, loginUserId)
             .eq(EvaluateExecuter::getEvaluateManageId, dto.getEvaluateManageId())
+            .eq(EvaluateExecuter::getEvaluateObjectId, dto.getEvaluateObjectId())
         );
-        UpdateWrapper<EvaluateExecuter> updateWrapper = new UpdateWrapper<>();
-        updateWrapper.eq("id", executer.getId());
-        updateWrapper.setSql("status = 1");
-        evaluateExecuterMapper.update(executer, updateWrapper);
 
         List<AddEvaluateResultDto> resultList = dto.getResultList();
         for (AddEvaluateResultDto addEvaluateResultDto : resultList) {
@@ -286,6 +285,11 @@ public class EvaluateResultServiceImpl extends MPJBaseServiceImpl<EvaluateResult
             evaluateResultMapper.insert(evaluateResult);
         }
 
+        UpdateWrapper<EvaluateExecuter> updateWrapper = new UpdateWrapper<>();
+        updateWrapper.eq("id", executer.getId());
+        updateWrapper.setSql("status = 1");
+        evaluateExecuterMapper.update(executer, updateWrapper);
+
         return "ok";
     }
 

+ 4 - 3
src/main/resources/mapper/evaluate/EvaluateManageMapper.xml

@@ -163,14 +163,15 @@
     <select id="getItemList" resultType="com.xjrsoft.module.evaluate.vo.EvaluateManageItemVo">
         SELECT * FROM evaluate_manage_item WHERE delete_mark = 0 AND evaluate_manage_id = #{id} ORDER BY sort_code
     </select>
-    <select id="getResultList" resultType="com.xjrsoft.module.evaluate.vo.EvaluateManageItemVo">
+    <select id="getResultList" parameterType="com.xjrsoft.module.evaluate.dto.ResultListDto" resultType="com.xjrsoft.module.evaluate.vo.EvaluateManageItemVo">
         SELECT t1.id,t1.sort_code,t1.evaluate_manage_id,t1.topic,t1.problem,t1.score,t2.score AS actualScore,t2.opinion,t1.input_not_null FROM evaluate_manage_item t1
         LEFT JOIN evaluate_result t2 ON t1.id = t2.evaluate_item_id
         LEFT JOIN evaluate_executer t3 ON t3.id = t2.user_id
         WHERE t1.delete_mark = 0
         AND t2.delete_mark = 0
-        AND t1.evaluate_manage_id = #{id}
-        AND t3.user_id = #{userId}
+        AND t1.evaluate_manage_id = #{dto.evaluateManageId}
+        AND t3.user_id = #{dto.loginUserId}
+        AND t3.evaluate_object_id = #{dto.evaluateObjectId}
         ORDER BY t1.sort_code
     </select>