123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125 |
- package com.example.service;
- import cn.hutool.core.date.DateUtil;
- import cn.hutool.core.util.IdUtil;
- import cn.hutool.json.JSONUtil;
- import com.example.common.enums.OrderStatusDELIVERY;
- import com.example.common.enums.OrderStatusToShop;
- import com.example.common.enums.OrderType;
- import com.example.common.enums.ResultCodeEnum;
- import com.example.entity.Account;
- import com.example.entity.Orders;
- import com.example.entity.Product;
- import com.example.entity.User;
- import com.example.exception.CustomException;
- import com.example.mapper.OrdersMapper;
- import com.example.mapper.ProductMapper;
- import com.example.mapper.UserMapper;
- import com.example.utils.TokenUtils;
- import com.github.pagehelper.PageHelper;
- import com.github.pagehelper.PageInfo;
- import javax.annotation.Resource;
- import com.github.pagehelper.util.StringUtil;
- import org.springframework.stereotype.Service;
- import java.math.BigDecimal;
- import java.util.List;
- /**
- * 订单表业务处理
- **/
- @Service
- public class OrdersService {
- @Resource
- private OrdersMapper ordersMapper;
- @Resource
- private UserMapper userMapper;
- @Resource
- private ProductMapper productMapper;
- static final Integer costTime = 1200; //1200s 20分支
- public Integer getNumsWithShopId(Integer shopId){
- return ordersMapper.getUnfinishedNums(shopId);
- }
- /**
- * 小程序下单新增,点击下单
- */
- public Orders add(Orders orders) {
- // Account currentUser = TokenUtils.getCurrentUser();
- // if(currentUser== null){
- // currentUser = new User();
- // currentUser.setId(orders.getUserId());
- // }
- // User user = userMapper.selectById(currentUser.getId());
- // BigDecimal account = user.getAccount(); // 获取余额
- // BigDecimal cost = new BigDecimal(0),t_cost; //记录花费了多少钱
- //
- // // 扣除钱包余额
- // if(account.doubleValue() < cost.doubleValue()){
- // throw new CustomException(ResultCodeEnum.ACCOUNT_LIMIT_ERROR);
- // }
- // user.setAccount(account.subtract(cost));
- // userMapper.updateById(user); //更新扣费
- orders.setOrderState("待送达");
- // orders.setUserId(currentUser.getId()); // 设置用户id
- orders.setTransCode(IdUtil.getSnowflakeNextIdStr()); // 随机创建一个交易单号
- orders.setTimeOrder(DateUtil.now()); // 创建订单时间
- // 如果是外卖:这个是预计送达时间 ,如果是自提 这个是预计可取餐时间
- orders.setTimePre(String.valueOf(DateUtil.offsetSecond(DateUtil.dateSecond(),11))); //预计送达时间
- ordersMapper.insert(orders);
- Orders resOrders = ordersMapper.selectById(orders.getId());
- return resOrders;
- //this.setCache(orders.getId()); // 设置缓存 但是这里插入前是没有orders的id的应该怎么处理
- }
- /**
- * 删除
- */
- public void deleteById(Integer id) {
- ordersMapper.deleteById(id);
- }
- /**
- * 批量删除
- */
- public void deleteBatch(List<Integer> ids) {
- for (Integer id : ids) {
- ordersMapper.deleteById(id);
- }
- }
- /**
- * 修改
- */
- public void updateById(Orders orders) {
- ordersMapper.updateById(orders);
- }
- /**
- * 根据ID查询
- */
- public Orders selectById(Integer id) {
- return ordersMapper.selectById(id);
- }
- /**
- * 查询所有
- */
- public List<Orders> selectAll(Orders orders) {
- return ordersMapper.selectAll(orders);
- }
- /**
- * 分页查询
- */
- public PageInfo<Orders> selectPage(Orders orders, Integer pageNum, Integer pageSize) {
- PageHelper.startPage(pageNum, pageSize);
- List<Orders> list = ordersMapper.selectAll(orders);
- return PageInfo.of(list);
- }
- }
|