Merge branch 'refs/heads/分账重构'

This commit is contained in:
zengtao01
2024-09-29 15:02:22 +08:00
5 changed files with 104 additions and 48 deletions

View File

@ -3,6 +3,7 @@ package cn.iocoder.yudao.module.member.controller.app.diningplates;
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.member.controller.admin.diningplates.vo.DiningPlatesRespVO;
import cn.iocoder.yudao.module.member.controller.admin.diningplates.vo.DiningPlatesSaveReqVO;
import cn.iocoder.yudao.module.member.controller.app.diningplates.vo.AppUserInfo;
import cn.iocoder.yudao.module.member.controller.app.user.vo.AppUserInfoCardVO;
import cn.iocoder.yudao.module.member.dal.dataobject.diningplates.DiningPlatesDO;
@ -11,10 +12,13 @@ import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import javax.validation.Valid;
import java.util.List;
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
@ -86,4 +90,9 @@ public class AppDiningPlatesController {
return result;
}
@PostMapping("/create")
@Operation(summary = "创建餐盘")
public CommonResult<Long> createDiningPlates(@Valid @RequestBody DiningPlatesSaveReqVO createReqVO) {
return success(diningPlatesService.createDiningPlates(createReqVO));
}
}

View File

@ -2,10 +2,18 @@ package cn.iocoder.yudao.module.member.controller.app.store;
import cn.hutool.core.collection.CollectionUtil;
import cn.iocoder.yudao.framework.common.pojo.StoreResult;
import cn.iocoder.yudao.framework.common.util.json.JsonUtils;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.framework.security.core.annotations.PreAuthenticated;
import cn.iocoder.yudao.module.member.controller.app.store.dto.*;
import cn.iocoder.yudao.module.member.controller.app.store.vo.*;
import cn.iocoder.yudao.module.member.controller.app.store.dto.FacePayDto;
import cn.iocoder.yudao.module.member.controller.app.store.dto.StoreOrderDto;
import cn.iocoder.yudao.module.member.controller.app.store.dto.StoreOrderUploadDto;
import cn.iocoder.yudao.module.member.controller.app.store.dto.StoreSaleGoodsDto;
import cn.iocoder.yudao.module.member.controller.app.store.dto.StoreUserDto;
import cn.iocoder.yudao.module.member.controller.app.store.vo.GoodsResult;
import cn.iocoder.yudao.module.member.controller.app.store.vo.StoreGoodsListVo;
import cn.iocoder.yudao.module.member.controller.app.store.vo.StoreGoodsTypeListVo;
import cn.iocoder.yudao.module.member.controller.app.store.vo.StoreUserVo;
import cn.iocoder.yudao.module.member.controller.app.store.vo.UserInfoVo;
import cn.iocoder.yudao.module.member.dal.dataobject.storegoods.StoreGoodsDO;
import cn.iocoder.yudao.module.member.dal.dataobject.storegoodstype.StoreGoodsTypeDO;
import cn.iocoder.yudao.module.member.dal.dataobject.user.MemberUserDO;
@ -18,14 +26,15 @@ import cn.iocoder.yudao.module.member.service.user.MemberUserService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.extern.slf4j.Slf4j;
import org.apache.poi.ss.formula.functions.T;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.PostConstruct;
import javax.annotation.Resource;
import javax.annotation.security.PermitAll;
import java.util.HashMap;
import java.util.List;
@ -59,7 +68,7 @@ public class AppStoreController {
@GetMapping("/mgcr/equipment/goodsList")
@Operation(summary = "获取菜品库所有菜品")
public GoodsResult getGoods(@RequestBody StoreBaseDto dto) {
public String getGoods(String equipmentCode) {
List<StoreGoodsDO> goodsDOS = storeGoodsService.getAll(null);
List<StoreGoodsTypeDO> goodsTypeDOS = goodsTypeService.getAll();
List<StoreGoodsListVo> goodData = BeanUtils.toBean(goodsDOS, StoreGoodsListVo.class);
@ -70,12 +79,13 @@ public class AppStoreController {
goodsResult.setGoodsData(goodData);
goodsResult.setSuccess(true);
goodsResult.setMessage("操作成功");
return goodsResult;
return JsonUtils.toJsonString(goodsResult);
}
@PostMapping("/mgcr/equipment/bindGoods")
@Operation(summary = "设置营业菜品")
public StoreResult<String> bindGoods(@RequestBody StoreSaleGoodsDto dto) {
public String bindGoods(@RequestBody StoreSaleGoodsDto dto) {
Boolean b = saleGoodsService.bindGoods(dto);
StoreResult<String> result = new StoreResult<>();
@ -87,21 +97,21 @@ public class AppStoreController {
result.setStatusCode("300");
result.setSuccess(false);
}
return result;
return JsonUtils.toJsonString(result);
}
@GetMapping("/mgcr/equipment/queryBindGoods")
@Operation(summary = "获取营业菜品")
public GoodsResult getSaleGoods(@RequestBody StoreBaseDto dto) {
public String getSaleGoods(String equipmentCode) {
GoodsResult goodsResult = new GoodsResult();
goodsResult.setStatusCode(200);
goodsResult.setSuccess(true);
goodsResult.setMessage("操作成功");
List<Integer> goodsIds = saleGoodsService.getGoodsIds(dto.getEquipmentCode());
List<Integer> goodsIds = saleGoodsService.getGoodsIds(equipmentCode);
if(CollectionUtil.isEmpty(goodsIds)){
return goodsResult;
return JsonUtils.toJsonString(goodsResult);
}
List<StoreGoodsDO> goodsDOS = storeGoodsService.getAll(null);
List<StoreGoodsTypeDO> goodsTypeDOS = goodsTypeService.getAll();
@ -109,46 +119,51 @@ public class AppStoreController {
List<StoreGoodsTypeListVo> categoryData = BeanUtils.toBean(goodsTypeDOS, StoreGoodsTypeListVo.class);
goodsResult.setCategoryData(categoryData);
goodsResult.setGoodsData(goodData);
return goodsResult;
return JsonUtils.toJsonString(goodsResult);
}
@PostMapping("/mgcr/order/paymentCodePayOrder")
@Operation(summary = "创建刷脸支付订单")
public StoreResult<HashMap<String, Integer>> paymentCodePayOrder(@RequestBody StoreOrderDto dto) {
public String paymentCodePayOrder(@RequestBody StoreOrderDto dto) {
Integer order = orderService.createOrder(dto).getOrderId();
HashMap<String, Integer> map = new HashMap<>();
map.put("orderId", order);
return StoreResult.success(map);
return JsonUtils.toJsonString(StoreResult.success(map));
}
@PostMapping("/swipingFacePay")
@Operation(summary = "提交刷脸支付")
public StoreResult swipingFacePay(@RequestBody FacePayDto dto) {
public String swipingFacePay(@RequestBody FacePayDto dto) {
UserInfoVo userInfoVo = orderService.facePay(dto);
if(userInfoVo.getBalance()>=0){
return StoreResult.success(userInfoVo);
return JsonUtils.toJsonString(StoreResult.success(userInfoVo));
}else {
return StoreResult.fail("余额不足");
return JsonUtils.toJsonString(StoreResult.fail("余额不足"));
}
}
@PostMapping("/mgcr/order/payByCardOrder")
@Operation(summary = "添加刷卡订单")
public StoreResult<HashMap<String, Integer>> payByCardOrder(@RequestBody StoreOrderDto dto) {
public String payByCardOrder(@RequestBody StoreOrderDto dto) {
Boolean b = orderService.cardPay(dto);
if(b){
return StoreResult.success(null);
return JsonUtils.toJsonString(StoreResult.success(null));
}else {
return StoreResult.fail("余额不足");
return JsonUtils.toJsonString(StoreResult.fail("余额不足"));
}
}
@PostMapping("/mgcr/order/batchCacheOrder")
@Operation(summary = "缓存订单批量上传")
public StoreResult<HashMap<String, Integer>> batchCacheOrder(@RequestBody StoreOrderUploadDto dto) {
public String batchCacheOrder(@RequestBody StoreOrderUploadDto dto) {
orderService.batchCacheOrder(dto);
return StoreResult.success(null);
return JsonUtils.toJsonString(StoreResult.success(null));
}
@GetMapping("/mgcr/equipment/heartbeat")
@Operation(summary = "心跳")
public String heartbeat() {
return JsonUtils.toJsonString(StoreResult.success(null));
}
}

View File

@ -0,0 +1,37 @@
package cn.iocoder.yudao.module.system.controller.app.deviceinfo;
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
import cn.iocoder.yudao.module.system.controller.admin.deviceinfo.vo.DeviceInfoSaveReqVO;
import cn.iocoder.yudao.module.system.service.deviceinfo.DeviceInfoService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import javax.validation.Valid;
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
@Tag(name = "管理后台 - 设备信息关联门店")
@RestController
@RequestMapping("/t/device-info")
@Validated
public class AppDeviceInfoController {
@Resource
private DeviceInfoService deviceInfoService;
@PostMapping("/create")
@Operation(summary = "创建设备信息关联门店")
@PreAuthorize("@ss.hasPermission('t:device-info:create')")
public CommonResult<Long> createDeviceInfo(@Valid @RequestBody DeviceInfoSaveReqVO createReqVO) {
return success(deviceInfoService.createDeviceInfo(createReqVO));
}
}

View File

@ -2,12 +2,7 @@ package cn.iocoder.yudao.module.system.controller.app.facedeviceinfo;
import cn.hutool.core.date.DateUtil;
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog;
import cn.iocoder.yudao.module.system.controller.admin.facedeviceinfo.vo.FaceDeviceInfoPageReqVO;
import cn.iocoder.yudao.module.system.controller.admin.facedeviceinfo.vo.FaceDeviceInfoRespVO;
import cn.iocoder.yudao.module.system.controller.admin.facedeviceinfo.vo.FaceDeviceInfoSaveReqVO;
import cn.iocoder.yudao.module.system.dal.dataobject.facedeviceinfo.FaceDeviceInfoDO;
@ -17,19 +12,18 @@ import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.apache.commons.lang3.StringUtils;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import javax.annotation.security.PermitAll;
import javax.servlet.http.HttpServletResponse;
import javax.validation.Valid;
import java.io.IOException;
import java.util.List;
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
import static cn.iocoder.yudao.framework.operatelog.core.enums.OperateTypeEnum.EXPORT;
@ -66,5 +60,10 @@ public class AppFaceDeviceInfoController {
return success(bean);
}
@PostMapping("/create")
@Operation(summary = "创建人脸设备信息关联门店")
public CommonResult<Long> createFaceDeviceInfo(@Valid @RequestBody FaceDeviceInfoSaveReqVO createReqVO) {
return success(faceDeviceInfoService.createFaceDeviceInfo(createReqVO));
}
}

View File

@ -1,25 +1,19 @@
package cn.iocoder.yudao.module.system.service.facedeviceinfo;
import cn.hutool.core.collection.CollectionUtil;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.system.controller.admin.facedeviceinfo.vo.FaceDeviceInfoPageReqVO;
import cn.iocoder.yudao.module.system.controller.admin.facedeviceinfo.vo.FaceDeviceInfoSaveReqVO;
import cn.iocoder.yudao.module.system.dal.dataobject.facedeviceinfo.FaceDeviceInfoDO;
import cn.iocoder.yudao.module.system.dal.mysql.carteen.CarteenMapper;
import cn.iocoder.yudao.module.system.dal.mysql.facedeviceinfo.FaceDeviceInfoMapper;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import org.springframework.transaction.annotation.Transactional;
import java.util.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import javax.annotation.Resource;
import java.util.List;
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
import static cn.iocoder.yudao.module.system.enums.ErrorCodeConstants.FACE_DEVICE_INFO_NOT_EXISTS;
@ -94,7 +88,9 @@ public class FaceDeviceInfoServiceImpl implements FaceDeviceInfoService {
LambdaQueryWrapper<FaceDeviceInfoDO> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(FaceDeviceInfoDO::getMac, mac);
FaceDeviceInfoDO faceDeviceInfoDO = faceDeviceInfoMapper.selectOne(wrapper);
faceDeviceInfoDO.setCarteenName(carteenMapper.selectById(faceDeviceInfoDO.getCarteenId()).getStoresName());
if(faceDeviceInfoDO.getCarteenId() != null){
faceDeviceInfoDO.setCarteenName(carteenMapper.selectById(faceDeviceInfoDO.getCarteenId()).getStoresName());
}
return faceDeviceInfoDO;
}
}