LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); QueryWrapper queryWrapper = new QueryWrapper<Buffet>() .eq("code",buffet.getCode()); List<Buffet> list = buffetMapper.selectList(queryWrapper); if (ObjectUtils.isEmpty(list)) { throw new ServiceException("取餐码错误,请重新输入取餐码"); } QueryWrapper queryWrapper2 = new QueryWrapper<Buffet>() .eq("code",buffet.getCode()); Buffet buffet1 = buffetMapper.selectOne(queryWrapper2); QueryWrapper queryWrapper3 = new QueryWrapper<Buffet>() .eq("order_no",buffet1.getOrderNo()); BuffetLog buffetLog = buffetLogMapper.selectOne(queryWrapper3); buffetLog.setOuttime(new Date()); // buffetLog.setOutuser(user.getId()); DdOrder ddOrder = ddOrderMapper.selectById(buffet1.getOrderNo()); if (!ddOrder.getStatus().equals("6")){ throw new ServiceException("请等待配送完成后再取餐!!!"); } ddOrder.setStatus("7"); ddOrderMapper.updateById(ddOrder); buffetLogMapper.updateById(buffetLog); for (Buffet buffet2 : list) { buffet2.setStatus("0"); buffet2.setCode(""); buffet2.setOrderNo(""); this.updateById(buffet2); } return null; }
时间: 2023-06-18 12:07:09 浏览: 109
这是一个 Java 代码块,其中包含了对自助餐的取餐操作的处理逻辑。主要流程如下:
1. 从前端传来的参数中获取自助餐的取餐码;
2. 根据取餐码从数据库中查询自助餐的信息,如果查询不到,则抛出异常;
3. 根据查询到的自助餐信息,获取对应的订单号,并查询该订单的状态,如果订单状态不为已完成,则抛出异常;
4. 更新订单状态为已取餐;
5. 更新自助餐日志信息,记录取餐时间;
6. 更新自助餐信息,将自助餐状态改为可用状态,清空取餐码和订单号。
需要注意的是,这段代码中还有一行被注释掉的代码:`// buffetLog.setOutuser(user.getId());`,该代码用于记录取餐用户的 ID,可以根据需要取消注释。
相关问题
@ApiOperation("修改授权") @PostMapping("/changeAuthFlag") public Result<?> changeAuthFlag(@RequestBody String authFlag) { // 获取Session对象 Result<String> result = new Result<String>(); try { LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); SysUser sysUser = sysUserService.getById(loginUser.getId()); if(sysUser == null){ result.setSuccess(false); result.setResult("没有改用户"); return result; }else{ //update sysUserService.updateById(sysUser); } result.setSuccess(true); return result; } catch (Exception e) { e.printStackTrace(); result.setSuccess(false); } return result; }我这个方法是正确的吗,好像有错,没有去修改 数值没变
根据您提供的代码,我看不出来具体的问题所在。但是,我可以给您一些可能出错的地方:
1. @RequestBody注解用于接收HTTP请求体中的数据,而不是请求参数。如果您想要接收请求参数,应该使用@RequestParam注解。
2. 在更新SysUser之前,您需要根据请求体中的authFlag参数获取要更新的SysUser对象,并设置新的授权标志。然后再调用sysUserService.updateById(sysUser)方法进行更新。
3. 在更新SysUser之后,您需要返回更新后的SysUser对象,而不是返回一个字符串。
下面是一个示例代码:
```
@ApiOperation("修改授权")
@PostMapping("/changeAuthFlag")
public Result<?> changeAuthFlag(@RequestParam String authFlag) {
// 获取Session对象
Result<SysUser> result = new Result<>();
try {
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
SysUser sysUser = sysUserService.getById(loginUser.getId());
if (sysUser == null) {
result.setSuccess(false);
result.setMessage("没有该用户");
} else {
// 更新SysUser对象
sysUser.setAuthFlag(authFlag);
sysUserService.updateById(sysUser);
result.setSuccess(true);
result.setResult(sysUser);
}
} catch (Exception e) {
e.printStackTrace();
result.setSuccess(false);
result.setMessage("更新授权标志时出现异常");
}
return result;
}
```
希望能够帮助到您!
<div id="comment-form" class="ui form" th:if="${loginUser != null}"> <input type="hidden" name="blogId" th:value="${blog.blogId}"> <input type="hidden" name="parentCommentId" value="-1"> <input type="hidden" name="nickname" th:value="${loginUser.nickname}"> <input type="hidden" name="email" value="-1" th:value="${loginUser.email}"> <div class="field"> <textarea name="content" placeholder="请输入评论信息..."></textarea> </div> <div class="field"> <div class="fieldm-mobile-wide m-margin-bottom-small"> <button id="commentpost-btn" type="button" class="ui teal m-mobile-wide button" style="width:100px;height: 40px"> <i class="edit icon"></i>发布 </button> </div> </div> </div> 如何将以上发布按钮设置为靠右
你可以在外层div标签上添加class为"right aligned"来使发布按钮靠右对齐,代码如下:
```
<div id="comment-form" class="ui form right aligned" th:if="${loginUser != null}">
<input type="hidden" name="blogId" th:value="${blog.blogId}">
<input type="hidden" name="parentCommentId" value="-1">
<input type="hidden" name="nickname" th:value="${loginUser.nickname}">
<input type="hidden" name="email" value="-1" th:value="${loginUser.email}">
<div class="field">
<textarea name="content" placeholder="请输入评论信息..."></textarea>
</div>
<div class="field">
<div class="fieldm-mobile-wide m-margin-bottom-small">
<button id="commentpost-btn" type="button" class="ui teal m-mobile-wide button" style="width:100px;height: 40px">
<i class="edit icon"></i>发布
</button>
</div>
</div>
</div>
```
阅读全文