Browse Source

1.海运进出口批量修改接口状态判断修改
2.增加业务-海、空运舱单,快递业务,海运派车模块接口

纪新园 6 months ago
parent
commit
6d1efbfbc1

+ 34 - 0
blade-service-api/blade-los-api/src/main/java/org/springblade/los/business/generalBill/dto/GeneralBillDTO.java

@@ -0,0 +1,34 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.los.business.generalBill.dto;
+
+import org.springblade.los.business.generalBill.entity.GeneralBill;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 业务-海、空运舱单,快递业务,海运派车等,各分公司独立数据传输对象实体类
+ *
+ * @author BladeX
+ * @since 2025-06-19
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class GeneralBillDTO extends GeneralBill {
+	private static final long serialVersionUID = 1L;
+
+}

+ 375 - 0
blade-service-api/blade-los-api/src/main/java/org/springblade/los/business/generalBill/entity/GeneralBill.java

@@ -0,0 +1,375 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.los.business.generalBill.entity;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.springblade.los.finance.fee.entity.FeeCenter;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 业务-海、空运舱单,快递业务,海运派车等,各分公司独立实体类
+ *
+ * @author BladeX
+ * @since 2025-06-19
+ */
+@Data
+@TableName("los_general_bill")
+@ApiModel(value = "GeneralBill对象", description = "业务-海、空运舱单,快递业务,海运派车等,各分公司独立")
+public class GeneralBill implements Serializable {
+
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 主键
+	 */
+	@ApiModelProperty(value = "主键")
+	private Long id;
+	/**
+	 * 分公司 Id
+	 */
+	@ApiModelProperty(value = "分公司 Id")
+	private String branchId;
+	/**
+	 * 创建人 Id
+	 */
+	@ApiModelProperty(value = "创建人 Id")
+	private Long createUser;
+	/**
+	 * 创建人
+	 */
+	@ApiModelProperty(value = "创建人")
+	private String createUserName;
+	/**
+	 * 创建部门 Id
+	 */
+	@ApiModelProperty(value = "创建部门 Id")
+	private String createDept;
+	/**
+	 * 创建部门
+	 */
+	@ApiModelProperty(value = "创建部门")
+	private String createDeptName;
+	/**
+	 * 创建时间
+	 */
+	@ApiModelProperty(value = "创建时间")
+	private Date createTime;
+	/**
+	 * 修改人 Id
+	 */
+	@ApiModelProperty(value = "修改人 Id")
+	private Long updateUser;
+	/**
+	 * 修改人
+	 */
+	@ApiModelProperty(value = "修改人")
+	private String updateUserName;
+	/**
+	 * 修改时间
+	 */
+	@ApiModelProperty(value = "修改时间")
+	private Date updateTime;
+	/**
+	 * 单据类型, MFS=海运舱单 MFA=空运运舱单, EXP=快递业务,TRUCK=海运派车
+	 */
+	@ApiModelProperty(value = "单据类型, MFS=海运舱单 MFA=空运运舱单, EXP=快递业务,TRUCK=海运派车")
+	private String billType;
+	/**
+	 * 业务类型,根据单据类型不同,取不同的值
+	 */
+	@ApiModelProperty(value = "业务类型,根据单据类型不同,取不同的值")
+	private String businessType;
+	/**
+	 * 单据编号
+	 */
+	@ApiModelProperty(value = "单据编号")
+	private String billNo;
+	/**
+	 * 单据日期
+	 */
+	@ApiModelProperty(value = "单据日期")
+	private Date billDate;
+	/**
+	 * 操作 Id
+	 */
+	@ApiModelProperty(value = "操作 Id")
+	private Long operatorId;
+	/**
+	 * 操作
+	 */
+	@ApiModelProperty(value = "操作")
+	private String operatorName;
+	/**
+	 * 核算部门 Id
+	 */
+	@ApiModelProperty(value = "核算部门 Id")
+	private String accDept;
+	/**
+	 * 核算部门
+	 */
+	@ApiModelProperty(value = "核算部门")
+	private String accDeptName;
+	/**
+	 * 客户 id
+	 */
+	@ApiModelProperty(value = "客户 id")
+	private Long corpId;
+	/**
+	 * 客户中文名称
+	 */
+	@ApiModelProperty(value = "客户中文名称")
+	private String corpCnName;
+	/**
+	 * 客户英文名称
+	 */
+	@ApiModelProperty(value = "客户英文名称")
+	private String corpEnName;
+	/**
+	 * 业务来源
+	 */
+	@ApiModelProperty(value = "业务来源")
+	private String srcType;
+	/**
+	 * 来源 id
+	 */
+	@ApiModelProperty(value = "来源 id")
+	private Long srcId;
+	/**
+	 * 来源中文
+	 */
+	@ApiModelProperty(value = "来源中文")
+	private String srcCnName;
+	/**
+	 * 来源英文
+	 */
+	@ApiModelProperty(value = "来源英文")
+	private String srcEnName;
+	/**
+	 * 委托人,陆运公司 id
+	 */
+	@ApiModelProperty(value = "委托人,陆运公司 id")
+	private Long consignerId;
+	/**
+	 * 委托人,陆运公司中文名称
+	 */
+	@ApiModelProperty(value = "委托人,陆运公司中文名称")
+	private String consignerCnName;
+	/**
+	 * 委托人,陆运公司英文名称
+	 */
+	@ApiModelProperty(value = "委托人,陆运公司英文名称")
+	private String consignerEnName;
+	/**
+	 * 舱单平台 id
+	 */
+	@ApiModelProperty(value = "舱单平台 id")
+	private Long manifestId;
+	/**
+	 * 舱单平台中文名称
+	 */
+	@ApiModelProperty(value = "舱单平台中文名称")
+	private String manifestCnName;
+	/**
+	 * 舱单平台英文名称
+	 */
+	@ApiModelProperty(value = "舱单平台英文名称")
+	private String manifestEnName;
+	/**
+	 * 船名 id
+	 */
+	@ApiModelProperty(value = "船名 id")
+	private Long vesselId;
+	/**
+	 * 中文船名
+	 */
+	@ApiModelProperty(value = "中文船名")
+	private String vesselCnName;
+	/**
+	 * 英文船名
+	 */
+	@ApiModelProperty(value = "英文船名")
+	private String vesselEnName;
+	/**
+	 * 航次
+	 */
+	@ApiModelProperty(value = "航次")
+	private String voyageNo;
+	/**
+	 * MB/L NO
+	 */
+	@ApiModelProperty(value = "MB/L NO")
+	private String mblno;
+	/**
+	 * HB/L NO
+	 */
+	@ApiModelProperty(value = "HB/L NO")
+	private String hblno;
+	/**
+	 * Reference NO, 外提单号
+	 */
+	@ApiModelProperty(value = "Reference NO, 外提单号")
+	private String refno;
+	/**
+	 * 开船日期,发车日期
+	 */
+	@ApiModelProperty(value = "开船日期,发车日期")
+	private Date etd;
+	/**
+	 * 到港日期
+	 */
+	@ApiModelProperty(value = "到港日期")
+	private Date eta;
+	/**
+	 * 商品名称
+	 */
+	@ApiModelProperty(value = "商品名称")
+	private String commodityName;
+	/**
+	 * 装货港 id
+	 */
+	@ApiModelProperty(value = "装货港 id")
+	private Long polId;
+	/**
+	 * 装货港代码
+	 */
+	@ApiModelProperty(value = "装货港代码")
+	private String polCode;
+	/**
+	 * 装货港英文名称
+	 */
+	@ApiModelProperty(value = "装货港英文名称")
+	private String polCnName;
+	/**
+	 * 装货港英文名称
+	 */
+	@ApiModelProperty(value = "装货港英文名称")
+	private String polEnName;
+	/**
+	 * 装货港 id
+	 */
+	@ApiModelProperty(value = "装货港 id")
+	private Long podId;
+	/**
+	 * 卸货港代码
+	 */
+	@ApiModelProperty(value = "卸货港代码")
+	private String podCode;
+	/**
+	 * 卸货港英文名称
+	 */
+	@ApiModelProperty(value = "卸货港英文名称")
+	private String podCnName;
+	/**
+	 * 卸货港英文名称
+	 */
+	@ApiModelProperty(value = "卸货港英文名称")
+	private String podEnName;
+	/**
+	 * 件数
+	 */
+	@ApiModelProperty(value = "件数")
+	private BigDecimal quantity;
+	/**
+	 * 毛重 (KGM)
+	 */
+	@ApiModelProperty(value = "毛重 (KGM)")
+	private BigDecimal grossWeight;
+	/**
+	 * 净重 (KGM)
+	 */
+	@ApiModelProperty(value = "净重 (KGM)")
+	private BigDecimal netWeight;
+	/**
+	 * 体积 (CBM)
+	 */
+	@ApiModelProperty(value = "体积 (CBM)")
+	private BigDecimal measurement;
+	/**
+	 * 箱量,箱量描述
+	 */
+	@ApiModelProperty(value = "箱量,箱量描述")
+	private String containerQuantity;
+	/**
+	 * 对账约号
+	 */
+	@ApiModelProperty(value = "对账约号")
+	private String checkRefno;
+	/**
+	 * 原操作
+	 */
+	@ApiModelProperty(value = "原操作")
+	private String srcOperatorName;
+	/**
+	 * 是否做过Amend业务,当存在对应的 Amend 业务时,值为 1(0 否 1是)
+	 */
+	@ApiModelProperty(value = "是否做过Amend业务,当存在对应的 Amend 业务时,值为 1(0 否 1是)")
+	private Integer isAmend;
+	/**
+	 * 版本
+	 */
+	@ApiModelProperty(value = "版本")
+	private String version;
+	/**
+	 * 状态(0 正常 1停用)
+	 */
+	@ApiModelProperty(value = "状态(0 正常 1停用)")
+	private Integer status;
+	/**
+	 * 是否已删除(0 否 1是)
+	 */
+	@ApiModelProperty(value = "是否已删除(0 否 1是)")
+	private Integer isDeleted;
+	/**
+	 * 备注
+	 */
+	@ApiModelProperty(value = "备注")
+	private String remarks;
+	/**
+	 * 签单状态,0=新建 1=提交 2=跑单中 3=操作确认 4=调度确认 5=放单 6=退回,或 (N,S,I,O,D,T,B)
+	 */
+	@ApiModelProperty(value = "签单状态,0=新建 1=提交 2=跑单中 3=操作确认 4=调度确认 5=放单 6=退回,或 (N,S,I,O,D,T,B)")
+	private String issueStatus;
+
+	/**
+	 * 租户
+	 */
+	@ApiModelProperty(value = "租户")
+	private String tenantId;
+
+	/**
+	 * 物流-费用中心(付)
+	 */
+	@TableField(exist = false)
+	private List<FeeCenter> feeCenterListC;
+
+	/**
+	 * 物流-费用中心(收)
+	 */
+	@TableField(exist = false)
+	private List<FeeCenter> feeCenterListD;
+
+
+}

