|
|
using NFine.Data.Extensions;using System;using System.Collections.Generic;using System.Data;using System.Text;using NFine.Code;using NFine.Repository;using System.Data.Common;using NFine.Domain._03_Entity.SRM;using Newtonsoft.Json;using System.Configuration;using System.Net;using System.IO;using Newtonsoft.Json.Linq;using System.Data.SqlClient;using ICS.Data;
namespace NFine.Application.WMS{ public class BlitemApp : RepositoryFactory<ICSVendor> { public DataTable GetGridJson(string queryJson, ref Pagination jqgridparam) { DataTable dt = new DataTable(); var queryParam = queryJson.ToJObject(); List<DbParameter> parameter = new List<DbParameter>();
#region [SQL]
string sql = @"SELECT ID, CheckCode, SelectLevel, Status, Quantity, Amount, MUSER, MUSERName, MTIME, WorkPoint
FROM dbo.ICSCheck";
sql += " WHERE 1=1"; sql = string.Format(sql, DbHelper.GetErpIp(), DbHelper.GetErpName()); #endregion
if (!string.IsNullOrWhiteSpace(queryJson)) { if (!string.IsNullOrWhiteSpace(queryParam["POCode"].ToString())) { sql += " and CheckCode like '%" + queryParam["POCode"].ToString() + "%' "; } } if (NFine.Code.OperatorProvider.Provider.GetCurrent().RoleEnCode != "admin") { sql += " and WorkPoint='" + NFine.Code.OperatorProvider.Provider.GetCurrent().Location + "'"; } if (NFine.Code.OperatorProvider.Provider.GetCurrent().RoleEnCode == "Vendor") { sql += " and VenCode='" + NFine.Code.OperatorProvider.Provider.GetCurrent().UserCode + "'"; } return Repository().FindTablePageBySql(sql.ToString(), parameter.ToArray(), ref jqgridparam); }
public DataTable GetSubGridJson(string ID, string Inventory, string InvCode,string LotNo, ref Pagination jqgridparam) { DataTable dt = new DataTable(); //var queryParam = queryJson.ToJObject();
List<DbParameter> parameter = new List<DbParameter>(); string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location.TrimEnd(','); string sql = @" SELECT distinct a.ID, b.InvCode,
b.InvName , b.InvUnit, b.InvStd , a.LotNo, e.BatchCode, a.Quantity, d.WarehouseCode, d.LocationCode, f.LocationName,a.PrimaryQuantity,a.PrimaryAmount,a.ReplayQuantity,a.ReplayAmount,a.CheckQuantity, a.CheckAmount, a.PrimaryQuantity- a.Quantity as DifferenceNum, a.ReplayQuantity- a.Quantity as ReplayDifferenceNum, a.CheckQuantity- a.Quantity as CheckDifferenceNum,d.LockQuantity,e.Colspan ,e.ProjectCode ,e.Version ,e.Brand , e.cFree1 ,e.cFree2 ,e.cFree3 ,e.cFree4 ,e.cFree5 ,e.cFree6 ,e.cFree7 ,e.cFree8 ,e.cFree9 ,e.cFree10 ,b.EATTRIBUTE1,b.EATTRIBUTE2,b.EATTRIBUTE3,b.EATTRIBUTE4,b.EATTRIBUTE5,b.EATTRIBUTE6,b.EATTRIBUTE7,b.EATTRIBUTE8,b.EATTRIBUTE9,b.EATTRIBUTE10
FROM ICSCheckDetail a left join ICSInventoryLot c on a.LotNo=c.LotNO and a.WorkPoint=c.WorkPoint left join ICSInventory b on c.InvCode=b.InvCode AND c.WorkPoint=b.WorkPoint left join ICSWareHouseLotInfo d on c.LotNO=d.LotNO AND c.WorkPoint=d.WorkPoint left join dbo.ICSExtension e on c.ExtensionID=e.ID and c.WorkPoint=e.WorkPoint left join ICSLocation f on f.LocationCode=d.LocationCode and f.WorkPoint=d.WorkPoint WHERE a.CheckID='" + ID + "' and a.WorkPoint in ('" + WorkPoint + "')";
if (!string.IsNullOrWhiteSpace(InvCode)) { sql += " and b.InvCode like '%" + InvCode + "%' "; } if (!string.IsNullOrWhiteSpace(LotNo)) { sql += " and a.LotNo like '%" + LotNo + "%' "; } if (Inventory=="1") { sql += "and a.Quantity>0"; } else if (Inventory == "2") { sql += "and a.Quantity<=0";
} else {
}
return Repository().FindTablePageBySql(sql.ToString(), parameter.ToArray(), ref jqgridparam); }
public string DeleteICSCheckDetail(string ID) { //站点信息
string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location; string msg = ""; string sql = string.Empty; try { sql = string.Format(@"DELETE FROM ICSCheckDetail WHERE ID ='{0}' and WorkPoint ='{1}'", ID, WorkPoint); SqlHelper.ExecuteNonQuery(sql); } catch (Exception ex) { throw new Exception(ex.Message); } return msg; }
/// <summary>
/// 获取仓库
/// </summary>
/// <returns></returns>
public DataTable GetWHCode() { string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location; string sql = @" select '' as ID,'' as WarehouseName union all
SELECT ID+'|'+WarehouseCode,WarehouseName FROM ICSWarehouse WITH (NOLOCK) WHERE WorkPoint = '{0}' ";
sql = string.Format(sql, WorkPoint); //string role = NFine.Code.OperatorProvider.Provider.GetCurrent().RoleEnCode;
//if (role != "admin")
//{
// sql += " and b.WorkPoint='" + WorkPoint + "'";
//}
DataTable dt = SqlHelper.GetDataTableBySql(sql); return dt; }
public DataTable GetQU(string WHCodeID) {
string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location; string sql = @" select '' as QUValue,'' as QUName union all
SELECT Region as QUValue,Region+'区' as QUName FROM ICSLocation WITH (NOLOCK) WHERE WHID = '{0}' AND WorkPoint='{1}' ";
sql = string.Format(sql, WHCodeID, WorkPoint); DataTable dt = SqlHelper.GetDataTableBySql(sql); return dt; }
//public DataTable GetQU(string WHCodeID)
//{
// string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location;
// string sql = @"SELECT Region as QUValue,Region+'区' as QUName FROM ICSLocation WHERE WHID = '{0}' AND WorkPoint='{1}'";
// sql = string.Format(sql, WHCodeID, WorkPoint);
// DataTable dt = Repository().FindTableBySql(sql);
// return dt;
//}
public DataTable GetPai(string WHCodeID, string Qu) {
string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location; string sql = @" select '' as PaiValue,'' as PaiName union all
SELECT Row as PaiValue,Row+'排' as PaiName FROM ICSLocation WITH (NOLOCK) WHERE WHID = '{0}' AND WorkPoint='{1}' and Region='{2}' ";
sql = string.Format(sql, WHCodeID, WorkPoint, Qu); DataTable dt = SqlHelper.GetDataTableBySql(sql); return dt; }
public DataTable GetHuoJia(string WHCodeID, string Qu, string Pai) {
string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location; string sql = @" select '' as HuoJiaValue,'' as HuoJiaName union all
SELECT GoodsShelf as HuoJiaValue,GoodsShelf +'货架' as HuoJiaName FROM ICSLocation WITH (NOLOCK) WHERE WHID = '{0}' AND WorkPoint='{1}' and Region='{2}' and Row='{3}'
";
sql = string.Format(sql, WHCodeID, WorkPoint, Qu, Pai); DataTable dt = SqlHelper.GetDataTableBySql(sql); return dt; }
public DataTable GetCeng(string WHCodeID, string Qu, string Pai, string HuoJia) {
string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location; string sql = @" select '' as CengValue,'' as CengName union all
SELECT Tier as CengValue,Tier +'层' as CengName FROM ICSLocation WITH (NOLOCK) WHERE WHID = '{0}' AND WorkPoint='{1}' and Region='{2}' and Row='{3}' and GoodsShelf ='{4}'
";
sql = string.Format(sql, WHCodeID, WorkPoint, Qu, Pai, HuoJia); DataTable dt = SqlHelper.GetDataTableBySql(sql); return dt; }
public DataTable GetGe(string WHCodeID, string Qu, string Pai, string HuoJia, string Ceng) {
string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location; string sql = @" select '' as GeValue,'' as GeName union all
SELECT Grid as GeValue,Grid +'格' as GeName FROM ICSLocation WITH (NOLOCK) WHERE WHID = '{0}' AND WorkPoint='{1}' and Region='{2}' and Row='{3}' and GoodsShelf ='{4}' and Tier='{5}'
";
sql = string.Format(sql, WHCodeID, WorkPoint, Qu, Pai, HuoJia, Ceng); DataTable dt = SqlHelper.GetDataTableBySql(sql); return dt; }
public string AddICSCheck(string Parameter) { string msg = ""; string APIURL = ConfigurationManager.ConnectionStrings["APIURL"].ConnectionString + "Check/Create"; string result = HttpPost(APIURL, Parameter); JObject Obj = (JObject)JsonConvert.DeserializeObject(result);//或者JObject jo = JObject.Parse(jsonText);
string MessAge = Obj["Message"].ToString(); string Success = Obj["Success"].ToString(); if (Success.ToUpper() == "FALSE") { msg = MessAge; } return msg; }
//接口api解析
public static string HttpPost(string url, string body) { try { Encoding encoding = Encoding.UTF8; HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url); request.Method = "POST"; request.Accept = "application/json, text/javascript, */*"; //"text/html, application/xhtml+xml, */*";
request.ContentType = "application/json; charset=utf-8";
byte[] buffer = encoding.GetBytes(body); request.ContentLength = buffer.Length; request.GetRequestStream().Write(buffer, 0, buffer.Length); HttpWebResponse response = (HttpWebResponse)request.GetResponse(); using (StreamReader reader = new StreamReader(response.GetResponseStream(), encoding)) { return reader.ReadToEnd(); } } catch (WebException ex) { throw new Exception(ex.Message); } }
public string DeleteICSCheck(string keyValue) { //站点信息
string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location; string msg = ""; keyValue = keyValue.Substring(1, keyValue.Length - 2); string sql = string.Empty; try { sql += string.Format(@" IF EXISTS(SELECT CheckID FROM ICSCheckDetail WHERE CheckID in ({0}) and EATTRIBUTE1 ='1' )
BEGIN RAISERROR('该盘点计划已执行,无法删除!',16,1); RETURN ENDDELETE FROM dbo.ICSCheck WHERE ID IN ({0}) and WorkPoint ='{1}'", keyValue.TrimEnd(','), WorkPoint);
sql += string.Format(@"DELETE FROM dbo.ICSCheckDetail WHERE CheckID IN ({0}) and WorkPoint ='{1}'", keyValue.TrimEnd(','), WorkPoint); SqlHelper.ExecuteNonQuery(sql); } catch (Exception ex) { msg = ex.Message; } return msg; }
public DataTable GetGridJsonWarehouse(string queryJson, ref Pagination jqgridparam) { DataTable dt = new DataTable(); var queryParam = queryJson.ToJObject(); List<DbParameter> parameter = new List<DbParameter>();
#region [SQL]
string sql = @"select distinct a.ID, a.WarehouseCode as SelectLevel ,a.WarehouseCode,a.WarehouseName
from ICSWarehouse a ";
#endregion
if (!string.IsNullOrWhiteSpace(queryJson)&& !string.IsNullOrWhiteSpace(queryParam["StartDate"].ToString())&& !string.IsNullOrWhiteSpace(queryParam["EndDate"].ToString())) { sql += " INNER JOIN ICSWareHouseLotInfoLog c ON (c.FromWarehouseCode=a.WarehouseCode or c.ToWarehouseCode=a.WarehouseCode) AND a.WorkPoint=c.WorkPoint AND (c.TransType='1' or c.TransType='2') WHERE 1=1 "; if (!string.IsNullOrWhiteSpace(queryParam["StartDate"].ToString())) { sql += " and c.MTIME >= '" + queryParam["StartDate"].ToString() + "' "; } if (!string.IsNullOrWhiteSpace(queryParam["EndDate"].ToString())) { sql += " and c.MTIME < '" + queryParam["EndDate"].ToString() + "' "; } } else { sql += " WHERE 1=1"; } if (NFine.Code.OperatorProvider.Provider.GetCurrent().RoleEnCode != "admin") { sql += " and a.WorkPoint='" + NFine.Code.OperatorProvider.Provider.GetCurrent().Location + "'"; } if (NFine.Code.OperatorProvider.Provider.GetCurrent().RoleEnCode == "Vendor") { sql += " and a.VenCode='" + NFine.Code.OperatorProvider.Provider.GetCurrent().UserCode + "'"; } return Repository().FindTablePageBySql(sql.ToString(), parameter.ToArray(), ref jqgridparam); }
public DataTable GetSubGridJsonRegion(string ID, ref Pagination jqgridparam) {
DataTable dt = new DataTable(); //var queryParam = queryJson.ToJObject();
List<DbParameter> parameter = new List<DbParameter>(); string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location.TrimEnd(','); string sql = @" select distinct b.WarehouseCode+'-'+a.Region as SelectLevelAA, dbo.GetSelectLevel(a.LocationCode,b.WarehouseCode,a.Region) as SelectLevel, a.WHID, b.WarehouseCode,a.Region from ICSLocation a left join ICSWarehouse b on a.WHID=b.ID and a.WorkPoint=b.WorkPoint
WHERE a.WHID='" + ID + "' and a.WorkPoint in ('" + WorkPoint + "')";
return Repository().FindTablePageBySql(sql.ToString(), parameter.ToArray(), ref jqgridparam); }
public DataTable GetSubGridJsonRow(string WHID, string Region, ref Pagination jqgridparam) {
DataTable dt = new DataTable(); //var queryParam = queryJson.ToJObject();
List<DbParameter> parameter = new List<DbParameter>(); string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location.TrimEnd(','); string sql = @" select distinct isnull(b.WarehouseCode,'')+'-'+isnull(a.Region,'')+'-'+isnull(a.Row,'') as SelectLevelAA,
dbo.GetSelectLevel(a.LocationCode,b.WarehouseCode,a.Region+'-'+a.Row) as SelectLevel,a.WHID, b.WarehouseCode,a.Region ,a.Row from ICSLocation a left join ICSWarehouse b on a.WHID=b.ID and a.WorkPoint=b.WorkPoint WHERE a.WHID='" + WHID + "' and a.Region='" + Region + "' and isnull(a.Row,'') !='' and a.WorkPoint in ('" + WorkPoint + "')";
return Repository().FindTablePageBySql(sql.ToString(), parameter.ToArray(), ref jqgridparam); }
public DataTable GetSubGridJsonGoodsShelf(string WHID, string Region, string Row, ref Pagination jqgridparam) {
DataTable dt = new DataTable(); //var queryParam = queryJson.ToJObject();
List<DbParameter> parameter = new List<DbParameter>(); string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location.TrimEnd(','); string sql = @" select distinct isnull(b.WarehouseCode,'')+'-'+isnull(a.Region,'')+'-'+isnull(a.Row,'')+'-'+isnull(a.GoodsShelf,'') as SelectLevelAA,
dbo.GetSelectLevel(a.LocationCode,b.WarehouseCode,a.Region+'-'+a.Row+'-'+a.GoodsShelf) as SelectLevel,a.WHID, b.WarehouseCode,a.Region ,a.Row,a.GoodsShelf from ICSLocation a left join ICSWarehouse b on a.WHID=b.ID and a.WorkPoint=b.WorkPoint WHERE a.WHID='" + WHID + "' and a.Region='" + Region + "' and a.Row='" + Row + "' and isnull(a.GoodsShelf,'') !='' and a.WorkPoint in ('" + WorkPoint + "')";
return Repository().FindTablePageBySql(sql.ToString(), parameter.ToArray(), ref jqgridparam); }
public DataTable GetSubGridJsonTier(string WHID, string Region, string Row, string GoodsShelf, ref Pagination jqgridparam) {
DataTable dt = new DataTable(); //var queryParam = queryJson.ToJObject();
List<DbParameter> parameter = new List<DbParameter>(); string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location.TrimEnd(','); string sql = @" select distinct isnull(b.WarehouseCode,'')+'-'+isnull(a.Region,'')+'-'+isnull(a.Row,'')+'-'+isnull(a.GoodsShelf,'') +'-'+isnull(a.Tier,'') as SelectLevelAA,
dbo.GetSelectLevel(a.LocationCode,b.WarehouseCode,a.Region+'-'+a.Row+'-'+a.GoodsShelf+'-'+a.Tier) as SelectLevel,a.WHID, b.WarehouseCode,a.Region ,a.Row,a.GoodsShelf ,a.Tierfrom ICSLocation a left join ICSWarehouse b on a.WHID=b.ID and a.WorkPoint=b.WorkPoint WHERE a.WHID='" + WHID + "' and a.Region='" + Region + "' and a.Row='" + Row + "' and a.GoodsShelf='" + GoodsShelf + "' and isnull(a.Tier,'') !='' and a.WorkPoint in ('" + WorkPoint + "')";
return Repository().FindTablePageBySql(sql.ToString(), parameter.ToArray(), ref jqgridparam); }
public DataTable GetSubGridJsonGrid(string WHID, string Region, string Row, string GoodsShelf, string Tier, ref Pagination jqgridparam) {
DataTable dt = new DataTable(); //var queryParam = queryJson.ToJObject();
List<DbParameter> parameter = new List<DbParameter>(); string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location.TrimEnd(','); string sql = @" select distinct isnull(b.WarehouseCode,'')+'-'+isnull(a.Region,'')+'-'+isnull(a.Row,'')+'-'+isnull(a.GoodsShelf,'') +'-'+isnull(a.Tier,'')+'-'+isnull(a.Grid,'') as SelectLevelAA,
dbo.GetSelectLevel(a.LocationCode,b.WarehouseCode,a.Region+'-'+a.Row+'-'+a.GoodsShelf+'-'+a.Tier+'-'+a.Grid) as SelectLevel,a.WHID, b.WarehouseCode,a.Region ,a.Row ,a.GoodsShelf ,a.Tier,a.Gridfrom ICSLocation a left join ICSWarehouse b on a.WHID=b.ID and a.WorkPoint=b.WorkPoint WHERE a.WHID='" + WHID + "' and a.Region='" + Region + "' and a.Row='" + Row + "' and a.Tier='" + Tier + "' and a.GoodsShelf='" + GoodsShelf + "' and isnull(a.Grid,'') !='' and a.WorkPoint in ('" + WorkPoint + "')";
return Repository().FindTablePageBySql(sql.ToString(), parameter.ToArray(), ref jqgridparam); }
public DataTable StatementExportAll(string ID,string Inventory,string InvCode) { string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location.TrimEnd(','); string sql = string.Empty; object Figure = GetDecimalDigits(); string TableCode = string.Empty; #region sql语句
sql = @"SELECT distinct e.CheckCode as 盘点单号, a.LotNo as 条码,
f.BatchCode as 批次, b.InvCode as 料品代码, b.InvName as 料品名称, b.InvStd as 规格型号, b.InvUnit as 单位, CAST(a.Quantity AS DECIMAL(18,{0})) as 库存数量, d.WarehouseCode as 仓库, d.LocationCode as 库位, g.LocationName as 库位名称, CAST(a.PrimaryQuantity AS DECIMAL(18,{0})) as 初盘数量, CAST(a.PrimaryAmount AS DECIMAL(18,{0})) as 初盘辅计量数量, a.PrimaryQuantity- a.Quantity as 初盘差异, CAST(a.ReplayQuantity as DECIMAL(18,{0})) as 复盘数量, CAST(a.ReplayAmount as DECIMAL(18,{0})) as 复盘辅计量数量, a.ReplayQuantity- a.Quantity as 复盘差异, CAST(a.CheckQuantity as DECIMAL(18,{0})) as 抽盘数量, CAST(a.CheckAmount as DECIMAL(18,{0})) as 抽盘辅计量数量, a.CheckQuantity- a.Quantity as 抽盘差异, a.EATTRIBUTE1,a.EATTRIBUTE2,a.EATTRIBUTE3,a.EATTRIBUTE4,a.EATTRIBUTE5,a.EATTRIBUTE6,a.EATTRIBUTE7,a.EATTRIBUTE8, a.EATTRIBUTE9,a.EATTRIBUTE10
FROM ICSCheck e left join dbo.ICSCheckDetail a on a.CheckID=e.ID and a.WorkPoint=e.WorkPoint left join ICSInventoryLot c on a.LotNo=c.LotNO and a.WorkPoint=c.WorkPoint left join ICSInventory b on c.InvCode=b.InvCode AND c.WorkPoint=b.WorkPoint left join ICSWareHouseLotInfo d on c.LotNO=d.LotNO AND c.WorkPoint=d.WorkPoint left join dbo.ICSExtension f on c.ExtensionID=f.ID and c.WorkPoint=f.WorkPoint left join ICSLocation g on g.LocationCode=d.LocationCode and g.WorkPoint=d.WorkPoint WHERE 1=1 and e.CheckCode in (" + ID.TrimEnd(',') + ") ";
TableCode = "ICSCheckDetail";
#endregion
sql = sql + " and a.WorkPoint='{1}'"; if (!string.IsNullOrWhiteSpace(InvCode)) { sql += " and b.InvCode like '%" + InvCode + "%' "; } if (Inventory == "1") { sql += "and a.Quantity>0"; } else if (Inventory == "2") { sql += "and a.Quantity<=0";
} sql += "order by d.WarehouseCode asc ,d.LocationCode asc"; sql = string.Format(sql, Figure, WorkPoint); DataTable dt = SqlHelper.GetDataTableBySql(sql);
DataTable dtColumn = ColumnEnable(TableCode); foreach (DataRow drC in dtColumn.Rows) { if (dt.Columns.Contains(drC["ColumnCode"].ToString())) { if (!Convert.ToBoolean(drC["Enable"])) { dt.Columns.Remove(drC["ColumnCode"].ToString()); } else if (Convert.ToBoolean(drC["Enable"])) { dt.Columns[drC["ColumnCode"].ToString()].ColumnName = drC["Name"].ToString(); } } } return dt; }
public DataTable ColumnEnable(string TableCode) { string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location.TrimEnd(','); string sql = string.Empty; sql = @"select ColumnCode,Name,Enable from ICSColumnEnable where TableCode='{0}' and WorkPoint='{1}'"; sql = string.Format(sql, TableCode, WorkPoint); DataTable dt = SqlHelper.GetDataTableBySql(sql); return dt; }
public object GetDecimalDigits() { string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location.TrimEnd(','); try { string sql = string.Empty; sql = @"select Figure from ICSConfiguration where Code='Figure001' and Enable='1' and WorkPoint='" + WorkPoint + "'"; object Figure = SqlHelper.ExecuteScalar(sql); return Figure; } catch (Exception ex) { throw new Exception(ex.Message.ToString()); } }
/// <summary>
/// 按照物料显示数据
/// </summary>
/// <param name="queryJson"></param>
/// <param name="jqgridparam"></param>
/// <returns></returns>
public DataTable GetGridJsonInv(string queryJson, ref Pagination jqgridparam) { DataTable dt = new DataTable(); var queryParam = queryJson.ToJObject(); List<DbParameter> parameter = new List<DbParameter>();
#region [SQL]
string sql = @"select DISTINCT a.ID ,a.InvName,a.InvStd,a.InvCode,a.InvUnit from ICSWareHouseLotInfo b
INNER JOIN ICSInventory a ON a.InvCode=b.InvCode AND a.WorkPoint=b.WorkPoint ";
sql += " WHERE 1=1"; sql = string.Format(sql, DbHelper.GetErpIp(), DbHelper.GetErpName()); #endregion
if (!string.IsNullOrWhiteSpace(queryJson)) { //if (!string.IsNullOrWhiteSpace(queryParam["InvCode"].ToString()))
//{
// sql += " and a.InvCode like '%" + queryParam["InvCode"].ToString() + "%' ";
//}
if (!string.IsNullOrWhiteSpace(queryParam["InvCode"].ToString())) { string[] values = queryParam["InvCode"].ToString().Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries); string InvCode = "'" + string.Join("','", values) + "'"; if (values.Length>1) { sql += " and a.InvCode in (" + InvCode + ") "; } else { sql += " and a.InvCode like '%"+ queryParam["InvCode"].ToString() + "%' "; } }
if (!string.IsNullOrWhiteSpace(queryParam["InvName"].ToString())) { sql += " and a.InvName like '%" + queryParam["InvName"].ToString() + "%' "; } if (!string.IsNullOrWhiteSpace(queryParam["InvStd"].ToString())) { sql += " and a.InvStd like '%" + queryParam["InvStd"].ToString() + "%' "; } } if (NFine.Code.OperatorProvider.Provider.GetCurrent().RoleEnCode != "admin") { sql += " and a.WorkPoint='" + NFine.Code.OperatorProvider.Provider.GetCurrent().Location + "'"; } return Repository().FindTablePageBySql(sql.ToString(), parameter.ToArray(), ref jqgridparam); }
public string AuditICSCheck(string keyValue) { string msg = ""; keyValue = keyValue.Substring(1, keyValue.Length - 2); string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location; try {
string connString = SqlHelper.DataCenterConnString; SqlConnection conn = new System.Data.SqlClient.SqlConnection(connString); conn.Open(); SqlTransaction sqlTran = conn.BeginTransaction(); SqlCommand cmd = new SqlCommand(); cmd.Transaction = sqlTran; cmd.Connection = conn; try { string sql = @"select a.WorkPoint,e.InvCode,f.WarehouseCode as WHCode ,
sum(isnull(a.PrimaryQuantity,0))-sum(isnull(g.Quantity,0)) as Num,c.BatchCodeINTO #TempERP from ICSCheckDetail a left join ICSInventoryLot b on a.LotNo=b.LotNo and a.WorkPoint=b.WorkPoint left join dbo.ICSInventory e on b.InvCode=e.InvCode and b.WorkPoint=e.WorkPoint left join ICSExtension c on b.ExtensionID=c.ID and a.WorkPoint=c.WorkPoint left join dbo.ICSWareHouseLotInfo g on b.LotNo=g.LotNo and b.WorkPoint=g.WorkPoint left join dbo.ICSLocation d on g.LocationCode=d.LocationCode and a.WorkPoint=d.WorkPoint left join dbo.ICSWarehouse f on d.WHID=f.ID and d.WorkPoint=f.WorkPoint where a.CheckID in ({0}) and a.WorkPoint='{1}' group by a.WorkPoint,e.InvCode,f.WarehouseCode,c.BatchCode select distinct WorkPoint as Costre,WorkPoint FROM #TempERP select WorkPoint as Costre, InvCode,WHCode,Num as Quantity ,'0' as Amount ,BatchCode FROM #TempERP where Num<>0 DROP TABLE #TempERP";
sql = string.Format(sql, keyValue.TrimEnd(','), WorkPoint);
DataSet DSet = SqlCommandHelper.SQlReturnDataSet(sql, cmd);
string Inputstr = SqlHelper.DataSetToJson(DSet, "details", "Costre"); string APIURL = ConfigurationManager.ConnectionStrings["ERPAPIURL"].ConnectionString + "CheckDiffDoc/Create"; string result = HttpPost(APIURL, Inputstr); JObject Obj = (JObject)JsonConvert.DeserializeObject(result);//或者JObject jo = JObject.Parse(jsonText);
string MessAge = Obj["Message"].ToString(); string Success = Obj["Success"].ToString(); string ERPSql = ""; if (Success.ToUpper() == "FALSE") { throw new Exception("ERP接口调用失败:" + MessAge); } else { try { JArray res = (JArray)JsonConvert.DeserializeObject(Obj["Data"].ToString()); foreach (var item in res) { JObject jo = (JObject)item; ERPSql = @"update ICSCheck set Status='3' ,EATTRIBUTE1='"+ jo ["ID"].ToString()+ "' where ID in ("+ keyValue.TrimEnd(',') + ") "; //JArray resdetail = (JArray)JsonConvert.DeserializeObject(jo["details"].ToString());
//foreach (var detail in resdetail)
//{
// JObject det = (JObject)detail;
// ERPSql += @"UPDATE a set ERPID='{3}',ERPDetailID='{4}',ERPCode='{5}',ERPSequence='{6}',ERPUpload='1'
// from ICSWareHouseLotInfoLog a
// inner join ICSMTDOC b on a.LotNo=b.LotNo and a.WorkPoint=b.WorkPoint
// where b.MTDOCCode='{0}' and b.Sequence='{1}' and a.Identification='{2}'";
// ERPSql += @" update ICSMTDOC set MTDOCID='{3}',MTDOCDetailID='{4}' where MTDOCCode='{0}' and Sequence='{1}'";
// ERPSql = string.Format(ERPSql, MTDOCCode, det["Sequence"].ToString(), Identification, jo["ID"].ToString(), det["DetailID"].ToString(), jo["MTCode"].ToString(), det["Sequence"].ToString());
//}
} SqlCommandHelper.CmdExecuteNonQuery(ERPSql, cmd);
} catch (Exception ex) { msg = ex.Message; } }
cmd.Transaction.Commit(); //return dt;
} catch (Exception ex) { cmd.Transaction.Rollback(); msg = ex.Message; } finally { if (conn.State == ConnectionState.Open) { conn.Close(); } conn.Dispose(); } } catch (Exception ex) { msg = ex.Message;
} return msg;
}
public string AuditSkipLot(string keyValue) { //站点信息
string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location; string msg = ""; keyValue = keyValue.Substring(1, keyValue.Length - 2); string sql = string.Empty; try { sql += string.Format(@" update A SET A.Quantity=0
FROM ICSWareHouseLotInfo A INNER JOIN ICSCheckDetail B ON B.LotNo=A.LotNo AND B.WorkPoint=A.WorkPoint INNER JOIN ICSCheck C ON C.ID=B.CheckID AND C.WorkPoint=B.WorkPoint WHERE ISNULL(B.EATTRIBUTE1,0)=0 AND ISNULL(B.EATTRIBUTE2,0)=0 AND ISNULL(B.EATTRIBUTE3,0)=0 AND C.ID IN ({0}) AND C.WorkPoint='{1}'", keyValue.TrimEnd(','), WorkPoint);
SqlHelper.ExecuteNonQuery(sql); } catch (Exception ex) { msg = ex.Message; } return msg; }
/// <summary>
/// 按照备用字段9(客户料号)显示数据 金豪特有 其他项目如果不是字段相同不要在前台配置此按钮
/// </summary>
/// <param name="queryJson"></param>
/// <param name="jqgridparam"></param>
/// <returns></returns>
public DataTable GetGridJsonCustomerInvJH(string queryJson, ref Pagination jqgridparam) { DataTable dt = new DataTable(); var queryParam = queryJson.ToJObject(); List<DbParameter> parameter = new List<DbParameter>();
#region [SQL]
string sql = @"select DISTINCT a.ID ,a.InvName,a.InvStd,a.InvCode,a.InvUnit,a.EATTRIBUTE9 AS CustomerInvCode from ICSWareHouseLotInfo b
INNER JOIN ICSInventory a ON a.InvCode=b.InvCode AND a.WorkPoint=b.WorkPoint ";
sql += " WHERE 1=1 AND ISNULL(a.EATTRIBUTE9,'')!='' "; sql = string.Format(sql, DbHelper.GetErpIp(), DbHelper.GetErpName()); #endregion
if (!string.IsNullOrWhiteSpace(queryJson)) { if (!string.IsNullOrWhiteSpace(queryParam["CustomerInvCode"].ToString())) { string[] values = queryParam["CustomerInvCode"].ToString().Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries); string CustomerInvCode = "'" + string.Join("','", values) + "'"; if (values.Length > 1) { sql += " and a.EATTRIBUTE9 in (" + CustomerInvCode + ") "; } else { sql += " and a.EATTRIBUTE9 like '%" + queryParam["CustomerInvCode"].ToString() + "%' "; } } } if (NFine.Code.OperatorProvider.Provider.GetCurrent().RoleEnCode != "admin") { sql += " and a.WorkPoint='" + NFine.Code.OperatorProvider.Provider.GetCurrent().Location + "'"; }
return Repository().FindTablePageBySql(sql.ToString(), parameter.ToArray(), ref jqgridparam); }
}}
|