feat: 国际出港查询

This commit is contained in:
2025-12-02 18:02:17 +08:00
parent 0c3c78b42e
commit be0541f522
14 changed files with 1253 additions and 8 deletions

View File

@@ -0,0 +1,203 @@
package com.lukouguoji.module_base.bean
import java.util.Date
/**
* 国际出港主单数据模型
* 对应接口:/IntExpSearch/pageQuery 返回的列表项
*/
data class GjcMaWb(
// ==================== 主键与基础信息 ====================
var maWbId: Long? = null, // 主单主键ID
var wbNo: String? = null, // 11位运单号
var prefix: String? = null, // 运单号前缀3位
var no: String? = null, // 运单号主体8位
var oldPrefix: String? = null, // 旧运单前缀
var oldNo: String? = null, // 旧运单号
// ==================== 航班信息 ====================
var fid: Long? = null, // 航班主键id
var fno: String? = null, // 航班号
var fdate: Date? = null, // 航班日期
var flight: String? = null, // 航班: 航班日期/航班号
var fclose: Date? = null, // 航班关闭时间
var scheduledTackOff: Date? = null, // 计划起飞时间
var scheduledArrival: Date? = null, // 预计到达时间
// ==================== 目的地信息 ====================
var dep: String? = null, // 始发站
var dest: String? = null, // 最终目的站
var dest1: String? = null, // 第一目的站
var dest2: String? = null, // 第二目的站
var range: String? = null, // 航程
// ==================== 代理与承运人 ====================
var agentCode: String? = null, // 代理人code
var agentName: String? = null, // 代理人名称
var customsLib: String? = null, // 代理人lib
var by0: String? = null, // 第一承运人
var by1: String? = null, // 第二承运人
var by2: String? = null, // 第三承运人
// ==================== 货物信息 ====================
var pc: Long? = null, // 预配件数
var weight: Double? = null, // 预配重量KG
var volume: Double? = null, // 预配体积CBM
var goods: String? = null, // 品名(英)
var goodsCn: String? = null, // 品名(中)
var packageType: String? = null, // 包装类型
var cargoType: String? = null, // 货物类型
var origin: String? = null, // 货源地
// ==================== 运抵信息 ====================
var arrivePc: Long? = null, // 运抵件数
var arriveWeight: Double? = null, // 运抵重量
var arriveVolume: Double? = null, // 运抵体积
var arriveFlag: String? = null, // 运抵状态0正常运抵1提前运抵
// ==================== 特码与收货人 ====================
var spCode: String? = null, // 特码
var subCode: String? = null, // 子码
var consignee: String? = null, // 收货人
var cneeTel: String? = null, // 收货人电话
// ==================== 运单类型 ====================
var awbType: String? = null, // 运单类型code
var awbName: String? = null, // 运单类型名称(中)
var businessType: String? = null, // 业务类型code
var businessName: String? = null, // 业务类型名称(中)
// ==================== 车辆信息 ====================
var carId: String? = null, // 平板车号
var carNumber: String? = null, // 车牌号
// ==================== 状态信息 ====================
var checkIn: String? = null, // 收运状态。0待收运1已收运2收运中
var declareStatus: String? = null, // 申报状态
var reviewStatus: String? = null, // 审核状态0未审核1通过2退回
var tranFlag: String? = null, // 转运标志
// ==================== 操作信息 ====================
var opDate: Date? = null, // 操作时间(入库时间)
var opId: String? = null, // 操作员id
var paperTime: Date? = null, // 单证时间
// ==================== 备注与其他 ====================
var remark: String? = null, // 备注
var ffmMemo: String? = null, // ffm备注
var mftMemo: String? = null, // mft备注
var unNumber: String? = null, // UN编号
var billsNo: String? = null, // 提单号
var recheckCount: Long? = null, // 复核次数
// ==================== 地区信息 ====================
var proName: String? = null, // 省份名称
var cityName: String? = null, // 城市名称
var areaName: String? = null, // 区域名称
// ==================== 关联数据统计 ====================
var haWbNumber: Int? = null, // 分单数
var storageUseNumber: Int? = null, // 库位使用数
// ==================== 活动标识 ====================
var activeId: Long? = null, // 有效值
// ==================== 关联列表(非数据库字段,用于展示) ====================
var haWbList: List<GjcHaWb>? = null, // 分单列表
var storageUseList: List<GjcStorageUse>? = null, // 库位使用列表
var attachList: List<ComAttach>? = null // 附件列表
)
/**
* 国际出港分单数据模型
*/
data class GjcHaWb(
var haWbId: Long? = null, // 主键ID
var fid: Long? = null, // 航班主键
var prefix: String? = null, // 前缀
var no: String? = null, // 编号
var hno: String? = null, // H编号
var pc: Long? = null, // PC数量
var weight: Double? = null, // 重量
var volume: Double? = null, // 体积
var hpc: Long? = null, // 分单数量
var hweight: Double? = null, // 分单重量
var hvolume: Double? = null, // 分单体积
var goods: String? = null, // 货物英文
var goodsCn: String? = null, // 货物中文
var billsNo: String? = null, // 提单号
var opDate: Date? = null, // 操作日期
var opId: String? = null, // 操作人ID
var remark: String? = null, // 备注
// 发货人信息
var consignorName: String? = null, // 发货人名称
var consignorCode: String? = null, // 发货人代码
var consignorAddress: String? = null, // 发货人地址
var consignorCountryCode: String? = null, // 发货人国家代码
var consignorComType: String? = null, // 发货人公司类型
var consignorPnum: String? = null, // 发货人电话号码
// 收货人信息
var consigneeName: String? = null, // 收货人名称
var consigneeCode: String? = null, // 收货人代码
var consigneeAddress: String? = null, // 收货人地址
var consigneeCountryCode: String? = null, // 收货人国家代码
var consigneeComType: String? = null, // 收货人公司类型
var consigneePnum: String? = null, // 收货人电话号码
// 特殊收货人信息
var speConsigneeName: String? = null, // 特殊收货人名称
var speConsigneeComType: String? = null, // 特殊收货人公司类型
var speConsigneePnum: String? = null, // 特殊收货人电话号码
// 申报状态
var mftStatus: String? = null, // 预配状态
var mftMsgId: String? = null, // 预配消息ID
var arrivalStatus: String? = null, // 运抵状态
var arrMsgId: String? = null, // 运抵消息ID
var tallyStatus: String? = null, // 理货状态
var tallyMsgId: String? = null, // 理货消息ID
var transferStatus: String? = null, // 传输状态
var tranMsgId: String? = null, // 传输消息ID
var cmdStatus: String? = null, // 命令状态
var response: String? = null, // 响应
// 最后状态
var lastMftStatus: String? = null, // 最后预配状态
var lastMftMsgId: String? = null, // 最后预配消息ID
var lastArrStatus: String? = null, // 最后运抵状态
var lastArrMsgId: String? = null, // 最后运抵消息ID
var lastTallyStatus: String? = null, // 最后理货状态
var lastTallyMsgId: String? = null, // 最后理货消息ID
// 费率计次
var mftSRate: Double? = null, // 预配申报费率
var mftSCount: Double? = null, // 预配申报计次
var mftDRate: Double? = null, // 预配删除费率
var mftDCount: Double? = null, // 预配删除计次
var arrivalSRate: Double? = null, // 运抵申报费率
var arrivalSCount: Double? = null, // 运抵申报计次
var arrivalDRate: Double? = null, // 运抵删除费率
var arrivalDCount: Double? = null, // 运抵删除计次
var tallySRate: Double? = null, // 出港理货申报费率
var tallySCount: Double? = null, // 出港理货申报计次
var tallyDRate: Double? = null, // 出港理货删除费率
var tallyDCount: Double? = null, // 出港理货删除计次
// 操作信息
var arrivalOpDate: Date? = null, // 运抵操作日期
var arrivalOpId: String? = null, // 运抵操作人ID
var tallyOpDate: Date? = null, // 理货操作日期
var tallyOpId: String? = null, // 理货操作人ID
var declareCount: Long? = null, // 申报次数
var activeId: Long? = null // 活动ID
)
/**
* 库位使用记录
*/
data class GjcStorageUse(
var id: Long? = null, // 主键
var maWbId: Long? = null, // 运单id
var prefix: String? = null, // 运单前缀
var no: String? = null, // 运单号
var storageCode: String? = null, // 库位号
var inDate: Date? = null, // 入库时间
var inId: String? = null, // 入库人
var outDate: Date? = null, // 出库时间
var outId: String? = null // 出库人
)