+ 36 - 0
blade-service-api/blade-los-api/src/main/java/org/springblade/los/business/generalBill/vo/GeneralBillVO.java

@@ -0,0 +1,36 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.los.business.generalBill.vo;
+
+import org.springblade.los.business.generalBill.entity.GeneralBill;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import io.swagger.annotations.ApiModel;
+
+/**
+ * 业务-海、空运舱单,快递业务,海运派车等,各分公司独立视图实体类
+ *
+ * @author BladeX
+ * @since 2025-06-19
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ApiModel(value = "GeneralBillVO对象", description = "业务-海、空运舱单,快递业务,海运派车等,各分公司独立")
+public class GeneralBillVO extends GeneralBill {
+	private static final long serialVersionUID = 1L;
+
+}

+ 126 - 0
blade-service/blade-los/src/main/java/org/springblade/los/business/generalBill/controller/GeneralBillController.java

@@ -0,0 +1,126 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.los.business.generalBill.controller;
+
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import lombok.AllArgsConstructor;
+import javax.validation.Valid;
+
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springframework.web.bind.annotation.*;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.los.business.generalBill.entity.GeneralBill;
+import org.springblade.los.business.generalBill.vo.GeneralBillVO;
+import org.springblade.los.business.generalBill.service.IGeneralBillService;
+import org.springblade.core.boot.ctrl.BladeController;
+
+/**
+ * 业务-海、空运舱单,快递业务,海运派车等,各分公司独立 控制器
+ *
+ * @author BladeX
+ * @since 2025-06-19
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("/generalbill")
+@Api(value = "业务-海、空运舱单,快递业务,海运派车等,各分公司独立", tags = "业务-海、空运舱单,快递业务,海运派车等,各分公司独立接口")
+public class GeneralBillController extends BladeController {
+
+	private final IGeneralBillService generalBillService;
+
+	/**
+	 * 详情
+	 */
+	@GetMapping("/detail")
+	@ApiOperationSupport(order = 1)
+	@ApiOperation(value = "详情", notes = "传入generalBill")
+	public R<GeneralBill> detail(GeneralBill generalBill) {
+		GeneralBill detail = generalBillService.getOne(Condition.getQueryWrapper(generalBill));
+		return R.data(detail);
+	}
+
+	/**
+	 * 分页 业务-海、空运舱单,快递业务,海运派车等,各分公司独立
+	 */
+	@GetMapping("/list")
+	@ApiOperationSupport(order = 2)
+	@ApiOperation(value = "分页", notes = "传入generalBill")
+	public R<IPage<GeneralBill>> list(GeneralBill generalBill, Query query) {
+		IPage<GeneralBill> pages = generalBillService.page(Condition.getPage(query), Condition.getQueryWrapper(generalBill));
+		return R.data(pages);
+	}
+
+	/**
+	 * 自定义分页 业务-海、空运舱单,快递业务,海运派车等,各分公司独立
+	 */
+	@GetMapping("/page")
+	@ApiOperationSupport(order = 3)
+	@ApiOperation(value = "分页", notes = "传入generalBill")
+	public R<IPage<GeneralBillVO>> page(GeneralBillVO generalBill, Query query) {
+		IPage<GeneralBillVO> pages = generalBillService.selectGeneralBillPage(Condition.getPage(query), generalBill);
+		return R.data(pages);
+	}
+
+	/**
+	 * 新增 业务-海、空运舱单,快递业务,海运派车等,各分公司独立
+	 */
+	@PostMapping("/save")
+	@ApiOperationSupport(order = 4)
+	@ApiOperation(value = "新增", notes = "传入generalBill")
+	public R save(@Valid @RequestBody GeneralBill generalBill) {
+		return R.status(generalBillService.save(generalBill));
+	}
+
+	/**
+	 * 修改 业务-海、空运舱单,快递业务,海运派车等,各分公司独立
+	 */
+	@PostMapping("/update")
+	@ApiOperationSupport(order = 5)
+	@ApiOperation(value = "修改", notes = "传入generalBill")
+	public R update(@Valid @RequestBody GeneralBill generalBill) {
+		return R.status(generalBillService.updateById(generalBill));
+	}
+
+	/**
+	 * 新增或修改 业务-海、空运舱单,快递业务,海运派车等,各分公司独立
+	 */
+	@PostMapping("/submit")
+	@ApiOperationSupport(order = 6)
+	@ApiOperation(value = "新增或修改", notes = "传入generalBill")
+	public R submit(@Valid @RequestBody GeneralBill generalBill) {
+		return R.status(generalBillService.saveOrUpdate(generalBill));
+	}
+
+
+	/**
+	 * 删除 业务-海、空运舱单,快递业务,海运派车等,各分公司独立
+	 */
+	@PostMapping("/remove")
+	@ApiOperationSupport(order = 8)
+	@ApiOperation(value = "删除", notes = "传入ids")
+	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
+		return R.status(generalBillService.removeByIds(Func.toLongList(ids)));
+	}
+
+
+}

