ldj/epickx/BLL/lWmsImportSeeds.cs

289 lines
7.4 KiB
C#

/// <summary>
///LOGIC CLASS FOR TABLE t_wmsImportSeeds
///By wm with codesmith.
///on 07/21/2019
/// </summary>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using DeiNiu.wms.Data.Model;
using System.Data;
using System.Transactions;
using DeiNiu.wms.win;
using DeiNiu.Utils;
namespace DeiNiu.wms.Logical
{
[Serializable]
public class lWmsImportSeeds :lbase
{
WmsImportSeeds _obj;
public lWmsImportSeeds()
{
initialize();
}
public WmsImportSeeds getWmsImportSeeds
{
get
{
if (_obj == null)
{
_obj = new WmsImportSeeds();
}
_obj.operater = operId;
return _obj;
}
}
public lWmsImportSeeds(int operId)
: base(operId)
{
initialize();
}
/// <summary>
/// get all data
/// </summary>
public DataSet getAllData()
{
return _obj.Query();
}
/// <summary>
/// get all data
/// </summary>
public DataSet getAllActiveData()
{
return _obj.QueryActived();
}
/// <summary>
/// get a record by id
/// </summary>
public void initialize(int id)
{
_obj = id != 0 ? new WmsImportSeeds(id) : new WmsImportSeeds();
}
/// <summary>
/// get a record by id 0
/// </summary>
public void initialize()
{
initialize(0);
}
/// <summary>
/// get a record by id
/// </summary>
public void initialize(DataRow dr)
{
_obj = new WmsImportSeeds(dr);
}
protected override DeiNiu.Data.BaseObject.BaseModel getModel()
{
return _obj;
}
//begin cust db operation, query, excute sql etc.
internal int add(WmsImportSeeds obj)
{
return obj.Add();
}
/// <summary>
/// update in a transaction scrop
/// </summary>
public void update()
{
if (valid())
{
using (TransactionScope scope = new TransactionScope())
{
//Node tmp = new Node();
//tmp.parentid = 1;
//tmp.name = "test trans" + DateTime.Now;
//tmp.description = "this is for transTest";
//tmp.Add();
_obj.Update();
scope.Complete();
}
}
}
private bool valid()
{
return true;
}
internal int updateCount(int count, int id, int status,String desc)
{
if (status == (int)enumSeedsState.)
{
WmsImportSeeds wis = new WmsImportSeeds(id);
if (wis.ID == id)
{
wis.countOut = count;
wis.description += desc;
return wis.Update();
}
}
else if (status == (int)enumSeedsState. || status == (int)enumSeedsState.)
{
WmsImportSeeds_tmp wis = new WmsImportSeeds_tmp(id);
if (wis.ID == id)
{
wis.countOut = count;
wis.description += desc;
return wis.Update();
}
}
else if (status == (int)enumSeedsState.)
{
WmsImportSeeds_history wis = new WmsImportSeeds_history(id);
if (wis.ID == id)
{
wis.countOut = count;
wis.description += desc;
return wis.Update();
}
}
return 0;
}
internal int loadNewSeeds(int deskId, string seedsNo)
{
string isAutoBind = System.Configuration.ConfigurationManager.AppSettings["IsAutoBind"];
if (!String.IsNullOrEmpty(isAutoBind) || Convert.ToInt16(isAutoBind) >0) //自动绑定标签ID
{
DataTable dt = getWmsImportSeeds.QueryBySeeds(seedsNo).Tables[0];
string lastCust = "";
int elId =0;
foreach (DataRow dr in dt.Rows)
{
WmsImportSeeds wis = new WmsImportSeeds(dr);
if (string.IsNullOrEmpty(lastCust) || !lastCust.Equals(wis.custName))
{
lastCust = wis.custName;
elId++;
}
wis.elabId = elId;
wis.Update();
}
}
return getWmsImportSeeds.loadNewSeeds(deskId, seedsNo);
}
internal DataTable getSumCount(string seedsNo, string barcode)
{
return getWmsImportSeeds.getSumCount(seedsNo, barcode);
}
internal List<ELabel> startNewSeed(int deskId, string seedsNo, string barcode, int operater, int color,bool isValid )
{
return getWmsImportSeeds.startNewSeed(deskId, seedsNo, barcode, operater, color, isValid);
}
internal int deleteOrder(string seedsNo)
{
return getWmsImportSeeds.deleteOrder(seedsNo);
}
String seedsNo ="seedsNo123";
String barcode ="1099";
internal bool validLimit(string input)
{
WmsOutSeeds wos = new WmsOutSeeds();
DataTable dt = wos.getValidSeed(1000, seedsNo, barcode);
if (dt.Rows.Count > 0)
{
wos = new WmsOutSeeds(dt.Rows[0]);
return input.Equals(wos.description);
}
return false;
}
internal int isExceedLimitCnt(bool isFix, int limitCount)
{
int notExceed = -1;
int exceed = 0;
WmsOutSeeds wos = new WmsOutSeeds();
DataTable dt = wos.getValidSeed(1000, seedsNo, barcode);
if (dt.Rows.Count == 0)
{
wos.seedsNo = seedsNo;
wos.barcode = barcode;
wos.deskId = 1000;
wos.count = 1;
wos.description ="D0-43-D4-A4-A9-EF-C8-72-AD-8E-FD-C3-81-07-BF-84";
wos.custOrder = "001";
wos.Add();
return notExceed;
}
else
{
wos = new WmsOutSeeds(dt.Rows[0]);
if (isFix)
{
wos.count = -1;
wos.Update();
return notExceed;
}
int count = (int)wos.count;
if (count == -1)
{
return notExceed;
}
else
if (count < limitCount)
{
wos.count++;
wos.Update();
return limitCount -(int)wos.count;
}
else
{
return exceed;
}
}
}
}
}