View File

@@ -0,0 +1,47 @@
package com.lukouguoji.module_base.bean
import java.util.Date
/**
* 国际出港查询参数封装类
* 对应接口:/IntExpSearch/pageQuery
*/
data class GjcMostMouldPage(
// ==================== 分页参数 ====================
var pageNum: Int? = null, // 页号
var pageSize: Int? = null, // 每页显示条数
// ==================== 基础搜索条件 ====================
var fdate: Date? = null, // 航班日期
var fno: String? = null, // 航班号
var agentCode: String? = null, // 代理人code
var outState: Int? = null, // 出库状态0未出库1:已出库)
var wbNo: String? = null, // 运单号11位
var no: String? = null, // 运单号
// ==================== 筛选条件 ====================
var spCode: String? = null, // 特码
var dest: String? = null, // 目的港
var awbType: String? = null, // 运单类型
var businessType: String? = null, // 业务类型
var goodsCn: String? = null, // 品名(中)
// ==================== 其他可选条件 ====================
var beginDate: Date? = null, // 航班开始时间
var endDate: Date? = null, // 航班结束时间
var by1: String? = null, // 承运人
var carId: String? = null, // 板车号
var dest1: String? = null, // 卸货站
var fdest: String? = null, // 目的站
var handoverState: Int? = null, // 交接状态0未交接1:已交接)
var isFclose: Boolean? = null, // 筛选航班是否关闭
var ldId: String? = null, // 组装人
var likeNo: String? = null, // 运单号(模糊查询)
var moveState: Int? = null, // 移库状态
var prefix: String? = null, // 运单号前缀
var uld: String? = null, // uld编号
// 分页辅助字段
var startIndex: Int? = null,
var endIndex: Int? = null
)

