From fd78b45fbaa37cf845b0da6ecd986e39c347ce5d Mon Sep 17 00:00:00 2001 From: wujianwei <wjw@11.com> Date: 星期二, 29 七月 2025 11:36:05 +0800 Subject: [PATCH] 新增调度单后端 --- service/src/main/java/com/ruoyi/cwgl/domain/DispatchOrder.java | 201 +++++++++++ service/src/main/java/com/ruoyi/cwgl/service/IDispatchOrderService.java | 102 ++++++ service/src/main/java/com/ruoyi/cwgl/service/impl/DispatchOrderServiceImpl.java | 182 ++++++++++ service/src/main/resources/mapper/cwgl/DispatchOrderMapper.xml | 242 ++++++++++++++ service/src/main/java/com/ruoyi/cwgl/mapper/DispatchOrderMapper.java | 87 +++++ service/src/main/java/com/ruoyi/cwgl/controller/DispatchOrderController.java | 108 ++++++ pom.xml | 1 service/pom.xml | 47 ++ 8 files changed, 970 insertions(+), 0 deletions(-) diff --git a/pom.xml b/pom.xml index 7fed988..de12611 100644 --- a/pom.xml +++ b/pom.xml @@ -17,6 +17,7 @@ <module>system</module> <module>quartz</module> <module>common</module> + <module>service</module> </modules> <packaging>pom</packaging> diff --git a/service/pom.xml b/service/pom.xml new file mode 100644 index 0000000..4902321 --- /dev/null +++ b/service/pom.xml @@ -0,0 +1,47 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + <parent> + <artifactId>manage</artifactId> + <groupId>com.ruoyi</groupId> + <version>master</version> + </parent> + <modelVersion>4.0.0</modelVersion> + + <groupId>com.cwgl</groupId> + <artifactId>service</artifactId> + + <properties> + <maven.compiler.source>8</maven.compiler.source> + <maven.compiler.target>8</maven.compiler.target> + </properties> + <dependencies> + + + <!-- 閫氱敤宸ュ叿--> + <dependency> + <groupId>com.ruoyi</groupId> + <artifactId>common</artifactId> + <version>${project.version}</version> + </dependency> + + <!--鎸佷箙鍖栧眰妯″潡--> + <dependency> + <groupId>com.ruoyi</groupId> + <artifactId>core</artifactId> + <version>${ruoyi.version}</version> + </dependency> + <!--鎸佷箙鍖栧眰妯″潡--> + <dependency> + <groupId>com.ruoyi</groupId> + <artifactId>framework</artifactId> + <version>${ruoyi.version}</version> + </dependency> + <dependency> + <groupId>org.projectlombok</groupId> + <artifactId>lombok</artifactId> + <scope>provided</scope> + </dependency> + </dependencies> +</project> \ No newline at end of file diff --git a/service/src/main/java/com/ruoyi/cwgl/controller/DispatchOrderController.java b/service/src/main/java/com/ruoyi/cwgl/controller/DispatchOrderController.java new file mode 100644 index 0000000..d13f333 --- /dev/null +++ b/service/src/main/java/com/ruoyi/cwgl/controller/DispatchOrderController.java @@ -0,0 +1,108 @@ +package com.ruoyi.cwgl.controller; + +import java.util.List; +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.cwgl.domain.DispatchOrder; +import com.ruoyi.cwgl.service.IDispatchOrderService; +import com.ruoyi.common.utils.poi.ExcelUtil; +import com.ruoyi.common.core.page.TableDataInfo; + +/** + * 璋冨害鍗旵ontroller + * + * @author ruoyi + * @date 2025-07-29 + */ +@RestController +@RequestMapping("/cwgl/dispatchOrder") +public class DispatchOrderController extends BaseController +{ + @Autowired + private IDispatchOrderService dispatchOrderService; + + + + /** + * 鏌ヨ璋冨害鍗曞垪琛� + */ + @PreAuthorize("@ss.hasPermi('cwgl:dispatchOrder:list')") + @GetMapping("/list") + public TableDataInfo list(DispatchOrder dispatchOrder) + { + startPage(); + List<DispatchOrder> list = dispatchOrderService.selectDispatchOrderList(dispatchOrder); + return getDataTable(list); + } + + /** + * 瀵煎嚭璋冨害鍗曞垪琛� + * @param dispatchOrder 鏌ヨ鏉′欢瀵硅薄 + */ + @PreAuthorize("@ss.hasPermi('cwgl:dispatchOrder:export')") + @Log(title = "璋冨害鍗�", businessType = BusinessType.EXPORT) + @GetMapping("/export") + public AjaxResult export(DispatchOrder dispatchOrder,String exportKey) + { + dispatchOrderService.export(dispatchOrder,exportKey); + return AjaxResult.success("瀵煎嚭璇锋眰鎴愬姛锛岃绋嶅悗鐐瑰嚮涓嬭浇...!"); + } + + + + /** + * 鑾峰彇璋冨害鍗曡缁嗕俊鎭� + */ + @PreAuthorize("@ss.hasPermi('cwgl:dispatchOrder:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Integer id) + { + return AjaxResult.success(dispatchOrderService.selectDispatchOrderById(id)); + } + + /** + * 鏂板璋冨害鍗� + */ + @PreAuthorize("@ss.hasPermi('cwgl:dispatchOrder:add')") + @Log(title = "璋冨害鍗�", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody DispatchOrder dispatchOrder) + { + return toAjax(dispatchOrderService.insertDispatchOrder(dispatchOrder)); + } + + /** + * 淇敼璋冨害鍗� + */ + @PreAuthorize("@ss.hasPermi('cwgl:dispatchOrder:edit')") + @Log(title = "璋冨害鍗�", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody DispatchOrder dispatchOrder) + { + return toAjax(dispatchOrderService.updateDispatchOrder(dispatchOrder)); + } + + /** + * 鍒犻櫎璋冨害鍗� + */ + @PreAuthorize("@ss.hasPermi('cwgl:dispatchOrder:remove')") + @Log(title = "璋冨害鍗�", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Integer[] ids) + { + return toAjax(dispatchOrderService.deleteDispatchOrderByIds(ids)); + } +} diff --git a/service/src/main/java/com/ruoyi/cwgl/domain/DispatchOrder.java b/service/src/main/java/com/ruoyi/cwgl/domain/DispatchOrder.java new file mode 100644 index 0000000..3613070 --- /dev/null +++ b/service/src/main/java/com/ruoyi/cwgl/domain/DispatchOrder.java @@ -0,0 +1,201 @@ +package com.ruoyi.cwgl.domain; + +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.ruoyi.common.annotation.Excel; +import com.baomidou.mybatisplus.annotation.TableField; +import java.util.Date; +import lombok.Data; +/** + * 璋冨害鍗曞璞� dispatch_order + * + * @author ruoyi + * @date 2025-07-29 + */ +@Data +public class DispatchOrder{ + + + /** ID */ + @TableField("id") + private Integer id; + + + /** 璋冨害鍗曞彿 */ + @Excel(name = "璋冨害鍗曞彿") + + @TableField("dispatch_no") + private String dispatchNo; + + + /** 杩愯緭鏂瑰紡 */ + @Excel(name = "杩愯緭鏂瑰紡") + + @TableField("transport_mode") + private String transportMode; + + + /** 鏈嶅姟浜у搧鍚嶇О */ + @Excel(name = "鏈嶅姟浜у搧鍚嶇О") + + @TableField("product_name") + private String productName; + + + /** 鎵胯繍鍟� */ + @Excel(name = "鎵胯繍鍟�") + + @TableField("carrier_name") + private String carrierName; + + + /** 鍑哄彂鍦板悕绉� */ + @Excel(name = "鍑哄彂鍦板悕绉�") + + @TableField("departure_location_name") + private String departureLocationName; + + + /** 鐩殑鍦板悕绉� */ + @Excel(name = "鐩殑鍦板悕绉�") + + @TableField("arrival_location_name") + private String arrivalLocationName; + + + /** 杞︾墝 */ + @Excel(name = "杞︾墝") + + @TableField("license_plate_number") + private String licensePlateNumber; + + + /** 杞︽澘鍙� */ + @Excel(name = "杞︽澘鍙�") + + @TableField("vehicle_plate_id") + private String vehiclePlateId; + + + /** 涓婚┚椹跺憳 */ + @Excel(name = "涓婚┚椹跺憳") + + @TableField("main_driver_name") + private String mainDriverName; + + + /** 鍓┚椹跺憳 */ + @Excel(name = "鍓┚椹跺憳") + + @TableField("assistant_driver_name") + private String assistantDriverName; + + + /** 鎻愰�佽揣鐐规暟 */ + @Excel(name = "鎻愰�佽揣鐐规暟") + + @TableField("point_num") + private Integer pointNum; + + + /** 浠舵暟 */ + @Excel(name = "浠舵暟") + + @TableField("quantity") + private Integer quantity; + + + /** 瀹為檯鍑哄彂鏃堕棿 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "瀹為檯鍑哄彂鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd") + @TableField("actual_departure_time") + private Date actualDepartureTime; + + + /** 瑕佹眰鍒拌揪鏃堕棿 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "瑕佹眰鍒拌揪鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd") + @TableField("required_arrival_time") + private Date requiredArrivalTime; + + + /** 瀹為檯鍒拌揪鏃堕棿 */ + @Excel(name = "瀹為檯鍒拌揪鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") + @TableField("actual_arrival_time") + private Date actualArrivalTime; + + + /** 鏄惁鍥炵▼(N,Y) */ + @Excel(name = "鏄惁鍥炵▼(N,Y)") + + @TableField("be_return") + private String beReturn; + + + /** 瀹炲彂浠舵暟 */ + @Excel(name = "瀹炲彂浠舵暟") + + @TableField("dispatch_quantity") + private Integer dispatchQuantity; + + + /** 瀹炲彂閲嶉噺锛堝崈鍏嬶級 */ + @Excel(name = "瀹炲彂閲嶉噺", readConverterExp = "鍗�=鍏�") + + @TableField("dispatch_weight") + private BigDecimal dispatchWeight; + + + /** 瀹炲彂浣撶Н(绔嬫柟锛� */ + @Excel(name = "瀹炲彂浣撶Н(绔嬫柟锛�") + + @TableField("dispatch_volume") + private BigDecimal dispatchVolume; + + + /** 鐘舵��(A-鐢熸晥,O-鎵撳紑,J-宸叉帴鍗�,K-宸插埌搴�,Z-宸茶杞�,T-鍦ㄩ��,F-宸插纾�,D-宸茶繍鎶�) */ + @Excel(name = "鐘舵��(A-鐢熸晥,O-鎵撳紑,J-宸叉帴鍗�,K-宸插埌搴�,Z-宸茶杞�,T-鍦ㄩ��,F-宸插纾�,D-宸茶繍鎶�)") + + @TableField("status") + private String status; + + + /** 澶囨敞 */ + @Excel(name = "澶囨敞") + + @TableField("remark") + private String remark; + + + /** 鍒涘缓浜� */ + @TableField("create_by") + private String createBy; + + + /** 鍒涘缓鏃堕棿 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @TableField("create_time") + private Date createTime; + + + /** 淇敼浜� */ + @TableField("update_by") + private String updateBy; + + + /** 淇敼鏃堕棿 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @TableField("update_time") + private Date updateTime; + + + /** 鏄惁鍒犻櫎(0-鍚�,1-鏄�) */ + @Excel(name = "鏄惁鍒犻櫎(0-鍚�,1-鏄�)") + + @TableField("is_deleted") + private Integer isDeleted; + + +} diff --git a/service/src/main/java/com/ruoyi/cwgl/mapper/DispatchOrderMapper.java b/service/src/main/java/com/ruoyi/cwgl/mapper/DispatchOrderMapper.java new file mode 100644 index 0000000..592b268 --- /dev/null +++ b/service/src/main/java/com/ruoyi/cwgl/mapper/DispatchOrderMapper.java @@ -0,0 +1,87 @@ +package com.ruoyi.cwgl.mapper; + +import java.util.List; +import com.ruoyi.cwgl.domain.DispatchOrder; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + + +/** + * 璋冨害鍗昅apper鎺ュ彛 + * + * @author ruoyi + * @date 2025-07-29 + */ +public interface DispatchOrderMapper extends BaseMapper<DispatchOrder> +{ + /** + * 鏌ヨ璋冨害鍗� + * + * @param id 璋冨害鍗旾D + * @return 璋冨害鍗� + */ + public DispatchOrder selectDispatchOrderById(Integer id); + + /** + * 鏌ヨ璋冨害鍗� 璁板綍鏁� + * + * @param dispatchOrder 璋冨害鍗� + * @return 璋冨害鍗曢泦鍚� + */ + public int selectDispatchOrderCount(DispatchOrder dispatchOrder); + + /** + * 鏌ヨ璋冨害鍗曞垪琛� + * + * @param dispatchOrder 璋冨害鍗� + * @return 璋冨害鍗曢泦鍚� + */ + public List<DispatchOrder> selectDispatchOrderList(DispatchOrder dispatchOrder); + + /** + * 鏂板璋冨害鍗� + * + * @param dispatchOrder 璋冨害鍗� + * @return 缁撴灉 + */ + public int insertDispatchOrder(DispatchOrder dispatchOrder); + + /** + * 鏂板璋冨害鍗昜鎵归噺] + * + * @param dispatchOrders 璋冨害鍗� + * @return 缁撴灉 + */ + public int insertDispatchOrderBatch(List<DispatchOrder> dispatchOrders); + + /** + * 淇敼璋冨害鍗� + * + * @param dispatchOrder 璋冨害鍗� + * @return 缁撴灉 + */ + public int updateDispatchOrder(DispatchOrder dispatchOrder); + + /** + * 淇敼璋冨害鍗昜鎵归噺] + * + * @param dispatchOrders 璋冨害鍗� + * @return 缁撴灉 + */ + public int updateDispatchOrderBatch(List<DispatchOrder> dispatchOrders); + + /** + * 鍒犻櫎璋冨害鍗� + * + * @param id 璋冨害鍗旾D + * @return 缁撴灉 + */ + public int deleteDispatchOrderById(Integer id); + + /** + * 鎵归噺鍒犻櫎璋冨害鍗� + * + * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID + * @return 缁撴灉 + */ + public int deleteDispatchOrderByIds(Integer[] ids); +} diff --git a/service/src/main/java/com/ruoyi/cwgl/service/IDispatchOrderService.java b/service/src/main/java/com/ruoyi/cwgl/service/IDispatchOrderService.java new file mode 100644 index 0000000..e7f7ab7 --- /dev/null +++ b/service/src/main/java/com/ruoyi/cwgl/service/IDispatchOrderService.java @@ -0,0 +1,102 @@ +package com.ruoyi.cwgl.service; + +import java.util.List; +import com.ruoyi.cwgl.domain.DispatchOrder; +import com.baomidou.mybatisplus.extension.service.IService; +/** + * 璋冨害鍗昐ervice鎺ュ彛 + * + * @author ruoyi + * @date 2025-07-29 + */ +public interface IDispatchOrderService extends IService<DispatchOrder> +{ + /** + * 鏌ヨ璋冨害鍗� + * + * @param id 璋冨害鍗旾D + * @return 璋冨害鍗� + */ + public DispatchOrder selectDispatchOrderById(Integer id); + + /** + * 鏌ヨ璋冨害鍗� 璁板綍鏁� + * + * @param dispatchOrder 璋冨害鍗� + * @return 璋冨害鍗曢泦鍚� + */ + public int selectDispatchOrderCount(DispatchOrder dispatchOrder); + + /** + * 鏌ヨ璋冨害鍗曞垪琛� + * + * @param dispatchOrder 璋冨害鍗� + * @return 璋冨害鍗曢泦鍚� + */ + public List<DispatchOrder> selectDispatchOrderList(DispatchOrder dispatchOrder); + + /** + * 鏌ヨ璋冨害鍗曞垪琛� 寮傛 瀵煎嚭 + * + * @param dispatchOrder 璋冨害鍗� + * @param exportKey 瀵煎嚭鍔熻兘鐨勫敮涓�鏍囪瘑 + * @return 璋冨害鍗曢泦鍚� + */ + public void export(DispatchOrder dispatchOrder, String exportKey) ; + + + /** + * 鏂板璋冨害鍗� + * + * @param dispatchOrder 璋冨害鍗� + * @return 缁撴灉 + */ + public int insertDispatchOrder(DispatchOrder dispatchOrder); + + /** + * 鏂板璋冨害鍗昜鎵归噺] + * + * @param dispatchOrders 璋冨害鍗� + * @return 缁撴灉 + */ + public int insertDispatchOrderBatch(List<DispatchOrder> dispatchOrders); + + /** + * 淇敼璋冨害鍗� + * + * @param dispatchOrder 璋冨害鍗� + * @return 缁撴灉 + */ + public int updateDispatchOrder(DispatchOrder dispatchOrder); + + /** + * 淇敼璋冨害鍗昜鎵归噺] + * + * @param dispatchOrders 璋冨害鍗� + * @return 缁撴灉 + */ + public int updateDispatchOrderBatch(List<DispatchOrder> dispatchOrders); + /** + * 鎵归噺鍒犻櫎璋冨害鍗� + * + * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID + * @return 缁撴灉 + */ + public int deleteDispatchOrderByIds(String ids); + + /** + * 鎵归噺鍒犻櫎璋冨害鍗� + * + * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID + * @return 缁撴灉 + */ + public int deleteDispatchOrderByIds(Integer[] ids); + + /** + * 鍒犻櫎璋冨害鍗曚俊鎭� + * + * @param id 璋冨害鍗旾D + * @return 缁撴灉 + */ + public int deleteDispatchOrderById(Integer id); +} diff --git a/service/src/main/java/com/ruoyi/cwgl/service/impl/DispatchOrderServiceImpl.java b/service/src/main/java/com/ruoyi/cwgl/service/impl/DispatchOrderServiceImpl.java new file mode 100644 index 0000000..5643f03 --- /dev/null +++ b/service/src/main/java/com/ruoyi/cwgl/service/impl/DispatchOrderServiceImpl.java @@ -0,0 +1,182 @@ +package com.ruoyi.cwgl.service.impl; + +import java.util.List; + +import com.ruoyi.common.utils.DateUtils; +import javax.annotation.Resource; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.stereotype.Service; +import org.springframework.scheduling.annotation.Async; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import com.ruoyi.common.utils.PageUtils; +import com.ruoyi.common.constant.Constants; +import com.ruoyi.common.annotation.DataSource; +import com.ruoyi.common.enums.DataSourceType; +import com.ruoyi.common.core.service.BaseService; + +import com.ruoyi.cwgl.mapper.DispatchOrderMapper; +import com.ruoyi.cwgl.domain.DispatchOrder; +import com.ruoyi.cwgl.service.IDispatchOrderService; +import com.ruoyi.common.core.text.Convert; + +/** + * 璋冨害鍗昐ervice涓氬姟灞傚鐞� + * + * @author ruoyi + * @date 2025-07-29 + */ +@Service +@Transactional(rollbackFor = Exception.class) +public class DispatchOrderServiceImpl extends BaseService<DispatchOrderMapper, DispatchOrder> implements IDispatchOrderService +{ + protected final Logger logger = LoggerFactory.getLogger(getClass()); + @Resource + private DispatchOrderMapper dispatchOrderMapper; + + + /** + * 鏌ヨ璋冨害鍗� + * + * @param id 璋冨害鍗旾D + * @return 璋冨害鍗� + */ + @DataSource(DataSourceType.SLAVE) + @Override + public DispatchOrder selectDispatchOrderById(Integer id) + { + return dispatchOrderMapper.selectDispatchOrderById(id); + } + + /** + * 鏌ヨ璋冨害鍗� 璁板綍鏁� + * + * @param dispatchOrder 璋冨害鍗� + * @return 璋冨害鍗曢泦鍚� + */ + @DataSource(DataSourceType.SLAVE) + @Override + public int selectDispatchOrderCount(DispatchOrder dispatchOrder) + { + return dispatchOrderMapper.selectDispatchOrderCount(dispatchOrder); + } + + /** + * 鏌ヨ璋冨害鍗曞垪琛� + * + * @param dispatchOrder 璋冨害鍗� + * @return 璋冨害鍗� + */ + @DataSource(DataSourceType.SLAVE) + @Override + public List<DispatchOrder> selectDispatchOrderList(DispatchOrder dispatchOrder) + { + return dispatchOrderMapper.selectDispatchOrderList(dispatchOrder); + } + + /** + * 鏌ヨ璋冨害鍗曞垪琛� 寮傛 瀵煎嚭 + * + * @param dispatchOrder 璋冨害鍗� + * @param exportKey 瀵煎嚭鍔熻兘鐨勫敮涓�鏍囪瘑 + * @return 璋冨害鍗曢泦鍚� + */ + @DataSource(DataSourceType.SLAVE) + @Async + @Override + public void export(DispatchOrder dispatchOrder,String exportKey) { + + super.export(DispatchOrder.class,exportKey,"dispatchOrderData",(pageNum)->{ + PageUtils.startPage(pageNum, Constants.EXPORT_PATE_SIZE); + return selectDispatchOrderList(dispatchOrder); + }); + } + + + /** + * 鏂板璋冨害鍗� + * + * @param dispatchOrder 璋冨害鍗� + * @return 缁撴灉 + */ + @Override + public int insertDispatchOrder(DispatchOrder dispatchOrder) + { + dispatchOrder.setCreateTime(DateUtils.getNowDate()); + return dispatchOrderMapper.insertDispatchOrder(dispatchOrder); + } + + /** + * 鏂板璋冨害鍗昜鎵归噺] + * + * @param dispatchOrders 璋冨害鍗� + * @return 缁撴灉 + */ + @Override + public int insertDispatchOrderBatch(List<DispatchOrder> dispatchOrders) + { + int rows = dispatchOrderMapper.insertDispatchOrderBatch(dispatchOrders); + return rows; + } + + /** + * 淇敼璋冨害鍗� + * + * @param dispatchOrder 璋冨害鍗� + * @return 缁撴灉 + */ + @Override + public int updateDispatchOrder(DispatchOrder dispatchOrder) + { + dispatchOrder.setUpdateTime(DateUtils.getNowDate()); + return dispatchOrderMapper.updateDispatchOrder(dispatchOrder); + } + + /** + * 淇敼璋冨害鍗昜鎵归噺] + * + * @param dispatchOrders 璋冨害鍗� + * @return 缁撴灉 + */ + @Override + public int updateDispatchOrderBatch(List<DispatchOrder> dispatchOrders){ + return dispatchOrderMapper.updateDispatchOrderBatch(dispatchOrders); + } + + /** + * 鍒犻櫎璋冨害鍗曞璞� + * + * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID + * @return 缁撴灉 + */ + @Override + public int deleteDispatchOrderByIds(String ids) + { + return deleteDispatchOrderByIds(Convert.toIntArray(ids)); + } + + /** + * 鍒犻櫎璋冨害鍗曞璞� + * + * + * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID + * @return 缁撴灉 + */ + @Override + public int deleteDispatchOrderByIds(Integer[] ids) + { + return dispatchOrderMapper.deleteDispatchOrderByIds(ids); + } + + /** + * 鍒犻櫎璋冨害鍗曚俊鎭� + * + * @param id 璋冨害鍗旾D + * @return 缁撴灉 + */ + @Override + public int deleteDispatchOrderById(Integer id) + { + return dispatchOrderMapper.deleteDispatchOrderById(id); + } +} diff --git a/service/src/main/resources/mapper/cwgl/DispatchOrderMapper.xml b/service/src/main/resources/mapper/cwgl/DispatchOrderMapper.xml new file mode 100644 index 0000000..c5218ba --- /dev/null +++ b/service/src/main/resources/mapper/cwgl/DispatchOrderMapper.xml @@ -0,0 +1,242 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE mapper +PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" +"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> +<mapper namespace="com.ruoyi.cwgl.mapper.DispatchOrderMapper"> + + <resultMap type="com.ruoyi.cwgl.domain.DispatchOrder" id="DispatchOrderResult"> + <result property="id" column="id" /> + <result property="dispatchNo" column="dispatch_no" /> + <result property="transportMode" column="transport_mode" /> + <result property="productName" column="product_name" /> + <result property="carrierName" column="carrier_name" /> + <result property="departureLocationName" column="departure_location_name" /> + <result property="arrivalLocationName" column="arrival_location_name" /> + <result property="licensePlateNumber" column="license_plate_number" /> + <result property="vehiclePlateId" column="vehicle_plate_id" /> + <result property="mainDriverName" column="main_driver_name" /> + <result property="assistantDriverName" column="assistant_driver_name" /> + <result property="pointNum" column="point_num" /> + <result property="quantity" column="quantity" /> + <result property="actualDepartureTime" column="actual_departure_time" /> + <result property="requiredArrivalTime" column="required_arrival_time" /> + <result property="actualArrivalTime" column="actual_arrival_time" /> + <result property="beReturn" column="be_return" /> + <result property="dispatchQuantity" column="dispatch_quantity" /> + <result property="dispatchWeight" column="dispatch_weight" /> + <result property="dispatchVolume" column="dispatch_volume" /> + <result property="status" column="status" /> + <result property="remark" column="remark" /> + <result property="createBy" column="create_by" /> + <result property="createTime" column="create_time" /> + <result property="updateBy" column="update_by" /> + <result property="updateTime" column="update_time" /> + <result property="isDeleted" column="is_deleted" /> + </resultMap> + + <sql id="selectDispatchOrderVo"> + select thisTab.id, thisTab.dispatch_no, thisTab.transport_mode, thisTab.product_name, thisTab.carrier_name, thisTab.departure_location_name, thisTab.arrival_location_name, thisTab.license_plate_number, thisTab.vehicle_plate_id, thisTab.main_driver_name, thisTab.assistant_driver_name, thisTab.point_num, thisTab.quantity, thisTab.actual_departure_time, thisTab.required_arrival_time, thisTab.actual_arrival_time, thisTab.be_return, thisTab.dispatch_quantity, thisTab.dispatch_weight, thisTab.dispatch_volume, thisTab.status, thisTab.remark, thisTab.create_by, thisTab.create_time, thisTab.update_by, thisTab.update_time, thisTab.is_deleted from dispatch_order AS thisTab + </sql> + <sql id="selectDispatchOrderVoCount"> + select count(0) from dispatch_order as thisTab + </sql> + + <sql id="whereCondition"> + <if test="dispatchNo != null and dispatchNo != ''"> and thisTab.dispatch_no = #{dispatchNo}</if> + <if test="transportMode != null and transportMode != ''"> and thisTab.transport_mode = #{transportMode}</if> + <if test="productName != null and productName != ''"> and thisTab.product_name like concat('%', #{productName}, '%')</if> + <if test="carrierName != null and carrierName != ''"> and thisTab.carrier_name like concat('%', #{carrierName}, '%')</if> + <if test="departureLocationName != null and departureLocationName != ''"> and thisTab.departure_location_name like concat('%', #{departureLocationName}, '%')</if> + <if test="arrivalLocationName != null and arrivalLocationName != ''"> and thisTab.arrival_location_name like concat('%', #{arrivalLocationName}, '%')</if> + <if test="licensePlateNumber != null and licensePlateNumber != ''"> and thisTab.license_plate_number = #{licensePlateNumber}</if> + <if test="vehiclePlateId != null and vehiclePlateId != ''"> and thisTab.vehicle_plate_id = #{vehiclePlateId}</if> + <if test="mainDriverName != null and mainDriverName != ''"> and thisTab.main_driver_name like concat('%', #{mainDriverName}, '%')</if> + <if test="assistantDriverName != null and assistantDriverName != ''"> and thisTab.assistant_driver_name like concat('%', #{assistantDriverName}, '%')</if> + <if test="pointNum != null "> and thisTab.point_num = #{pointNum}</if> + <if test="quantity != null "> and thisTab.quantity = #{quantity}</if> + <if test="actualDepartureTime != null "> and thisTab.actual_departure_time = #{actualDepartureTime}</if> + <if test="requiredArrivalTime != null "> and thisTab.required_arrival_time = #{requiredArrivalTime}</if> + <if test="actualArrivalTime != null "> and thisTab.actual_arrival_time = #{actualArrivalTime}</if> + <if test="beReturn != null and beReturn != ''"> and thisTab.be_return = #{beReturn}</if> + <if test="dispatchQuantity != null "> and thisTab.dispatch_quantity = #{dispatchQuantity}</if> + <if test="dispatchWeight != null "> and thisTab.dispatch_weight = #{dispatchWeight}</if> + <if test="dispatchVolume != null "> and thisTab.dispatch_volume = #{dispatchVolume}</if> + <if test="status != null and status != ''"> and thisTab.status = #{status}</if> + <if test="isDeleted != null "> and thisTab.is_deleted = #{isDeleted}</if> + </sql> + + <!--鏌ヨ--> + <select id="selectDispatchOrderById" parameterType="Integer" resultMap="DispatchOrderResult"> + <include refid="selectDispatchOrderVo"/> + where id = #{id} + </select> + + <select id="selectDispatchOrderCount" parameterType="com.ruoyi.cwgl.domain.DispatchOrder" resultType="int"> + <include refid="selectDispatchOrderVoCount"/> + <where> + <include refid="whereCondition"/> + </where> + </select> + + <select id="selectDispatchOrderList" parameterType="com.ruoyi.cwgl.domain.DispatchOrder" resultMap="DispatchOrderResult"> + <include refid="selectDispatchOrderVo"/> + <where> + <include refid="whereCondition"/> + </where> + order by thisTab.id desc + </select> + + <!-- 鏂板 --> + <insert id="insertDispatchOrder" parameterType="com.ruoyi.cwgl.domain.DispatchOrder" useGeneratedKeys="true" keyProperty="id"> + insert into dispatch_order + <trim prefix="(" suffix=")" suffixOverrides=","> + <if test="dispatchNo != null and dispatchNo != ''">dispatch_no,</if> + <if test="transportMode != null">transport_mode,</if> + <if test="productName != null">product_name,</if> + <if test="carrierName != null">carrier_name,</if> + <if test="departureLocationName != null">departure_location_name,</if> + <if test="arrivalLocationName != null">arrival_location_name,</if> + <if test="licensePlateNumber != null">license_plate_number,</if> + <if test="vehiclePlateId != null">vehicle_plate_id,</if> + <if test="mainDriverName != null">main_driver_name,</if> + <if test="assistantDriverName != null">assistant_driver_name,</if> + <if test="pointNum != null">point_num,</if> + <if test="quantity != null">quantity,</if> + <if test="actualDepartureTime != null">actual_departure_time,</if> + <if test="requiredArrivalTime != null">required_arrival_time,</if> + <if test="actualArrivalTime != null">actual_arrival_time,</if> + <if test="beReturn != null">be_return,</if> + <if test="dispatchQuantity != null">dispatch_quantity,</if> + <if test="dispatchWeight != null">dispatch_weight,</if> + <if test="dispatchVolume != null">dispatch_volume,</if> + <if test="status != null">status,</if> + <if test="remark != null">remark,</if> + <if test="createBy != null">create_by,</if> + <if test="createTime != null">create_time,</if> + <if test="updateBy != null">update_by,</if> + <if test="updateTime != null">update_time,</if> + <if test="isDeleted != null">is_deleted,</if> + </trim> + <trim prefix="values (" suffix=")" suffixOverrides=","> + <if test="dispatchNo != null and dispatchNo != ''">#{dispatchNo},</if> + <if test="transportMode != null">#{transportMode},</if> + <if test="productName != null">#{productName},</if> + <if test="carrierName != null">#{carrierName},</if> + <if test="departureLocationName != null">#{departureLocationName},</if> + <if test="arrivalLocationName != null">#{arrivalLocationName},</if> + <if test="licensePlateNumber != null">#{licensePlateNumber},</if> + <if test="vehiclePlateId != null">#{vehiclePlateId},</if> + <if test="mainDriverName != null">#{mainDriverName},</if> + <if test="assistantDriverName != null">#{assistantDriverName},</if> + <if test="pointNum != null">#{pointNum},</if> + <if test="quantity != null">#{quantity},</if> + <if test="actualDepartureTime != null">#{actualDepartureTime},</if> + <if test="requiredArrivalTime != null">#{requiredArrivalTime},</if> + <if test="actualArrivalTime != null">#{actualArrivalTime},</if> + <if test="beReturn != null">#{beReturn},</if> + <if test="dispatchQuantity != null">#{dispatchQuantity},</if> + <if test="dispatchWeight != null">#{dispatchWeight},</if> + <if test="dispatchVolume != null">#{dispatchVolume},</if> + <if test="status != null">#{status},</if> + <if test="remark != null">#{remark},</if> + <if test="createBy != null">#{createBy},</if> + <if test="createTime != null">#{createTime},</if> + <if test="updateBy != null">#{updateBy},</if> + <if test="updateTime != null">#{updateTime},</if> + <if test="isDeleted != null">#{isDeleted},</if> + </trim> + </insert> + + <insert id="insertDispatchOrderBatch" parameterType="java.util.List" useGeneratedKeys="true" keyProperty="id"> + insert into dispatch_order + <trim prefix="(" suffix=") values" suffixOverrides=","> + id,dispatch_no,transport_mode,product_name,carrier_name,departure_location_name,arrival_location_name,license_plate_number,vehicle_plate_id,main_driver_name,assistant_driver_name,point_num,quantity,actual_departure_time,required_arrival_time,actual_arrival_time,be_return,dispatch_quantity,dispatch_weight,dispatch_volume,status,remark,create_by,create_time,update_by,update_time,is_deleted, + </trim> + <foreach item="item" index="index" collection="list" separator=","> + <trim prefix="(" suffix=") " suffixOverrides=","> + #{item.id},#{item.dispatchNo},#{item.transportMode},#{item.productName},#{item.carrierName},#{item.departureLocationName},#{item.arrivalLocationName},#{item.licensePlateNumber},#{item.vehiclePlateId},#{item.mainDriverName},#{item.assistantDriverName},#{item.pointNum},#{item.quantity},#{item.actualDepartureTime},#{item.requiredArrivalTime},#{item.actualArrivalTime},#{item.beReturn},#{item.dispatchQuantity},#{item.dispatchWeight},#{item.dispatchVolume},#{item.status},#{item.remark},#{item.createBy},#{item.createTime},#{item.updateBy},#{item.updateTime},#{item.isDeleted}, + </trim> + </foreach> + </insert> + + <!-- 淇敼 --> + <update id="updateDispatchOrder" parameterType="com.ruoyi.cwgl.domain.DispatchOrder"> + update dispatch_order + <trim prefix="SET" suffixOverrides=","> + <if test="dispatchNo != null and dispatchNo != ''">dispatch_no = #{dispatchNo},</if> + <if test="transportMode != null">transport_mode = #{transportMode},</if> + <if test="productName != null">product_name = #{productName},</if> + <if test="carrierName != null">carrier_name = #{carrierName},</if> + <if test="departureLocationName != null">departure_location_name = #{departureLocationName},</if> + <if test="arrivalLocationName != null">arrival_location_name = #{arrivalLocationName},</if> + <if test="licensePlateNumber != null">license_plate_number = #{licensePlateNumber},</if> + <if test="vehiclePlateId != null">vehicle_plate_id = #{vehiclePlateId},</if> + <if test="mainDriverName != null">main_driver_name = #{mainDriverName},</if> + <if test="assistantDriverName != null">assistant_driver_name = #{assistantDriverName},</if> + <if test="pointNum != null">point_num = #{pointNum},</if> + <if test="quantity != null">quantity = #{quantity},</if> + <if test="actualDepartureTime != null">actual_departure_time = #{actualDepartureTime},</if> + <if test="requiredArrivalTime != null">required_arrival_time = #{requiredArrivalTime},</if> + <if test="actualArrivalTime != null">actual_arrival_time = #{actualArrivalTime},</if> + <if test="beReturn != null">be_return = #{beReturn},</if> + <if test="dispatchQuantity != null">dispatch_quantity = #{dispatchQuantity},</if> + <if test="dispatchWeight != null">dispatch_weight = #{dispatchWeight},</if> + <if test="dispatchVolume != null">dispatch_volume = #{dispatchVolume},</if> + <if test="status != null">status = #{status},</if> + <if test="remark != null">remark = #{remark},</if> + <if test="createBy != null">create_by = #{createBy},</if> + <if test="createTime != null">create_time = #{createTime},</if> + <if test="updateBy != null">update_by = #{updateBy},</if> + <if test="updateTime != null">update_time = #{updateTime},</if> + <if test="isDeleted != null">is_deleted = #{isDeleted},</if> + </trim> + where id = #{id} + </update> + <!-- 淇敼 --> + <update id="updateDispatchOrderBatch" parameterType="java.util.List"> + <foreach collection="list" item="item" index="index" separator=";"> + update dispatch_order + <trim prefix="SET" suffixOverrides=","> + <if test="item.dispatchNo != null and item.dispatchNo != ''">dispatch_no = #{item.dispatchNo},</if> + <if test="item.transportMode != null">transport_mode = #{item.transportMode},</if> + <if test="item.productName != null">product_name = #{item.productName},</if> + <if test="item.carrierName != null">carrier_name = #{item.carrierName},</if> + <if test="item.departureLocationName != null">departure_location_name = #{item.departureLocationName},</if> + <if test="item.arrivalLocationName != null">arrival_location_name = #{item.arrivalLocationName},</if> + <if test="item.licensePlateNumber != null">license_plate_number = #{item.licensePlateNumber},</if> + <if test="item.vehiclePlateId != null">vehicle_plate_id = #{item.vehiclePlateId},</if> + <if test="item.mainDriverName != null">main_driver_name = #{item.mainDriverName},</if> + <if test="item.assistantDriverName != null">assistant_driver_name = #{item.assistantDriverName},</if> + <if test="item.pointNum != null">point_num = #{item.pointNum},</if> + <if test="item.quantity != null">quantity = #{item.quantity},</if> + <if test="item.actualDepartureTime != null">actual_departure_time = #{item.actualDepartureTime},</if> + <if test="item.requiredArrivalTime != null">required_arrival_time = #{item.requiredArrivalTime},</if> + <if test="item.actualArrivalTime != null">actual_arrival_time = #{item.actualArrivalTime},</if> + <if test="item.beReturn != null">be_return = #{item.beReturn},</if> + <if test="item.dispatchQuantity != null">dispatch_quantity = #{item.dispatchQuantity},</if> + <if test="item.dispatchWeight != null">dispatch_weight = #{item.dispatchWeight},</if> + <if test="item.dispatchVolume != null">dispatch_volume = #{item.dispatchVolume},</if> + <if test="item.status != null">status = #{item.status},</if> + <if test="item.remark != null">remark = #{item.remark},</if> + <if test="item.createBy != null">create_by = #{item.createBy},</if> + <if test="item.createTime != null">create_time = #{item.createTime},</if> + <if test="item.updateBy != null">update_by = #{item.updateBy},</if> + <if test="item.updateTime != null">update_time = #{item.updateTime},</if> + <if test="item.isDeleted != null">is_deleted = #{item.isDeleted},</if> + </trim> + where id = #{item.id} + </foreach> + </update> + + <!--鍒犻櫎--> + <delete id="deleteDispatchOrderById" parameterType="Integer"> + delete from dispatch_order where id = #{id} + </delete> + <delete id="deleteDispatchOrderByIds" parameterType="Integer"> + delete from dispatch_order where id in + <foreach item="id" collection="array" open="(" separator="," close=")"> + #{id} + </foreach> + </delete> + +</mapper> \ No newline at end of file -- Gitblit v1.8.0