+ 42 - 0
blade-service/blade-los/src/main/java/org/springblade/los/business/generalBill/mapper/GeneralBillMapper.java

@@ -0,0 +1,42 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.los.business.generalBill.mapper;
+
+import org.springblade.los.business.generalBill.entity.GeneralBill;
+import org.springblade.los.business.generalBill.vo.GeneralBillVO;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import java.util.List;
+
+/**
+ * 业务-海、空运舱单,快递业务,海运派车等,各分公司独立 Mapper 接口
+ *
+ * @author BladeX
+ * @since 2025-06-19
+ */
+public interface GeneralBillMapper extends BaseMapper<GeneralBill> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page
+	 * @param generalBill
+	 * @return
+	 */
+	List<GeneralBillVO> selectGeneralBillPage(IPage page, GeneralBillVO generalBill);
+
+}

+ 76 - 0
blade-service/blade-los/src/main/java/org/springblade/los/business/generalBill/mapper/GeneralBillMapper.xml

@@ -0,0 +1,76 @@
+<?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="org.springblade.los.business.generalBill.mapper.GeneralBillMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="generalBillResultMap" type="org.springblade.los.business.generalBill.entity.GeneralBill">
+        <id column="id" property="id"/>
+        <result column="branch_id" property="branchId"/>
+        <result column="create_user" property="createUser"/>
+        <result column="create_user_name" property="createUserName"/>
+        <result column="create_dept" property="createDept"/>
+        <result column="create_dept_name" property="createDeptName"/>
+        <result column="create_time" property="createTime"/>
+        <result column="update_user" property="updateUser"/>
+        <result column="update_user_name" property="updateUserName"/>
+        <result column="update_time" property="updateTime"/>
+        <result column="bill_type" property="billType"/>
+        <result column="business_type" property="businessType"/>
+        <result column="bill_no" property="billNo"/>
+        <result column="bill_date" property="billDate"/>
+        <result column="operator_id" property="operatorId"/>
+        <result column="operator_name" property="operatorName"/>
+        <result column="acc_dept" property="accDept"/>
+        <result column="acc_dept_name" property="accDeptName"/>
+        <result column="corp_id" property="corpId"/>
+        <result column="corp_cn_name" property="corpCnName"/>
+        <result column="corp_en_name" property="corpEnName"/>
+        <result column="src_type" property="srcType"/>
+        <result column="src_id" property="srcId"/>
+        <result column="src_cn_name" property="srcCnName"/>
+        <result column="src_en_name" property="srcEnName"/>
+        <result column="consigner_id" property="consignerId"/>
+        <result column="consigner_cn_name" property="consignerCnName"/>
+        <result column="consigner_en_name" property="consignerEnName"/>
+        <result column="manifest_id" property="manifestId"/>
+        <result column="manifest_cn_name" property="manifestCnName"/>
+        <result column="manifest_en_name" property="manifestEnName"/>
+        <result column="vessel_id" property="vesselId"/>
+        <result column="vessel_cn_name" property="vesselCnName"/>
+        <result column="vessel_en_name" property="vesselEnName"/>
+        <result column="voyage_no" property="voyageNo"/>
+        <result column="mblno" property="mblno"/>
+        <result column="hblno" property="hblno"/>
+        <result column="refno" property="refno"/>
+        <result column="etd" property="etd"/>
+        <result column="eta" property="eta"/>
+        <result column="commodity_name" property="commodityName"/>
+        <result column="pol_id" property="polId"/>
+        <result column="pol_code" property="polCode"/>
+        <result column="pol_cn_name" property="polCnName"/>
+        <result column="pol_en_name" property="polEnName"/>
+        <result column="pod_id" property="podId"/>
+        <result column="pod_code" property="podCode"/>
+        <result column="pod_cn_name" property="podCnName"/>
+        <result column="pod_en_name" property="podEnName"/>
+        <result column="quantity" property="quantity"/>
+        <result column="gross_weight" property="grossWeight"/>
+        <result column="net_weight" property="netWeight"/>
+        <result column="measurement" property="measurement"/>
+        <result column="container_quantity" property="containerQuantity"/>
+        <result column="check_refno" property="checkRefno"/>
+        <result column="src_operator_name" property="srcOperatorName"/>
+        <result column="is_amend" property="isAmend"/>
+        <result column="version" property="version"/>
+        <result column="status" property="status"/>
+        <result column="is_deleted" property="isDeleted"/>
+        <result column="remarks" property="remarks"/>
+        <result column="issue_status" property="issueStatus"/>
+    </resultMap>
+
+
+    <select id="selectGeneralBillPage" resultMap="generalBillResultMap">
+        select * from los_general_bill where is_deleted = 0
+    </select>
+
+</mapper>

