You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

146 lines
4.8 KiB

3 years ago
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using Stone.Entity;
using Stone.DataService.Biz.BizPublic;
using Gm_WMS.DataAccess.DataService;
using Stone.DataService.Biz.Info;
namespace Stone.DataService.Biz.Bill
{
public class F_BillAsn
{
public F_BillAsn()
{
}
public DataSet BillNew(Command cmd)
{
string AsnNumber = cmd.Pars[0];
string UserName = cmd.Pars[1];
Entity_t_JIS_VDA t_JIS_VDA = new Entity_t_JIS_VDA();
DataSet dsData = t_JIS_VDA.GetData(
$"PackageNo, 0 as IsCheck, AsnNumber, IsShipingVerification,IsPrintASN",
3 years ago
$"[AsnNumber]='{AsnNumber}'",
$"[PackageNo] desc");
if (dsData.Tables[0].Rows.Count == 0)
{
throw new Exception($"ASN编号{AsnNumber}不存在");
}
if (dsData.Tables[0].Select("[IsPrintASN]=True").Length == 0)
throw new Exception($"{AsnNumber} 未打印");
3 years ago
if (dsData.Tables[0].Select("[IsShipingVerification]=False").Length == 0)
throw new Exception($"{AsnNumber} 已经完成发货校验");
return dsData;
}
public void BillSubmit(Command cmd, DataSet dsData)
{
string UserName = cmd.Pars[0];
if (dsData.Tables[0].Rows.Count == 0)
throw new Exception("提交的数据不能为空!");
string AsnNumber = dsData.Tables[0].Rows[0]["AsnNumber"].ToString();
LocalDBService db = null;
try
{
db = new LocalDBService();
db.BeginTrans();
Entity_t_JIS_VDA t_JIS_VDA = new Entity_t_JIS_VDA(db);
Entity_t_ShipingVerification t_ShipingVerification = new Entity_t_ShipingVerification(db);
DataTable dtVDA = t_JIS_VDA.GetData("", $"[AsnNumber]='{AsnNumber}'", "[PackageNo] asc").Tables[0];
if (dtVDA.Rows.Count == 0)
throw new Exception($"{AsnNumber} 在系统中不存在");
1 month ago
// DataRow[] drs = dtVDA.Select($"[IsPackingVerification]=False");
// if(drs.Length > 0)
// {
// string msg = "";
// foreach(DataRow dr in drs)
// {
// msg += dr["PackageNo"].ToString() + ",";
// }
// if(msg != "")
// {
// throw new Exception($"未做装箱校验:{msg}");
// }
// }
//
// if (dtVDA.Select($"[IsShipingVerification]=False").Length == 0)
// throw new Exception($"{AsnNumber} 已经完成发货校验");
3 years ago
foreach (DataRow drData in dsData.Tables[0].Rows)
{
t_JIS_VDA.Edit(
1 month ago
$"[IsPackingVerification]='{drData["IsPackingVerification"]}',[CheckQty] = {drData["CheckQty"]}",
$"[PartNumber]='{drData["PartNumber"]}' and [AsnNumber] = '{drData["AsnNumber"]}'");
}
//装箱记录
foreach (DataRow drScan in dsData.Tables[1].Rows)
{
3 years ago
DataRow drNew = t_ShipingVerification.Table.NewRow();
1 month ago
drNew["AsnNumber"] = drScan["AsnNumber"].ToString();
drNew["PackageNo"] = drScan["PackageNo"].ToString();
3 years ago
drNew["UserName"] = UserName;
t_ShipingVerification.Add(drNew);
}
db.Commit();
}
catch (Exception ex)
{
if (db != null) db.Rollback();
throw ex;
}
finally
{
if (db != null) db.EndTrans();
}
}
public DataSet GetVefiHis(Command cmd)
{
string AsnNumber = cmd.Pars[0];
string UserName = cmd.Pars[1];
Entity_t_ShipingVerification t_ShipingVerification = new Entity_t_ShipingVerification();
DataSet dsData = t_ShipingVerification.GetData(
1 month ago
$"AsnNumber,PackageNo,UserName",
$"[AsnNumber]='{AsnNumber}'",
$"[PackageNo] desc");
return dsData;
}
public DataSet GetASN(Command cmd)
{
string AsnNumber = cmd.Pars[0];
string UserName = cmd.Pars[1];
Entity_t_JIS_VDA t_JIS_VDA = new Entity_t_JIS_VDA();
DataSet dsData = t_JIS_VDA.GetData(
1 month ago
$"AsnNumber,PartNumber,Qty,CheckQty,IsPackingVerification",
$"[AsnNumber]='{AsnNumber}'",
$"[PackageNo] desc");
return dsData;
}
3 years ago
}
}