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.
117 lines
4.4 KiB
117 lines
4.4 KiB
using NFine.Data.Extensions;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Data;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using NFine.Code;
|
|
using NFine.Repository;
|
|
using System.Data.Common;
|
|
using NFine.Domain._03_Entity.SRM;
|
|
using ICS.Application.Entity;
|
|
using Newtonsoft.Json;
|
|
using System.Configuration;
|
|
using System.Data.SqlClient;
|
|
using ICS.Data;
|
|
using Newtonsoft.Json.Linq;
|
|
|
|
namespace NFine.Application.WMS
|
|
{
|
|
public class ZHYSalesDeliveryApp : RepositoryFactory<ICSVendor>
|
|
{
|
|
|
|
public DataTable GetGridJson(string queryJson, ref Pagination jqgridparam)
|
|
{
|
|
string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location;
|
|
DataTable dt = new DataTable();
|
|
var queryParam = queryJson.ToJObject();
|
|
List<DbParameter> parameter = new List<DbParameter>();
|
|
string sql = "";
|
|
#region [SQL]
|
|
|
|
sql = @"select a.SDNCode ,a.Sequence,a.SOCode,a.SOSequence,a.CusCode,a.CusName,
|
|
a.InvCode,b.InvName,b.InvStd,a.Quantity,c.cFree1,b.InvUnit,b.AmountUnit,a.Amount,a.SDNQuantity,a.CreatePerson,a.CreateDateTime,a.MUSERName,a.MTIME,
|
|
case when a.SDNQuantity=0 then '未发货' when a.SDNQuantity=a.Quantity then '发货完成' else '正在发货' end as Status
|
|
from ICSSDN a
|
|
left join dbo.ICSInventory b on a.InvCode=b.InvCode and a.WorkPoint=b.WorkPoint
|
|
left join dbo.ICSExtension c on a.ExtensionID=c.ID and a.WorkPoint=c.WorkPoint
|
|
where a.Type='1' and a.Status='2' ";
|
|
sql = string.Format(sql, WorkPoint);
|
|
sql = string.Format(sql, DbHelper.GetErpIp(), DbHelper.GetErpName());
|
|
#endregion
|
|
|
|
if (!string.IsNullOrWhiteSpace(queryJson))
|
|
{
|
|
if (!string.IsNullOrWhiteSpace(queryParam["POCode"].ToString()))
|
|
{
|
|
sql += " and a.SDNCode like '%" + queryParam["POCode"].ToString() + "%' ";
|
|
}
|
|
if (!string.IsNullOrWhiteSpace(queryParam["InvCode"].ToString()))
|
|
{
|
|
sql += " and a.InvCode like '%" + queryParam["InvCode"].ToString() + "%' ";
|
|
}
|
|
if (!string.IsNullOrWhiteSpace(queryParam["TimeFrom"].ToString()))
|
|
{
|
|
sql += " and convert(nvarchar(20),a.CreateDateTime,23) >= '" + queryParam["TimeFrom"].ToString() + "' ";
|
|
}
|
|
if (!string.IsNullOrWhiteSpace(queryParam["TimeArrive"].ToString()))
|
|
{
|
|
sql += " and convert(nvarchar(20),a.CreateDateTime,23) <= '" + queryParam["TimeArrive"].ToString() + "' ";
|
|
}
|
|
if (!string.IsNullOrWhiteSpace(queryParam["Status"].ToString()))
|
|
{
|
|
string POStatus = queryParam["Status"].ToString();
|
|
if (POStatus == "1")
|
|
{
|
|
sql += " and a.SDNQuantity=a.Quantity ";
|
|
}
|
|
else if (POStatus == "2")
|
|
{
|
|
sql += " and a.SDNQuantity=0";
|
|
}
|
|
else
|
|
{
|
|
sql += " and a.Quantity-a.SDNQuantity>0 and a.SDNQuantity<>0";
|
|
}
|
|
}
|
|
}
|
|
return Repository().FindTablePageBySql(sql.ToString(), parameter.ToArray(), ref jqgridparam);
|
|
}
|
|
|
|
|
|
|
|
public DataTable GetSalesDeliveryTemp(string queryJson, ref Pagination jqgridparam, string ID)
|
|
{
|
|
DataTable dt = new DataTable();
|
|
string sql = @"select b.ID,b.LotNo,b.Quantity,d.InvUnit,c.Amount,d.AmountUnit,e.BatchCode,e.cFree1,b.MUSERName,b.MTIME from ICSSDN a
|
|
inner join dbo.ICSWareHouseLotInfoLog b on a.SDNCode=b.TransCode and a.Sequence=b.TransSequence and a.WorkPoint=b.WorkPoint and b.BusinessCode='19'
|
|
left join dbo.ICSInventoryLot c on b.LotNo=c.LotNo and b.WorkPoint=c.WorkPoint
|
|
left join dbo.ICSInventory d on c.InvCode=d.InvCode and c.WorkPoint=d.WorkPoint
|
|
left join dbo.ICSExtension e on c.ExtensionID=e.ID and c.WorkPoint=e.WorkPoint
|
|
|
|
where 1=1 ";
|
|
if (ID=="")
|
|
{
|
|
sql+= " and a.SDNCode+a.Sequence='"+ ID + "' ";
|
|
|
|
}
|
|
else
|
|
{
|
|
sql += "and a.SDNCode+a.Sequence in (" + ID.TrimEnd(',') + ")";
|
|
}
|
|
|
|
|
|
return Repository().FindTableBySql(sql.ToString());
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
}
|