+ 41 - 0
blade-service/blade-los/src/main/java/org/springblade/los/business/generalBill/service/IGeneralBillService.java

@@ -0,0 +1,41 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.los.business.generalBill.service;
+
+import org.springblade.los.business.generalBill.entity.GeneralBill;
+import org.springblade.los.business.generalBill.vo.GeneralBillVO;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+
+/**
+ * 业务-海、空运舱单,快递业务,海运派车等,各分公司独立 服务类
+ *
+ * @author BladeX
+ * @since 2025-06-19
+ */
+public interface IGeneralBillService extends IService<GeneralBill> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page
+	 * @param generalBill
+	 * @return
+	 */
+	IPage<GeneralBillVO> selectGeneralBillPage(IPage<GeneralBillVO> page, GeneralBillVO generalBill);
+
+}

+ 41 - 0
blade-service/blade-los/src/main/java/org/springblade/los/business/generalBill/service/impl/GeneralBillServiceImpl.java

@@ -0,0 +1,41 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.los.business.generalBill.service.impl;
+
+import org.springblade.los.business.generalBill.entity.GeneralBill;
+import org.springblade.los.business.generalBill.vo.GeneralBillVO;
+import org.springblade.los.business.generalBill.mapper.GeneralBillMapper;
+import org.springblade.los.business.generalBill.service.IGeneralBillService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+
+/**
+ * 业务-海、空运舱单,快递业务,海运派车等,各分公司独立 服务实现类
+ *
+ * @author BladeX
+ * @since 2025-06-19
+ */
+@Service
+public class GeneralBillServiceImpl extends ServiceImpl<GeneralBillMapper, GeneralBill> implements IGeneralBillService {
+
+	@Override
+	public IPage<GeneralBillVO> selectGeneralBillPage(IPage<GeneralBillVO> page, GeneralBillVO generalBill) {
+		return page.setRecords(baseMapper.selectGeneralBillPage(page, generalBill));
+	}
+
+}

