package com.ruoyi.tms.controller;
|
|
import java.io.IOException;
|
import java.util.Arrays;
|
import java.util.List;
|
|
import com.ruoyi.common.core.domain.entity.SysUser;
|
import com.ruoyi.tms.domain.TmsDriverDispatch;
|
import com.ruoyi.tms.domain.vo.TmsDispatchOrderImport;
|
import com.ruoyi.tms.domain.vo.YpdddjDispatchOrderVo;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.PostMapping;
|
import org.springframework.web.bind.annotation.PutMapping;
|
import org.springframework.web.bind.annotation.DeleteMapping;
|
import org.springframework.web.bind.annotation.PathVariable;
|
import org.springframework.web.bind.annotation.RequestBody;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RestController;
|
import com.ruoyi.common.utils.file.DownloadExportUtil;
|
import com.ruoyi.common.annotation.Log;
|
import com.ruoyi.common.core.controller.BaseController;
|
import com.ruoyi.common.core.domain.AjaxResult;
|
import com.ruoyi.common.enums.BusinessType;
|
import com.ruoyi.tms.domain.TmsDispatchOrder;
|
import com.ruoyi.tms.service.ITmsDispatchOrderService;
|
import com.ruoyi.common.utils.poi.ExcelUtil;
|
import com.ruoyi.common.core.page.TableDataInfo;
|
import org.springframework.web.multipart.MultipartFile;
|
|
/**
|
* 调度单管理Controller
|
*
|
* @author ruoyi
|
* @date 2025-11-04
|
*/
|
@RestController
|
@RequestMapping("/tms/tmsDispatchOrder")
|
public class TmsDispatchOrderController extends BaseController
|
{
|
@Autowired
|
private ITmsDispatchOrderService tmsDispatchOrderService;
|
|
|
|
/**
|
* 查询调度单管理列表
|
*/
|
@PreAuthorize("@ss.hasPermi('tms:tmsDispatchOrder:list')")
|
@GetMapping("/list")
|
public TableDataInfo list(TmsDispatchOrder tmsDispatchOrder)
|
{
|
startPage();
|
List<TmsDispatchOrder> list = tmsDispatchOrderService.selectTmsDispatchOrderList(tmsDispatchOrder);
|
return getDataTable(list);
|
}
|
@PreAuthorize("@ss.hasPermi('tms:tmsDispatchOrder:list')")
|
@GetMapping("/costList")
|
public TableDataInfo costList(TmsDispatchOrder tmsDispatchOrder)
|
{
|
startPage();
|
if (tmsDispatchOrder.getInStatusList() == null || tmsDispatchOrder.getInStatusList().isEmpty()){
|
tmsDispatchOrder.setInStatusList(Arrays.asList(2,3,4,6,7,8,9));
|
}
|
List<TmsDispatchOrder> list = tmsDispatchOrderService.selectTmsDispatchOrderList(tmsDispatchOrder);
|
return getDataTable(list);
|
}
|
|
/**
|
* 导出调度单管理列表
|
* @param tmsDispatchOrder 查询条件对象
|
*/
|
@PreAuthorize("@ss.hasPermi('tms:tmsDispatchOrder:export')")
|
@Log(title = "调度单管理", businessType = BusinessType.EXPORT)
|
@GetMapping("/export")
|
public AjaxResult export(TmsDispatchOrder tmsDispatchOrder,String exportKey)
|
{
|
tmsDispatchOrderService.export(tmsDispatchOrder,exportKey);
|
return AjaxResult.success("导出请求成功,请稍后点击下载...!");
|
}
|
|
|
@GetMapping("/importTemplate")
|
public AjaxResult importTemplate(String exportKey)
|
{
|
tmsDispatchOrderService.importTemplate(exportKey);
|
return AjaxResult.success("导出请求成功,请稍后点击下载...!");
|
|
}
|
@Log(title = "调度单管理", businessType = BusinessType.IMPORT)
|
@PreAuthorize("@ss.hasPermi('tms:tmsDispatchOrder:import')")
|
@PostMapping("/importData")
|
public AjaxResult importData(MultipartFile file) throws Exception {
|
ExcelUtil<TmsDispatchOrderImport> util = new ExcelUtil<TmsDispatchOrderImport>(TmsDispatchOrderImport.class);
|
List<TmsDispatchOrderImport> list = util.importExcel(file.getInputStream());
|
String message = tmsDispatchOrderService.importData(list);
|
return success(message);
|
|
}
|
/**
|
* 获取调度单管理详细信息
|
*/
|
@PreAuthorize("@ss.hasPermi('tms:tmsDispatchOrder:query')")
|
@GetMapping(value = "/{id}")
|
public AjaxResult getInfo(@PathVariable("id") Integer id)
|
{
|
return AjaxResult.success(tmsDispatchOrderService.selectTmsDispatchOrderById(id));
|
}
|
|
@PreAuthorize("@ss.hasPermi('tms:tmsDispatchOrder:confirmOrder')")
|
@GetMapping(value = "/confirmOrder/{id}")
|
public AjaxResult confirmOrder(@PathVariable("id") Integer id)
|
{
|
return tmsDispatchOrderService.confirmOrder(id);
|
}
|
@PreAuthorize("@ss.hasPermi('tms:tmsDispatchOrder:copyOrder')")
|
@GetMapping(value = "/copyOrder/{id}")
|
public AjaxResult copyOrder(@PathVariable("id") Integer id)
|
{
|
return tmsDispatchOrderService.copyOrder(id);
|
}
|
@PreAuthorize("@ss.hasPermi('tms:tmsDispatchOrder:okOrder')")
|
@GetMapping(value = "/okOrder/{id}")
|
public AjaxResult okOrder(@PathVariable("id") Integer id)
|
{
|
return tmsDispatchOrderService.okOrder(id);
|
}
|
|
@PreAuthorize("@ss.hasPermi('tms:tmsDispatchOrder:dropHook')")
|
@GetMapping(value = "/dropHook/{id}")
|
public AjaxResult dropHook(@PathVariable("id") Integer id)
|
{
|
return tmsDispatchOrderService.dropHook(id);
|
}
|
@PreAuthorize("@ss.hasPermi('tms:tmsDispatchOrder:close')")
|
@GetMapping(value = "/checkCloseOrder/{id}")
|
public AjaxResult checkCloseOrder(@PathVariable("id") Integer id)
|
{
|
return tmsDispatchOrderService.close(id);
|
}
|
|
@PreAuthorize("@ss.hasPermi('tms:tmsDispatchOrder:connectHang')")
|
@PostMapping(value = "/connectHang")
|
public AjaxResult connectHang(@RequestBody TmsDriverDispatch driverDispatch)
|
{
|
return tmsDispatchOrderService.connectHang(driverDispatch);
|
}
|
@PreAuthorize("@ss.hasPermi('tms:tmsDispatchOrder:close')")
|
@PostMapping(value = "/closeOrder")
|
public AjaxResult closeOrder(@RequestBody TmsDispatchOrder order)
|
{
|
return tmsDispatchOrderService.closeOrder(order);
|
}
|
|
@PreAuthorize("@ss.hasPermi('tms:tmsDispatchOrder:customsOrder')")
|
@PostMapping(value = "/customsOrder")
|
public AjaxResult customsOrder(@RequestBody List<TmsDispatchOrder> tmsDispatchOrders)
|
{
|
return toAjax(tmsDispatchOrderService.customsOrder(tmsDispatchOrders));
|
}
|
@PreAuthorize("@ss.hasPermi('tms:tmsDispatchOrder:loadingOrder')")
|
@PostMapping(value = "/loadingOrder")
|
public AjaxResult loadingOrder(@RequestBody List<TmsDispatchOrder> tmsDispatchOrders)
|
{
|
return toAjax(tmsDispatchOrderService.loadingOrder(tmsDispatchOrders));
|
}
|
|
/**
|
* 新增调度单管理
|
*/
|
@PreAuthorize("@ss.hasPermi('tms:tmsDispatchOrder:add')")
|
@Log(title = "调度单管理", businessType = BusinessType.INSERT)
|
@PostMapping
|
public AjaxResult add(@RequestBody TmsDispatchOrder tmsDispatchOrder)
|
{
|
return toAjax(tmsDispatchOrderService.insertTmsDispatchOrder(tmsDispatchOrder));
|
}
|
|
/**
|
* 修改调度单管理
|
*/
|
@PreAuthorize("@ss.hasPermi('tms:tmsDispatchOrder:edit')")
|
@Log(title = "调度单管理", businessType = BusinessType.UPDATE)
|
@PutMapping
|
public AjaxResult edit(@RequestBody TmsDispatchOrder tmsDispatchOrder)
|
{
|
return toAjax(tmsDispatchOrderService.updateTmsDispatchOrder(tmsDispatchOrder));
|
}
|
/**
|
* 填写实际运输记录
|
*/
|
@PreAuthorize("@ss.hasPermi('tms:tmsDispatchOrder:edit')")
|
@Log(title = "填写实际运输记录", businessType = BusinessType.UPDATE)
|
@PutMapping("/record")
|
public AjaxResult record(@RequestBody TmsDispatchOrder tmsDispatchOrder)
|
{
|
return toAjax(tmsDispatchOrderService.updateTmsDispatchOrder(tmsDispatchOrder));
|
}
|
|
@PreAuthorize("@ss.hasPermi('tms:tmsDispatchOrder:edit')")
|
@Log(title = "调度单管理", businessType = BusinessType.UPDATE)
|
@PutMapping("/ypdddj")
|
public AjaxResult ypdddj(@RequestBody YpdddjDispatchOrderVo dispatchOrderVo)
|
{
|
return toAjax(tmsDispatchOrderService.updateTmsDispatchOrder(dispatchOrderVo));
|
}
|
|
@PreAuthorize("@ss.hasPermi('tms:tmsDispatchOrder:edit')")
|
@Log(title = "调度单打印", businessType = BusinessType.UPDATE)
|
@PostMapping("printDispatchOrder")
|
public AjaxResult printDispatchOrder(@RequestBody TmsDispatchOrder tmsDispatchOrder)
|
{
|
return toAjax(tmsDispatchOrderService.printDispatchOrder(tmsDispatchOrder));
|
}
|
|
/**
|
* 删除调度单管理
|
*/
|
@PreAuthorize("@ss.hasPermi('tms:tmsDispatchOrder:remove')")
|
@Log(title = "调度单管理", businessType = BusinessType.DELETE)
|
@DeleteMapping("/{ids}")
|
public AjaxResult remove(@PathVariable Integer[] ids)
|
{
|
return toAjax(tmsDispatchOrderService.deleteTmsDispatchOrderByIds(ids));
|
}
|
@PreAuthorize("@ss.hasPermi('tms:tmsDispatchOrder:generate')")
|
@Log(title = "调度单管理", businessType = BusinessType.OTHER)
|
@GetMapping("/initGenerate/{ids}")
|
public AjaxResult initGenerate(@PathVariable Integer[] ids)
|
{
|
return AjaxResult.success(tmsDispatchOrderService.initGenerate(Arrays.asList(ids)));
|
}
|
|
@PreAuthorize("@ss.hasPermi('tms:tmsDispatchOrder:generate')")
|
@Log(title = "调度单管理", businessType = BusinessType.OTHER)
|
@GetMapping("/initYSGenerate/{ids}")
|
public AjaxResult initYSGenerate(@PathVariable Integer[] ids)
|
{
|
return AjaxResult.success(tmsDispatchOrderService.initYSGenerate(Arrays.asList(ids)));
|
}
|
|
@PreAuthorize("@ss.hasPermi('tms:tmsDispatchOrder:generate')")
|
@Log(title = "调度单管理", businessType = BusinessType.OTHER)
|
@GetMapping("/initYFGenerate/{ids}")
|
public AjaxResult initYFGenerate(@PathVariable Integer[] ids)
|
{
|
return AjaxResult.success(tmsDispatchOrderService.initYFGenerate(Arrays.asList(ids)));
|
}
|
@GetMapping("/generateTmsDispatchOrder/{ids}")
|
public AjaxResult generateTmsDispatchOrder(@PathVariable Integer[] ids){
|
return tmsDispatchOrderService.generateTmsDispatchOrder(Arrays.asList(ids));
|
}
|
@Log(title = "生成应收账单", businessType = BusinessType.OTHER)
|
@GetMapping("/ysGenerateTmsDispatchOrder/{ids}")
|
public AjaxResult ysGenerateTmsDispatchOrder(@PathVariable Integer[] ids){
|
return tmsDispatchOrderService.ysGenerateTmsDispatchOrder(Arrays.asList(ids));
|
}
|
@Log(title = "生成应付账单", businessType = BusinessType.OTHER)
|
@GetMapping("/yfGenerateTmsDispatchOrder/{ids}")
|
public AjaxResult yfGenerateTmsDispatchOrder(@PathVariable Integer[] ids){
|
return tmsDispatchOrderService.yfGenerateTmsDispatchOrder(Arrays.asList(ids));
|
}
|
|
@GetMapping("/getServiceProvider/{orderId}")
|
public AjaxResult getServiceProvider(@PathVariable Integer orderId){
|
return tmsDispatchOrderService.getServiceProvider(orderId);
|
}
|
|
/**
|
* 根据司机名称查询上一次驾驶的车牌号
|
*/
|
@PreAuthorize("@ss.hasPermi('tms:tmsDispatchOrder:query')")
|
@GetMapping("/getLastLicensePlate/{driverName}")
|
public AjaxResult getLastLicensePlate(@PathVariable String driverName){
|
TmsDispatchOrder tmsDispatchOrder= tmsDispatchOrderService.getLastLicensePlateByDriverName(driverName);
|
return AjaxResult.success(tmsDispatchOrder);
|
}
|
|
|
}
|