| src/main/java/com/ruoyi/sales/controller/ShippingInfoController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/ruoyi/sales/mapper/ShippingInfoMapper.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/ruoyi/sales/pojo/ShippingInfo.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/ruoyi/sales/service/ShippingInfoService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/ruoyi/sales/service/impl/ShippingInfoServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/resources/mapper/sales/ShippingInfoMapper.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/ruoyi/sales/controller/ShippingInfoController.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,95 @@ package com.ruoyi.sales.controller; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.framework.aspectj.lang.annotation.Log; import com.ruoyi.framework.aspectj.lang.enums.BusinessType; import com.ruoyi.framework.web.controller.BaseController; import com.ruoyi.framework.web.domain.AjaxResult; import com.ruoyi.sales.mapper.ShippingInfoMapper; import com.ruoyi.sales.pojo.SalesLedger; import com.ruoyi.sales.pojo.ShippingInfo; import com.ruoyi.sales.service.ShippingInfoService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse; import java.util.List; /** * @author :yys * @date : 2025/10/22 9:34 */ @RestController @RequestMapping("/shippingInfo") @Api(tags = "åè´§ä¿¡æ¯ç®¡ç") public class ShippingInfoController extends BaseController { @Autowired private ShippingInfoService shippingInfoService; @GetMapping("/listPage") @ApiOperation("åè´§ä¿¡æ¯å表") public AjaxResult listPage(Page page, ShippingInfo req) { IPage<ShippingInfo> listPage = shippingInfoService.listPage(page,req); return AjaxResult.success(listPage); } @PostMapping("/add") @ApiOperation("æ·»å åè´§ä¿¡æ¯") public AjaxResult add(@RequestBody ShippingInfo req) { boolean save = shippingInfoService.save(req); return save ? AjaxResult.success() : AjaxResult.error(); } @PostMapping("/update") @ApiOperation("ä¿®æ¹åè´§ä¿¡æ¯") public AjaxResult update(@RequestBody ShippingInfo req) { ShippingInfo byId = shippingInfoService.getById(req.getId()); if (byId == null) { return AjaxResult.error("åè´§ä¿¡æ¯ä¸åå¨"); } Long userId = getLoginUser().getUserId(); if(!userId.equals(Long.parseLong(byId.getCreateUser().toString()))){ return AjaxResult.error("æ¨æ²¡ææéä¿®æ¹æ¤åè´§ä¿¡æ¯"); } boolean update = shippingInfoService.updateById(req); return update ? AjaxResult.success() : AjaxResult.error(); } @DeleteMapping("/delete") @ApiOperation("å é¤åè´§ä¿¡æ¯") public AjaxResult delete(@RequestBody List<Long> ids) { Long userId = getLoginUser().getUserId(); ids.forEach(id -> { ShippingInfo byId = shippingInfoService.getById(id); if (byId == null) { throw new RuntimeException("åè´§ä¿¡æ¯ä¸åå¨"); } if(!userId.equals(Long.parseLong(byId.getCreateUser().toString()))){ throw new RuntimeException("æ¨æ²¡ææéå 餿¤åè´§ä¿¡æ¯"); } }); boolean delete = shippingInfoService.removeBatchByIds(ids); return delete ? AjaxResult.success("å 餿å") : AjaxResult.error("å é¤å¤±è´¥"); } @Autowired private ShippingInfoMapper shippingInfoMapper; /** * 导åºåè´§ä¿¡æ¯ç®¡ç */ @PostMapping("/export") @ApiOperation("导åºåè´§ä¿¡æ¯") public void export(HttpServletResponse response) { List<ShippingInfo> list = shippingInfoMapper.listAll(); ExcelUtil<ShippingInfo> util = new ExcelUtil<ShippingInfo>(ShippingInfo.class); util.exportExcel(response, list, "åè´§ä¿¡æ¯"); } } src/main/java/com/ruoyi/sales/mapper/ShippingInfoMapper.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,19 @@ package com.ruoyi.sales.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.sales.pojo.ShippingInfo; import org.apache.ibatis.annotations.Param; import java.util.List; /** * @author :yys * @date : 2025/10/22 9:32 */ public interface ShippingInfoMapper extends BaseMapper<ShippingInfo> { IPage<ShippingInfo> listPage(Page page,@Param("req") ShippingInfo req); List<ShippingInfo> listAll(); } src/main/java/com/ruoyi/sales/pojo/ShippingInfo.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,68 @@ package com.ruoyi.sales.pojo; import com.baomidou.mybatisplus.annotation.*; import com.fasterxml.jackson.annotation.JsonFormat; import com.ruoyi.framework.aspectj.lang.annotation.Excel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import org.springframework.format.annotation.DateTimeFormat; import java.time.LocalDateTime; import java.util.Date; /** * @author :yys * @date : 2025/10/22 9:29 */ @Data @TableName("shipping_info") public class ShippingInfo { @TableId(value = "id", type = IdType.AUTO) private Long id; @ApiModelProperty(value = "éå®å°è´¦id") private Long salesLedgerId; @TableField(exist = false) @ApiModelProperty(value = "éå®ååå·") @Excel(name = "éå®ååå·") private String salesContractNo; @TableField(exist = false) @ApiModelProperty(value = "客æ·åç§°") @Excel(name = "客æ·åç§°") private String customerName; @ApiModelProperty(value = "åè´§æ¥æ") @JsonFormat(pattern = "yyyy-MM-dd") @DateTimeFormat(pattern = "yyyy-MM-dd") @Excel(name = "åè´§æ¥æ", width = 30, dateFormat = "yyyy-MM-dd") private Date shippingDate; @ApiModelProperty(value = "å货车çå·") @Excel(name = "å货车çå·") private String shippingCarNumber; @ApiModelProperty(value = "å建æ¶é´") @TableField(fill = FieldFill.INSERT) private LocalDateTime createTime; @ApiModelProperty(value = "ä¿®æ¹æ¶é´") @TableField(fill = FieldFill.INSERT_UPDATE) private LocalDateTime updateTime; @ApiModelProperty(value = "åå»ºç¨æ·") @TableField(fill = FieldFill.INSERT) @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Integer createUser; @ApiModelProperty(value = "ä¿®æ¹ç¨æ·") @TableField(fill = FieldFill.INSERT_UPDATE) private Integer updateUser; @ApiModelProperty(value = "ç§æ·ID") @TableField(fill = FieldFill.INSERT) private Long tenantId; } src/main/java/com/ruoyi/sales/service/ShippingInfoService.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,14 @@ package com.ruoyi.sales.service; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.sales.pojo.ShippingInfo; /** * @author :yys * @date : 2025/10/22 9:33 */ public interface ShippingInfoService extends IService<ShippingInfo>{ IPage<ShippingInfo> listPage(Page page, ShippingInfo req); } src/main/java/com/ruoyi/sales/service/impl/ShippingInfoServiceImpl.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,30 @@ package com.ruoyi.sales.service.impl; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.sales.mapper.ShippingInfoMapper; import com.ruoyi.sales.pojo.ShippingInfo; import com.ruoyi.sales.service.ShippingInfoService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; /** * @author :yys * @date : 2025/10/22 9:33 */ @Service @Slf4j public class ShippingInfoServiceImpl extends ServiceImpl<ShippingInfoMapper, ShippingInfo> implements ShippingInfoService { @Autowired private ShippingInfoMapper shippingInfoMapper; @Override public IPage<ShippingInfo> listPage(Page page, ShippingInfo req) { IPage<ShippingInfo> listPage = shippingInfoMapper.listPage(page, req); return listPage; } } src/main/resources/mapper/sales/ShippingInfoMapper.xml
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,44 @@ <?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.sales.mapper.ShippingInfoMapper"> <select id="listPage" resultType="com.ruoyi.sales.pojo.ShippingInfo"> SELECT s.id, s.sales_ledger_id, s.shipping_date, s.shipping_car_number, s.create_time, s.update_time, s.create_user, s.update_user, s.tenant_id, sl.sales_contract_no, sl.customer_name FROM shipping_info s LEFT JOIN sales_ledger sl ON s.sales_ledger_id = sl.id WHERE 1=1 <if test="req.salesContractNo != null and req.salesContractNo != ''"> AND sl.sales_contract_no LIKE CONCAT('%',#{req.salesContractNo},'%') </if> <if test="req.shippingCarNumber != null and req.shippingCarNumber != ''"> AND s.shipping_car_number LIKE CONCAT('%',#{req.shippingCarNumber},'%') </if> </select> <select id="listAll" resultType="com.ruoyi.sales.pojo.ShippingInfo"> SELECT s.id, s.sales_ledger_id, s.shipping_date, s.shipping_car_number, s.create_time, s.update_time, s.create_user, s.update_user, s.tenant_id, sl.sales_contract_no, sl.customer_name FROM shipping_info s LEFT JOIN sales_ledger sl ON s.sales_ledger_id = sl.id </select> </mapper>