+ 9 - 9
blade-service/blade-los/src/main/java/org/springblade/los/business/sea/service/impl/BillsServiceImpl.java

@@ -3669,14 +3669,14 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 				.eq(PreContainers::getIsDeleted, 0)
 				.in(PreContainers::getPid, Func.toLongList(ids)));
 		}
-		String type ="";
-		if ("SE".equals(billsList.get(0).getBusinessType())){
+		String type = "";
+		if ("SE".equals(billsList.get(0).getBusinessType())) {
 			type = "HYCK";
-		}else if ("SI".equals(billsList.get(0).getBusinessType())){
+		} else if ("SI".equals(billsList.get(0).getBusinessType())) {
 			type = "HYJK";
-		}else if ("AI".equals(billsList.get(0).getBusinessType())){
+		} else if ("AI".equals(billsList.get(0).getBusinessType())) {
 			type = "KYJK";
-		}else if ("AE".equals(billsList.get(0).getBusinessType())){
+		} else if ("AE".equals(billsList.get(0).getBusinessType())) {
 			type = "KYCK";
 		}
 		BusinessType businessType = bBusinessTypeService.getOne(new LambdaQueryWrapper<BusinessType>()
@@ -3697,7 +3697,7 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 			copyBills.setId(null);
 			BusinessBillNo businessBillNo = new BusinessBillNo();
 			businessBillNo.setBusinessTypeId(businessType.getId());
-			if ("SE,SI".contains(item.getBusinessType())){
+			if ("SE,SI".contains(item.getBusinessType())) {
 				if ("dry".equals(copyBills.getCargoType())) {
 					businessBillNo.setCode(type + "-PH");
 				} else if ("danger".equals(copyBills.getCargoType())) {
@@ -3707,7 +3707,7 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 				} else {
 					businessBillNo.setCode(type + "-PH");
 				}
-			}else{
+			} else {
 				businessBillNo.setCode(type);
 			}
 			R clientBillNo = businessBillNoService.getBillNoLos(businessBillNo);
@@ -3883,9 +3883,9 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 		List<Bills> billsList = baseMapper.selectList(new LambdaQueryWrapper<Bills>().in(Bills::getId, updateBillsFieldVo.getIds()));
 		List<Integer> statusList = Arrays.asList(1, 2, 3);
 		// 筛选不可更改状态的数据
-		Bills notUpdateBills = billsList.stream().filter(e -> !statusList.contains(e.getStatus()) || e.getIsDeleted() == 1).findFirst().orElse(null);
+		Bills notUpdateBills = billsList.stream().filter(e -> statusList.contains(e.getStatus()) || e.getIsDeleted() == 1).findFirst().orElse(null);
 		if (notUpdateBills != null) {
-			return R.fail("单据编号为" + notUpdateBills.getBillNo() + "的记录不能修改");
+			return R.fail("单据编号为" + notUpdateBills.getBillNo() + "的记录已提交审核或审核通过不能修改");
 		}
 		for (Bills bills : billsList) {
 			Bills updateBills = new Bills();

+ 6 - 6
blade-service/blade-los/src/main/java/org/springblade/los/finance/fee/mapper/FinAccBillsMapper.java

@@ -52,17 +52,17 @@ public interface FinAccBillsMapper extends BaseMapper<FinAccBills> {
 													   @Param("deptPid") Long deptPid, @Param("postId") String postId
 		, @Param("corpId") Long corpId);
 
-	List<FeeSummaryRD> feeSummary(IPage<FeeSummaryRD> page, @Param("fee") FeeSummaryQ feeSummaryQ);
+	List<FeeSummaryRD> feeSummaryList(IPage<FeeSummaryRD> page, @Param("fee") FeeSummaryQ feeSummaryQ);
 
-	List<FeeSummaryRD> feeSummaryExport(@Param("fee") FeeSummaryQ feeSummaryQ);
+	List<FeeSummaryRD> feeSummaryExportList(@Param("fee") FeeSummaryQ feeSummaryQ);
 
-	List<FeeSummaryDetailRD> feeSummaryDetail(IPage<FeeSummaryDetailRD> page, @Param("fee")FeeSummaryQ feeSummaryQ);
+	List<FeeSummaryDetailRD> feeSummaryDetailList(IPage<FeeSummaryDetailRD> page, @Param("fee")FeeSummaryQ feeSummaryQ);
 
-	List<FeeSummaryDetailRD> feeSummaryDetailExport(@Param("fee")FeeSummaryQ feeSummaryQ);
+	List<FeeSummaryDetailRD> feeSummaryDetailExportList(@Param("fee")FeeSummaryQ feeSummaryQ);
 
-	List<FeeSummaryDetailNotRD> feeSummaryDetailNot(IPage<FeeSummaryDetailNotRD> page, @Param("fee")FeeSummaryQ feeSummaryQ);
+	List<FeeSummaryDetailNotRD> feeSummaryDetailNotList(IPage<FeeSummaryDetailNotRD> page, @Param("fee")FeeSummaryQ feeSummaryQ);
 
-	List<FeeSummaryDetailNotRD> feeSummaryDetailExportNot(@Param("fee")FeeSummaryQ feeSummaryQ);
+	List<FeeSummaryDetailNotRD> feeSummaryDetailExportNotList(@Param("fee")FeeSummaryQ feeSummaryQ);
 
 	List<AgingAnalysisRD> agingAnalysis(IPage<AgingAnalysisRD> page, @Param("fee")FeeSummaryQ feeSummaryQ);
 

+ 8 - 6
blade-service/blade-los/src/main/java/org/springblade/los/finance/fee/mapper/FinAccBillsMapper.xml

@@ -174,7 +174,7 @@
         GROUP BY
         mblno
     </select>
-    <select id="feeSummary" resultType="org.springblade.los.statisticAnalysis.FeeSummaryRD">
+    <select id="feeSummaryList" resultType="org.springblade.los.statisticAnalysis.FeeSummaryRD">
         SELECT
         <if test='fee.type != null and fee.type != "" and fee.type == "1"'>
             acc.corp_cn_name corpName,
@@ -254,7 +254,7 @@
             GROUP BY acc.corp_id
         </if>
     </select>
-    <select id="feeSummaryExport" resultType="org.springblade.los.statisticAnalysis.FeeSummaryRD">
+    <select id="feeSummaryExportList" resultType="org.springblade.los.statisticAnalysis.FeeSummaryRD">
         SELECT
         <if test='fee.type != null and fee.type != "" and fee.type == "1"'>
             acc.corp_cn_name corpName,
@@ -334,7 +334,7 @@
             GROUP BY acc.corp_id
         </if>
     </select>
-    <select id="feeSummaryDetail" resultType="org.springblade.los.statisticAnalysis.FeeSummaryDetailRD">
+    <select id="feeSummaryDetailList" resultType="org.springblade.los.statisticAnalysis.FeeSummaryDetailRD">
         SELECT
         <if test='fee.type != null and fee.type != "" and fee.type == "1"'>
             acc.corp_cn_name corpName,
@@ -432,7 +432,7 @@
         </if>
         ORDER BY acc.corp_id
     </select>
-    <select id="feeSummaryDetailExport" resultType="org.springblade.los.statisticAnalysis.FeeSummaryDetailRD">
+    <select id="feeSummaryDetailExportList" resultType="org.springblade.los.statisticAnalysis.FeeSummaryDetailRD">
         SELECT
         <if test='fee.type != null and fee.type != "" and fee.type == "1"'>
             acc.corp_cn_name corpName,
@@ -449,6 +449,8 @@
         acc.bill_no billNo,
         acc.mblno mblNo,
         acc.business_type businessType,
+        CASE
+        acc.business_type
         WHEN 'SI' THEN
         acc.eta
         WHEN 'SIA' THEN
@@ -533,7 +535,7 @@
         </if>
         ORDER BY acc.mblno,acc.corp_id
     </select>
-    <select id="feeSummaryDetailNot" resultType="org.springblade.los.statisticAnalysis.FeeSummaryDetailNotRD">
+    <select id="feeSummaryDetailNotList" resultType="org.springblade.los.statisticAnalysis.FeeSummaryDetailNotRD">
         SELECT
         <if test='fee.type != null and fee.type != "" and fee.type == "1"'>
             acc.corp_cn_name corpName,
@@ -642,7 +644,7 @@
         </if>
         ORDER BY acc.mblno,acc.corp_id
     </select>
-    <select id="feeSummaryDetailExportNot"
+    <select id="feeSummaryDetailExportNotList"
             resultType="org.springblade.los.statisticAnalysis.FeeSummaryDetailNotRD">
         SELECT
         <if test='fee.type != null and fee.type != "" and fee.type == "1"'>

+ 6 - 6
blade-service/blade-los/src/main/java/org/springblade/los/statisticAnalysis/service/impl/StatisticAnalysisServiceImpl.java

@@ -954,32 +954,32 @@ public class StatisticAnalysisServiceImpl extends ServiceImpl<FinanceProfitMappe
 
 	@Override
 	public R<IPage<FeeSummaryRD>> feeSummary(FeeSummaryQ feeSummaryQ, IPage<FeeSummaryRD> page) {
-		return R.data(page.setRecords(finAccBillsMapper.feeSummary(page, feeSummaryQ)));
+		return R.data(page.setRecords(finAccBillsMapper.feeSummaryList(page, feeSummaryQ)));
 	}
 
 	@Override
 	public List<FeeSummaryRD> feeSummaryExport(FeeSummaryQ feeSummaryQ) {
-		return finAccBillsMapper.feeSummaryExport(feeSummaryQ);
+		return finAccBillsMapper.feeSummaryExportList(feeSummaryQ);
 	}
 
 	@Override
 	public R<IPage<FeeSummaryDetailRD>> feeSummaryDetail(FeeSummaryQ feeSummaryQ, IPage<FeeSummaryDetailRD> page) {
-		return R.data(page.setRecords(finAccBillsMapper.feeSummaryDetail(page, feeSummaryQ)));
+		return R.data(page.setRecords(finAccBillsMapper.feeSummaryDetailList(page, feeSummaryQ)));
 	}
 
 	@Override
 	public List<FeeSummaryDetailRD> feeSummaryDetailExport(FeeSummaryQ feeSummaryQ) {
-		return finAccBillsMapper.feeSummaryDetailExport(feeSummaryQ);
+		return finAccBillsMapper.feeSummaryDetailExportList(feeSummaryQ);
 	}
 
 	@Override
 	public R<IPage<FeeSummaryDetailNotRD>> feeSummaryDetailNot(FeeSummaryQ feeSummaryQ, IPage<FeeSummaryDetailNotRD> page) {
-		return R.data(page.setRecords(finAccBillsMapper.feeSummaryDetailNot(page, feeSummaryQ)));
+		return R.data(page.setRecords(finAccBillsMapper.feeSummaryDetailNotList(page, feeSummaryQ)));
 	}
 
 	@Override
 	public List<FeeSummaryDetailNotRD> feeSummaryDetailExportNot(FeeSummaryQ feeSummaryQ) {
-		return finAccBillsMapper.feeSummaryDetailExportNot(feeSummaryQ);
+		return finAccBillsMapper.feeSummaryDetailExportNotList(feeSummaryQ);
 	}
 
 	@Override