feat: dev

This commit is contained in:
2025-11-14 12:15:33 +08:00
parent aa8ac2271a
commit c6330a818f
22 changed files with 2036 additions and 2831 deletions

View File

@@ -0,0 +1,75 @@
package com.lukouguoji.module_base.bean
import androidx.databinding.ObservableBoolean
import com.lukouguoji.module_base.interfaces.ICheck
/**
* 国际出港收运检查数据Bean
* 对应后端 GjcMaWb 对象
*/
class GjcInspectionBean : ICheck {
var maWbId: Long = 0 // 主键ID GJC_MAWB.MAWBID
var wbNo: String = "" // 11位运单号
var no: String = "" // 运单号(含前缀)
var prefix: String = "" // 运单前缀
var agentCode: String = "" // 代理人
var agentName: String = "" // 代理人名称
var spCode: String = "" // 特码
var pc: Long = 0 // 预配件数
var weight: Double = 0.0 // 预配重量
var volume: Double = 0.0 // 预配体积
var flight: String = "" // 航班(格式: 航班日期/航班号)
var fdate: String = "" // 航班日期
var fno: String = "" // 航班号
var range: String = "" // 航程
var dep: String = "" // 始发站
var dest: String = "" // 最终目的站
var scheduledTackOff: String = "" // 计划起飞时间
var scheduledArrival: String = "" // 预计到达时间
var businessType: String = "" // 业务类型
var businessName: String = "" // 业务类型名称(中)
var awbType: String = "" // 运单类型
var awbName: String = "" // 运单类型名称(中)
var reviewStatus: String = "" // 审核状态0未审核1通过2退回
var checkIn: String = "" // 收运状态0待收运1已收运2收运中
var goods: String = "" // 品名(英)
var goodsCn: String = "" // 品名(中)
var origin: String = "" // 货源地
var consignee: String = "" // 收货人
var remark: String = "" // 备注
// 多选状态绑定
val checked = ObservableBoolean(false)
override fun getCheckObservable(): ObservableBoolean {
return checked
}
/**
* 获取审核状态名称
*/
fun getReviewStatusName(): String {
return when (reviewStatus) {
"1" -> "已通过"
"2" -> "退回"
"0" -> "未审核"
else -> "未知"
}
}
/**
* 获取审核状态颜色
*/
fun getReviewStatusColor(): String {
return when (reviewStatus) {
"1" -> "#4CAF50" // 绿色-已通过
"2" -> "#F44336" // 红色-退回
else -> "#9E9E9E" // 灰色-未审核
}
}
}

View File

@@ -0,0 +1,47 @@
package com.lukouguoji.module_base.bean
import androidx.databinding.ObservableBoolean
import com.lukouguoji.module_base.interfaces.ICheck
/**
* 国内出港收运检查数据Bean
*/
class GncInspectionBean : ICheck {
var id: String = "" // 主键ID
var mawbId: String = "" // 主运单ID
var wbNo: String = "" // 运单号
var agentCode: String = "" // 代理人
var spCode: String = "" // 特码
var apc: String = "" // 预配件数
var weight: String = "" // 预配重量(kg)
var flight: String = "" // 计划航班(格式: 20240216/MU2026)
var fdate: String = "" // 航班日期
var fno: String = "" // 航班号
var route: String = "" // 航程(格式: HFE - PEK)
var origin: String = "" // 始发港
var dest: String = "" // 目的港
var scheduledTackOff: String = "" // 预计起飞时间
var businessType: String = "" // 业务类型
var auditStatus: String = "" // 审核状态编码
var auditStatusName: String = "" // 审核状态名称(已通过/退回/未审核)
var remark: String = "" // 备注
// 多选状态绑定
val checked = ObservableBoolean(false)
override fun getCheckObservable(): ObservableBoolean {
return checked
}
/**
* 获取审核状态颜色
* 已通过=绿色、退回=红色、未审核=灰色
*/
fun getAuditStatusColor(): String {
return when (auditStatusName) {
"已通过" -> "#4CAF50" // 绿色
"退回" -> "#F44336" // 红色
else -> "#9E9E9E" // 灰色
}
}
}

View File

@@ -0,0 +1,10 @@
package com.lukouguoji.module_base.bean
/**
* 统计数据Bean
*/
class StatisticsBean {
var totalCount: String = "" // 合计票数
var totalPc: String = "" // 总件数
var totalWeight: String = "" // 总重量
}

View File

