ldj/Model/wms/tables/WmsOutPickPort.cs

471 lines
14 KiB
C#
Raw Normal View History

2023-05-23 16:13:17 +08:00

/// <summary>
///INTERFACE CLASS FOR TABLE t_wmsOutPickPort
///By wm
///on 06/15/2017
/// </summary>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using DeiNiu.Utils;
namespace DeiNiu.wms.Data.Model
{
[Serializable]
public class WmsOutPickPort : WmsOutPickPort_base
{
public WmsOutPickPort()
{
}
public WmsOutPickPort(int id): base(id)
{
}
public WmsOutPickPort(DataRow dr): base(dr)
{
}
public new int Add()
{
base.Add();
this.id128 = Util.getCode128(ID + "");
Update();
return ID;
}
protected override void getImp()
{
model_imp = new WmsOutPickPort_Imp();
}
//begin cust db operation, query, excute sql etc.
public DataSet QueryByName(string name)
{
cmdParameters[0] = name;
return CustQuery(100);
}
/// <summary>
/// get pick detail by pickorderNo
/// </summary>
/// <param name="pickOrderNo"></param>
/// <returns></returns>
2024-02-06 19:36:47 +08:00
public DataTable getPickDetails(string pickOrderNo, int state = -1)
2023-05-23 16:13:17 +08:00
{
cmdParameters[0] = pickOrderNo;
2024-02-06 19:36:47 +08:00
cmdParameters[1] = state;
2023-05-23 16:13:17 +08:00
return CustQuery(200).Tables[0];
}
2024-02-06 19:36:47 +08:00
public int closePickPorts(string pickOrderNo)
{
cmdParameters[0] = pickOrderNo;
return CustOper(201) ;
}
2023-11-21 19:18:23 +08:00
public List<WmsOutPickPort> getObjs(DataTable dt)
{
List<WmsOutPickPort> lst = new List<WmsOutPickPort>();
foreach(DataRow dr in dt.Rows)
{
lst.Add(new WmsOutPickPort(dr));
}
return lst;
}
2023-05-23 16:13:17 +08:00
/// <summary>
/// get pick detail by ID
/// </summary>
/// <param name="Id"></param>
/// <returns></returns>
public DataTable getPickDetail(int Id)
{
cmdParameters[0] = Id;
return CustQuery(300).Tables[0];
}
/// <summary>
/// update pick status
/// </summary>
/// <param name="Id"></param>
/// <returns></returns>
public int updatePickState(int Id, Utils.enumPickState pickSate,int operId)
{
cmdParameters[0] = Id;
cmdParameters[1] = (int)pickSate;
cmdParameters[2] = operId;
return CustOper(400) ;
}
public int getPickDetailsCnt(string pickOrderNo, enumPickState pickState,bool batch =true, string waveOrder =null)
{
cmdParameters[0] = pickOrderNo;
cmdParameters[1] = (int)pickState;
cmdParameters[2] = batch;
cmdParameters[3] = waveOrder;
//return CustQuery(500).Tables[0];
DataTable dt = CustQuery(500).Tables[0];
if (dt.Rows.Count > 0)
{
2023-09-04 22:41:19 +08:00
return Convert.ToInt32(dt.Rows[0][0].ToString());
2023-05-23 16:13:17 +08:00
}
return 0;
}
public int updatePickStateByOrderDetailId(int detailId, Utils.enumPickState pickSate, int operId,int checkedBy1)
{
cmdParameters[0] = detailId;
cmdParameters[1] = (int)pickSate;
cmdParameters[2] = operId;
cmdParameters[3] = checkedBy1;
return CustOper(401);
}
/// <summary>
/// 更新捡货状态
/// 电子标签拣选时更新PDA数据
/// </summary>
/// <param name="stkRecId"></param>
/// <param name="pickState"></param>
/// <param name="?"></param>
public bool updatePickDetailByStkrecId(int stkRecId,enumPickState pickState,int operId)
{
cmdParameters[0] = stkRecId;
cmdParameters[1] = (int)pickState;
cmdParameters[2] = operId;
return CustOper(410) >0;
}
public bool isDoneByFlow(string flowNum)
{
cmdParameters[0] = flowNum;
return queryCount(600) == 0;
}
public DataTable getNewPickTasks(WaveRule wr)
{
cmdParameters[0] = wr;
if (wr.type == (int)enumWaveRuleType.)
{
return CustQuery(700).Tables[0];
}
// if (wr.type == (int)enumWaveRuleType.普通波次)
{
return CustQuery(701).Tables[0];
}
}
/// <summary>
/// 根据waveNo 取wave detail 分页数据
/// </summary>
/// <param name="waveNo"></param>
/// <param name="rowStart"></param>
/// <param name="rowEnd"></param>
/// <returns></returns>
public DataSet getWaveDetails(string waveNo,int rowStart,int rowEnd)
{
this.rownumStart = rowStart;
this.rownumEnd = rowEnd;
cmdParameters[0] = waveNo;
return CustQuery(800) ;
}
/// <summary>
/// 根据waveNo 取wave detail 不分页
/// </summary>
/// <param name="waveNo"></param>
/// <returns></returns>
public DataTable getWaveDetails(string waveNo)
{
cmdParameters[0] = waveNo;
return CustQuery(801).Tables[0];
}
public DataTable getPickInfo(string waveNo)
{
cmdParameters[0] = waveNo;
return CustQuery(900).Tables[0];
}
public DataTable getPickInfo(string waveNo,int volType)
{
cmdParameters[0] = waveNo;
cmdParameters[1] = volType;
return CustQuery(910).Tables[0];
}
public DataTable getPickSummary(string waveNo, int volType)
{
cmdParameters[0] = waveNo;
cmdParameters[1] = volType;
return CustQuery(920).Tables[0];
}
public DataTable getPickTaskDetails(string taskNo)
{
cmdParameters[0] = taskNo;
return CustQuery(1000).Tables[0];
}
public DataTable getFlowNoDetails(string flowNo, string goodsId,string batch)
{
cmdParameters[0] = flowNo;
cmdParameters[1] = goodsId;
cmdParameters[2] = batch;
return CustQuery(1001).Tables[0];
}
public DataTable getFlowNoDetails(string seedsNo,string flowNo, string goodsId, string batch)
{
cmdParameters[0] = flowNo;
cmdParameters[1] = goodsId;
cmdParameters[2] = batch;
cmdParameters[3] = seedsNo;
return CustQuery(1002).Tables[0];
}
2023-05-23 16:13:17 +08:00
2023-11-21 19:18:23 +08:00
public DataTable getFreeTasks(int partion, int lineId, bool batchOnly,enumOrderType orderType,int empId=0)
2023-05-23 16:13:17 +08:00
{
cmdParameters[0] = partion;
cmdParameters[1] = lineId;
cmdParameters[2] = batchOnly;
cmdParameters[4] = (int)orderType;
cmdParameters[5] = empId;
return CustQuery(1100).Tables[0];
}
public DataTable getFreeTasksByPickOrder(string pickOrderNo)
2024-02-06 19:36:47 +08:00
{
cmdParameters[0] = pickOrderNo;
return CustQuery(1120).Tables[0];
}
/// <summary>
/// 根据任务编号获取任务明显
/// </summary>
/// <param name="jobNo"></param>
/// <returns></returns>
public DataTable getFreeTasksByJob(string jobNo)
{
cmdParameters[0] = jobNo;
return CustQuery(1130).Tables[0];
}
2024-02-06 19:36:47 +08:00
/// <summary>
///
/// </summary>
/// <param name="partion"></param>
/// <param name="lineId"></param>
/// <param name="batchOnly"></param>
/// <param name="orderType"></param>
/// <param name="assignedEmpId"></param>
/// <param name="wareHouse"></param>
/// <param name="orderNo"></param>
/// <param name="jobNo"></param>
/// <param name="isOrderByGoods">称重类,在货位分货,按商品排序 </param>
/// <returns></returns>
2023-12-03 22:13:49 +08:00
public DataTable getFreeTasksByJob(int partion, int lineId, bool batchOnly, enumOrderType orderType, int assignedEmpId = 0,int wareHouse=0,string orderNo ="",string jobNo="",bool isOrderByGoods=false)
2023-11-21 19:18:23 +08:00
{
cmdParameters[0] = partion;
cmdParameters[1] = lineId;
2023-12-03 22:13:49 +08:00
cmdParameters[2] = batchOnly;
cmdParameters[3] = wareHouse;
2023-11-21 19:18:23 +08:00
cmdParameters[4] = (int)orderType;
2023-12-03 22:13:49 +08:00
cmdParameters[5] = assignedEmpId;
cmdParameters[6] = jobNo;
cmdParameters[7] = orderNo;
cmdParameters[8] = isOrderByGoods;
2024-02-06 19:36:47 +08:00
// cmdParameters[9] = isSeedsTaskOnly;
2023-11-21 19:18:23 +08:00
return CustQuery(1110).Tables[0];
}
2023-05-23 16:13:17 +08:00
public DataTable getAssignedTasks(int taskBy, int partion, int lineId, bool batchOnly,
2024-02-06 19:36:47 +08:00
enumOrderType orderType ,int state=0)
{
LogHelper.debug(GetType(), String.Format(" to get getAssignedTasks ,takeBy {0}, partion {1}, lineId {2}, batchOnly {3}, orderType {4}, state{5}",
taskBy, partion, lineId, batchOnly, orderType.ToString(), state ));
cmdParameters[5] = taskBy;
cmdParameters[6] = partion;
cmdParameters[7] = lineId;
cmdParameters[8] = batchOnly;
cmdParameters[9] = (int)orderType;
cmdParameters[10] = state;
2023-05-23 16:13:17 +08:00
return CustQuery(1200).Tables[0];
}
public DataTable getAssignedTasks4Wince(int taskBy, int partion, int lineId , bool batchOnly
2023-11-21 19:18:23 +08:00
, enumOrderType orderType)
2023-05-23 16:13:17 +08:00
{
cmdParameters[0] = taskBy;
cmdParameters[1] = partion;
cmdParameters[2] = lineId;
cmdParameters[3] = batchOnly;
cmdParameters[4] = (int)orderType;
return CustQuery(1300).Tables[0];
}
public DataTable getPartions(int userID)
{
cmdParameters[0] = userID;
return CustQuery(1400).Tables[0];
}
public void getPickPortByRecordId(int recId)
{
cmdParameters[0] = recId;
getModel(1500);
}
public int updateBulkPickStateByPickOrder(string pickOrder,int checkBy,int checkBy2)
{
cmdParameters[0] = pickOrder;
cmdParameters[1] = checkBy;
cmdParameters[2] = checkBy2;
cmdParameters[3] = (int)enumPickState.;
return CustOper (1600) ;
}
public DataTable getRepTasks(int takeBy, int taskPartion )
{
cmdParameters[0] = takeBy;
cmdParameters[1] = taskPartion;
cmdParameters[2] = (int)enumPickState.;
return CustQuery(1700).Tables[0];
}
2023-09-04 22:41:19 +08:00
/// <summary>
/// by wmsoutdetail, 按原始订单明细取播种信息
/// </summary>
/// <param name="flowNo"></param>
/// <param name="isOrderByCust"></param>
/// <returns></returns>
public DataTable getSeedsOutDetail(string flowNo, bool isOrderByCust)
2023-05-23 16:13:17 +08:00
{
cmdParameters[0] = flowNo;
if (isOrderByCust) {
return CustQuery(1810).Tables[0];
}else
return CustQuery(1800).Tables[0];
}
2023-09-04 22:41:19 +08:00
/// <summary>
/// by wmsOutPickDetail , 按拣货单明细取播种信息
/// </summary>
/// <param name="flowNo"></param>
/// <param name="isOrderByCust"></param>
/// <returns></returns>
public DataTable getSeedsOutPickDetail(string flowNo, bool isOrderByCust)
{
cmdParameters[0] = flowNo;
if (isOrderByCust)
{
return CustQuery(1811).Tables[0];
}
else
return CustQuery(1801).Tables[0];
}
2024-05-24 19:11:48 +08:00
2023-09-04 22:41:19 +08:00
public DataTable getFlows4SeedsOut()
{
return CustQuery(1900).Tables[0];
}
public DataTable getByDetailId(int pickDetailId,enumPickState state=enumPickState.)
{
cmdParameters[0] = pickDetailId;
cmdParameters[1] = (int)state;
return CustQuery(2000).Tables[0];
}
2023-11-21 19:18:23 +08:00
2023-09-04 22:41:19 +08:00
public int getCntByDetailId(int pickDetailId, enumPickState state = enumPickState.)
{
cmdParameters[0] = pickDetailId;
cmdParameters[1] = (int)state;
return queryCount(2100);
}
public void fromStockRecord(WmsStockRecord wsr)
{
recordId = wsr.ID;
pickOrderNo = wsr.orderNo;
recType = wsr.rectype;
pickDetailId = wsr.orderDetailId;
2023-12-03 22:13:49 +08:00
2023-09-04 22:41:19 +08:00
}
2023-11-21 19:18:23 +08:00
public DataTable getPickLightTasks(int takeBy, int partion, int orderType)
{
cmdParameters[0] = takeBy;
cmdParameters[1] = partion;
cmdParameters[2] = orderType;
return CustQuery(2200).Tables[0];
}
public DataTable geTasksByJobNo(string jobNo)
{
cmdParameters[0] = jobNo;
return CustQuery(2300).Tables[0];
}
2024-02-06 19:36:47 +08:00
public DataTable geTasksByPickNo(string pickNo)
{
cmdParameters[0] = pickNo;
return CustQuery(2400).Tables[0];
}
public DataTable getLightTasks(string query, int wareHouse, int partion, int lineId, int state, string date, bool isLight)
{
cmdParameters[0] = state;
cmdParameters[1] = partion;
cmdParameters[2] = lineId;
cmdParameters[3] = date;
cmdParameters[4] = wareHouse;
cmdParameters[5] = query;
string viewName = "[v_stockOutPortSumLight]";
if (isLight)
{
viewName = "[v_stockOutPortSumLight]";//按jobNo亮灯摘果, 打印的条码为jobNo
2024-02-06 19:36:47 +08:00
} else
if (wareHouse > 0)
{
viewName = "[v_stockOutPortSumNoLightByJobNo]";//分区按jobNo 获取任务, 打印的条码为jobNo
}
else
2024-02-06 19:36:47 +08:00
{
viewName = "[v_stockOutPortSumNoLightByPickOrder]"; //按pickOrder 全仓按单拣选, 打印的条码为pickorderNo
2024-02-06 19:36:47 +08:00
}
cmdParameters[6] = viewName;
return CustQuery(2230).Tables[0];
2024-02-06 19:36:47 +08:00
}
2024-05-24 19:11:48 +08:00
public DataTable getLightSeeds(int deskId, string flowno, string barcode)
{
cmdParameters[0] = deskId;
cmdParameters[1] = flowno;
cmdParameters[2] = barcode;
return CustQuery(2500).Tables[0];
}
2023-05-23 16:13:17 +08:00
}
}