using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Text; using System.Threading.Tasks; using ICS.WCF.Base; using ICSSoft.Entity; namespace ICS.SupItem { public class GetSupItem { public FormICSCreatedArrivalNoticeModel FindByApproveDate(IItem d) { StringBuilder strHead = new StringBuilder(); strHead.AppendLine("***************接口传入参数记录****************:"); strHead.AppendLine("传入编码:" + d.ItemCode); strHead.AppendLine("传入供应商:" + d.SupCode); strHead.AppendLine("开始时间:" + d.StartTime); strHead.AppendLine("***************接口传入参数记录****************:"); Appconfig.WriteLogFile(strHead.ToString(), "U9料品与供应商信息接口日志"); StringBuilder resultlog = new StringBuilder(); FormICSCreatedArrivalNoticeModel result = new FormICSCreatedArrivalNoticeModel(); List returnValue = new List(); try { DateTime time1 = Appconfig.TimestampToDateTime(d.StartTime); DateTime time2 = DateTime.Parse(Appconfig.getDBTime()); string sql = @"select A1.[Code] as ItemCode, A1.Name as ItemName, A.[SupplierInfo_Code] as [SupCode], A5.Name as [SupName], A3.[PurProcessLT] as NormalPeriod, A.[Effective_IsEffective] from CBO_SupplierItem as A left join [CBO_ItemMaster] as A1 on (A.[ItemInfo_ItemID] = A1.[ID]) left join [CBO_SupplierItem_Trl] as A2 on (A2.SysMlFlag = 'zh-CN') and (A.[ID] = A2.[ID]) left join [CBO_MrpInfo] as A3 on (A1.[MrpInfo] = A3.[ID]) left join CBO_Supplier A4 on A4.Code=A.[SupplierInfo_Code] left join CBO_Supplier_Trl A5 on A4.ID=A5.ID where 1=1 and left(A1.[Code],2)!='20'"; if (!string.IsNullOrEmpty(d.ItemCode)) { sql += " and A1.Code = '" + d.ItemCode + "'"; } if (!string.IsNullOrEmpty(d.SupCode)) { sql += " and A.SupplierInfo_Code = '" + d.SupCode + "'"; } if (!string.IsNullOrEmpty(d.StartTime.ToString()) && d.StartTime != 0) { sql += " and A.ModifiedOn >= '" + time1 + "'"; } if (!string.IsNullOrEmpty(time2.ToString())) { sql += " and A.ModifiedOn <= '" + time2 + "'"; } sql += " order by A1.[Code]"; DataTable dt = DBhlper.Query(sql, Appconfig.GetU9ConnStr()); if (dt == null) { result.Code = -1; result.ResMsg = "获取U9料品与供应商信息失败"; result.ResData = null; result.IsCompress = false; result.IsSuccess = false; resultlog.AppendLine("获取U9料品与供应商信息失败"); resultlog.AppendLine("查询sql:" + sql); Appconfig.WriteLogFile(resultlog.ToString(), "U9料品与供应商信息接口日志"); return result; } int count = dt.Rows.Count; ; foreach (DataRow dr in dt.Rows) { PRApprovedEntity PRLine = new PRApprovedEntity(); if (!string.IsNullOrWhiteSpace(dr["ItemCode"].ToString())) { PRLine.ItemCode = dr["ItemCode"].ToString(); } if (!string.IsNullOrWhiteSpace(dr["ItemName"].ToString())) { PRLine.ItemName = dr["ItemName"].ToString(); } if (!string.IsNullOrWhiteSpace(dr["SupCode"].ToString())) { PRLine.SupCode = dr["SupCode"].ToString(); } if (!string.IsNullOrWhiteSpace(dr["SupName"].ToString())) { PRLine.SupName = dr["SupName"].ToString(); } if (!string.IsNullOrWhiteSpace(dr["NormalPeriod"].ToString())) { PRLine.NormalPeriod = dr["NormalPeriod"].ToString(); } if (!string.IsNullOrWhiteSpace(dr["Effective_IsEffective"].ToString())) { PRLine.IsEff = Convert.ToBoolean(dr["Effective_IsEffective"].ToString().Trim()); } returnValue.Add(PRLine); } int time = (DateTime.Now - time2).Seconds; result.Code = 0; result.ResMsg = "获取U9料品与供应商信息成功"; result.ResData = returnValue; result.IsCompress = false; result.IsSuccess = true; return result; } catch (Exception ex) { result.Code = -1; result.ResMsg = "U9料品与供应商信息获取失败,请查看日志"; result.ResData = null; result.IsCompress = false; result.IsSuccess = false; StringBuilder str = new StringBuilder(); str.AppendLine("U9料品与供应商信息获取失败"); strHead.AppendLine("传入编码:" + d.ItemCode); strHead.AppendLine("传入供应商:" + d.SupCode); strHead.AppendLine("开始时间:" + d.StartTime); str.AppendLine("失败原因:" + ex.Message); Appconfig.WriteLogFile(str.ToString(), "U9料品与供应商信息接口日志"); } return result; } /// /// 返回值 /// public class FormICSCreatedArrivalNoticeModel { //0 :正常数据,-1:失败。 public int Code { get; set; } public string ResMsg { get; set; } public List ResData { get; set; } public bool IsCompress { get; set; } public bool IsSuccess { get; set; } } } }