@@ -211,6 +211,7 @@ interface Constant {
const val AppDomExpAssemble = "AppDomExpAssemble"//国内出港 组装
const val AppDomExpDistribution = "AppDomExpDistribution"//国内出港 分配
const val AppDomExpDeposit = "AppDomExpDeposit"//国内出港 存放
const val AppDomExpInspection = "AppDomExpInspection"//国内出港 收运检查
/**
* 国内进港
@@ -238,6 +239,7 @@ interface Constant {
const val GjcBanXListActivity = "AppIntExpBox" //板箱
const val GjcGoodsListActivity = "AppIntExpGoods" //货物交接
const val GjcInspectionActivity = "AppIntExpInspection" //收运检查
/**
* 国际进港

View File

@@ -34,4 +34,7 @@ object ConstantEvent {
// 国内进港移库列表刷新
const val EVENT_REFRESH_GNJ_YIKU_LIST = "event_refresh_gnj_yiku_list"
// 通用刷新事件
const val EVENT_REFRESH = "event_refresh"
}

View File

@@ -42,6 +42,8 @@ import com.lukouguoji.module_base.bean.GncAssembleListBean
import com.lukouguoji.module_base.bean.GncCunFangBean
import com.lukouguoji.module_base.bean.GncDistributionBean
import com.lukouguoji.module_base.bean.GncFuBangBean
import com.lukouguoji.module_base.bean.GjcInspectionBean
import com.lukouguoji.module_base.bean.GncInspectionBean
import com.lukouguoji.module_base.bean.GncQueryBean
import com.lukouguoji.module_base.bean.GncQueryDetailsBean
import com.lukouguoji.module_base.bean.GncShouYunBean
@@ -61,6 +63,7 @@ import com.lukouguoji.module_base.bean.PackageBean
import com.lukouguoji.module_base.bean.SYWaybillBean
import com.lukouguoji.module_base.bean.ShouYunSyncBean
import com.lukouguoji.module_base.bean.SimpleResultBean
import com.lukouguoji.module_base.bean.StatisticsBean
import com.lukouguoji.module_base.bean.TelegramBean
import com.lukouguoji.module_base.bean.TransportLogBean
import com.lukouguoji.module_base.bean.ULDBean
@@ -353,6 +356,23 @@ interface Api {
@PartMap map: MutableMap<String, RequestBody>? = null
): BaseResultBean<Any>
///////////////////////////////////////////////////////////////////////////
// 国际出 - 收运检查
///////////////////////////////////////////////////////////////////////////
/**
* 获取-国际出港-收运检查-列表(分页)
* 接口路径: /IntExpCheckInCheck/pageQuery
*/
@POST("IntExpCheckInCheck/pageQuery")
suspend fun getGjcInspectionList(@Body data: RequestBody): BaseListBean<GjcInspectionBean>
/**
* 批量审核-国际出港-收运检查(通过/退回)
* TODO: 需要确认审核接口路径
*/
@POST("IntExpCheckInCheck/audit")
suspend fun auditGjcInspection(@Body data: RequestBody): BaseResultBean<SimpleResultBean>
///////////////////////////////////////////////////////////////////////////
// 国际进-电报解析
///////////////////////////////////////////////////////////////////////////
@@ -893,6 +913,24 @@ interface Api {
@POST("DomExpSearch/searchById")
suspend fun getGncQueryDetails(@Query("id") id: String): BaseResultBean<GncQueryDetailsBean>
/**
* 获取-国内出港-收运检查-列表
*/
@POST("DomExpInspection/search")
suspend fun getGncInspectionList(@Body data: RequestBody): BaseListBean<GncInspectionBean>
/**
* 获取-国内出港-收运检查-统计数据
*/
@POST("DomExpInspection/statistics")
suspend fun getGncInspectionStatistics(@Body data: RequestBody): BaseResultBean<StatisticsBean>
/**
* 批量审核-国内出港-收运检查(通过/退回)
*/
@POST("DomExpInspection/audit")
suspend fun auditGncInspection(@Body data: RequestBody): BaseResultBean<SimpleResultBean>
/**
* 获取-国内出港-查询-根据主运单Id查询运单详细信息带入库重量、入库件数

View File

@@ -80,6 +80,9 @@ object ARouterConstants {
// 存放
const val ACTIVITY_URL_GNC_DEPOSIT = "/gnc/GncDepositListActivity"
// 收运检查
const val ACTIVITY_URL_GNC_INSPECTION = "/gnc/GncInspectionActivity"
///////////////////// 国内进港模块
/**
* 国内进港模块
@@ -121,7 +124,8 @@ object ARouterConstants {
const val ACTIVITY_URL_GJC_YI_KU = "/gjc/GjcYiKuListActivity" //国际出港 移库
const val ACTIVITY_URL_GJC_BOX_ASSEMBLE = "/gjc/GjcBoxAssembleListActivity" //国际出港 板箱组装
const val ACTIVITY_URL_GJC_GOODS_LIST = "/gjc/GjcGoodsListActivity" //国际出港 板箱组装
const val ACTIVITY_URL_GJC_GOODS_LIST = "/gjc/GjcGoodsListActivity" //国际出港 货物交接
const val ACTIVITY_URL_GJC_INSPECTION = "/gjc/GjcInspectionActivity" //国际出港 收运检查
///////////////// 国际进港模块
/**