using HH.WCS.QingXigongchang.process;
using HH.WCS.QingXigongchang.util;
using SqlSugar;
using System;
namespace HH.WCS.QingXigongchang.wms
{
//---------------------------------------工单信息---------------------------------------
//198服务器
//[SugarTable("dbo.TN_0138")]
//均州现场
//[SugarTable("dbo.TN_0002")]
//新安江
//[SugarTable("dbo.TN_0026")]
[SuGG("工单表")]
public class WorkOrder : BaseModel
{
///
/// 板子类型
///
public string B_Type { get; set; }
//工单自动转运终点区域
///
/// 不存入
/// 具体库区
///
public string TurnArea { get; set; }
///
/// AutoTurn
/// TurnComplete
/// TurnFail
/// 同时当作Note用
///
public string TurnState { get; set; }
///
/// 批次号
///
public string SQL_BatchNo { get; set; }
///
/// 产线号
///
public string SQL_PLineNo { get; set; }
public string FuLe_PLine_No { get; set; }
///
/// 物料再托盘上 堆叠的层数。
///
public int ItemLayer { get; set; }
///
/// 瓶盖机机无,翻斗机线边区连接到翻斗机暂存区
/// --- 瓶坯 链接 翻斗机 settings 中添加了 瓶坯的终点即产
///
public string SQL_LinkLineNO { get; set; }
///
/// 连接区域,瓶盖机连接v8或无;翻斗机连接线边区
/// 设置 机台的对应。终点区域。(即产时使用 )
///
public string SQL_Area { get; set; }
///
/// 入库区 瓶坯的入库选择区域。瓶坯的翻斗机 出去区域。
///
public string SQL_Area1 { get; set; }
//SQL_LinkLineNo2
[SugarColumn(ColumnName = "SQL_LinkLineNo2")]
public string SQL_LinkLineNO1 { get; set; }
///
/// 即产即用
///
public string SQL_UsingNow { get; set; }//SQL_UsingNow "Y"|"N"
///
/// 外调
///
public string SQL_Out { get; set; }//SQL_Out "Y"|"N"
///
/// 工单状态
///
public string SQL_State { get; set; }//SQL_State
///
/// 工单号
///
public string SQL_WorkNo { get; set; }//SQL_WorkNo
///
/// 工单限制数。 限制任务中 最大锁排数量 -
///
public int N_LimitNum { get; set; }//SQL_WorkNo
///
/// 物料编码
///
public string SQL_ItemCode { get; set; }
///
/// 物料名称
///
public string SQL_ItemName { get; set; }//SQL_ItemName
///
/// 总数
///
public string SQL_Total { get; set; }//SQL_Total
///
/// 即产即用数量
///
public string SQL_UsingNowTotal { get; set; }
///
/// 每批运输数量
///
[SugarColumn(IsIgnore = !TaskProcess.UPFule)]
public string SQL_PCNumber_using { get; set; } = "0";//SQL_PCNumber=""
public string SQL_PCNumber { get; set; }//SQL_PCNumber
/// s
/// 计数(已执行数量)
///
public string SQL_Current { get; set; }//SQL_Current
///
/// 当前工单执行时间
///
public string SQL_Modify { get; set; }//SQL_Modify
///
/// 当前工单结束时间
///
public string SQL_PLAN_END { get; set; }
///
/// 是、否
///
public string SQL_AutoComplete { get; set; }
[SugarColumn(IsIgnore = true)]
public bool IsFinished { get; set; } = false;
///
/// 库区a=1-2-3 独占 库区a的 123排
///
public string S_ROW { get; set; }
///
/// 同 s_row , 瓶坯的入库库区排, 瓶坯翻斗机的出库库区排
///
public string S_ROW1 { get; set; }
///
/// 工单执行时 写时间。 用于执行延迟10秒以后 工单判断
///
public DateTime? SQL_Modify_TIme { get; set; }
///
/// Y S_ROW 不足时按正常逻辑 N 等待。
///
public string S_Is_Auto { get; set; } = "";
/// 是 或 ()
//[SugarColumn(IsIgnore = true)]
public string FromFuLe { get; set; }
///
/// 产线关联工单号。
///
[SugarColumn(IsIgnore = !TaskProcess.UPFule)]
public string Sign { get; set; }
[SugarColumn(IsIgnore = true)]
public int pcnumusing
{
get
{
int q = 0;
int.TryParse(SQL_PCNumber_using?.Split('.')[0], out q);
return q;
}
}
[SugarColumn(IsIgnore = true)]
public int pcnum
{
get
{
int q = 0;
int.TryParse(SQL_PCNumber?.Split('.')[0], out q);
return q;
}
}
[SugarColumn(IsIgnore = true)]
public int current
{
get
{
int q = 0;
int.TryParse(SQL_Current?.Split('.')[0], out q);
return q;
}
}
}
///
/// 原物料工单表
///
[SuGG("原物料工单表")]
public class YWLWorkOrder : BaseModel
{
///
/// 产线号
///
public string SQL_PLineNo { get; set; }
public string FuLe_PLine_No { get; set; }
///
/// 瓶盖机机无,翻斗机线边区连接到翻斗机暂存区
/// --- 瓶坯 链接 翻斗机 settings 中添加了 瓶坯的终点即产
///
public string SQL_LinkLineNO { get; set; }
///
/// 连接区域,瓶盖机连接v8或无;翻斗机连接线边区
/// 设置 机台的对应。终点区域。(即产时使用 )
///
public string SQL_Area { get; set; }
///
/// 即产即用
///
public string SQL_UsingNow { get; set; }//SQL_UsingNow "Y"|"N"
///
/// 工单状态
///
public string SQL_State { get; set; }//SQL_State
///
/// 工单号
///
public string SQL_WorkNo { get; set; }//SQL_WorkNo
public string S_ROW { get; set; }
///
/// 物料编码
///
public string SQL_ItemCode { get; set; }
///
/// 物料名称
///
public string SQL_ItemName { get; set; }//SQL_ItemName
///
/// 6:2 , 5:2 ,3:1 等等, 成品信号数:出库托盘数(按托盘数算,比如仓库是2层,就是2个托盘)
///
public string SQL_charge { get; set; }
///
/// 统计信号总数 - 出发outNum+1 后重置
///
public int SQL_Total { get; set; }//SQL_Total
///
/// 当前工单结束时间
///
public string SQL_PLAN_END { get; set; }
///
/// 工单执行时 写时间。 用于执行延迟10秒以后 工单判断
///
public DateTime? SQL_Modify_TIme { get; set; }
///
/// 出库领料数, 根据信号操作增加。
///
public int OutNum { get; set; } = 0;
///
/// 1.退料
/// 2.入库
/// 6.上料
///
public int WorkType { get; internal set; } = 0;
public string MidArea { get; internal set; }
///
/// 弃用, 改为记录上次库区-
///
public string TagOver { get; internal set; } = "";
public DateTime? TagOverTime { get; internal set; }
public string S_BQ_TRAY_TYPE { get; internal set; } = "";
///
/// 厂家
///
public string S_CJ_NAME { get; set; }
}
[SuGG("半成品区域表")]
public class BcpQyOrder : BaseModel
{
///
/// 产线号
///
public string SQL_PLineNo { get; set; }
}
[SuGG("厂家时间表")]
public class CjTimeOrder : BaseModel
{
///
/// 厂家名称
///
public string S_CJ_NAME { get; set; }
///
/// 厂家时间
///
public DateTime T_CJ_TIME { get; set; }
///
/// 物料编码
///
public string S_ITEM_CODE { get; set; }
///
/// 物料名称
///
public string S_ITEM_NAME { get; set; }
}
[SuGG("瓶盖工单表")]
public class PGWorkOrder : BaseModel
{
///
/// 板子类型
///
public string B_Type { get; set; }
//工单自动转运终点区域
///
/// 不存入
/// 具体库区
///
public string TurnArea { get; set; }
///
/// AutoTurn
/// TurnComplete
/// TurnFail
/// 同时当作Note用
///
public string TurnState { get; set; }
///
/// 批次号
///
public string SQL_BatchNo { get; set; }
///
/// 产线号
///
public string SQL_PLineNo { get; set; }
public string FuLe_PLine_No { get; set; }
///
/// 物料再托盘上 堆叠的层数。
///
public int ItemLayer { get; set; }
///
/// 瓶盖机机无,翻斗机线边区连接到翻斗机暂存区
/// --- 瓶坯 链接 翻斗机 settings中添加了 瓶坯的终点即产
///
public string SQL_LinkLineNO { get; set; }
///
/// 连接区域,瓶盖机连接v8或无;翻斗机连接线边区
/// 设置 机台的对应。终点区域。(即产时使用 )
///
public string SQL_Area { get; set; }
///
/// 入库区 瓶坯的入库选择区域。瓶坯的翻斗机 出去区域。
///
public string SQL_Area1 { get; set; }
//SQL_LinkLineNo2
[SugarColumn(ColumnName = "SQL_LinkLineNo2")]
public string SQL_LinkLineNO1 { get; set; }
///
/// 即产即用
///
public string SQL_UsingNow { get; set; }//SQL_UsingNow "Y"|"N"
///
/// 外调
///
public string SQL_Out { get; set; }//SQL_Out "Y"|"N"
///
/// 工单状态
///
public string SQL_State { get; set; }//SQL_State
///
/// 工单号
///
public string SQL_WorkNo { get; set; }//SQL_WorkNo
///
/// 工单限制数。 限制任务中 最大锁排数量 -
///
public int N_LimitNum { get; set; }//SQL_WorkNo
///
/// 物料编码
///
public string SQL_ItemCode { get; set; }
///
/// 物料名称
///
public string SQL_ItemName { get; set; }//SQL_ItemName
///
/// 总数
///
public string SQL_Total { get; set; }//SQL_Total
///
/// 即产即用数量
///
public string SQL_UsingNowTotal { get; set; }
///
/// 每批运输数量
///
[SugarColumn(IsIgnore = !TaskProcess.UPFule)]
public string SQL_PCNumber_using { get; set; } = "0";//SQL_PCNumber=""
public string SQL_PCNumber { get; set; }//SQL_PCNumber
/// s
/// 计数(已执行数量)
///
public string SQL_Current { get; set; }//SQL_Current
///
/// 当前工单执行时间
///
public string SQL_Modify { get; set; }//SQL_Modify
///
/// 当前工单结束时间
///
public string SQL_PLAN_END { get; set; }
///
/// 是、否
///
public string SQL_AutoComplete { get; set; }
[SugarColumn(IsIgnore = true)]
public bool IsFinished { get; set; } = false;
///
/// 库区a=1-2-3 独占 库区a的 123排
///
public string S_ROW { get; set; }
///
/// 同 s_row , 瓶坯的入库库区排, 瓶坯翻斗机的出库库区排
///
public string S_ROW1 { get; set; }
///
/// Y S_ROW 不足时按正常逻辑 N 等待。
///
public string S_Is_Auto { get; set; }
/// 是 或 ()
//[SugarColumn(IsIgnore = true)]
public string FromFuLe { get; set; }
///
/// 产线关联工单号。
///
[SugarColumn(IsIgnore = !TaskProcess.UPFule)]
public string Sign { get; set; }
[SugarColumn(IsIgnore = true)]
public int pcnumusing
{
get
{
int q = 0;
int.TryParse(SQL_PCNumber_using?.Split('.')[0], out q);
return q;
}
}
[SugarColumn(IsIgnore = true)]
public int pcnum
{
get
{
int q = 0;
int.TryParse(SQL_PCNumber?.Split('.')[0], out q);
return q;
}
}
[SugarColumn(IsIgnore = true)]
public int current
{
get
{
int q = 0;
int.TryParse(SQL_Current?.Split('.')[0], out q);
return q;
}
}
}
//[SuGG("自动移库工单表")]
//public class AutoTurnWorkOrder : BaseModel
//{
//}
[SuGG("富勒托盘下发")]
public class FuLeTrayCode : BaseModel
{
public string deviceName { get; set; }
public string workNo { get; set; }
public string trayCode { get; set; }
public string trayNum { get; set; }
public string dateTime { get; set; }
public string batchNo { get; set; }
public string trayRule { get; set; }
public string itemLayer { get; set; }
public string SQL_State { get; set; } = "下发";
}
///
/// 原物料纸箱转运移库。
///
[SuGG("库库转运")]
public class YWLZXtake : BaseModel
{
public string SQL_WorkNo { get; set; }
public string S_START_AREA { get; set; }
public int N_START_ROW { get; set; }
public int N_END_ROW { get; set; }
public string S_ZZ_AREA { get; set; }
public string S_END_AREA { get; set; }
public string S_ZX_STATE { get; set; }
///
/// 编码 名称 厂家, 本来不需要, 为了ab区不足时,触发转运。 防止重复物料单据
///
public string S_ITEM_CODE { get; set; }
public string S_ITEM_NAME { get; set; }
///
/// 厂家
///
public string S_CJ_NAME { get; set; }
}
[SuGG("移库工单表")]
public class TurnWorkOrder : BaseModel
{
///
/// 来源单号。 单据单号。 - 比如 由
///
public string FROM_NO { set; get; }
///工单号
public string SQL_WorkNo { get; set; }
///
/// 手动移库
/// 自动移库
///
public string Turn_Type { get; set; } = "手动移库";
///
/// 产线号。
///
public string LineNo { get; set; }
///
/// 起点库区
///
public string start_area { get; set; }
///
/// 起点排
///
public string start_row { get; set; }
///终点库区
public string end_area { get; set; }
///
/// 终点排
///
public string end_row { get; set; }
///
/// 工单状态
///
public string SQL_State { get; set; }
///
/// 优先级
///
public int priority { get; set; } = 60;
///
/// 大 小板 集化板
///
public string size { get; set; }
//[SugarColumn(ColumnName = "note")]
public string Note { get; set; }
///
/// 指定 移库的数量
///
public int TrayCount { get; set; } = 0;
///
/// 已经移库数量
///
public int AlQty { get; set; } = 0;
}
[SuGG("备货单表")]
public class OutOrder : BaseModel
{
///
/// 出库单号,或者自定义。 必须的
///
public string S_Work_NO { get; set; }
public string S_ITEM_CODE { get; set; }
public string S_ITEM_NAME { get; set; }
public string S_Strart_Area { get; set; }
public string S_Strart_Row { get; set; }
public string S_END_ROW { get; set; }
///
/// 库区{=排-排}
///
public string S_END_AREA { get; set; }
public string S_NOTE { get; set; }
///
/// 执行时的唯一标识。 记录到 移库单号里。 用来FFROMNO 关联 来标记完成的依据
///
public string S_bsID { get; set; } = string.Empty;
///
/// 出库数量
///
public int N_Stock { get; set; } = 0;
public string S_Work_State { get; set; } = "新建";
}
[SuGG("任务类型转换表")]
public class TaskTypeConvTable : BaseModel
{
///
/// 内部任务名称
///
public string taskTypeName { get; set; }
///
/// 对应的富勒编码
///
public string taskType { get; set; }
}
[SuGG("AGV设备信息")]
public class AGVDeviceDataTable : BaseModel
{
///
/// 车辆类型
///
public string equipmentType { get; set; }
///
/// 车辆型号
///
public string equipmentMold { get; set; }
///
/// 车辆铭牌号
///
public string equipmentCode { get; set; }
///
/// 车辆区域
///
public string equipmentArea { get; set; }
///
/// 对应工厂编号
///
public string orgCode { get; set; }
///
/// 车辆投放状态
///
public string equipmentStatus { get; set; }
///
/// 唯一标识码
///
public string proxyInterfaceCode { get; set; }
///
/// 工厂名称
///
public string orgName { get; set; }
///
/// 车辆编码
///
public string equipmentNo { get; set; }
}
[SuGG("任务切面表")]
public class TaskAudio
{
///
/// 产线号
///
public string S_PlineNo { get; set; }
///
/// 目标区域
///
public string S_Area { get; set; }
///
/// 目标排
///
public int N_ROW { get; set; }
///
/// 目标货位
///
public string S_LOC_CODE { get; set; }
///
/// 0 新建
/// 1 同意
/// 2 拒绝
/// 3 废弃 - 界面不要显示3的数据
///
public int N_AUDIO { get; set; }
public DateTime CreateTime { get; set; }
///
/// 记录数据。字段要varchar 要长。 在变更状态时, 按照(;时间-状态;)格式追加
///
public string S_Note { get; set; }
}
[SuGG("领料单表")]
public class LingOrder : BaseModel
{
public string WorkNo { get; set; }
public string State { get; set; } = "执行";
}
[SuGG("领料单子表")]
public class LingItemOrder : BaseModel
{
public string WorkNo { get; set; }
public string WorkFromNo { get; set; }
public string ItemCode { get; set; }
public string OutAreaNum { get; set; }
[SugarColumn(IsIgnore = true)]
public int AreaNum
{
get
{
int q = 0;
int.TryParse(OutAreaNum?.Split('.')[0], out q);
return q;
}
}
public string DeviceNo { get; set; }
public string OutCurrentNum { get; set; } = "0";
public int AllocQTY { get; set; } = 0;
[SugarColumn(IsIgnore = true)]
public int current
{
get
{
int q = 0;
int.TryParse(OutCurrentNum?.Split('.')[0], out q);
return q;
}
}
public string State { get; set; } = "执行";
}
}