Commit cdd06247 authored by 王国存's avatar 王国存

审批-通过/驳回优化,更新列表状态

parent 1e7e18a7
...@@ -83,4 +83,6 @@ public interface QuestionnaireDao { ...@@ -83,4 +83,6 @@ public interface QuestionnaireDao {
Integer updateAnswerScore(Answer answer); Integer updateAnswerScore(Answer answer);
List<Review> selectAnswerByStatus(@Param("recordId") Long recordId); List<Review> selectAnswerByStatus(@Param("recordId") Long recordId);
List<Review> selectAnswerByQuestion(@Param("recordId") Long recordId);
} }
...@@ -25,6 +25,7 @@ import org.springframework.transaction.annotation.Transactional; ...@@ -25,6 +25,7 @@ import org.springframework.transaction.annotation.Transactional;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.util.Arrays;
import java.util.Collections; import java.util.Collections;
import java.util.List; import java.util.List;
...@@ -91,9 +92,15 @@ public class QuestionnaireServiceImpl implements QuestionnaireService { ...@@ -91,9 +92,15 @@ public class QuestionnaireServiceImpl implements QuestionnaireService {
//先去查询 t_review 表里的审批状态是否全部为通过,都是通过的状态,更新列表的审批状态为已审批=3 //先去查询 t_review 表里的审批状态是否全部为通过,都是通过的状态,更新列表的审批状态为已审批=3
List<Review> reviewList = questionnaireDao.selectAnswerByStatus(record.getReviews().get(0).getRecordId()); List<Review> reviewList = questionnaireDao.selectAnswerByStatus(record.getReviews().get(0).getRecordId());
reviewList.removeAll(Collections.singleton(null)); reviewList.removeAll(Collections.singleton(null));
//查询审批页面问题通过的个数
List<Review> reviews = questionnaireDao.selectAnswerByQuestion(record.getReviews().get(0).getRecordId());
//问题个数
List<Integer> list = Arrays.asList(1, 2, 3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27);
if(reviewList != null){ if(reviewList != null){
//查询结果为一条数据,并且状态都是通过,更新列表状态为3 //查询结果为一条数据,并且状态都是通过,更新列表状态为3
if(reviewList.size() == 1 && reviewList.get(0).getApprovalStatus() == 1){ if(reviewList.size() == 1 && reviewList.get(0).getApprovalStatus() == 1 && reviews.containsAll(list)){
record.setProcessStatus(3); record.setProcessStatus(3);
}else if(reviewList.size() == 1 && reviewList.get(0).getApprovalStatus() == 0){ }else if(reviewList.size() == 1 && reviewList.get(0).getApprovalStatus() == 0){
//查询结果为一条数据,并且状态都是驳回,更新列表状态为2 //查询结果为一条数据,并且状态都是驳回,更新列表状态为2
......
...@@ -592,4 +592,15 @@ ...@@ -592,4 +592,15 @@
WHERE WHERE
<if test="recordId != null and recordId != ''">record_id = #{recordId}</if> <if test="recordId != null and recordId != ''">record_id = #{recordId}</if>
</select> </select>
<!--查询审批页面问题通过状态-->
<select id="selectAnswerByQuestion" resultType="com.tiptimes.model.Review">
SELECT
questions_id
FROM
t_review
WHERE
<if test="recordId != null and recordId != ''">record_id = #{recordId}</if>
and questions_id BETWEEN 1 AND 27
</select>
</mapper> </mapper>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment