From c8b0b0b257790ae74e16a54bfb3772da1ff70288 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期一, 20 一月 2025 15:29:17 +0800 Subject: [PATCH] bug修改 --- optometrist/src/main/java/com/jilongda/optometrist/controller/TOptometristController.java | 61 +++++++++++++++++++++--------- 1 files changed, 42 insertions(+), 19 deletions(-) diff --git a/optometrist/src/main/java/com/jilongda/optometrist/controller/TOptometristController.java b/optometrist/src/main/java/com/jilongda/optometrist/controller/TOptometristController.java index f329db7..b41f117 100644 --- a/optometrist/src/main/java/com/jilongda/optometrist/controller/TOptometristController.java +++ b/optometrist/src/main/java/com/jilongda/optometrist/controller/TOptometristController.java @@ -1,20 +1,19 @@ package com.jilongda.optometrist.controller; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.toolkit.Wrappers; -import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper; +import com.jilongda.common.Ticket.TAddOptometryVO; +import com.jilongda.common.Ticket.TOptometryDetailVO; +import com.jilongda.common.Ticket.TicketUtil; import com.jilongda.common.basic.ApiResult; import com.jilongda.common.basic.PageInfo; -import com.jilongda.optometrist.authority.model.SecUser; import com.jilongda.optometrist.authority.service.SecUserService; import com.jilongda.optometrist.model.*; -import com.jilongda.optometrist.query.TOptometristQuery; import com.jilongda.optometrist.query.TOptometryQuery; -import com.jilongda.optometrist.query.TicketQuery; import com.jilongda.optometrist.service.*; import com.jilongda.optometrist.utils.LoginInfoUtil; import com.jilongda.optometrist.vo.*; -import com.sun.org.apache.bcel.internal.generic.NEW; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.BeanUtils; @@ -22,6 +21,7 @@ import org.springframework.util.StringUtils; import org.springframework.web.bind.annotation.*; +import java.text.SimpleDateFormat; import java.time.LocalDateTime; import java.util.ArrayList; import java.util.Date; @@ -57,6 +57,8 @@ private TOrderService orderService; @Autowired private TOptometryDetailService optometryDetailService; + @Autowired + private TTicketService tTicketService; @ApiOperation(value = "获取验光单分页列表",tags = "验光单") @PostMapping(value = "/pageList") public ApiResult<PageInfo<TOptometryVO>> pageList(@RequestBody TOptometryQuery query) { @@ -123,7 +125,7 @@ // 获取凌晨00:00:00和23:59:59 LocalDateTime startTime = nowTime.withHour(0).withMinute(0).withSecond(0); LocalDateTime endTime = nowTime.withHour(23).withMinute(59).withSecond(59); - int size = optometryService.lambdaQuery().eq(TOptometry::getStoreId, optometrist.getId()) + int size = optometryService.lambdaQuery().eq(TOptometry::getStoreId, store.getId()) .between(TOptometry::getCreateTime, startTime, endTime) .eq(TOptometry::getStatus, 3).list().size(); tOptometristVO.setOptometryCount(size); @@ -182,6 +184,7 @@ public ApiResult startOptometry(Integer id) { Integer userId = loginInfoUtil.getUserId(); List<TLineUp> list = tLineUpService.lambdaQuery().eq(TLineUp::getStatus, 2) + .ne(TLineUp::getId,id) .eq(TLineUp::getOptometristId, userId).list(); if (!list.isEmpty()){ return ApiResult.failed("当前还有未结束的验光单"); @@ -197,6 +200,7 @@ end.setMinutes(59); end.setSeconds(59); List<TLineUp> lineUps = tLineUpService.lambdaQuery().eq(TLineUp::getStoreId, lineUp.getStoreId()) + .eq(TLineUp::getStatus,1) .between(TLineUp::getCreateTime, start, end).list(); for (TLineUp up : lineUps) { if (Integer.parseInt(up.getCode())<Integer.parseInt(lineUp.getCode())){ @@ -226,22 +230,22 @@ @ApiOperation(value = "填写验光信息完成") @PostMapping(value = "/add") public ApiResult<String> add(@RequestBody TAddOptometryVO dto) { - TLineUp byId = tLineUpService.getById(dto.getId()); - TAppUser byId1 = appUserService.getById(byId.getUserId()); + TLineUp lineUp = tLineUpService.getById(dto.getId()); + TAppUser app = appUserService.getById(lineUp.getUserId()); TOptometry tOptometry = new TOptometry(); - tOptometry.setUserId(byId.getUserId()); - tOptometry.setAge(byId.getAge()); - tOptometry.setGender(byId.getGender()); - if (byId1!=null){ - tOptometry.setPhone(byId1.getPhone()); + tOptometry.setUserId(lineUp.getUserId()); + tOptometry.setAge(lineUp.getAge()); + tOptometry.setGender(lineUp.getGender()); + if (app!=null){ + tOptometry.setPhone(app.getPhone()); } tOptometry.setLineUpId(dto.getId()); Integer userId = loginInfoUtil.getUserId(); - TOptometrist byId2 = optometristService.getById(userId); - tOptometry.setRealName(byId.getUserName()); + TOptometrist optometrist = optometristService.getById(userId); + tOptometry.setRealName(lineUp.getUserName()); tOptometry.setLineUpId(dto.getId()); tOptometry.setOptometristId(userId); - tOptometry.setStoreId(byId2.getStoreId()); + tOptometry.setStoreId(optometrist.getStoreId()); tOptometry.setStatus(3); optometryService.save(tOptometry); List<TOptometryDetail> tOptometryDetails = new ArrayList<>(); @@ -257,14 +261,33 @@ tOptometryDetail.setPupilHeight(optometryDetailVO.getPupilHeight()); tOptometryDetail.setPupilDistance(optometryDetailVO.getPupilDistance()); tOptometryDetail.setCorrect(optometryDetailVO.getCorrect()); - tOptometryDetail.setStoreId(byId2.getStoreId()); + tOptometryDetail.setStoreId(optometrist.getStoreId()); tOptometryDetail.setStatus(optometryDetailVO.getStatus()); tOptometryDetails.add(tOptometryDetail); } optometryDetailService.saveBatch(tOptometryDetails); // 验光完成 - byId.setStatus(3); - tLineUpService.updateById(byId); + lineUp.setStatus(3); + tLineUpService.updateById(lineUp); + dto.setOptometristName(optometrist.getName()); + TStore store = storeService.getById(lineUp.getStoreId()); + dto.setShopName(store.getName()); + TAppUser appUser = appUserService.getById(lineUp.getUserId()); + dto.setPhone(appUser.getPhone()); + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + String format = simpleDateFormat.format(new Date()); + dto.setTime(format); + TTicket tTicket = tTicketService.lambdaQuery().eq(TTicket::getStoreId, lineUp.getStoreId()) + .eq(TTicket::getStatus, 1).list().stream().findFirst().orElse(null); + if (tTicket==null){ + return ApiResult.failed("当前门店未绑定小票机"); + } + dto.setSn(tTicket.getCloudId()+""); + String print = TicketUtil.print(dto); + JSONObject jsonObject = JSONObject.parseObject(print); + if (!jsonObject.getString("msg").equals("ok")){ + return ApiResult.failed(jsonObject.getString("msg")); + } return ApiResult.success(); } -- Gitblit v1.7.1