|
|
using Newtonsoft.Json;using Newtonsoft.Json.Linq;using NFine.Code;using NFine.Data.Extensions;using NFine.Domain._03_Entity.SRM;using NFine.Repository;using System;using System.Collections.Generic;using System.Data;using System.Data.Common;using System.Data.SqlClient;using System.Linq;using System.Text;using System.Threading.Tasks;
namespace NFine.Application.KBSSRM{ public class InvMaintenanceApp : RepositoryFactory<ICSVendor> { public DataTable GetGridJson(string queryJson, ref Pagination jqgridparam) { DataTable dt = new DataTable(); var queryParam = queryJson.ToJObject(); List<DbParameter> parameter = new List<DbParameter>(); string sql = string.Empty; if (NFine.Code.OperatorProvider.Provider.GetCurrent().RoleEnCode == "Vendor") { sql = @"select DISTINCT b.ID, b.InvCode,b.InvName, b.EATTRIBUTE11,b.EATTRIBUTE12,b.EATTRIBUTE13,b.EATTRIBUTE14,b.EATTRIBUTE15,b.EATTRIBUTE16,b.EATTRIBUTE17,b.EATTRIBUTE18,
case when b.EATTRIBUTE19='1' THEN '是' when b.EATTRIBUTE19='0' then '否' else '' end as EATTRIBUTE19, b.EATTRIBUTE20,b.EATTRIBUTE21,b.EATTRIBUTE22,b.EATTRIBUTE23 , b.WorkPoint from ICSPurchaseOrder a inner join ICSInventory b on a.InvCode=b.InvCode and a.WorkPoint=b.WorkPoint where 1=1 and a.VenCode='" + NFine.Code.OperatorProvider.Provider.GetCurrent().UserCode + "' ";
} else { sql = @"select b.ID,
b.InvCode,b.InvName, b.EATTRIBUTE11,b.EATTRIBUTE12,b.EATTRIBUTE13,b.EATTRIBUTE14,b.EATTRIBUTE15,b.EATTRIBUTE16,b.EATTRIBUTE17,b.EATTRIBUTE18, case when b.EATTRIBUTE19='1' THEN '是' when b.EATTRIBUTE19='0' then '否' else '' end as EATTRIBUTE19,b.EATTRIBUTE20,b.EATTRIBUTE21,b.EATTRIBUTE22,b.EATTRIBUTE23 , b.WorkPoint from ICSInventory b where 1=1 ";
}
if (!string.IsNullOrWhiteSpace(queryJson)) { if (!string.IsNullOrWhiteSpace(queryParam["InvCode"].ToString())) { sql += " and b.InvCode like '%" + queryParam["InvCode"].ToString() + "%' "; } if (!string.IsNullOrWhiteSpace(queryParam["InvName"].ToString())) { sql += " and b.InvName like '%" + queryParam["InvName"].ToString() + "%' "; } if (!string.IsNullOrWhiteSpace(queryParam["VenCode"].ToString())) { sql += " and b.EATTRIBUTE20 like '%" + queryParam["VenCode"].ToString() + "%' "; } if (!string.IsNullOrWhiteSpace(queryParam["VenName"].ToString())) { sql += " and b.EATTRIBUTE21 like '%" + queryParam["VenName"].ToString() + "%' "; } } if (NFine.Code.OperatorProvider.Provider.GetCurrent().RoleEnCode != "admin") { sql += " and a.WorkPoint in (" + NFine.Code.OperatorProvider.Provider.GetCurrent().Location.TrimEnd(',') + ")"; }
return Repository().FindTablePageBySql(sql.ToString(), parameter.ToArray(), ref jqgridparam); }
public DataTable GetICSInventoryInfo(string InvCode,string WorkPoint) { try { // string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location.TrimEnd(',');
DataTable dt = new DataTable(); //var queryParam = queryJson.ToJObject();
List<DbParameter> parameter = new List<DbParameter>(); string sql = @"select b.InvCode,b.InvName, b.EATTRIBUTE11,b.EATTRIBUTE12,b.EATTRIBUTE13,b.EATTRIBUTE15,b.EATTRIBUTE16,b.EATTRIBUTE17,b.EATTRIBUTE18,
b.EATTRIBUTE19,b.EATTRIBUTE20,b.EATTRIBUTE21,b.EATTRIBUTE22,b.EATTRIBUTE23 from ICSInventory b WHERE 1=1 AND b.InvCode='{0}' and b.WorkPoint='{1}' ";
sql = string.Format(sql, InvCode, WorkPoint); return Repository().FindTableBySql(sql.ToString()); } catch (Exception ex) { throw new Exception(ex.Message.ToString()); } }
public string UpdateICSInventory(string keyValue) { var queryParam = keyValue.ToJObject(); string MUSER = NFine.Code.OperatorProvider.Provider.GetCurrent().UserCode; string MUSERNAME = NFine.Code.OperatorProvider.Provider.GetCurrent().UserName; string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location; string msg = "";
string sql = string.Empty; sql = @"UPDATE dbo.ICSInventory set
EATTRIBUTE11='{0}',EATTRIBUTE12='{1}',EATTRIBUTE13='{2}',EATTRIBUTE14='{3}',EATTRIBUTE15='{4}',EATTRIBUTE16='{5}',EATTRIBUTE17='{6}',EATTRIBUTE18='{7}',EATTRIBUTE19='{8}',EATTRIBUTE20='{9}',EATTRIBUTE21='{10}',EATTRIBUTE22=getdate() WHERE InvCode='{11}'";
sql = string.Format(sql, queryParam["EATTRIBUTE11"].ToString(), queryParam["EATTRIBUTE12"].ToString(), queryParam["EATTRIBUTE13"].ToString(), queryParam["EATTRIBUTE14"].ToString(), queryParam["EATTRIBUTE15"].ToString(), queryParam["EATTRIBUTE16"].ToString(), queryParam["EATTRIBUTE17"].ToString(), queryParam["EATTRIBUTE18"].ToString(), queryParam["EATTRIBUTE19"].ToString(), MUSER, MUSERNAME, queryParam["InvCode"].ToString() ); try { if (SqlHelper.CmdExecuteNonQueryLi(sql) > 0) {
} else { msg = "维护失败"; } } catch (Exception ex) { throw new Exception(ex.Message); }
return msg; }
//public string SetData_PR(String savePath)
//{
// DataTable data = FileToExcel.ExcelToTable(savePath);
// string msg = EmailNotice(data);
// return msg;
//}
public string SetData_PR(String savePath) { string msg = ""; //数据获取
try { DataTable data = FileToExcel.ExcelToTable(savePath); string MUSER = NFine.Code.OperatorProvider.Provider.GetCurrent().UserCode; string MUSERNAME = NFine.Code.OperatorProvider.Provider.GetCurrent().UserName; string WorkPoint = NFine.Code.OperatorProvider.Provider.GetCurrent().Location.TrimEnd(','); SqlConnection conn = SqlHelper.GetDataCenterConn(); string sql = ""; int count = 0; if (data != null && data.Rows.Count > 0) { foreach (DataRow dr in data.Rows) { string isEnable = ""; string GUID = Guid.NewGuid().ToString(); if (string.IsNullOrWhiteSpace(dr["物料编码"].ToString())) throw new Exception("物料编码不能为空!"); string sqlInv = "SELECT INVName FROM ICSINVENTORY WHERE INVCODE='" + dr["物料编码"].ToString() + "'"; DataTable dtInv = SqlHelper.GetDataTableBySql(sqlInv); if (dtInv == null || dtInv.Rows.Count <= 0) { msg += "物料编码" + dr["物料编码"].ToString() + "不存在"; continue; } string INVName = dtInv.Rows[0]["INVName"].ToString(); if (dr["是否食品安全级"].ToString()=="1"|| dr["是否食品安全级"].ToString()=="是") { isEnable = "1"; } else { isEnable = "0"; } sql += @"UPDATE dbo.ICSInventory set
EATTRIBUTE11='{0}' ,EATTRIBUTE12='{1}' ,EATTRIBUTE13='{2}' ,EATTRIBUTE14='{3}' ,EATTRIBUTE15='{4}' ,EATTRIBUTE16='{5}' ,EATTRIBUTE17='{6}' ,EATTRIBUTE18='{7}' ,EATTRIBUTE19='{8}' ,EATTRIBUTE20='{9}' ,EATTRIBUTE21='{10}' ,EATTRIBUTE22=getdate() WHERE InvCode='{11}'";
sql = string.Format(sql, dr["原材料厂商"].ToString(), dr["UL证书编号"].ToString(), dr["工厂UL编号"].ToString(), dr["采购贸易商"].ToString() , dr["版本"].ToString(), dr["制造商"].ToString(), dr["地址"].ToString(), dr["重量"].ToString(), isEnable, MUSER, MUSERNAME, dr["物料编码"].ToString());
}
}
count = SqlHelper.CmdExecuteNonQueryLi(sql);
if (count > 0) { msg = "导入成功" + msg.TrimEnd(';'); } else { throw new Exception("无有效的导入数据!"); } return msg; } catch (Exception ex) { throw new Exception("" + msg + "异常信息:" + ex.Message + "!");
}
}
public DataTable GetInvInfo(string InvCode, string InvName, string VenCode, string VenName) { List<DbParameter> parameter = new List<DbParameter>(); string sql = string.Empty; if (NFine.Code.OperatorProvider.Provider.GetCurrent().RoleEnCode == "Vendor") { sql = @"select DISTINCT b.InvCode as '物料编码'
,b.InvName as '物料名称', b.EATTRIBUTE11 as '原材料厂商',b.EATTRIBUTE12 as 'UL证书编号',b.EATTRIBUTE13 as '工厂UL编号',b.EATTRIBUTE14 as '采购贸易商',b.EATTRIBUTE15 as '版本',b.EATTRIBUTE16 as '制造商',b.EATTRIBUTE17 as '地址',b.EATTRIBUTE18 as '重量',case when b.EATTRIBUTE19='1' THEN '是' when b.EATTRIBUTE19='0' then '否' else '' end as '是否食品安全级' from ICSPurchaseOrder a inner join ICSInventory b on a.InvCode=b.InvCode and a.WorkPoint=b.WorkPoint where 1=1 and a.VenCode='" + NFine.Code.OperatorProvider.Provider.GetCurrent().UserCode + "' ";
} else { sql = @"select b.InvCode as '物料编码'
,b.InvName as '物料名称', b.EATTRIBUTE11 as '原材料厂商',b.EATTRIBUTE12 as 'UL证书编号',b.EATTRIBUTE13 as '工厂UL编号',b.EATTRIBUTE14 as '采购贸易商',b.EATTRIBUTE15 as '版本',b.EATTRIBUTE16 as '制造商',b.EATTRIBUTE17 as '地址',b.EATTRIBUTE18 as '重量',case when b.EATTRIBUTE19='1' THEN '是' when b.EATTRIBUTE19='0' then '否' else '' end as '是否食品安全级' from ICSInventory b where 1=1 ";
} if (!string.IsNullOrWhiteSpace(InvCode)) sql += " and b.InvCode like '%" + InvCode + "%'"; if (!string.IsNullOrWhiteSpace(InvName)) sql += " and b.InvName like '%" + InvName + "%'"; if (!string.IsNullOrWhiteSpace(VenCode)) sql += " and b.EATTRIBUTE20 like '%" + VenCode + "%'"; if (!string.IsNullOrWhiteSpace(VenCode)) sql += " and b.EATTRIBUTE21 like '%" + VenName + "%'"; sql += " order by b.InvCode"; DataTable dt = SqlHelper.GetDataTableBySql(sql); return dt; }
}}
|