package com.stylefeng.guns.modular.system.controller.general;
|
|
import cn.hutool.core.date.DateUnit;
|
import cn.hutool.core.date.DateUtil;
|
import com.baomidou.mybatisplus.mapper.EntityWrapper;
|
import com.stylefeng.guns.core.base.controller.BaseController;
|
import com.stylefeng.guns.core.log.LogObjectHolder;
|
import com.stylefeng.guns.modular.system.controller.resp.TAppUserDetailOrderResp;
|
import com.stylefeng.guns.modular.system.model.TOrder;
|
import com.stylefeng.guns.modular.system.service.ITOrderService;
|
import io.swagger.annotations.ApiOperation;
|
import org.springframework.beans.BeanUtils;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Controller;
|
import org.springframework.ui.Model;
|
import org.springframework.web.bind.annotation.PathVariable;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestParam;
|
import org.springframework.web.bind.annotation.ResponseBody;
|
|
import java.util.ArrayList;
|
import java.util.List;
|
import java.util.Objects;
|
|
/**
|
* 控制器
|
*
|
* @author fengshuonan
|
* @Date 2023-02-15 11:57:13
|
*/
|
@Controller
|
@RequestMapping("/tOrder")
|
public class TOrderController extends BaseController {
|
|
private String PREFIX = "/system/tOrder/";
|
|
@Autowired
|
private ITOrderService tOrderService;
|
|
/**
|
* 跳转到首页
|
*/
|
@RequestMapping("")
|
public String index() {
|
return PREFIX + "tOrder.html";
|
}
|
|
/**
|
* 跳转到添加
|
*/
|
@RequestMapping("/tOrder_add")
|
public String tOrderAdd() {
|
return PREFIX + "tOrder_add.html";
|
}
|
|
/**
|
* 跳转到修改
|
*/
|
@RequestMapping("/tOrder_update/{tOrderId}")
|
public String tOrderUpdate(@PathVariable Integer tOrderId, Model model) {
|
TOrder tOrder = tOrderService.selectById(tOrderId);
|
model.addAttribute("item",tOrder);
|
LogObjectHolder.me().set(tOrder);
|
return PREFIX + "tOrder_edit.html";
|
}
|
|
/**
|
* 获取列表
|
*/
|
@ApiOperation(value = "获取订单列表")
|
@RequestMapping(value = "/list")
|
@ResponseBody
|
public Object list(String condition,Integer userId) {
|
EntityWrapper<TOrder> wrapper = new EntityWrapper<>();
|
if(Objects.nonNull(userId)){
|
wrapper.eq("user_id",userId);
|
}
|
return tOrderService.selectList(wrapper);
|
}
|
|
/**
|
* 获取列表
|
*/
|
@ApiOperation(value = "获取用户详情里的订单列表")
|
@RequestMapping(value = "/appUserDetailList")
|
@ResponseBody
|
public Object appUserDetailList(String condition,Integer userId) {
|
List<TAppUserDetailOrderResp> list = new ArrayList<>();
|
|
|
EntityWrapper<TOrder> wrapper = new EntityWrapper<>();
|
if(Objects.nonNull(userId)){
|
wrapper.eq("user_id",userId);
|
}
|
List<TOrder> tOrders = tOrderService.selectList(wrapper);
|
for (TOrder tOrder : tOrders) {
|
TAppUserDetailOrderResp tAppUserDetailOrderResp = new TAppUserDetailOrderResp();
|
BeanUtils.copyProperties(tOrder,tAppUserDetailOrderResp);
|
|
// 计算总里程
|
|
|
// 计算总时长
|
long travelTimeSum = DateUtil.between(tAppUserDetailOrderResp.getBoardingTime(), tAppUserDetailOrderResp.getGetoffTime(), DateUnit.MINUTE);
|
tAppUserDetailOrderResp.setTravelTimeSum(Integer.valueOf(Long.toString(travelTimeSum)));
|
|
list.add(tAppUserDetailOrderResp);
|
}
|
return list;
|
}
|
|
|
/**
|
* 获取列表
|
*/
|
@RequestMapping(value = "/list-back")
|
@ResponseBody
|
public Object listBack(String condition) {
|
return tOrderService.selectList(null);
|
}
|
|
/**
|
* 新增
|
*/
|
@RequestMapping(value = "/add")
|
@ResponseBody
|
public Object add(TOrder tOrder) {
|
tOrderService.insert(tOrder);
|
return SUCCESS_TIP;
|
}
|
|
/**
|
* 删除
|
*/
|
@RequestMapping(value = "/delete")
|
@ResponseBody
|
public Object delete(@RequestParam Integer tOrderId) {
|
tOrderService.deleteById(tOrderId);
|
return SUCCESS_TIP;
|
}
|
|
/**
|
* 修改
|
*/
|
@RequestMapping(value = "/update")
|
@ResponseBody
|
public Object update(TOrder tOrder) {
|
tOrderService.updateById(tOrder);
|
return SUCCESS_TIP;
|
}
|
|
/**
|
* 详情
|
*/
|
@RequestMapping(value = "/detail/{tOrderId}")
|
@ResponseBody
|
public Object detail(@PathVariable("tOrderId") Integer tOrderId) {
|
return tOrderService.selectById(tOrderId);
|
}
|
}
|