From d2a82a97e64f7aa81d9ce3216f43fca259863de4 Mon Sep 17 00:00:00 2001 From: gxwebsoft Date: Sun, 4 Jun 2023 11:18:05 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=9D=E5=A7=8B=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bak/OpenBcController1.java | 295 ------------------------------------- 1 file changed, 295 deletions(-) delete mode 100644 bak/OpenBcController1.java diff --git a/bak/OpenBcController1.java b/bak/OpenBcController1.java deleted file mode 100644 index 7d60e63..0000000 --- a/bak/OpenBcController1.java +++ /dev/null @@ -1,295 +0,0 @@ -package com.gxwebsoft.open.controller; - -import cn.hutool.core.date.DateUtil; -import cn.hutool.core.util.StrUtil; -import cn.hutool.http.HttpUtil; -import com.alibaba.fastjson.JSONObject; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.gxwebsoft.apps.entity.BcEquipment; -import com.gxwebsoft.apps.param.BcEquipmentParam; -import com.gxwebsoft.apps.service.BcEquipmentService; -import com.gxwebsoft.apps.utils.BcUtil; -import com.gxwebsoft.common.core.web.ApiResult; -import com.gxwebsoft.common.core.web.BaseController; -import com.gxwebsoft.common.system.entity.User; -import com.gxwebsoft.common.system.service.UserService; -import com.gxwebsoft.shop.entity.Order; -import com.gxwebsoft.shop.entity.OrderGoods; -import com.gxwebsoft.shop.entity.UserReferee; -import com.gxwebsoft.shop.param.OrderGoodsParam; -import com.gxwebsoft.shop.param.OrderParam; -import com.gxwebsoft.shop.param.UserRefereeParam; -import com.gxwebsoft.shop.service.OrderGoodsService; -import com.gxwebsoft.shop.service.OrderService; -import com.gxwebsoft.shop.service.UserRefereeService; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.transaction.annotation.Transactional; -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.servlet.http.HttpServletRequest; -import java.util.HashMap; -import java.util.List; -import java.util.stream.Collectors; - -import static com.gxwebsoft.common.core.constants.OrderConstants.*; -import static com.gxwebsoft.shop.constants.OrderConstants.ORDER_GOODS_DELIVERY_STATUS20; - -/** - * 云报餐机器接口 - * - * @author 科技小王子 - * @since 2023-04-24 19:25:59 - */ -@Api(tags = "云报餐机器接口") -@RestController -@RequestMapping("/hxz/v1") -public class OpenBcController extends BaseController { - @Resource - private BcUtil bcUtil; - @Resource - private OrderService orderService; - @Resource - private UserService userService; - @Resource - private OrderGoodsService orderGoodsService; - @Resource - private UserRefereeService userRefereeService; - @Resource - private BcEquipmentService bcEquipmentService; - - @ApiOperation("获取服务器时间接口") - @PostMapping("/ServerTime") - public HashMap ServerTime(HttpServletRequest request) { - final String deviceId = request.getHeader("Device-ID"); // 设备ID - final String now = DateUtil.format(DateUtil.date(), "yyyyMMddHHmmss") + (DateUtil.thisDayOfWeek() - 1); // 服务器时间 - System.out.println(deviceId + "获取服务器时间接口 = " + now); - HashMap map = new HashMap<>(); - map.put("Status",1); - map.put("Msg","服务器时间"); - map.put("Time", now); - return map; - } - - @ApiOperation("付款码(二维码)支付接口") - @PostMapping("/QRCodeTransaction") - public HashMap QRCodeTransaction(@RequestBody String QR, HttpServletRequest request) { - // 1.提取订单号ID - final String deviceId = request.getHeader("Device-ID"); // 设备ID - final JSONObject jsonObject = JSONObject.parseObject(QR); - final String orderNo = jsonObject.getString("QR"); - - System.out.println("deviceId = " + deviceId); - System.out.println("QR = " + QR); - - // 2.查询订单数据 - - // 3.查询该餐段的菜品 - - // 4.核销菜品 - - // 5.通知设备 - HashMap map = new HashMap<>(); - map.put("Status",1); - map.put("Msg","支付成功"); - map.put("Qrorder", orderNo); - - return map; - } - - @ApiOperation("二维码支付结果查询接口") - @PostMapping("/TransactionInquiry") - @Transactional(rollbackFor = {Exception.class}) - public HashMap TransactionInquiry(@RequestBody String QROrder, HttpServletRequest request) { - // 1. 提取订单号 - final JSONObject jsonObject = JSONObject.parseObject(QROrder); - final String orderNo = jsonObject.getString("QROrder"); - StringBuilder foods = new StringBuilder(); // 消费机回显信息 - String DeviceID = request.getHeader("Device-ID"); // 设备ID - - final BcEquipmentParam bcEquipmentParam = new BcEquipmentParam(); - bcEquipmentParam.setEquipmentCode(DeviceID); - final List bcEquipments = bcEquipmentService.listRel(bcEquipmentParam); - final BcEquipment bcEquipment = bcEquipments.get(0); - final Integer gear = bcEquipment.getGear(); // 设备所属档口 - final Integer categoryId = bcUtil.getCurrentPeriod(bcEquipment.getTenantId()); // 餐段 -// int categoryId = 26; - - // 打印测试 - System.out.println("查询支付结果(订单号:)******** = " + orderNo); - System.out.println("bcEquipment = " + bcEquipment); - System.out.println("gear = " + gear); - System.out.println("StrUtil.isNumeric(orderNo) = " + StrUtil.isNumeric(orderNo)); - - // 2.非代取餐模式 - if (!orderNo.startsWith("dqc:")) { - System.out.println("非代取餐模式 = "); - // 4.排除其他情况 - if(!StrUtil.isNumeric(orderNo)){ - foods.append("非取餐码"); - }else{ - OrderParam orderParam = new OrderParam(); - orderParam.setOrderNo(orderNo); - List list = orderService.listRel(orderParam); - Order order = list.get(0); - System.out.println("order-one = " + order); - OrderGoodsParam orderGoodsParam = new OrderGoodsParam(); - // 2.1查询订单商品 - List orderGoods = orderGoodsService.list(new LambdaQueryWrapper() - .eq(OrderGoods::getOrderId, order.getOrderId()) - .eq(OrderGoods::getDeliveryStatus,RECEIPT_STATUS_NO) - .eq(OrderGoods::getCategoryId,categoryId) - .eq(OrderGoods::getGear,gear) - ); - // 2.2查询用户信息 - User user = userService.getById(order.getUserId()); - // 2.收集菜品信息 - foods.append("姓名:").append(order.getNickname()).append("\r\n"); - foods.append("签到:").append(DateUtil.format(DateUtil.date(),"MM-dd HH:mm")).append("\r\n"); - for (OrderGoods item : orderGoods) { - // 过滤份数totalNum=0的菜品 - if (!item.getTotalNum().equals(0)) { - foods.append(item.getGoodsName()).append(" ").append(item.getTotalNum()).append("份").append(" ¥").append(item.getTotalPrice()).append("\r\n"); - OrderGoods food = new OrderGoods(); - food.setOrderGoodsId(item.getOrderGoodsId()); - food.setDeliveryStatus(ORDER_GOODS_DELIVERY_STATUS20); - orderGoodsService.updateById(food); - // 更新订单部分发布状态 - final Order order1 = new Order(); - order1.setOrderId(item.getOrderId()); - if(categoryId == 27){ - order1.setDeliveryStatus(DELIVERY_STATUS_YES); - }else{ - order1.setDeliveryStatus(DELIVERY_STATUS_30); - } - orderService.updateById(order1); - } - } - if(orderGoods.size() == 0){ - foods.append("没有取餐数据"); - } - } - } - - // 3.代取餐模式 - if(orderNo.startsWith("dqc:")){ - System.out.println("代取餐模式 = "); - final String dealerId = StrUtil.removePrefix(orderNo, "dqc:"); - System.out.println("dealerId = " + dealerId); - UserRefereeParam userRefereeParam = new UserRefereeParam(); - userRefereeParam.setDealerId(Integer.valueOf(dealerId)); - userRefereeParam.setDeleted(0); - List userRefereeList = userRefereeService.listRel(userRefereeParam); - System.out.println("userRefereeList = " + userRefereeList); - // 查询帮代餐的成员ID集 - List userIds = userRefereeList.stream().map(UserReferee::getUserId).collect(Collectors.toList()); - System.out.println("userIds = " + userIds); - // 查询成员的订单 - List list = orderService.list(new LambdaQueryWrapper() - .in(Order::getUserId, userIds) - .eq(Order::getDeliveryTime, DateUtil.parse(DateUtil.today())) - .eq(Order::getPayStatus, PAY_STATUS_SUCCESS) - .eq(Order::getDeliveryStatus, RECEIPT_STATUS_NO) - .eq(Order::getDeleted, 0) - ); - System.out.println("orderList = " + list); - if(list.size() > 0){ - // 收集订单ID集 - List orderIds = list.stream().map(Order::getOrderId).collect(Collectors.toList()); - System.out.println("orderIds = " + orderIds); - // 查询商品 - if(orderIds.size() > 0){ - List orderGoodsList = orderGoodsService.list(new LambdaQueryWrapper() - .in(OrderGoods::getOrderId, orderIds) - .eq(OrderGoods::getDeliveryStatus,RECEIPT_STATUS_NO) - .eq(OrderGoods::getCategoryId,categoryId) - .eq(OrderGoods::getGear,gear) - ); - System.out.println("orderGoodsList = " + orderGoodsList); - // 查询用户信息 - User dealer = userService.getById(dealerId); - System.out.println("dealer = " + dealer); - foods.append("代取:").append(dealer.getNickname()).append("\r\n"); - foods.append("签到:").append(DateUtil.format(DateUtil.date(),"MM-dd HH:mm")).append("\r\n"); - // 批量核销操作 - for (OrderGoods og : orderGoodsList) { - System.out.println("是否已取餐 = " + og.getGoodsName() + og.getDeliveryStatus()); - System.out.println("og = " + og.getOrderGoodsId()); - // 过滤份数totalNum=0的菜品 - if (!og.getTotalNum().equals(0)) { - foods.append(og.getGoodsName()).append(" ").append(og.getTotalNum()).append("份").append(" ¥").append(og.getTotalPrice()).append("\r\n"); - OrderGoods saveModel = orderGoodsService.getById(og.getOrderGoodsId()); - saveModel.setDeliveryStatus(ORDER_GOODS_DELIVERY_STATUS20); - orderGoodsService.updateById(saveModel); - // 更新订单部分发货状态 - Order order2 = new Order(); - order2.setOrderId(og.getOrderId()); - if(categoryId == 27){ - order2.setDeliveryStatus(DELIVERY_STATUS_YES); - }else{ - order2.setDeliveryStatus(DELIVERY_STATUS_30); - } - orderService.updateById(order2); - } - } - } - }else{ - foods.append("没有取餐数据"); - } - } - - // 5.通知设备 - HashMap map = new HashMap<>(); - map.put("Status", 1); - map.put("Msg",""); - map.put("Name", ""); - map.put("CardNo", ""); - map.put("Money", ""); - map.put("Subsidy", ""); - map.put("Times", ""); - map.put("Integral", ""); - map.put("InTime", ""); - map.put("OutTime", ""); - map.put("CumulativeTime ", ""); - map.put("Amount","0.00"); - map.put("VoiceID",null); - map.put("Text", foods); - - // 5.通知设备 - System.out.println("通知设备 = " + map); - return map; - } - - @ApiOperation("终端查询日统计接口") - @PostMapping("/Counts") - public HashMap Counts(HttpServletRequest request) { - - final String deviceId = request.getHeader("Device-ID"); - System.out.println("deviceId = " + deviceId); - final Integer categoryId = bcUtil.getCurrentPeriod(10048); - System.out.println("categoryId = " + categoryId); - - HashMap map = new HashMap<>(); - map.put("Status",1); - map.put("Msg","终端查询日统计接口"); - map.put("Text", "" + - "日统计\n" + - "日总金额:0.00\n" + - "日总次数:0\n" + - "时段统计\n" + - "一时段金额:0.00\n" + - "一时段次数:0" + - ""); - - // 发送消息测试 - bcUtil.send("您的申请已通过"); - return map; - } - - - -}