猫妈狗爸伴宠师小程序后端代码
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

164 lines
5.9 KiB

package com.ruoyi.applet.contoller;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.model.domain.*;
import com.ruoyi.model.service.*;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
import java.time.LocalDateTime;
import java.util.List;
@Api(description = "订单模块 - 打卡记录")
@RestController
@RequestMapping("/applet/orderItemLog")
public class ApiAppletOrderItemLogController {
@Autowired
private IAppletOrderItemDateLogService appletOrderItemDateLogService;
@Autowired
private IAppletOrderService appletOrderService;
@Autowired
private IAppletOrderItemService appletOrderItemService;
@Autowired
private IAppletOrderItemDateService appletOrderItemDateService;
@Autowired
private IAppUsersService appUsersService;
@Autowired
private IAppletAmountLogService appletAmountLogService;
//增加或者修改打卡记录
@ApiOperation("增加或者修改打卡记录")
@PostMapping("/addOrUpdate")
@Transactional
public AjaxResult addOrUpdate(@RequestBody AppletOrderItemDateLog appletOrderItemDateLog)
{
if(appletOrderItemDateLog.getId()!=null){
int i = appletOrderItemDateLogService.updateAppletOrderItemDateLog(appletOrderItemDateLog);
}else{
int i = appletOrderItemDateLogService.insertAppletOrderItemDateLog(appletOrderItemDateLog);
}
if(appletOrderItemDateLog.getSubmitFlag()!= null){
//修改日订单状态
AppletOrderItemDate appletOrderItem = appletOrderItemDateService.selectAppletOrderItemDateById(appletOrderItemDateLog.getItemDateId());
if(appletOrderItem !=null){
appletOrderItem.setStatus(appletOrderItemDateLog.getSubmitFlag());
appletOrderItemDateService.updateAppletOrderItemDate(appletOrderItem);
}
//修改总订单标识
AppletOrderItem appletOrder = appletOrderItemService.selectAppletOrderItemById(appletOrderItemDateLog.getItemOrderId());
if(appletOrder !=null){
//查询该订单下的所有日订单
AppletOrderItemDate date = new AppletOrderItemDate();
date.setOrderId(appletOrder.getId());
List<AppletOrderItemDate> appletOrderItemDateList = appletOrderItemDateService.selectAppletOrderItemDateList(date);
//总日订单数量
int count = appletOrderItemDateList.size();
AppletOrderItemDate date1 = new AppletOrderItemDate();
date1.setOrderId(appletOrder.getId());
date1.setStatus(0);
List<AppletOrderItemDate> appletOrderItemDateListDate1 = appletOrderItemDateService.selectAppletOrderItemDateList(date1);
//状态为0的订单数量
int count1 = appletOrderItemDateListDate1.size();
AppletOrderItemDate date2 = new AppletOrderItemDate();
date2.setOrderId(appletOrder.getId());
date2.setStatus(1);
List<AppletOrderItemDate> appletOrderItemDateListDate2 = appletOrderItemDateService.selectAppletOrderItemDateList(date2);
//状态为1的订单数量
int count2 = appletOrderItemDateListDate2.size();
System.out.println("总日订单数量"+count);
System.out.println("状态为0的订单数量"+count1);
System.out.println("状态为1的订单数量"+count2);
//如果count = count2
if(count == count2){
//修改总订单状态
System.out.println("OrderStatus:"+2);
appletOrder.setOrderStatus(2);
appletOrderItemService.updateAppletOrderItem(appletOrder);
//根据订单中的用户id查询用户信息
AppUsers user = appUsersService.selectAppUsersByUserId(appletOrder.getUserId());
//增加伴宠师流水
// 记录日志
AppletAmountLog moneyLog = new AppletAmountLog();
moneyLog.setUserId(user.getUserId());
moneyLog.setTitle("伴宠师佣金");
moneyLog.setAmount(appletOrder.getOrderGivePrice());
moneyLog.setType(0); //收入
moneyLog.setState(1); //到账
moneyLog.setCreateTime(LocalDateTime.now());
moneyLog.setMoneyType(1);//钱包类型
int i = appletAmountLogService.insertAppletAmountLog(moneyLog);
user.setPrice(user.getPrice().add(appletOrder.getOrderGivePrice()));
appUsersService.updateAppUsers(user);
}
//如果count2 >0 并且 count1 >0
if(count2 >0 && count1 >0){
//修改总订单状态
System.out.println("OrderStatus:"+1);
appletOrder.setOrderStatus(1);
appletOrderItemService.updateAppletOrderItem(appletOrder);
}
}
}
return AjaxResult.success("打卡成功");
}
//根据订单标识查询打卡记录
@ApiOperation("根据订单标识查询打卡记录")
@GetMapping(value = "/getByOrderId/{itemDateId}")
public AjaxResult getInfo(@PathVariable("itemDateId") Long itemDateId) {
AppletOrderItemDateLog appletOrderItemDateLog = new AppletOrderItemDateLog();
appletOrderItemDateLog.setItemDateId(itemDateId);
AppletOrderItemDateLog appletOrderItemDateLog1 = appletOrderItemDateLogService.selectAppletOrderItemDateLogByItemDateId(itemDateId);
return AjaxResult.success(appletOrderItemDateLog1);
}
}