Commit 213c4745 authored by nie'hong's avatar nie'hong

将work_collect表中work_day与user_id设置为唯一索引后捕获重复插入的异常

parent 2f05f456
...@@ -103,7 +103,8 @@ public enum BASE_RESP_CODE_ENUM { ...@@ -103,7 +103,8 @@ public enum BASE_RESP_CODE_ENUM {
PROJECT_BO_INFO_ERROR("685", "项目所对应商机信息与OA中项目所对应商机信息不一致"), PROJECT_BO_INFO_ERROR("685", "项目所对应商机信息与OA中项目所对应商机信息不一致"),
BO_INFO_NOT_FIND("686", "OA中的商机信息不存在"), BO_INFO_NOT_FIND("686", "OA中的商机信息不存在"),
LONG_LEAVE_START_NOT__GREATER_END("687", "长请假/调休开始时间不能大于结束时间"), LONG_LEAVE_START_NOT__GREATER_END("687", "长请假/调休开始时间不能大于结束时间"),
PROJECT_OA_ID_IS_ERROR("688", "项目在OA中的编号错误") PROJECT_OA_ID_IS_ERROR("688", "项目在OA中的编号错误"),
WORK_TIME_ORDER_EXIST("689", "工单已提交,请勿重新提交!")
; ;
......
...@@ -19,6 +19,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; ...@@ -19,6 +19,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.dao.DuplicateKeyException;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
...@@ -162,10 +163,12 @@ public class WorkCollectServiceImpl implements WorkCollectService { ...@@ -162,10 +163,12 @@ public class WorkCollectServiceImpl implements WorkCollectService {
if (workCollectByUserIdAndWorkDay != null) { if (workCollectByUserIdAndWorkDay != null) {
workCollectMapper.deleteById(workCollectByUserIdAndWorkDay.getId()); workCollectMapper.deleteById(workCollectByUserIdAndWorkDay.getId());
} }
int insertRow = workCollectMapper.insertWorkCollect(workCollect); try {
if (insertRow == 0) { workCollectMapper.insertWorkCollect(workCollect);
throw new BaseCustomException(BASE_RESP_CODE_ENUM.INSERT_DATA_IS_FAIL); } catch (DuplicateKeyException e) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.WORK_TIME_ORDER_EXIST);
} }
return true; return true;
} }
......
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