|
@@ -4,6 +4,7 @@ import cn.hutool.core.bean.BeanUtil;
|
|
|
import cn.hutool.core.lang.Validator;
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
import cn.hutool.json.JSONUtil;
|
|
|
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
|
|
|
import com.zhongzheng.common.core.domain.AjaxResult;
|
|
|
import com.zhongzheng.common.exception.CustomException;
|
|
|
import com.zhongzheng.common.utils.DateUtils;
|
|
@@ -27,6 +28,7 @@ import com.zhongzheng.modules.order.service.IOrderService;
|
|
|
import com.zhongzheng.modules.user.domain.UserMockSubscribe;
|
|
|
import com.zhongzheng.modules.user.service.IUserMockSubscribeService;
|
|
|
import com.zhongzheng.modules.user.service.IUserSubscribeService;
|
|
|
+import com.zhongzheng.modules.user.vo.UserMockSubscribeVo;
|
|
|
import org.springframework.beans.BeanUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
@@ -575,4 +577,57 @@ public class MockApplyServiceImpl extends ServiceImpl<MockApplyMapper, MockApply
|
|
|
public List<MockMajorSubjectVo> listApplyName(MockApplyQueryBo bo) {
|
|
|
return baseMapper.listApplyName(bo);
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
+ public MockTimeVo addMockTime(MockTimeAddBo bo) {
|
|
|
+ MockApply apply = getById(bo.getApplyId());
|
|
|
+ if (ObjectUtils.isNull(apply)){
|
|
|
+ throw new CustomException("模考信息获取失败");
|
|
|
+ }
|
|
|
+ //获取科目记录ID
|
|
|
+ Long id = baseMapper.getMockMajorSubjectId(bo);
|
|
|
+ if (ObjectUtils.isNull(id)){
|
|
|
+ throw new CustomException("模考专业科目ID获取失败");
|
|
|
+ }
|
|
|
+ //换算时间
|
|
|
+ Long nowTime = DateUtils.getNowTime();//开始时间
|
|
|
+ Integer duration = bo.getDuration() * 60;
|
|
|
+ Long endTime = nowTime + Long.valueOf(duration);//结束时间
|
|
|
+ SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
|
|
|
+ String nowTimeStr = sdf.format(nowTime*1000);
|
|
|
+ String endTimeStr = sdf.format(endTime*1000);
|
|
|
+
|
|
|
+ apply.setApplyStartTime(nowTime);
|
|
|
+ apply.setApplyEndTime(endTime);
|
|
|
+ updateById(apply);
|
|
|
+
|
|
|
+ MockMajorSubjectTime time = new MockMajorSubjectTime();
|
|
|
+ time.setMockMajorSubjectId(id);
|
|
|
+ time.setStartTime(nowTimeStr);
|
|
|
+ time.setEndTime(endTimeStr);
|
|
|
+ time.setExamTime(nowTime);
|
|
|
+ time.setCreateTime(nowTime);
|
|
|
+ time.setUpdateTime(nowTime);
|
|
|
+ iMockMajorSubjectTimeService.save(time);
|
|
|
+
|
|
|
+ UserMockSubscribe userMockSubscribe = iUserMockSubscribeService.getOne(new LambdaQueryWrapper<UserMockSubscribe>()
|
|
|
+ .eq(UserMockSubscribe::getUserId, bo.getUserId())
|
|
|
+ .eq(UserMockSubscribe::getApplyId, bo.getApplyId()));
|
|
|
+ if (ObjectUtils.isNull(userMockSubscribe)){
|
|
|
+ throw new CustomException("我的模考信息获取失败");
|
|
|
+ }
|
|
|
+ userMockSubscribe.setEachExamId(time.getId());
|
|
|
+ userMockSubscribe.setApplySiteStartTime(nowTimeStr);
|
|
|
+ userMockSubscribe.setApplySiteExamTime(nowTime);
|
|
|
+ iUserMockSubscribeService.updateById(userMockSubscribe);
|
|
|
+
|
|
|
+ MockTimeVo mockTimeVo = new MockTimeVo();
|
|
|
+ mockTimeVo.setEachExamId(time.getId());
|
|
|
+ mockTimeVo.setStartTime(nowTimeStr);
|
|
|
+ mockTimeVo.setEndTime(endTimeStr);
|
|
|
+ mockTimeVo.setApplyId(bo.getApplyId());
|
|
|
+ mockTimeVo.setExamTime(nowTime);
|
|
|
+ return mockTimeVo;
|
|
|
+ }
|
|
|
}
|