View File

@@ -0,0 +1,48 @@
package com.lukouguoji.module_base.bean
import java.util.ArrayList
/**
* 分页响应容器 (适配MyBatis-Plus的PageInfo结构)
* 用于适配接口返回的PageInfo<T>结构
*/
class PageInfo<T> {
// 当前页号
var pageNum: Int = 1
// 每页显示条数
var pageSize: Int = 10
// 数据总量
var total: Long = 0
// 页面总量
var pages: Int = 1
// 数据列表
var list: ArrayList<T>? = null
// 是否有下一页
var hasNextPage: Boolean = false
// 是否有上一页
var hasPreviousPage: Boolean = false
// 是否是第一页
var isFirstPage: Boolean = true
// 是否是最后一页
var isLastPage: Boolean = false
/**
* 转换为项目使用的BaseListBean
* 这是核心方法用于适配项目中的PageModel
*/
fun toBaseListBean(): BaseListBean<T> {
return BaseListBean<T>().apply {
this.pages = this@PageInfo.pages
this.total = this@PageInfo.total.toInt()
this.list = this@PageInfo.list
}
}
}

View File

@@ -35,6 +35,8 @@ import com.lukouguoji.module_base.bean.GjcWaybillDataBean
import com.lukouguoji.module_base.bean.GjcWeighingBean
import com.lukouguoji.module_base.bean.GjcWeighingRecordBean
import com.lukouguoji.module_base.bean.GjcWeighingStatisticsBean
import com.lukouguoji.module_base.bean.GjcMaWb
import com.lukouguoji.module_base.bean.PageInfo
import com.lukouguoji.module_base.bean.GjjGoodsBean
import com.lukouguoji.module_base.bean.GjjGoodsDetailsBean
import com.lukouguoji.module_base.bean.GjjGoodsTypeBean
@@ -417,6 +419,20 @@ interface Api {
@POST("IntExpCheckInCheck/pageQueryTotal")
suspend fun getGjcInspectionTotal(@Body data: RequestBody): BaseResultBean<ManifestTotalDto>
/**
* 国际出港查询-分页查询
* 接口路径: /IntExpSearch/pageQuery
*/
@POST("IntExpSearch/pageQuery")
suspend fun getGjcQueryList(@Body data: RequestBody): BaseResultBean<PageInfo<GjcMaWb>>
/**
* 国际出港查询-分页合计统计
* 接口路径: /IntExpSearch/pageQueryTotal
*/
@POST("IntExpSearch/pageQueryTotal")
suspend fun getGjcQueryTotal(@Body data: RequestBody): BaseResultBean<ManifestTotalDto>
/**
* 国际出港板箱过磅-分页搜索
* 接口路径: /IntExpWeighting/pageQuery