2023-05-23 16:13:17 +08:00
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
///INTERFACE CLASS FOR TABLE t_erp_sale
|
|
|
|
|
///By wm
|
|
|
|
|
///on 06/22/2018
|
|
|
|
|
/// </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 Erp_sale : Erp_sale_base
|
|
|
|
|
{
|
|
|
|
|
public Erp_sale()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public Erp_sale(int id): base(id)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
public Erp_sale(DataRow dr): base(dr)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
public Erp_sale(String orderNo)
|
|
|
|
|
{
|
|
|
|
|
cmdParameters[0] = orderNo;
|
|
|
|
|
getModel(100);
|
|
|
|
|
}
|
|
|
|
|
protected override void getImp()
|
|
|
|
|
{
|
|
|
|
|
model_imp = new Erp_sale_Imp();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public void getByPickOrder(string pickOrderNo)
|
|
|
|
|
{
|
|
|
|
|
cmdParameters[0] = pickOrderNo;
|
|
|
|
|
getModel(150);
|
|
|
|
|
}
|
|
|
|
|
//begin cust db operation, query, excute sql etc.
|
|
|
|
|
public DataSet QueryByName(string name)
|
|
|
|
|
{
|
|
|
|
|
cmdParameters[0] = name;
|
|
|
|
|
return CustQuery(100);
|
|
|
|
|
}
|
2023-11-21 19:18:23 +08:00
|
|
|
|
public DataTable getDetailByPickOrder(string pickOrderNo)
|
|
|
|
|
{
|
|
|
|
|
cmdParameters[0] = pickOrderNo;
|
|
|
|
|
return CustQuery(600).Tables[0];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public DataTable getSaleOrdersByPickOrder(string pickOrderNo)
|
|
|
|
|
{
|
|
|
|
|
cmdParameters[0] = pickOrderNo;
|
|
|
|
|
return CustQuery(150).Tables[0];
|
|
|
|
|
}
|
2023-05-23 16:13:17 +08:00
|
|
|
|
|
2023-11-21 19:18:23 +08:00
|
|
|
|
public List<Erp_sale> getObjs(DataTable dt)
|
|
|
|
|
{
|
|
|
|
|
List<Erp_sale> lst = new List<Erp_sale>();
|
|
|
|
|
foreach(DataRow dr in dt.Rows)
|
|
|
|
|
{
|
|
|
|
|
lst.Add(new Erp_sale(dr));
|
|
|
|
|
}
|
|
|
|
|
return lst;
|
|
|
|
|
}
|
2023-05-23 16:13:17 +08:00
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 同步新销售订单前
|
|
|
|
|
/// 记录临时数据
|
|
|
|
|
/// 同步后更新erp_sale 表,并删除临时数据
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <returns></returns>
|
2023-11-21 19:18:23 +08:00
|
|
|
|
public int prepareSaleInTmpData()
|
2023-05-23 16:13:17 +08:00
|
|
|
|
{
|
|
|
|
|
return CustOper(200);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public bool deleteSales(string orderNo)
|
|
|
|
|
{
|
|
|
|
|
cmdParameters[0] = orderNo;
|
|
|
|
|
return CustOper(101) > 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 同步新销售订单前
|
|
|
|
|
/// 记录临时数据
|
|
|
|
|
/// 同步后更新erp_sale 表,并删除临时数据
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
/* public int syncSaleOrdersBefore(enumOutStockRequestStatus wmsStatus)
|
|
|
|
|
{
|
|
|
|
|
cmdParameters[0] = operater;
|
|
|
|
|
cmdParameters[1] = (int)wmsStatus;
|
|
|
|
|
return CustOper(201);
|
|
|
|
|
}
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
public int syncSaleOrdersAfter(enumOutStockRequestStatus wmsStatus)
|
|
|
|
|
{
|
|
|
|
|
cmdParameters[0] = operater;
|
|
|
|
|
cmdParameters[1] = (int)wmsStatus;
|
|
|
|
|
return CustOper(202);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public int updatePickStatus(string pickOrderNo, Utils.enumOutStockRequestStatus rstateNew)//, Utils.enumOutStockRequestStatus rstateOld)
|
|
|
|
|
{
|
|
|
|
|
//find sale orders
|
|
|
|
|
|
|
|
|
|
WmsOutRequest wor = new WmsOutRequest();
|
|
|
|
|
DataTable dt = wor.getRequestByPickOrder(pickOrderNo);
|
|
|
|
|
LogHelper.debug(typeof(Erp_sale), " try updatePickStatus , sales order cnt " + dt.Rows.Count);
|
2023-09-04 22:41:19 +08:00
|
|
|
|
if (dt.Rows.Count == 0)
|
|
|
|
|
{
|
|
|
|
|
return 0;
|
|
|
|
|
}
|
2023-05-23 16:13:17 +08:00
|
|
|
|
string saleOrders = "";
|
|
|
|
|
foreach (DataRow dr in dt.Rows)
|
|
|
|
|
{
|
|
|
|
|
wor = new WmsOutRequest(dr);
|
2024-03-06 20:48:05 +08:00
|
|
|
|
|
|
|
|
|
|
2023-05-23 16:13:17 +08:00
|
|
|
|
saleOrders +="'"+ wor.orderNo + "',";
|
|
|
|
|
}
|
|
|
|
|
LogHelper.debug(typeof(Erp_sale), " try updatePickStatus , saleOrders: " + saleOrders);
|
|
|
|
|
|
|
|
|
|
saleOrders = saleOrders.Substring(0, saleOrders.Length - 1);
|
|
|
|
|
if (dt.Rows.Count > 1)
|
|
|
|
|
{
|
|
|
|
|
saleOrders = " where sale_order in (" + saleOrders + ")";
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
saleOrders = " where sale_order = " + saleOrders ;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
cmdParameters[0] = operater;
|
|
|
|
|
cmdParameters[1] = saleOrders;
|
|
|
|
|
cmdParameters[2] =(int) rstateNew;
|
|
|
|
|
cmdParameters[3] = pickOrderNo;
|
|
|
|
|
return CustOper(300);
|
|
|
|
|
}
|
|
|
|
|
|
2023-11-21 19:18:23 +08:00
|
|
|
|
public DataSet getPickOutDetailSum(string queryStr, int rowStart, int rowEnd)
|
|
|
|
|
{
|
|
|
|
|
if (rowEnd > rowStart && rowStart > 0)
|
|
|
|
|
{
|
|
|
|
|
this.rownumStart = rowStart;
|
|
|
|
|
this.rownumEnd = rowEnd;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
cmdParameters[0] = getCondition(queryStr);
|
|
|
|
|
return CustQuery(900);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public DataSet getPickOutDetail(string queryStr, int rowStart, int rowEnd)
|
|
|
|
|
{
|
|
|
|
|
if (rowEnd > rowStart && rowStart > 0)
|
|
|
|
|
{
|
|
|
|
|
this.rownumStart = rowStart;
|
|
|
|
|
this.rownumEnd = rowEnd;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
cmdParameters[0] = getCondition(queryStr);
|
|
|
|
|
return CustQuery(800);
|
|
|
|
|
}
|
|
|
|
|
|
2023-05-23 16:13:17 +08:00
|
|
|
|
public int updateWhType(string orderNo, int whType,enumOutStockRequestStatus status)
|
|
|
|
|
{
|
|
|
|
|
cmdParameters[0] = orderNo;
|
|
|
|
|
cmdParameters[1] = whType;
|
|
|
|
|
cmdParameters[2] = (int)status;
|
|
|
|
|
return CustOper(400);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public void updateCreatetime()
|
|
|
|
|
{
|
|
|
|
|
cmdParameters[0] = _sale_order;
|
|
|
|
|
CustOper(500);
|
|
|
|
|
}
|
2023-11-21 19:18:23 +08:00
|
|
|
|
|
|
|
|
|
public DataTable getByErpState()
|
|
|
|
|
{
|
|
|
|
|
cmdParameters[0] =(int)enumErpOrderStatus.通知失败;
|
|
|
|
|
cmdParameters[1] = (int)enumOutStockRequestStatus.已装车;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return CustQuery(700).Tables[0];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 出入库状态看板数据
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
public DataSet getKanBanOrdersByState()
|
|
|
|
|
{
|
|
|
|
|
return CustQuery(1000);
|
|
|
|
|
}
|
2023-05-23 16:13:17 +08:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|