using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Data; using System.Data.Common; using System.Text; using NetLibrary; using NetLibrary.Data; using TradeModel; using TradeManageNew; using TradeManage.HuoWu; namespace ERPOMS { public class DataNew { #region 登录 public static JC_UserInfo Login(string UserName, string PassWord, string LoginIp, int IsNB) { string tsql = @" declare @UserID int,@Name nvarchar(20),@UserType nvarchar(5) if @IsNB=1 or (select count(0) from [JC_InnerIp] where InnerIp=@LoginIp and InnerIp Is not null)>0 begin select top 1 @UserID=UserID from JC_UserInfo a inner join JC_Company b on a.CompanyId=b.CompanyId where a.UserName=@UserName and a.PassWord=@PassWord and UserType<>'H' and a.State=1 and b.State=1 and isoms=1 end else begin select top 1 @UserID=UserID from JC_UserInfo a inner join JC_Company b on a.CompanyId=b.CompanyId where a.UserName=@UserName and a.PassWord=@PassWord and UserType<>'H' and a.State=1 and b.State=1 and a.IsLogin=1 and isoms=1 end select a.UserID,a.Name,a.UserType,a.CompanyId,CompanyName=b.SimpleName,a.DeptId,a.Duty,UserCard=isnull(a.RoomAddr,0),a.Mobile3 from JC_UserInfo a inner join JC_Company b on a.CompanyId=b.CompanyId where a.UserID=@UserID "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@UserName", DbType.String, UserName); db.AddInParameter(cmd, "@PassWord", DbType.String, PassWord); db.AddInParameter(cmd, "@LoginIp", DbType.String, LoginIp); db.AddInParameter(cmd, "@IsNB", DbType.String, IsNB); DataTable tb = db.ExecuteDataTable(cmd); if (tb.Rows.Count == 0) return null; var list = tb.Rows[0].ToModel(); return list; } #endregion #region 读取菜单 public static List GetListMenu_Oms(int UserID, int CompanyId) { string tsql = @" declare @UserType nvarchar(10) select top 1 @UserType=UserType from JC_UserInfo where UserID=@UserID if @UserType='S' or @UserType='M' begin select * from JC_MenuList_OMS where IsUse=1 order by SortNo end else begin select *,css='ico_edit' from JC_MenuList_OMS where IsUse=1 and PopedomType>0 order by SortNo end "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@UserID", DbType.Int32, UserID); db.AddInParameter(cmd, "@CompanyId", DbType.Int32, CompanyId); DataTable tb = db.ExecuteDataTable(cmd); return tb.ToList(); } #endregion #region 修改密码 public static int UpdatePassWord(string UserName, int UserID, string OldPassword, string NewPassWord) { string tsql = @" declare @bk int select @bk=count(0) from JC_UserInfo where UserID=@UserID and Password=@OldPassword if @bk=1 and (select count(0) from JC_UserInfo where UserID<>@UserID and UserName=@UserName and State=1)>0 begin select @bk=-1 end if @bk=1 begin update JC_UserInfo set Password=@NewPassWord,UserName=@UserName where UserID=@UserID end select @bk "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@UserID", DbType.Int32, UserID); db.AddInParameter(cmd, "@UserName", DbType.String, UserName); db.AddInParameter(cmd, "@OldPassword", DbType.String, OldPassword); db.AddInParameter(cmd, "@NewPassWord", DbType.String, NewPassWord); int a = Convert.ToInt32(db.ExecuteScalar(cmd)); return a; } #endregion #region 返回列表 public static List GetListStoreYC(DateTime? InDate) { Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetStoredProcCommand("OrderStore_Compare"); db.AddInParameter(cmd, "@InDate", DbType.DateTime, InDate); DataTable tb = db.ExecuteDataTable(cmd); List ListModel = tb.ToList(); return ListModel; } #endregion #region 分页查询 public static List GetListDT_OrderInfoForUser_New(int CompanyId, DateTime? SDate, string GoodsName, string Name, string TrackCode, int IsSku, int IsDH, RefParameterCollection where, int PageIndex, int PageSize, string Sort, out int RowCount) { string sql1 = ""; string NoGoodsSql = ""; if (IsDH == 1) NoGoodsSql = " and isnull(b.NoGoods,0)=1"; if (IsDH == 0) NoGoodsSql = " and isnull(b.NoGoods,0)=0"; if (TrackCode != "") { sql1 = @"select OrderId into #OrderTemp from DT_TrackCodeApply with (nolock) where state=1 and TrackCode ='" + TrackCode + "' "; } else if (GoodsName != "") { if (GoodsName.Contains(" ")) { sql1 = @" select distinct OrderId into #OrderTemp from DT_OrderGoods a with (nolock) inner join HW_GoodsDetail b on a.DetailId=b.DetailId inner join HW_GoodsInfo c on b.GoodsId=c.GoodsId where c.CompanyId=@CompanyId " + NoGoodsSql + " and (c.GoodsCode like '%" + GoodsName.Split(' ')[0].Trim() + "%' or c.GoodsOldCode like '%" + GoodsName.Split(' ')[0].Trim() + @"%') and (b.TypeCode like '%" + GoodsName.Split(' ')[1].Trim() + @"%' or b.TypeDesc like '%" + GoodsName.Split(' ')[1].Trim() + @"%')"; } else if (GoodsName.Contains("-")) { sql1 = @" select distinct OrderId into #OrderTemp from DT_OrderGoods a with (nolock) inner join HW_GoodsDetail b on a.DetailId=b.DetailId inner join HW_GoodsInfo c on b.GoodsId=c.GoodsId where c.CompanyId=@CompanyId " + NoGoodsSql + " and (c.GoodsCode like '%" + GoodsName.Split('-')[0].Trim() + "%' or c.GoodsOldCode like '%" + GoodsName.Split('-')[0].Trim() + @"%') and (b.TypeCode like '%" + GoodsName.Split('-')[1].Trim() + @"%' or b.TypeDesc like '%" + GoodsName.Split('-')[1].Trim() + @"%')"; } else { sql1 = @" select distinct OrderId into #OrderTemp from (select a.OrderId from DT_OrderGoods a with (nolock) inner join HW_GoodsDetail b on a.DetailId=b.DetailId inner join HW_GoodsInfo c on b.GoodsId=c.GoodsId where c.CompanyId=@CompanyId " + NoGoodsSql + " and (c.GoodsName like '%" + GoodsName + "%' or c.GoodsCode like '%" + GoodsName + @"%'or c.GoodsOldCode like '%" + GoodsName + @"%') union select OrderId from DT_OrderGoods where DetailId=0 and GoodsSKU like '%" + GoodsName + "%')a"; } } else if (Name != "") { sql1 = @"select distinct a.OrderId into #OrderTemp from DT_OrderGoods a with (nolock) inner join DT_OrderInfo b with (nolock) on a.OrderId=b.OrderId inner join HW_GoodsDetail c on a.detailId=c.detailId inner join HW_GoodsUser d on c.GoodsId=d.GoodsId and b.ShopId=d.ShopId inner join jc_userinfo e on d.UserId=e.UserId where e.name='" + Name + "'"; if (SDate != null) sql1 += " and b.OrderDate>='" + SDate.Value.ToString("yyyy-MM-dd") + "' "; } // if (IsSku == 0 && sql1 == "") // sql1 = @"select distinct a.OrderId from DT_OrderGoods a // inner join DT_OrderInfo b on a.OrderId=b.OrderId // where b.CompanyId=@CompanyId and a.DetailId=0"; // else // if (IsSku == 0 && GoodsName != "") // sql1 = "select distinct OrderId from DT_OrderGoods where DetailId=0 and GoodsName like '%" + GoodsName + "%'"; // else // if (IsSku == 0 && SKU != "") // sql1 = sql1 + " a.DetailId=0"; // else if (IsSku == 1 && sql1 == "") // sql1 = @"select distinct a.OrderId from DT_OrderGoods a // inner join DT_OrderInfo b on a.OrderId=b.OrderId // where b.CompanyId=@CompanyId and a.DetailId>0"; // else // if (IsSku == 1 && GoodsName != "") // sql1 = "select distinct OrderId from DT_OrderGoods where DetailId>0 and GoodsSKU like '%" + GoodsName + "%'"; // else // if (IsSku == 1 && SKU != "") // sql1 = sql1 + " a.DetailId>0"; if (sql1 == "" && (IsDH > -1)) sql1 = @"select distinct a.OrderId into #OrderTemp from DT_OrderGoods a inner join HW_GoodsDetail b on a.DetailId=b.DetailId inner join HW_GoodsInfo c on b.GoodsId=c.GoodsId where c.CompanyId=@CompanyId " + NoGoodsSql; if (where == null) where = new RefParameterCollection(); QueryService ser = new QueryService(); ser.Fields = @"OrderId=cast(a.OrderId as int),PlatId=c.PlatType,a.ShopId,a.PlatOrderCode,a.JoinOrderCode,a.IsJoin,IsJoinState=case when a.IsJoin=1 then '[合并]' else '' end,a.GoodsNum,a.TotalPrice,a.MoneyCode,a.PostState,a.PostDate,a.FPDate,a.PrintState,a.MateState,a.State,a.OrderDate,a.InDate,a.CompanyId,a.IsBlank,a.CustomID,ErrorInfo='', a.OrderState,c.ShopName,c.Country,StateName=case when a.State=1 and PostState=0 then '未发货' when a.State=1 and PostState=1 then '已发货' when a.State=1 and PostState=3 then '部分发货' when a.State=2 then '已结束' when a.State=3 then '已取消' when a.State=1 and PostState=2 then '不允许发货' end,a.CountryCode,CountryName=case when a.CountryName is null then a.RevCountry else a.CountryName end,a.TrackState,a.IsSpare,a.IsSDan,a.BuyDate,a.RevName,a.RevProvince,a.escrowFee,a.Fee6,a.Fee7,a.Fee8,a.Post,a.PostFee"; if (sql1 != "") ser.Tables = @"VW_Orders a with (nolock) inner join #OrderTemp b on a.OrderId=b.OrderId inner join JC_Shop c with (nolock) on a.ShopId=c.ShopId"; else ser.Tables = @"VW_Orders a with (nolock) inner join JC_Shop c with (nolock) on a.ShopId=c.ShopId"; ser.Filter = where.GetWhere(System.Data.CommandType.Text); ser.PageIndex = PageIndex; ser.PageSize = PageSize; ser.Sort = Sort; ser.KeyName = "OrderId"; string tsql = ser.GetText(); if (sql1 != "") tsql = sql1 + " " + tsql; where.AddOutParameter("RowCount", System.Data.DbType.Int32); List ListModel = null; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, where); db.AddInParameter(cmd, "@CompanyId", DbType.Int32, CompanyId); DataTable tb = db.ExecuteDataTable(cmd); RowCount = Convert.ToInt32(cmd.Parameters["@RowCount"].Value); ListModel = tb.ToList(); return ListModel; } #endregion #region 分页查询 public static List GetListDT_OrderInfoForTM2_New(int CompanyId, string MName, string GoodsName, string SKU, string TrackCode, int IsSku, int IsDH, RefParameterCollection where, int PageIndex, int PageSize, string Sort, out int RowCount, string groupName = "") { string sql1 = ""; string NoGoodsSql = ""; if (IsDH == 1) NoGoodsSql = " and isnull(b.NoGoods,0)=1"; if (IsDH == 0) NoGoodsSql = " and isnull(b.NoGoods,0)=0"; //if (MName != "") // NoGoodsSql += " and isnull(c.MName,'')='" + MName + "'"; if (TrackCode != "") { sql1 = @"select OrderId into #OrderTemp from DT_TrackCodeApply with (nolock) where state=1 and TrackCode ='" + TrackCode + "' "; } else if (GoodsName != "") { if (GoodsName.Contains(" ")) { sql1 = @" select distinct OrderId into #OrderTemp from DT_OrderGoods a with (nolock) inner join HW_GoodsDetail b on a.DetailId=b.DetailId inner join HW_GoodsInfo c on b.GoodsId=c.GoodsId where c.CompanyId=@CompanyId " + NoGoodsSql + " and (c.GoodsCode like '%" + GoodsName.Split(' ')[0].Trim() + "%' or c.GoodsOldCode like '%" + GoodsName.Split(' ')[0].Trim() + @"%') and (b.TypeCode like '%" + GoodsName.Split(' ')[1].Trim() + @"%' or b.TypeDesc like '%" + GoodsName.Split(' ')[1].Trim() + @"%')"; } else if (GoodsName.Contains("-")) { sql1 = @" select distinct OrderId into #OrderTemp from DT_OrderGoods a with (nolock) inner join HW_GoodsDetail b on a.DetailId=b.DetailId inner join HW_GoodsInfo c on b.GoodsId=c.GoodsId where c.CompanyId=@CompanyId " + NoGoodsSql + " and (c.GoodsCode like '%" + GoodsName.Split('-')[0].Trim() + "%' or c.GoodsOldCode like '%" + GoodsName.Split('-')[0].Trim() + @"%') and (b.TypeCode like '%" + GoodsName.Split('-')[1].Trim() + @"%' or b.TypeDesc like '%" + GoodsName.Split('-')[1].Trim() + @"%')"; } else { sql1 = @" select distinct OrderId into #OrderTemp from (select a.OrderId from DT_OrderGoods a with (nolock) inner join HW_GoodsDetail b with (nolock) on a.DetailId=b.DetailId inner join HW_GoodsInfo c with (nolock) on b.GoodsId=c.GoodsId where c.CompanyId=@CompanyId " + NoGoodsSql + " and (c.GoodsName like '%" + GoodsName + "%' or c.GoodsCode like '%" + GoodsName + @"%'or c.GoodsOldCode like '%" + GoodsName + @"%') union select OrderId from DT_OrderGoods with (nolock) where DetailId=0 and GoodsSKU like '%" + GoodsName + "%')a"; } } else if (SKU != "") sql1 = @"select distinct a.OrderId into #OrderTemp from DT_OrderGoods a with (nolock) inner join DT_OrderInfo b with (nolock) on a.OrderId=b.OrderId where b.CompanyId=@CompanyId and a.GoodsSku like '%" + SKU + "%'"; if (sql1 == "" && ((IsDH > -1) || MName != "" || groupName != "")) { sql1 = @"select distinct z.OrderId into #OrderTemp from ( select b.OrderId,b.muserid,u.Name as MName, u.GroupName from ( select a.OrderId , case when d.PlatId=2 then muserid when d.PlatId=3 then guserid_ebay when d.PlatId=6 then guserid_wlmart when d.PlatId=15 then guserid_shopify when d.PlatId=18 then guserid_wayfair when d.PlatId=21 then guserid_sheIn when d.PlatId=22 then guserid_tiktok when d.PlatId=23 then guserid_temu end muserid from DT_OrderGoods a with (nolock) inner join HW_GoodsDetail b with (nolock) on a.DetailId=b.DetailId inner join HW_GoodsInfo c with (nolock) on b.GoodsId=c.GoodsId inner join DT_OrderInfo d with (nolock) on a.OrderId=d.OrderId where c.CompanyId=1 " + NoGoodsSql + " ) b left join JC_UserInfo u on b.muserid=u.UserId ) z where 1=1 "; //添加组长筛选 if (!string.IsNullOrEmpty(MName)) sql1 = sql1 + " and z.MName='" + MName + "'"; if (!string.IsNullOrEmpty(groupName)) sql1 = sql1 + " and z.groupname='" + groupName + "'"; } if (where == null) where = new RefParameterCollection(); QueryService ser = new QueryService(); ser.Fields = @"OrderId=cast(a.OrderId as int),PlatId=c.PlatType,a.ShopId,a.PlatOrderCode,a.JoinOrderCode,a.IsJoin,IsJoinState=case when a.IsJoin=1 then '[合并]' else '' end,a.GoodsNum,a.TotalPrice,a.MoneyCode,a.PostState,a.PostDate,a.FPDate,a.PrintState,a.MateState,a.State,a.OrderDate,a.InDate,a.CompanyId,a.IsBlank,a.CustomID,ErrorInfo='', a.OrderState,c.ShopName,c.Country,StateName=case when a.State=1 and PostState=0 then '未发货' when a.State=1 and PostState=1 then '已发货' when a.State=1 and PostState=3 then '部分发货' when a.State=2 then '已结束' when a.State=3 then '已取消' when a.State=1 and PostState=2 then '不允许发货' end,a.CountryCode,CountryName=case when a.CountryName is null then a.RevCountry else a.CountryName end,a.TrackState,a.IsSpare,a.IsSDan,a.BuyDate,a.RevName,a.RevProvince,a.escrowFee,a.Fee6,a.Fee7,a.Fee8,a.Post,a.PostFee,a.OrderOutDate,SaleUserId=a.WLSS,a.RevAddr,a.RevCity,a.RevPostCode,a.RevMoblie,a.RevPhone,a.RevCountry,a.StoreId,a.UpsFeeR,a.UpsFeeE,a.Fee11,a.Fee12,a.Fee13,a.RevFax as AddressType"; if (sql1 != "") ser.Tables = @"VW_Orders a with (nolock) inner join #OrderTemp b on a.OrderId=b.OrderId inner join JC_Shop c with (nolock) on a.ShopId=c.ShopId"; else ser.Tables = @"VW_Orders a with (nolock) inner join JC_Shop c with (nolock) on a.ShopId=c.ShopId"; ser.Filter = where.GetWhere(System.Data.CommandType.Text); ser.PageIndex = PageIndex; ser.PageSize = PageSize; ser.Sort = Sort; ser.KeyName = "OrderId"; string tsql = ser.GetText(); if (sql1 != "") tsql = sql1 + " " + tsql; where.AddOutParameter("RowCount", System.Data.DbType.Int32); List ListModel = null; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, where); db.AddInParameter(cmd, "@CompanyId", DbType.Int32, CompanyId); DataTable tb = db.ExecuteDataTable(cmd); RowCount = Convert.ToInt32(cmd.Parameters["@RowCount"].Value); ListModel = tb.ToList(); return ListModel; } #endregion public static List GetExpressList() { List list = null; string query = "\r\nselect * from JC_Express \r\n"; Database database = DatabaseFactory.CreateDatabase(); DbCommand sqlStringCommand = database.GetSqlStringCommand(query); DataSet dataSet = database.ExecuteDataSet(sqlStringCommand); return dataSet.Tables[0].ToList(); } #region 返回列表 public static List GetListUSMap4(string OrderIds) { //string tsql = "select a.Id,a.statename,a.ename,a.Num,a.code,a.color,a.Price,a.StoreId,a.IsEast from DT_USMap"; string tsql = @"select a.OrderId,b.StoreId,a.Fee6,a.Fee7,a.Fee8,a.Fee10,a.Fee11,a.Fee12,a.Fee13,a.Fee14 from DT_OrderInfo a inner join DT_OrderXXInfo b on a.OrderId=b.OrderId where a.OrderId in (" + OrderIds + ")"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); DataTable tb = db.ExecuteDataTable(cmd); List ListModel = tb.ToList(); return ListModel; } #endregion public static List GetErrorList(string OrderIds) { List list = null; string query = "\r\nselect ErrorInfo=isnull(ErrorInfo,'')+isnull(PostError,''),OrderId from DT_OrderXXInfo where OrderId in (" + OrderIds + ") and (ErrorInfo is not null or PostError is not null)"; Database database = DatabaseFactory.CreateDatabase(); DbCommand sqlStringCommand = database.GetSqlStringCommand(query); database.AddInParameter(sqlStringCommand, "@OrderIds", DbType.String, OrderIds); DataSet dataSet = database.ExecuteDataSet(sqlStringCommand); return dataSet.Tables[0].ToList(); } #region 返回列表 public static List GetListMBLinkOrder(string OrderIds) { //string tsql = "select a.Id,a.GoodsId,a.LinkUrl,a.Price,a.Sort,a.Price2,a.Price3,a.Remark,a.Remark2,a.Remark3 from HW_JZLink"; string tsql = @"select SKU1=c.GoodsCode,f.*,a.OrderId,GoodsHJNum2=f.Num2,e.ShopId from DT_OrderGoods a with(nolock) inner join HW_GoodsDetail b with(nolock) on a.DetailId=b.DetailId inner join HW_GoodsInfo c with(nolock) on b.GoodsId=c.GoodsId inner join DT_OrderInfo d with(nolock) on a.OrderId=d.OrderId inner join JC_Shop e with(nolock) on d.ShopId=e.ShopId left join (select GoodsId,LinkDesc,Num=MAX(Num),PM=MAX(PM),Num2=MAX(Num2) from HW_BuyLink group by GoodsId,LinkDesc)f on c.GoodsId=f.GoodsId and e.ShopName=f.LinkDesc where a.OrderId in (" + OrderIds + ")"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); DataTable tb = db.ExecuteDataTable(cmd); List ListModel = tb.ToList(); return ListModel; } #endregion #region 查询订单明细匹配 public static List GetOrderGoodsListNew2_New(string OrderIds) { //BGPrice 作 货物税费 //GoodsFee=a.GoodsFee+isnull(a.GoodsRate,0)*0.01*a.GoodsFee 货物税费加上去 List list = null; string tsql = @" select z.*,u.Name as mname,u.GroupName from ( select a.Id,a.OrderId,a.DetailId,a.GoodsNum,a.RMBMoney,a.MoneyCode,LockNum=case when d.matestate=2 then a.GoodsNum else 0 end,a.PostInfo,GoodsName=case when b.DetailId is not null then b.GoodsName else a.GoodsName end, GoodsSKU=b.TypeDesc,CKGoodsNum=isnull(b.WestNum,0),SpareNum=isnull(b.EastNum,0),GoodsInNum=isnull(b.GoodsInNum,0),GoodsInNum2=isnull(b.GoodsHJNum14,0),ChaseId=isnull(b.GoodsHJNum15,0),GoodsInNum3=isnull(b.GoodsInNum,0),GoodsLeftNum=isnull(b.WestNum,0)+isnull(b.EastNum,0)+isnull(b.GoodsHJNum14,0)+isnull(b.GoodsHJNum15,0)-isnull(b.GoodsPlanNum,0), OutNum=case when d.State=2 then a.GoodsNum else 0 end,d.PlatId,productImgUrl2=a.productImgUrl,productImgUrl=case when d.PlatId<>2 and a.productImgUrl is not null and a.productImgUrl<>'' then a.productImgUrl when b.FirstImgUrl is not null and b.FirstImgUrl<>'' then b.FirstImgUrl else b.ImgUrl end,a.GoodsDesc,b.GoodsCode,b.GoodsOldCode,b.GoodsId,b.TypeCode,b.TypeDesc,a.OldTypeCode,a.OldTypeDesc,GoodsFee=a.GoodsFee+isnull(a.GoodsRate,0)*0.01*a.GoodsFee,a.TCFee,GoodsPrice=case when f.Price is not null and f.Price>0 then f.Price+isnull(f.PostPrice,0) else b.InPrice end,b.Solid2,BGPrice=b.FeeRate,JoinOrderCode=e.RevFax,Weight=isnull(b.Weight2,0),PostionCode=cast(isnull(b.GoodsHJNum11,0) as nvarchar(10)),a.adfee,case when d.PlatId=2 then b.muserid when d.PlatId=3 then b.guserid_ebay when d.PlatId=6 then b.guserid_wlmart when d.PlatId=15 then b.guserid_shopify when d.PlatId=18 then b.guserid_wayfair when d.PlatId=21 then b.guserid_sheIn end muserid ,b.WestNum,b.EastNum from DT_OrderGoods a inner join DT_OrderInfo d on a.OrderId=d.OrderId inner join DT_OrderXXInfo e on a.OrderId=e.OrderId left join (select c.GoodsName,c.GoodsCode,c.GoodsOldCode,ImgUrl=c.FirstImgUrl,d.*,c.InPrice,Solid2=c.Solid,FeeRate=isnull(c.FeeRate,0),c.Weight2,c.muserid,c.guserid_wlmart,c.guserid_shopify,c.guserid_ebay,c.guserid_wayfair,c.guserid_sheIn from HW_GoodsInfo c inner join HW_GoodsDetail d on c.GoodsId=d.GoodsId)b on a.DetailId=b.DetailId left join (select OrderGoodsId,Price=MAX(price),PostPrice=MAX(PostPrice) from HW_GoodsInDetail where OrderGoodsId>0 group by OrderGoodsId) f on a.Id=f.OrderGoodsId where a.OrderId in (" + OrderIds + ")) z left join JC_UserInfo u on z.muserid=u.UserId"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@OrderIds", DbType.String, OrderIds); DataSet ds = db.ExecuteDataSet(cmd); list = ds.Tables[0].ToList(); return list; } #endregion public static List GetTrackCodeApplyList(string OrderIds) { List list = null; string query = "\r\nselect a.OrderId,a.TrackCode,b.Weight,a.OrderCode,a.TrackType,ScanDate=b.InDate from DT_TrackCodeApply a with (nolock) \r\nleft join DT_TrackCodeScan b with (nolock) on a.TrackCode=b.TrackCode and b.OrderId in (" + OrderIds + ")\r\nwhere a.State=1 and a.OrderId in (" + OrderIds + ")"; Database database = DatabaseFactory.CreateDatabase(); DbCommand sqlStringCommand = database.GetSqlStringCommand(query); database.AddInParameter(sqlStringCommand, "@OrderIds", DbType.String, OrderIds); DataSet dataSet = database.ExecuteDataSet(sqlStringCommand); return dataSet.Tables[0].ToList(); } #region 返回Model public static List GetOrderFees(string OrderIds) { List list = null; string tsql = @"select a.orderid,a.PlatId, a.TotalPrice,escrowFee=isnull(a.escrowFee,0),DR_BackFee=isnull(a.DR_BackFee,0),DR_PostFee=isnull(a.DR_PostFee,0),DR_SSFee=isnull(a.DR_SSFee,0),Ad_Fee=isnull(a.Ad_Fee,0),Other_Fee=isnull(a.Other_Fee,0),yj=isnull(b.yj,0),yf=isnull(b.yf,0),cb=isnull(b.cb,0),hwsf=isnull(b.hwsf,0),sjyf=isnull(b.sjyf,0),sjcb=isnull(b.sjcb,0),sjhwsf=isnull(b.sjhwsf,0),tc=isnull(b.tc,0),moneyrate=isnull(b.moneyrate,0),md=ISNULL(b.md,0),ck=ISNULL(b.ck,0),sjtc=isnull(b.sjtc,0), Isnull( b.SubsidyFee,0) SubsidyFee from DT_OrderInfo a with(nolock) left Join DT_Fees b with(nolock) on a.OrderId=b.orderid where a.OrderId in (" + OrderIds + ")"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); DataSet ds = db.ExecuteDataSet(cmd); list = ds.Tables[0].ToList(); return list; } #endregion #region 获取订单商品的大小类排名 public static List GetGoodsRankModelList(string shopids, DateTime? maxDate, DateTime? minDate) { string filt = ""; if (maxDate.HasValue) filt += " and CONVERT(date,OrderDate)>='" + minDate.Value.Date + "'"; if (minDate.HasValue) filt += " and CONVERT(date,OrderDate)<='" + maxDate.Value.Date + "'"; string tsql = " select ShopId,GoodsId,OrderDate,Int2 ,Int3 ,Int10,asin from DD_GoodsCodeData where ShopId in (" + shopids + ")" + filt; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); DataTable tb = db.ExecuteDataTable(cmd); List ListModel = tb.ToList(); return ListModel; } #endregion #region 返回列表 public static List GetListJZLinkOrder(string OrderIds) { //string tsql = "select a.Id,a.GoodsId,a.LinkUrl,a.Price,a.Sort,a.Price2,a.Price3,a.Remark,a.Remark2,a.Remark3 from HW_JZLink"; string tsql = @"select distinct d.*,a.OrderId from DT_OrderGoods a with(nolock) inner join HW_GoodsDetail b with(nolock) on a.DetailId=b.DetailId inner join HW_GoodsInfo c with(nolock) on b.GoodsId=c.GoodsId inner join HW_JZLink d with(nolock) on c.GoodsId=d.GoodsId where a.OrderId in (" + OrderIds + ")"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); DataTable tb = db.ExecuteDataTable(cmd); List ListModel = tb.ToList(); return ListModel; } #endregion public static List GetAllGoodWeekAdSpend() { Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetStoredProcCommand("GetAllGoodsLastWeekADSpend"); DataTable tb = db.ExecuteDataTable(cmd); List ListModel = tb.ToList(); return ListModel; } #region 返回列表 public static List GetGoodsLast2DayAdFeeListByOrders(string oids) { string tsql = @"select distinct b.GoodsId into #ls_1 from DT_OrderGoods a with (nolock) inner join HW_GoodsDetail b with (nolock) on a.DetailId = b.DetailId where OrderId in (" + oids + ") "; tsql += @" select shopid, t1.goodsid,SUM(ABS(isnull(adfee, 0))) spend from AD_FeeList t1 inner join #ls_1 t2 on t1.goodsid=t2.GoodsId where CONVERT(date, addate) = CONVERT(date, DATEADD(day, -2, GETDATE())) group by t1.goodsid,shopid "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); DataTable tb = db.ExecuteDataTable(cmd); List ListModel = tb.ToList(); return ListModel; } #endregion public static List GetMoneyList2() { string query = "\r\n\r\nselect * from JC_Money \r\n"; Database database = DatabaseFactory.CreateDatabase(); DbCommand sqlStringCommand = database.GetSqlStringCommand(query); DataTable tb = database.ExecuteDataTable(sqlStringCommand); return tb.ToList(); } #region 读取人员 public static List GetListUserInfoFromGroup2(int UserId, int iscp) { string tsql = @" if @UserId=1 or @UserId=51 or @UserId=53 or @UserId=225 or @UserId=114 or @iscp=0 begin select * from JC_UserInfo where state=1 and deptid in (1,27,32,33) end else if(select count(0) from JC_UserInfo where state=1 and guserid=@UserId)>0 begin select UserId,Name from JC_UserInfo where state=1 and userid=@UserId union select UserId,Name from JC_UserInfo where state=1 and guserid=@UserId and userid<>@UserId end else begin select UserId,Name from JC_UserInfo where state=1 and userid=@UserId end "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@UserId", DbType.Int32, UserId); db.AddInParameter(cmd, "@iscp", DbType.Int32, iscp); DataTable tb = db.ExecuteDataTable(cmd); return tb.ToList(); } #endregion #region 返回部门列表 public static List GetDepartList(int CompanyId, string DeptType) { List list = null; string tsql = "select * from JC_DepartMent where CompanyId=@CompanyId and DeptType=@DeptType"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@CompanyId", DbType.Int32, CompanyId); db.AddInParameter(cmd, "@DeptType", DbType.String, DeptType); DataSet ds = db.ExecuteDataSet(cmd); list = ds.Tables[0].ToList(); return list; } #endregion #region 读取平台 public static List GetPlatBaseCode(int CompanyID, string KeyName) { string tsql = @" select * from JC_BaseCodeDetail where KeyName=@KeyName and (@CompanyID=0 or CompanyID=@CompanyID) and IsUse=1 order by SortNo "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@CompanyID", DbType.Int32, CompanyID); db.AddInParameter(cmd, "@KeyName", DbType.String, KeyName); DataTable tb = db.ExecuteDataTable(cmd); return tb.ToList(); } #endregion #region 查询物流 public static List GetExpressTypeList() { List List = null; string tsql = @" select * from JC_ExpressType "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); DataSet ds = db.ExecuteDataSet(cmd); List = ds.Tables[0].ToList(); return List; } #endregion #region 查询 public static List GetUseStoreHouse(int CompanyId) { List list = null; string tsql = @" select StoreId,StoreName,IsDefault,StoreType from CK_StoreHouse where CompanyId=@CompanyId and IsUse=1 order by IsDefault desc "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@CompanyId", DbType.Int32, CompanyId); DataSet ds = db.ExecuteDataSet(cmd); list = ds.Tables[0].ToList(); return list; } #endregion #region 读取店铺 public static List GetShopListUser(int UserId, int PlatType, string UserType, string AllShop) { string tsql = @" select ShopId,ShopName,PlatType,DeptId,InDate,CompanyId,LevelGrade from JC_Shop where ShopId IN (SELECT ShopId from JC_ShopUser WHERE UserId=@UserId) and (@PlatType=0 or PlatType=@PlatType) order by PlatType "; if (AllShop == "1" || UserType == "M" || UserType == "S" || UserId == 48 || UserId == 51) tsql = @" select ShopId,ShopName,PlatType,DeptId,InDate,CompanyId,LevelGrade from JC_Shop where CompanyId=1 and (@PlatType=0 or PlatType=@PlatType) order by PlatType "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@UserId", DbType.Int32, UserId); db.AddInParameter(cmd, "@PlatType", DbType.Int32, PlatType); DataTable tb = db.ExecuteDataTable(cmd); return tb.ToList(); } #endregion #region 读取留言模板 public static List GetLY_TempleteList(int CompanyId) { string tsql = @" if(select count(0) from LY_Templete where CompanyId=@CompanyId)=0 begin INSERT INTO [LY_Templete]([TempName],[TempContent],[CompanyId]) select [TempName],[TempContent],CompanyId=@CompanyId from LY_Templete where CompanyId=0 end select * from LY_Templete where CompanyId=@CompanyId "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@CompanyId", DbType.Int32, CompanyId); DataTable tb = db.ExecuteDataTable(cmd); return tb.ToList(); } #endregion #region 订单状态 public static int IsOrderState(int OrderId) { string tsql = @" select top 1 MateState=isnull(MateState,0) from DT_OrderInfo where OrderId=@OrderId"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@OrderId", DbType.Int32, OrderId); int a = Convert.ToInt32(db.ExecuteScalar(cmd)); return a; } #endregion #region 取消订单 public static void DeleteCancelOrder2(int OrderId, int InUserId) { string tsql = @" update DT_OrderInfo set state=3,updatedate=getdate(),MateState=0,PrintState=0,InUserId=@InUserId,IsJoin=0,IsJoinAddr=0,JoinOrderCode=null where OrderId=@OrderId update DT_OrderInfoNew set state=3,updatedate=getdate(),MateState=0,PrintState=0,InUserId=@InUserId,IsJoin=0,IsJoinAddr=0,JoinOrderCode=null where OrderId=@OrderId "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@OrderId", DbType.Int32, OrderId); db.AddInParameter(cmd, "@InUserId", DbType.Int32, InUserId); db.ExecuteNonQuery(cmd); } #endregion #region 取消订单数量 public static void UpdateCancelOrderGoodsForTM2(int OrderId, string InName, int CompanyId) { string tsql = @" INSERT INTO [DT_OrderGoodsChange]([InName],[NowDetailId],[OldDetailId],[InDate],[OrderId],[OldNum],[NowNum],[CompanyId]) select @InName,0,DetailId,getdate(),@OrderId,GoodsNum,0,@CompanyId from DT_OrderGoods where OrderId=@OrderId and DetailId>0 update b set b.GoodsPlanNum=b.GoodsPlanNum-a.GoodsNum from [DT_OrderGoods] a inner join HW_GoodsDetail b on a.DetailId=b.DetailId where a.OrderId=@OrderId "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@OrderId", DbType.Int32, OrderId); db.AddInParameter(cmd, "@InName", DbType.String, InName); db.AddInParameter(cmd, "@CompanyId", DbType.Int32, CompanyId); db.ExecuteNonQuery(cmd); } #endregion #region 读取货币 public static List GetMoneyList(int CompanyID) { string tsql = @" if @CompanyID=1 begin select * from JC_Money where CompanyId=@CompanyID and PlatId=1 end begin select * from JC_Money where CompanyId=@CompanyID end "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@CompanyID", DbType.Int32, CompanyID); DataTable tb = db.ExecuteDataTable(cmd); return tb.ToList(); } #endregion #region 读取物流渠道 public static List GetExpressPostList(int CompanyID, int LogisticsId) { string tsql = @" select c.ExpressID,c.Name,c.PrintTemplateName from JC_ExpressPost a --inner join JC_ExpressPostDetail b on a.ExpressPostID=b.ExpressPostID inner join JC_Express c on a.ExpressID=c.ExpressID where a.CompanyId=@CompanyID and a.IsUse=1 and (@LogisticsId=0 or LogisticsId=@LogisticsId) order by c.LogisticsId "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@CompanyID", DbType.Int32, CompanyID); db.AddInParameter(cmd, "@LogisticsId", DbType.Int32, LogisticsId); DataTable tb = db.ExecuteDataTable(cmd); return tb.ToList(); } #endregion #region 获取订单详情页广告花费,当天的订单取前一天的广告花费 public static decimal GetOrderAdFeeByOrderID(int orderid) { var sql = @"select SUM(ISNULL(adfee,0)) TotalAdfee from DT_OrderGoods where OrderId=@OrderId"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(sql); db.AddInParameter(cmd, "@OrderId", DbType.Int32, orderid); var obj = db.ExecuteScalar(cmd); return obj == null ? 0 : Convert.ToDecimal(obj); } #endregion #region 返回订单Model public static DT_OrderModelNew GetOrderModel2(int OrderId) { DT_OrderModelNew model = null; string tsql = @"select a.*, b.TotalWeight,b.TotalSoild,b.MoneyType,b.CustomID,b.SKU,b.RevName,b.RevCountry,b.RevProvince,b.RevCity,b.RevArea,b.RevAddr,b.RevPhone,b.RevMoblie,b.RevMail,b.RevFax,b.RevPostCode,b.SendInfo,b.ErrorInfo,b.BuyRemark,b.LeaveWord,b.FeeType,b.IsRegister,b.Post,b.PostFee,b.GoodsFee,b.BankCode,b.BankNo,b.CustomBankCode,b.CustomType,b.ErrorImage,b.Channel,b.GoodsAddr,b.TrackCode,b.FontTrackCode,b.StoreId,b.PostInfo,b.OrderState,b.RevProvince,b.RevCity,b.RevArea,ShopName=[dbo].[GetShopName](a.ShopId),b.CountryCode,b.CountryName,b.PostError,b.SendAddr,b.PostOneCode,b.LogisticsId,b.RevProvinceCode,a.Fee6,a.Fee7,a.Fee8,BoxFee=a.Fee10,a.Fee11,a.Fee12,a.Fee13,a.Fee14,a.FactOrderFee,a.FactOrderCommison,a.FactOrderFax,b.Zone,a.UpsFeeR,a.UpsFeeE,isnull(a.IsSyncToWMS,1) IsSyncToWMS from DT_OrderInfo a with(nolock) inner join DT_OrderXXInfo b with(nolock) on a.OrderId=b.OrderId where a.OrderId=@OrderId"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@OrderId", DbType.Int32, OrderId); DataTable tb = db.ExecuteDataTable(cmd); if (tb.Rows.Count > 0) model = tb.Rows[0].ToModel(); return model; } #endregion public static List GetOrderSpareList(int OrderId) { string text = ""; List list = null; text = "select * from DT_OrderSpare where OrderId=@OrderId"; Database database = DatabaseFactory.CreateDatabase(); DbCommand sqlStringCommand = database.GetSqlStringCommand(text); database.AddInParameter(sqlStringCommand, "@OrderId", DbType.Int32, OrderId); DataSet dataSet = database.ExecuteDataSet(sqlStringCommand); return dataSet.Tables[0].ToList(); } #region 查询订单货物明细 public static List GetOrderGoodsListNew(int OrderId) { //Weight2 用于预估运费 List list = null; string tsql = @" select a.Id,a.OrderId,d.PlatId,a.DetailId,a.GoodsNum,GoodsPrice=isnull(c.FeeRate,0),a.MoneyCode,a.LockNum,a.ChaseId,a.GoodsSKU,a.PostInfo,SKUState=case when a.DetailId>0 then '已经分配' else '未分配' end,GoodsName=case when c.GoodsName is null then a.GoodsName else c.GoodsName end,productImgUrl=case when productImgUrl is not null and productImgUrl<>'' then productImgUrl else '../images/no.jpg' end,TypeDesc=a.GoodsDesc,GoodsDesc=case when a.detailid<=0 then '' when a.detailid>0 and c.GoodsCode is not null and c.GoodsCode<>'' then c.GoodsCode+' '+b.TypeCode+'['+b.TypeDesc+']' else c.GoodsOldCode+' '+b.TypeCode+'['+b.TypeDesc+']' end,a.OldNum,c.GoodsCode,GoodsId=isnull(c.GoodsId,0),OldTypeDesc=case when a.OldTypeDesc is not null and a.OldTypeDesc<>'' then '改为'+a.OldTypeDesc+'发' else '' end,a.OldTypeCode,Weight=case when c.Weight2 is not null and c.Weight2>0 then c.Weight2 when c.Weight is not null and c.Weight>0 then c.Weight*0.035274 else null end,c.Width2,Length2=c.Long2,c.Height2,InPrice=isnull(c.InPrice,0),c.Solid, Weight2=case when a.Fee6>0 and (a.Fee60 and (a.Fee70 and (a.Fee80 and (d.Fee60 and (d.Fee70 and (d.Fee8(); return list; } #endregion #region 返回Model public static DT_FeesTC GetModel_FeesTC() { DT_FeesTC model = null; //string tsql = "select a.id,a.tc_fee,a.indate,a.state from DT_FeesTC"; string tsql = @" select * from DT_FeesTC where state=1"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); DataSet ds = db.ExecuteDataSet(cmd); if (ds.Tables[0].Rows.Count > 0) { model = ds.Tables[0].Rows[0].ToModel(); } return model; } #endregion #region 查询订单货物明细 public static List GetOrderGoodsPostionCode(int OrderId) { List list = null; string tsql = @" select d.PlatId,b.Id,c.PostionCode,Price=isnull(a.Price,0),PostPrice=isnull(a.PostPrice,0),HWCFee=isnull(a.HWCFee,0),InPrice=isnull(f.InPrice,0),GoodsPrice=isnull(a.GoodsRate,0) from HW_GoodsInDetail a inner join DT_OrderGoods b on a.OrderGoodsId=b.Id inner join CK_StorePostion c on a.PostionId=c.PostionId inner join DT_OrderInfo d on b.OrderId=d.OrderId left join HW_GoodsDetail e on b.DetailId=e.DetailId left join HW_GoodsInfo f on e.GoodsId=f.GoodsId where b.OrderId=@OrderId "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@OrderId", DbType.Int32, OrderId); DataSet ds = db.ExecuteDataSet(cmd); list = ds.Tables[0].ToList(); return list; } #endregion #region 查询订单跟踪码 public static List GetOrderTrackCodeNew(int OrderId, string JoinOrderCode) { List list = null; string tsql = @" if @JoinOrderCode<>'' begin select a.Id,a.PostId,a.TrackType,a.TrackCode,a.TrackCode2,a.GetDate,a.InName,a.OrderId,a.State,a.UpdateTime,a.OrderCode,a.OldPostFee,a.ScanState,TrackTypeName=case when a.TrackType=3 then '空包裹' else '' end,convert(nvarchar(100), b.Weight) as Weight,b.PostFee,ScanDate=b.InDate,a.SKU,Weight2=a.Weight,a.Long,a.Width,a.Height,a.OrderCode2,ScanName=c.Name from DT_TrackCodeApply a with(nolock) left join DT_TrackCodeScan b with(nolock) on a.OrderId=b.OrderId and a.TrackCode=b.TrackCode left Join JC_UserInfo c with(nolock) on b.SureUserId=c.UserId where a.OrderCode=@JoinOrderCode and a.state=1 end else begin select a.Id,a.PostId,a.TrackType,a.TrackCode,a.TrackCode2,a.GetDate,a.InName,a.OrderId,a.State,a.UpdateTime,a.OrderCode,a.OldPostFee,a.ScanState,TrackTypeName=case when a.TrackType=3 then '空包裹' else '' end,convert(nvarchar(100), b.Weight) as Weight,b.PostFee,ScanDate=b.InDate,a.SKU,Weight2=a.Weight,a.Long,a.Width,a.Height,a.OrderCode2,ScanName=c.Name from DT_TrackCodeApply a with(nolock) left join DT_TrackCodeScan b with(nolock) on a.OrderId=b.OrderId and a.TrackCode=b.TrackCode left Join JC_UserInfo c with(nolock) on b.SureUserId=c.UserId where a.OrderId=@OrderId and a.state=1 end "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@OrderId", DbType.Int32, OrderId); db.AddInParameter(cmd, "@JoinOrderCode", DbType.String, JoinOrderCode); DataSet ds = db.ExecuteDataSet(cmd); list = ds.Tables[0].ToList(); return list; } #endregion #region 返回列表 public static List GetListSpareFee(int OrderId) { //string tsql = "select a.Id,a.OrderId,a.Sku,a.Weight,a.Long,a.Width,a.Height,a.Fee1,a.Fee2,a.Fee3,a.InDate,a.InUserId from DT_SpareFee"; string tsql = "select * from DT_SpareFee where OrderId=@OrderId"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@OrderId", DbType.Int32, OrderId); DataTable tb = db.ExecuteDataTable(cmd); List ListModel = tb.ToList(); return ListModel; } #endregion #region 返回Model public static DT_PostVote GetModel_PostVote(int OrderId) { DT_PostVote model = null; //string tsql = "select a.Id,a.OrderId,a.trackcode,a.ActualWeightAmount,a.ActualWeightUnits,a.RatedWeightAmount,a.DimLength,a.DimWidth,a.DimHeight,a.DimDivisor,a.DimUnit,a.ZoneCode,a.bigdifference,a.result,a.sku,a.indate,a.inname,a.fee1,a.fee2,a.fee3,a.fee4,a.fee5,a.int1,a.int2,a.int3,a.str1,a.str2,a.str3 from DT_PostVote"; string tsql = @" declare @Id int select top 1 @Id=Id from DT_PostVote where OrderId=@OrderId select * from DT_PostVote where Id=@Id select * from DT_PostVoteDetail where mid=@Id"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@OrderId", DbType.Int32, OrderId); DataSet ds = db.ExecuteDataSet(cmd); if (ds.Tables[0].Rows.Count > 0) { model = ds.Tables[0].Rows[0].ToModel(); model.list = ds.Tables[1].ToList(); } return model; } #endregion #region 返回赔款Model public static DT_OrderBackMoneyApply GetOrderBackMoneyModel2(int OrderId) { DT_OrderBackMoneyApply model = null; string tsql = "select a.Id,a.OrderId,a.OrderCode,a.GoodsCode,a.BackReason1,a.BackReason2,a.BackReason3,a.Remark,OrderPrice=c.TotalPrice,a.BackPrice,a.PlanPrice,a.FactPrice,a.InName,a.InUserId,a.DeptName,a.DeptRemark,a.CompanyRemark,a.CompanyRemark2,a.CompanyName1,a.Indate,a.CompanyDate1,a.CompanyDate2,a.CompanyAgree1,a.CompanyAgree2,a.CompanyUserId,a.ShopId,a.MoneyCode1,a.MoneyCode2,a.MoneyCode3,a.MoneyCode4,a.ImageIds,a.BackDate,a.PostCode,a.PostFee,a.PostFee2,a.BackState,a.BackState2,a.BackType,a.OrderState,a.GoodState,a.BackAdvise,a.BackAdvise2,c.OrderDate,BackStateName=case when a.BackState=2 then '外箱破损重新包装入库' when a.BackState=1 then '正常入库' when a.BackState=3 then '破损报废' when a.BackState=4 then '丢失' else '未到货' end,b.ShopName from DT_OrderBackMoneyApply a inner join jc_shop b on a.ShopId=b.ShopId inner join DT_OrderInfo c on a.OrderId=c.OrderId where a.OrderId=@OrderId"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@OrderId", DbType.Int32, OrderId); DataTable tb = db.ExecuteDataTable(cmd); if (tb.Rows.Count > 0) model = tb.Rows[0].ToModel(); return model; } #endregion #region 分页查询 public static List GetListJC_Resource(string Ids) { string tsql = "select a.id,a.Type,a.FileName,a.FileUrl,a.FileSize,a.ExtType,a.FileKeyWord,a.CreateTime,a.UpdateTime,a.State,a.ItemName,a.InUserId,a.CompanyId from JC_Resource a where Id in (" + Ids + ")"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); DataTable tb = db.ExecuteDataTable(cmd); return tb.ToList(); } #endregion #region 修改订单基本信息 public static void UpdateOrderBaseInfo23(DT_OrderModelSave Model) { string tsql = @" if @JoinOrderCode<>'' begin Update DT_OrderInfo set PostState=@PostState,IsFba=@IsFba,MoneyState=@MoneyState,IsSyncToWMS=@IsSyncToWMS where JoinOrderCode=@JoinOrderCode Update a set a.[ErrorInfo]=@ErrorInfo from DT_OrderXXInfo a inner join DT_OrderInfo b on a.OrderId=b.OrderId where b.JoinOrderCode=@JoinOrderCode Update DT_OrderInfoNew set PostState=@PostState,IsFba=@IsFba,MoneyState=@MoneyState where JoinOrderCode=@JoinOrderCode Update a set a.[ErrorInfo]=@ErrorInfo from DT_OrderXXInfoNew a inner join DT_OrderInfoNew b on a.OrderId=b.OrderId where b.JoinOrderCode=@JoinOrderCode end else begin Update [DT_OrderInfo] set PostState=@PostState,IsFba=@IsFba,MoneyState=@MoneyState,IsSyncToWMS=@IsSyncToWMS where OrderId=@OrderId Update [DT_OrderXXInfo] set [ErrorInfo]=@ErrorInfo,StoreId=@StoreId where OrderId=@OrderId Update [DT_OrderInfoNew] set PostState=@PostState,IsFba=@IsFba,MoneyState=@MoneyState where OrderId=@OrderId Update [DT_OrderXXInfoNew] set [ErrorInfo]=@ErrorInfo,StoreId=@StoreId where OrderId=@OrderId end update DT_OrderInfo set escrowFee=@escrowFee where OrderId=@OrderId "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@OrderId", DbType.Int32, Model.OrderId); db.AddInParameter(cmd, "@ErrorInfo", DbType.String, Model.ErrorInfo); db.AddInParameter(cmd, "@PostState", DbType.Int32, Model.PostState); db.AddInParameter(cmd, "@IsFba", DbType.Int32, Model.IsFba); db.AddInParameter(cmd, "@escrowFee", DbType.Decimal, Model.escrowFee); db.AddInParameter(cmd, "@MoneyState", DbType.Int32, Model.MoneyState); db.AddInParameter(cmd, "@JoinOrderCode", DbType.String, Model.JoinOrderCode); db.AddInParameter(cmd, "@StoreId", DbType.Int32, Model.StoreId); db.AddInParameter(cmd, "@IsSyncToWMS", DbType.Int32, Model.IsSyncToWMS); db.ExecuteNonQuery(cmd); } #endregion #region 验证国家 public static DT_Country GetCountryCode(string CountryName) { DT_Country model = null; string tsql = @" select top 1 Code,CountryName=Name,EnglishName from JC_Country where Name=@CountryName or EnglishName=@CountryName or Code=@CountryName "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@CountryName", DbType.String, CountryName); DataTable tb = db.ExecuteDataTable(cmd); if (tb.Rows.Count > 0) model = tb.Rows[0].ToModel(); return model; } #endregion #region 修改订单地址 public static void UpdateOrderAddr2(DT_OrderModel Model) { string tsql = @" Update [DT_OrderXXInfo] set [RevName]=@RevName,CustomID=@CustomID,[RevCountry]=@RevCountry,RevMail=@RevMail,[RevAddr]=@RevAddr,[RevPhone]=@RevPhone,[RevMoblie]=@RevMoblie,[RevPostCode]=@RevPostCode,RevProvince=@RevProvince,RevCity=@RevCity,RevArea=@RevArea,CountryCode=@CountryCode,CountryName=@CountryName where OrderId=@OrderId Update [DT_OrderXXInfoNew] set [RevName]=@RevName,CustomID=@CustomID,[RevCountry]=@RevCountry,RevMail=@RevMail,[RevAddr]=@RevAddr,[RevPhone]=@RevPhone,[RevMoblie]=@RevMoblie,[RevPostCode]=@RevPostCode,RevProvince=@RevProvince,RevCity=@RevCity,RevArea=@RevArea,CountryCode=@CountryCode,CountryName=@CountryName where OrderId=@OrderId "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@OrderId", DbType.Int32, Model.OrderId); db.AddInParameter(cmd, "@RevName", DbType.String, Model.RevName); db.AddInParameter(cmd, "@RevCountry", DbType.String, Model.RevCountry); db.AddInParameter(cmd, "@RevAddr", DbType.String, Model.RevAddr); db.AddInParameter(cmd, "@RevPhone", DbType.String, Model.RevPhone); db.AddInParameter(cmd, "@CustomID", DbType.String, Model.CustomID); db.AddInParameter(cmd, "@RevMoblie", DbType.String, Model.RevMoblie); db.AddInParameter(cmd, "@RevMail", DbType.String, Model.RevMail); db.AddInParameter(cmd, "@RevPostCode", DbType.String, Model.RevPostCode); db.AddInParameter(cmd, "@RevProvince", DbType.String, Model.RevProvince); db.AddInParameter(cmd, "@RevCity", DbType.String, Model.RevCity); db.AddInParameter(cmd, "@RevArea", DbType.String, Model.RevArea); db.AddInParameter(cmd, "@CountryCode", DbType.String, Model.CountryCode); db.AddInParameter(cmd, "@CountryName", DbType.String, Model.CountryName); db.ExecuteNonQuery(cmd); } #endregion #region 保存 public static int Save_BlackName(DT_BlackName Model) { string tsql = @" if @id>0 begin Update [DT_BlackName] set [RevName]=@RevName,[RevCountry]=@RevCountry,[RevProvince]=@RevProvince,[RevAddr]=@RevAddr,[RevPhone]=@RevPhone,[RevMoblie]=@RevMoblie,[RevCity]=@RevCity,[orderid]=@orderid,[userid]=@userid where id=@id end else begin INSERT INTO [DT_BlackName]([RevName],[RevCountry],[RevProvince],[RevAddr],[RevPhone],[RevMoblie],[RevCity],[orderid],[userid])values(@RevName,@RevCountry,@RevProvince,@RevAddr,@RevPhone,@RevMoblie,@RevCity,@orderid,@userid) set @id=SCOPE_IDENTITY() end select @id"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@id", DbType.Int32, Model.id); db.AddInParameter(cmd, "@RevName", DbType.String, Model.RevName); db.AddInParameter(cmd, "@RevCountry", DbType.String, Model.RevCountry); db.AddInParameter(cmd, "@RevProvince", DbType.String, Model.RevProvince); db.AddInParameter(cmd, "@RevAddr", DbType.String, Model.RevAddr); db.AddInParameter(cmd, "@RevPhone", DbType.String, Model.RevPhone); db.AddInParameter(cmd, "@RevMoblie", DbType.String, Model.RevMoblie); db.AddInParameter(cmd, "@RevCity", DbType.String, Model.RevCity); db.AddInParameter(cmd, "@orderid", DbType.String, Model.orderid); db.AddInParameter(cmd, "@userid", DbType.Int32, Model.userid); int a = Convert.ToInt32(db.ExecuteScalar(cmd)); return a; } #endregion #region 根据sku查询货物 public static List GetGoodsModelFromGoodsCode(int TJ, int CompanyId, string GoodsCode, string TypeCode) { List list = null; string tsql = @" if @TJ=1 and @TypeCode<>'' begin select top 50 a.DetailId,a.TypeCode,a.TypeDesc,a.GoodsId,b.GoodsCode,b.GoodsOldCode,b.GoodsName,a.GoodsNum from HW_GoodsDetail a inner join HW_GoodsInfo b on a.GoodsId=b.GoodsId where b.CompanyId=@CompanyId and (b.GoodsCode=@GoodsCode or b.GoodsOldCode=@GoodsCode) and a.TypeCode=@TypeCode order by b.GoodsId,a.TypeCode end else if @TJ=1 and @TypeCode='' begin select top 300 a.DetailId,a.TypeCode,a.TypeDesc,a.GoodsId,b.GoodsCode,b.GoodsOldCode,b.GoodsName,a.GoodsNum from HW_GoodsDetail a inner join HW_GoodsInfo b on a.GoodsId=b.GoodsId where b.CompanyId=@CompanyId and (b.GoodsCode=@GoodsCode or b.GoodsOldCode=@GoodsCode) order by b.GoodsId,a.TypeCode end else if @TJ=2 begin select top 300 a.DetailId,a.TypeCode,a.TypeDesc,a.GoodsId,b.GoodsCode,b.GoodsOldCode,b.GoodsName,a.GoodsNum from HW_GoodsDetail a inner join HW_GoodsInfo b on a.GoodsId=b.GoodsId where b.CompanyId=@CompanyId and b.GoodsName like '%'+@GoodsCode+'%' order by b.GoodsId,a.TypeCode end else if @TJ=3 begin select top 300 a.DetailId,a.TypeCode,a.TypeDesc,a.GoodsId,b.GoodsCode,b.GoodsOldCode,b.GoodsName,a.GoodsNum from HW_GoodsDetail a inner join HW_GoodsInfo b on a.GoodsId=b.GoodsId where b.CompanyId=@CompanyId and (a.SKU1 like '%'+@GoodsCode+'%' or a.SKU2 like '%'+@GoodsCode+'%' or a.SKU3 like '%'+@GoodsCode+'%' or a.SKU4 like '%'+@GoodsCode+'%' or a.SKU5 like '%'+@GoodsCode+'%' or a.SKU6 like '%'+@GoodsCode+'%' or a.SKU7 like '%'+@GoodsCode+'%' or a.SKU8 like '%'+@GoodsCode+'%' or a.SKU9 like '%'+@GoodsCode+'%' or a.SKU10 like '%'+@GoodsCode+'%') order by b.GoodsId,a.TypeCode end "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@CompanyId", DbType.Int32, CompanyId); db.AddInParameter(cmd, "@TJ", DbType.Int32, TJ); db.AddInParameter(cmd, "@GoodsCode", DbType.String, GoodsCode); db.AddInParameter(cmd, "@TypeCode", DbType.String, TypeCode); DataSet ds = db.ExecuteDataSet(cmd); list = ds.Tables[0].ToList(); return list; } #endregion #region 返回货物明细 public static string GetGoodsDetailTypeDesc(int GoodsId, string TypeCode) { string tsql = "select top 1 TypeDesc from HW_GoodsDetail where GoodsId=@GoodsId and TypeCode=@TypeCode"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@GoodsId", DbType.Int32, GoodsId); db.AddInParameter(cmd, "@TypeCode", DbType.String, TypeCode); string a = Convert.ToString(db.ExecuteScalar(cmd)); return a; } #endregion #region 根据明细ID查询货物 public static HW_GoodsSPDetail GetGoodsDetailForTM(int DetailId) { HW_GoodsSPDetail model = null; string tsql = @" SELECT TypeCode,TypeDesc,b.GoodsCode,b.GoodsOldCode FROM [HW_GoodsDetail] a inner join HW_GoodsInfo b on a.GoodsId=b.GoodsId WHERE DetailId=@DetailId "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@DetailId", DbType.Int32, DetailId); //DataSet ds = db.ExecuteDataSet(cmd); DataTable tb = db.ExecuteDataTable(cmd); if (tb.Rows.Count > 0) model = tb.Rows[0].ToModel(); return model; } #endregion #region 查询改分配货物 public static List GetOrderChangeGoods(int OrderId, int Id) { List list = null; string tsql = @" select a.DetailId,b.TypeCode,b.TypeDesc,GoodsCode=isnull(c.GoodsCode,c.GoodsOldCode) from DT_OrderGoods a inner join HW_GoodsDetail b on a.DetailId=b.DetailId inner join HW_GoodsInfo c on b.GoodsId=c.GoodsId where a.DetailId>0 and a.OrderId=@OrderId and (@Id=0 or a.Id=@Id)"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@Id", DbType.Int32, Id); db.AddInParameter(cmd, "@OrderId", DbType.Int32, OrderId); DataSet ds = db.ExecuteDataSet(cmd); list = ds.Tables[0].ToList(); return list; } #endregion #region 查询改分配货物提醒 public static List GetOrderChangeNotice(int DetailId) { List list = null; string tsql = @" select UserId=a.InUserId from CG_Purchase a inner join CG_PurchaseGoods b on a.ChaseId=b.ChaseId inner join HW_GoodsDetail c on b.GoodsDetailId=c.DetailId where c.DetailId=@DetailId and a.GoodsState<2 and a.State<3 and (c.GoodsNum+c.GoodsInNum-c.GoodsPlanNum)>0 and c.GoodsInNum>0"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@DetailId", DbType.Int32, DetailId); DataSet ds = db.ExecuteDataSet(cmd); list = ds.Tables[0].ToList(); return list; } #endregion #region 保存提示消息 public static int SaveOpenMess(JC_OpenMess Model) { string tsql = @" if @Id>0 begin Update [JC_OpenMess] set [Content]=@Content,[IsRead]=@IsRead,[OpenDate]=@OpenDate,[Target]=@Target,[Type]=@Type,[UserType]=@UserType,[UserId]=@UserId,[Url]=@Url,[MenuName]=@MenuName where Id=@Id end else begin INSERT INTO [JC_OpenMess]([Content],[IsRead],[OpenDate],[Target],[Type],[UserType],[UserId],[Url],[MenuName],InUserId)values(@Content,@IsRead,@OpenDate,@Target,@Type,@UserType,@UserId,@Url,@MenuName,@InUserId) set @Id=SCOPE_IDENTITY() end select @Id"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@Id", DbType.Int32, Model.Id); db.AddInParameter(cmd, "@Content", DbType.String, Model.Content); db.AddInParameter(cmd, "@IsRead", DbType.Int32, Model.IsRead); db.AddInParameter(cmd, "@OpenDate", DbType.DateTime, Model.OpenDate); db.AddInParameter(cmd, "@Target", DbType.Int32, Model.Target); db.AddInParameter(cmd, "@Type", DbType.Int32, Model.Type); db.AddInParameter(cmd, "@UserType", DbType.String, Model.UserType); db.AddInParameter(cmd, "@UserId", DbType.Int32, Model.UserId); db.AddInParameter(cmd, "@Url", DbType.String, Model.Url); db.AddInParameter(cmd, "@MenuName", DbType.String, Model.MenuName); db.AddInParameter(cmd, "@InUserId", DbType.String, Model.InUserId); int a = Convert.ToInt32(db.ExecuteScalar(cmd)); return a; } #endregion #region 保存 public static int Save_SpareFee(DT_SpareFee Model) { string tsql = @" if @Id>0 begin Update [DT_SpareFee] set [OrderId]=@OrderId,[Sku]=@Sku,[Weight]=@Weight,[Long]=@Long,[Width]=@Width,[Height]=@Height,[Fee1]=@Fee1,[Fee2]=@Fee2,[Fee3]=@Fee3,[InDate]=@InDate,[InUserId]=@InUserId where Id=@Id end else begin INSERT INTO [DT_SpareFee]([OrderId],[Sku],[Weight],[Long],[Width],[Height],[Fee1],[Fee2],[Fee3],[InDate],[InUserId])values(@OrderId,@Sku,@Weight,@Long,@Width,@Height,@Fee1,@Fee2,@Fee3,@InDate,@InUserId) set @Id=SCOPE_IDENTITY() end select @Id"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@Id", DbType.Int32, Model.Id); db.AddInParameter(cmd, "@OrderId", DbType.Int32, Model.OrderId); db.AddInParameter(cmd, "@Sku", DbType.String, Model.Sku); db.AddInParameter(cmd, "@Weight", DbType.String, Model.Weight); db.AddInParameter(cmd, "@Long", DbType.String, Model.Long); db.AddInParameter(cmd, "@Width", DbType.String, Model.Width); db.AddInParameter(cmd, "@Height", DbType.String, Model.Height); db.AddInParameter(cmd, "@Fee1", DbType.Decimal, Model.Fee1); db.AddInParameter(cmd, "@Fee2", DbType.Decimal, Model.Fee2); db.AddInParameter(cmd, "@Fee3", DbType.Decimal, Model.Fee3); db.AddInParameter(cmd, "@InDate", DbType.DateTime, Model.InDate); db.AddInParameter(cmd, "@InUserId", DbType.Int32, Model.InUserId); int a = Convert.ToInt32(db.ExecuteScalar(cmd)); return a; } #endregion #region /// /// 更新订单的UPS运费 /// /// /// 运费 /// 仓库:241是RANCHO,242是E仓 public static void UpdateOrderUPSPostFee(int orderid, decimal postfee, int postid, string upslog) { var sql = ""; if (postid == 241) { sql = @" update DT_OrderInfo set UpsFeeR=@postfee,UpsFeelog=@upslog where OrderId=@orderid"; } else if (postid == 242) { sql = @" update DT_OrderInfo set UpsFeeE=@postfee,UpsFeelog=@upslog where OrderId=@orderid"; } Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(sql); db.AddInParameter(cmd, "@postfee", DbType.Decimal, postfee); db.AddInParameter(cmd, "@orderid", DbType.Int32, orderid); db.AddInParameter(cmd, "@upslog", DbType.String, upslog); db.ExecuteNonQuery(cmd); } #endregion #region /// /// 更新订单 /// public static void UpdateOrderUPSLog(int orderid, string upslog) { var sql = "update DT_OrderInfo set UpsFeelog=@upslog where OrderId=@orderid"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(sql); db.AddInParameter(cmd, "@orderid", DbType.Int32, orderid); db.AddInParameter(cmd, "@upslog", DbType.String, upslog); db.ExecuteNonQuery(cmd); } #endregion #region 修改订单采购时间 public static void UpdateOrderBuyDateForTM2(int OrderId, int GoodsNum) { string tsql = @" if(select COUNT(0) from DT_OrderGoods a inner join HW_GoodsDetail b on a.DetailId=b.DetailId where a.OrderId=@OrderId and isnull(b.GoodsNum,0)+isnull(b.GoodsInNum,0)-isnull(b.GoodsPlanNum,0)>0)>0 begin update DT_OrderInfo set BuyDate=GETDATE() where OrderId=@OrderId and BuyDate is null update DT_OrderInfonew set BuyDate=GETDATE() where OrderId=@OrderId and BuyDate is null update DT_OrderInfo set GoodsNum=@GoodsNum where OrderId=@OrderId update DT_OrderInfonew set GoodsNum=@GoodsNum where OrderId=@OrderId end else begin update DT_OrderInfo set BuyDate=null,GoodsNum=@GoodsNum where OrderId=@OrderId update DT_OrderInfonew set BuyDate=null,GoodsNum=@GoodsNum where OrderId=@OrderId end "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@OrderId", DbType.Int32, OrderId); db.AddInParameter(cmd, "@GoodsNum", DbType.Int32, GoodsNum); db.ExecuteNonQuery(cmd); } #endregion #region 获取物流对象 public static JC_ExpressPost GetExpressModel(int CompanyId, int ExpressID) { JC_ExpressPost model = null; string tsql = @" if(select count(0) from [JC_ExpressPost] a inner join JC_Express c on a.ExpressID=c.ExpressID where a.ExpressID=@ExpressID and a.CompanyId=@CompanyId)>0 begin select a.ExpressPostID,a.ExpressID,a.CompanyId,a.Name,c.PostType,a.IsUse,a.UserCode,a.CheckCode,a.operationtype,a.customercode,a.vipcode,a.clcttype,a.DefaultAddr,a.client_id,a.client_secret,a.refresh_token,a.GetTime,a.Code,a.redirect_uri,c.EName,c.LogisticsId from [JC_ExpressPost] a inner join JC_Express c on a.ExpressID=c.ExpressID where a.ExpressID=@ExpressID and a.CompanyId=@CompanyId end else begin select a.ExpressPostID,a.ExpressID,a.CompanyId,a.Name,c.PostType,a.IsUse,a.UserCode,a.CheckCode,a.operationtype,a.customercode,a.vipcode,a.clcttype,a.DefaultAddr,a.client_id,a.client_secret,a.refresh_token,a.GetTime,a.Code,a.redirect_uri,c.EName,c.LogisticsId from [JC_ExpressPost] a inner join JC_Express c on a.ExpressID=c.ExpressID where a.ExpressID=@ExpressID and a.CompanyId=0 end "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@CompanyId", DbType.Int32, CompanyId); db.AddInParameter(cmd, "@ExpressID", DbType.Int32, ExpressID); DataTable tb = db.ExecuteDataTable(cmd); if (tb.Rows.Count > 0) model = tb.Rows[0].ToModel(); return model; } #endregion #region 返回订单Model public static List GetOrderModelList(string OrderIds) { List list = null; string tsql = @"select a.OrderId,a.PlatOrderCode,a.JoinOrderCode,a.OrderCode,a.TotalPrice,a.MoneyCode,b.RevAddr,b.RevMail,b.RevCountry,b.RevPhone,b.RevMoblie,ISNULL(b.RevProvinceCode,b.RevProvince) RevProvince,b.RevPhone,b.CountryCode,b.RevCity,b.RevArea,b.Post,b.RevMail,b.LogisticsId,b.RevName,b.RevPostCode,b.CountryName,a.State,b.CustomID,a.PlatId from DT_OrderInfo a inner join DT_OrderXXInfo b on a.OrderId=b.OrderId where a.OrderId in (" + OrderIds + ")"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); DataSet ds = db.ExecuteDataSet(cmd); list = ds.Tables[0].ToList(); return list; } #endregion #region 查询订单明细匹配 public static List GetOrderGoodsList2(string OrderIds) { List list = null; string tsql = @" select a.Id,a.OrderId,a.DetailId,a.GoodsNum,f.GoodsName,f.GoodsCode,Weight=case when e.Weight is not null then e.Weight else f.Weight end,f.Weight2,f.Height,f.Long,f.Width,f.Height2,f.Long2,f.Width2,GoodsSKU=e.sku1,g.sendname from DT_OrderGoods a inner join DT_OrderInfo d on a.OrderId=d.OrderId inner join HW_GoodsDetail e on a.DetailId=e.DetailId inner join HW_GoodsInfo f on e.GoodsId=f.GoodsId inner join jc_shop g on d.shopid=g.shopid where a.OrderId in (" + OrderIds + ")"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@OrderIds", DbType.String, OrderIds); DataSet ds = db.ExecuteDataSet(cmd); list = ds.Tables[0].ToList(); return list; } #endregion #region 保存订单跟踪码申请 public static void SaveTrackCodeApply(DT_TrackCodeApplyNew Model) { string tsql = @" select top 1 @LogisticsId=LogisticsId from JC_Express where ExpressId=@PostId if @PostError is not null and @PostError<>'' begin update DT_OrderXXInfo set LogisticsId=@LogisticsId,PostError=@PostError,Post=@PostId where OrderId=@OrderId update DT_OrderXXInfoNew set LogisticsId=@LogisticsId,PostError=@PostError,Post=@PostId where OrderId=@OrderId end else begin update DT_OrderXXInfo set LogisticsId=@LogisticsId,PostError=null,TrackState=1,Post=@PostId where OrderId=@OrderId update DT_OrderXXInfoNew set LogisticsId=@LogisticsId,PostError=null,TrackState=1,Post=@PostId where OrderId=@OrderId end INSERT INTO [DT_TrackCodeApply]([PostId],[TrackType],[TrackCode],[TrackCode2],[GetDate],[InName],[OrderId],[State],[UpdateTime],[OrderCode],[SKU],[Weight],[Long],[Width],[Height],[OrderCode2],LabelUrl)values(@PostId,@TrackType,@TrackCode,@TrackCode2,@GetDate,@InName,@OrderId,@State,@UpdateTime,@OrderCode,@SKU,@Weight,@Long,@Width,@Height,@OrderCode2,@LabelUrl) set @Id=SCOPE_IDENTITY() "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@Id", DbType.Int32, Model.Id); db.AddInParameter(cmd, "@LogisticsId", DbType.Int32, Model.LogisticsId); db.AddInParameter(cmd, "@PostId", DbType.Int32, Model.PostId); db.AddInParameter(cmd, "@TrackType", DbType.Int32, Model.TrackType); db.AddInParameter(cmd, "@TrackCode", DbType.String, Model.TrackCode); db.AddInParameter(cmd, "@TrackCode2", DbType.String, Model.TrackCode2); db.AddInParameter(cmd, "@GetDate", DbType.DateTime, Model.GetDate); db.AddInParameter(cmd, "@InName", DbType.String, Model.InName); db.AddInParameter(cmd, "@OrderId", DbType.Int32, Model.OrderId); db.AddInParameter(cmd, "@State", DbType.Int32, Model.State); db.AddInParameter(cmd, "@UpdateTime", DbType.DateTime, Model.UpdateTime); db.AddInParameter(cmd, "@OrderCode", DbType.String, Model.OrderCode); db.AddInParameter(cmd, "@IsSpare", DbType.Int32, Model.IsSpare); db.AddInParameter(cmd, "@JoinOrderCode", DbType.String, Model.JoinOrderCode); db.AddInParameter(cmd, "@PostError", DbType.String, Model.PostError); db.AddInParameter(cmd, "@LabelUrl", DbType.String, Model.LabelUrl); db.AddInParameter(cmd, "@SKU", DbType.String, Model.SKU); db.AddInParameter(cmd, "@Weight", DbType.String, Model.Weight2); db.AddInParameter(cmd, "@Long", DbType.String, Model.Long); db.AddInParameter(cmd, "@Width", DbType.String, Model.Width); db.AddInParameter(cmd, "@Height", DbType.String, Model.Height); db.AddInParameter(cmd, "@OrderCode2", DbType.String, Model.OrderCode2); db.ExecuteNonQuery(cmd); } #endregion #region 保存 public static int Save_OrderLTLFee(int OrderId, decimal FeeLTL) { string tsql = @" Update [DT_OrderInfo] set [FeeLTL]=@FeeLTL where OrderId=@OrderId exec [dbo].[ComputerOrderFee_Order] @OrderId select 1"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@OrderId", DbType.Int32, OrderId); db.AddInParameter(cmd, "@FeeLTL", DbType.Decimal, FeeLTL); int a = Convert.ToInt32(db.ExecuteScalar(cmd)); return a; } #endregion #region 保存 public static int Save_ErrorJH(int JHError, string JHRemark, int OrderId) { string tsql = @" Update [DT_OrderInfo] set [JHError]=@JHError,[JHRemark]=@JHRemark where OrderId=@OrderId select @OrderId"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@OrderId", DbType.Int32, OrderId); db.AddInParameter(cmd, "@JHError", DbType.Int32, JHError); db.AddInParameter(cmd, "@JHRemark", DbType.String, JHRemark); int a = Convert.ToInt32(db.ExecuteScalar(cmd)); return a; } #endregion #region 修改订单状态 public static void UpdateOrderWLSS(int orderid, int WLSS) { string tsql = @" update DT_OrderInfo set WLSS=@WLSS where orderid=@orderid"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@orderid", DbType.Int32, orderid); db.AddInParameter(cmd, "@WLSS", DbType.Int32, WLSS); db.ExecuteNonQuery(cmd); } #endregion #region 删除 public static void Delete_PostVote(int OrderId) { string tsql = @" declare @Id int select top 1 @Id=Id from DT_PostVote where OrderId=@OrderId delete from DT_PostVote where Id=@Id delete from DT_PostVoteDetail where mid=@Id"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@OrderId", DbType.Int32, OrderId); db.ExecuteNonQuery(cmd); } #endregion #region 保存 public static int Save_PostVote(DT_PostVote Model) { string tsql = @" select top 1 @Id=Id from DT_PostVote where OrderId=@OrderId if @Id>0 begin Update [DT_PostVote] set [OrderId]=@OrderId,[trackcode]=@trackcode,[ActualWeightAmount]=@ActualWeightAmount,[ActualWeightUnits]=@ActualWeightUnits,[RatedWeightAmount]=@RatedWeightAmount,[RatedWeightUnits]=@RatedWeightUnits,[DimLength]=@DimLength,[DimWidth]=@DimWidth,[DimHeight]=@DimHeight,[DimDivisor]=@DimDivisor,[DimUnit]=@DimUnit,[ZoneCode]=@ZoneCode,[bigdifference]=@bigdifference,[result]=@result,[sku]=@sku,[inname]=@inname,[fee1]=@fee1,[fee2]=@fee2,[fee3]=@fee3,[fee4]=@fee4,[fee5]=@fee5,[int1]=@int1,[int2]=@int2,[int3]=@int3,[str1]=@str1,[str2]=@str2,[str3]=@str3,[NetChargeAmount]=@NetChargeAmount,[estimatefee]=@estimatefee where Id=@Id delete from DT_PostVoteDetail where mid=@Id end else begin INSERT INTO [DT_PostVote]([OrderId],[trackcode],[ActualWeightAmount],[ActualWeightUnits],[RatedWeightAmount],[RatedWeightUnits],[DimLength],[DimWidth],[DimHeight],[DimDivisor],[DimUnit],[ZoneCode],[bigdifference],[result],[sku],[indate],[inname],[fee1],[fee2],[fee3],[fee4],[fee5],[int1],[int2],[int3],[str1],[str2],[str3],[NetChargeAmount],[estimatefee])values(@OrderId,@trackcode,@ActualWeightAmount,@ActualWeightUnits,@RatedWeightAmount,@RatedWeightUnits,@DimLength,@DimWidth,@DimHeight,@DimDivisor,@DimUnit,@ZoneCode,@bigdifference,@result,@sku,@indate,@inname,@fee1,@fee2,@fee3,@fee4,@fee5,@int1,@int2,@int3,@str1,@str2,@str3,@NetChargeAmount,@estimatefee) set @Id=SCOPE_IDENTITY() end select @Id"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@Id", DbType.Int32, Model.Id); db.AddInParameter(cmd, "@OrderId", DbType.Int32, Model.OrderId); db.AddInParameter(cmd, "@trackcode", DbType.String, Model.trackcode); db.AddInParameter(cmd, "@ActualWeightAmount", DbType.Decimal, Model.ActualWeightAmount); db.AddInParameter(cmd, "@ActualWeightUnits", DbType.String, Model.ActualWeightUnits); db.AddInParameter(cmd, "@RatedWeightAmount", DbType.Decimal, Model.RatedWeightAmount); db.AddInParameter(cmd, "@RatedWeightUnits", DbType.String, Model.RatedWeightUnits); db.AddInParameter(cmd, "@DimLength", DbType.Decimal, Model.DimLength); db.AddInParameter(cmd, "@DimWidth", DbType.Decimal, Model.DimWidth); db.AddInParameter(cmd, "@DimHeight", DbType.Decimal, Model.DimHeight); db.AddInParameter(cmd, "@DimDivisor", DbType.Decimal, Model.DimDivisor); db.AddInParameter(cmd, "@DimUnit", DbType.String, Model.DimUnit); db.AddInParameter(cmd, "@ZoneCode", DbType.Decimal, Model.ZoneCode); db.AddInParameter(cmd, "@bigdifference", DbType.Decimal, Model.bigdifference); db.AddInParameter(cmd, "@result", DbType.String, Model.result); db.AddInParameter(cmd, "@sku", DbType.String, Model.sku); db.AddInParameter(cmd, "@indate", DbType.DateTime, Model.indate); db.AddInParameter(cmd, "@inname", DbType.String, Model.inname); db.AddInParameter(cmd, "@fee1", DbType.Decimal, Model.fee1); db.AddInParameter(cmd, "@fee2", DbType.Decimal, Model.fee2); db.AddInParameter(cmd, "@fee3", DbType.Decimal, Model.fee3); db.AddInParameter(cmd, "@fee4", DbType.Decimal, Model.fee4); db.AddInParameter(cmd, "@fee5", DbType.Decimal, Model.fee5); db.AddInParameter(cmd, "@int1", DbType.Int32, Model.int1); db.AddInParameter(cmd, "@int2", DbType.Int32, Model.int2); db.AddInParameter(cmd, "@int3", DbType.Int32, Model.int3); db.AddInParameter(cmd, "@str1", DbType.String, Model.str1); db.AddInParameter(cmd, "@str2", DbType.String, Model.str2); db.AddInParameter(cmd, "@str3", DbType.String, Model.str3); db.AddInParameter(cmd, "@NetChargeAmount", DbType.Decimal, Model.NetChargeAmount); db.AddInParameter(cmd, "@estimatefee", DbType.Decimal, Model.estimatefee); int a = Convert.ToInt32(db.ExecuteScalar(cmd)); tsql = @"INSERT INTO [DT_PostVoteDetail]([mid],[TrackingIDChargDescription],[TrackingIDChargeAmount])values(@mid,@TrackingIDChargDescription,@TrackingIDChargeAmount)"; cmd = db.GetSqlStringCommand(tsql); foreach (var item in Model.list) { cmd.Parameters.Clear(); db.AddInParameter(cmd, "@mid", DbType.Int32, a); db.AddInParameter(cmd, "@TrackingIDChargDescription", DbType.String, item.TrackingIDChargDescription); db.AddInParameter(cmd, "@TrackingIDChargeAmount", DbType.Decimal, item.TrackingIDChargeAmount); db.ExecuteNonQuery(cmd); } return a; } #endregion #region 保存赔款申请 public static int SaveBackMoneyApply2(int BackState, DT_OrderBackMoneyApply Model) { string tsql = @" declare @BackAdvise3 nvarchar(1000),@BackAdvise4 nvarchar(1000),@IsRead int set @IsRead=1 select top 1 @Id=Id,@BackAdvise3=isnull(BackAdvise,''),@BackAdvise4=isnull(BackAdvise2,'') from DT_OrderBackMoneyApply where OrderId=@OrderId if @BackAdvise<>'' and @BackAdvise3<>@BackAdvise begin set @IsRead=0 end if @BackAdvise2<>'' and @BackAdvise3<>@BackAdvise2 begin set @IsRead=2 end if @Id>0 begin Update [DT_OrderBackMoneyApply] set [GoodsCode]=@GoodsCode,[BackReason1]=@BackReason1,[BackReason2]=@BackReason2,[BackReason3]=@BackReason3,[Remark]=@Remark,[OrderPrice]=@OrderPrice,[BackPrice]=@BackPrice,[PlanPrice]=@PlanPrice,[FactPrice]=@FactPrice,[DeptName]=@DeptName,[DeptRemark]=@DeptRemark,[ShopId]=@ShopId,[MoneyCode1]=@MoneyCode1,[MoneyCode2]=@MoneyCode2,[MoneyCode3]=@MoneyCode3,[MoneyCode4]=@MoneyCode4,BackDate=@BackDate,ImageIds=@ImageIds,[PostCode]=@PostCode,[PostFee]=@PostFee,[BackState]=@BackState,[PostFee2]=@PostFee2,[BackState2]=@BackState2,[BackType]=@BackType,[OrderState]=@OrderState,[GoodState]=@GoodState,[BackAdvise]=@BackAdvise,[BackAdvise2]=@BackAdvise2,IsRead=@IsRead where Id=@Id end else begin INSERT INTO [DT_OrderBackMoneyApply]([OrderId],[OrderCode],[GoodsCode],[BackReason1],[BackReason2],[BackReason3],[Remark],[OrderPrice],[BackPrice],[PlanPrice],[FactPrice],[InName],[InUserId],[DeptName],[DeptRemark],[CompanyRemark],[CompanyRemark2],[CompanyName1],[Indate],[CompanyDate1],[CompanyDate2],[CompanyAgree1],[CompanyAgree2],[CompanyUserId],[ShopId],[MoneyCode1],[MoneyCode2],[MoneyCode3],[MoneyCode4],[ImageIds],[BackDate],[PostCode],[PostFee],[PostFee2],[BackState],[BackState2],[BackType],[OrderState],[GoodState],[BackAdvise],[BackAdvise2])values(@OrderId,@OrderCode,@GoodsCode,@BackReason1,@BackReason2,@BackReason3,@Remark,@OrderPrice,@BackPrice,@PlanPrice,@FactPrice,@InName,@InUserId,@DeptName,@DeptRemark,@CompanyRemark,@CompanyRemark2,@CompanyName1,@Indate,@CompanyDate1,@CompanyDate2,@CompanyAgree1,@CompanyAgree2,@CompanyUserId,@ShopId,@MoneyCode1,@MoneyCode2,@MoneyCode3,@MoneyCode4,@ImageIds,@BackDate,@PostCode,@PostFee,@PostFee2,@BackState,@BackState2,@BackType,@OrderState,@GoodState,@BackAdvise,@BackAdvise2) set @Id=SCOPE_IDENTITY() end select @Id"; if (BackState == 0) { tsql = @" delete from DT_OrderBackMoneyApply where OrderId=@OrderId select 1 "; } Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@Id", DbType.Int32, Model.Id); db.AddInParameter(cmd, "@OrderId", DbType.Int32, Model.OrderId); db.AddInParameter(cmd, "@OrderCode", DbType.String, Model.OrderCode); db.AddInParameter(cmd, "@GoodsCode", DbType.String, Model.GoodsCode); db.AddInParameter(cmd, "@BackReason1", DbType.String, Model.BackReason1); db.AddInParameter(cmd, "@BackReason2", DbType.String, Model.BackReason2); db.AddInParameter(cmd, "@BackReason3", DbType.String, Model.BackReason3); db.AddInParameter(cmd, "@Remark", DbType.String, Model.Remark); db.AddInParameter(cmd, "@OrderPrice", DbType.Decimal, Model.OrderPrice); db.AddInParameter(cmd, "@BackPrice", DbType.Decimal, Model.BackPrice); db.AddInParameter(cmd, "@PlanPrice", DbType.Decimal, Model.PlanPrice); db.AddInParameter(cmd, "@FactPrice", DbType.Decimal, Model.FactPrice); db.AddInParameter(cmd, "@InName", DbType.String, Model.InName); db.AddInParameter(cmd, "@InUserId", DbType.Int32, Model.InUserId); db.AddInParameter(cmd, "@DeptName", DbType.String, Model.DeptName); db.AddInParameter(cmd, "@DeptRemark", DbType.String, Model.DeptRemark); db.AddInParameter(cmd, "@CompanyRemark", DbType.String, Model.CompanyRemark); db.AddInParameter(cmd, "@CompanyRemark2", DbType.String, Model.CompanyRemark2); db.AddInParameter(cmd, "@CompanyName1", DbType.String, Model.CompanyName1); db.AddInParameter(cmd, "@Indate", DbType.DateTime, Model.Indate); db.AddInParameter(cmd, "@CompanyDate1", DbType.DateTime, Model.CompanyDate1); db.AddInParameter(cmd, "@CompanyDate2", DbType.DateTime, Model.CompanyDate2); db.AddInParameter(cmd, "@CompanyAgree1", DbType.String, Model.CompanyAgree1); db.AddInParameter(cmd, "@CompanyAgree2", DbType.String, Model.CompanyAgree2); db.AddInParameter(cmd, "@ShopId", DbType.Int32, Model.ShopId); db.AddInParameter(cmd, "@MoneyCode1", DbType.String, Model.MoneyCode1); db.AddInParameter(cmd, "@MoneyCode2", DbType.String, Model.MoneyCode2); db.AddInParameter(cmd, "@MoneyCode3", DbType.String, Model.MoneyCode3); db.AddInParameter(cmd, "@MoneyCode4", DbType.String, Model.MoneyCode4); db.AddInParameter(cmd, "@BackDate", DbType.DateTime, Model.BackDate); db.AddInParameter(cmd, "@CompanyUserId", DbType.String, Model.CompanyUserId); db.AddInParameter(cmd, "@PostFee", DbType.Decimal, Model.PostFee); db.AddInParameter(cmd, "@PostCode", DbType.String, Model.PostCode); db.AddInParameter(cmd, "@BackState", DbType.Int32, Model.BackState); db.AddInParameter(cmd, "@ImageIds", DbType.String, Model.ImageIds); db.AddInParameter(cmd, "@PostFee2", DbType.Decimal, Model.PostFee2); db.AddInParameter(cmd, "@BackState2", DbType.Int32, Model.BackState2); db.AddInParameter(cmd, "@BackType", DbType.Int32, Model.BackType); db.AddInParameter(cmd, "@OrderState", DbType.Int32, Model.OrderState); db.AddInParameter(cmd, "@GoodState", DbType.Int32, Model.GoodState); db.AddInParameter(cmd, "@BackAdvise", DbType.String, Model.BackAdvise); db.AddInParameter(cmd, "@BackAdvise2", DbType.String, Model.BackAdvise2); int a = Convert.ToInt32(db.ExecuteScalar(cmd)); return a; } #endregion #region 返回Model public static void ComputerOrderFee_Order(int orderid) { Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetStoredProcCommand("ComputerOrderFee_Order"); db.AddInParameter(cmd, "@orderid", DbType.Int32, orderid); db.ExecuteNonQuery(cmd); } #endregion #region 根据sku1获取商品详情 public static HW_GoodsDetail GetGoodsDetailBySku1(string sku1) { var sql = "select top 1 DetailId,GoodsId from HW_GoodsDetail where SKU1=@sku "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(sql); db.AddInParameter(cmd, "@sku", DbType.String, sku1); var dt = db.ExecuteDataTable(cmd); if (dt != null && dt.Rows.Count > 0) { return dt.Rows[0].ToModel(); } else return null; } #endregion public static void UpdateTrackingCodeSKU(int id, string sku) { var sql = @" update DT_TrackCodeApply set SKU=@sku where Id=@ID"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(sql); db.AddInParameter(cmd, "@ID", DbType.Int32, id); db.AddInParameter(cmd, "@sku", DbType.String, sku); db.ExecuteNonQuery(cmd); } #region 标记LTL数量 public static void UpdateOrderLTLBack(int OrderId) { string tsql = @" update DT_OrderInfo set PostState=0 where OrderId=@OrderId and PostState=3 update DT_OrderInfoNew set PostState=0 where OrderId=@OrderId and PostState=3 "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@OrderId", DbType.Int32, OrderId); db.ExecuteNonQuery(cmd); } #endregion #region 标记LTL数量 public static void UpdateOrderLTL(int OrderId) { string tsql = @" update DT_OrderInfo set PostState=3 where OrderId=@OrderId and state<>2 update DT_OrderInfoNew set PostState=3 where OrderId=@OrderId and state<>2 "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@OrderId", DbType.Int32, OrderId); db.ExecuteNonQuery(cmd); } #endregion #region 删除订单 public static void DeleteOrderForTM2(string OrderIds) { string tsql = @" if(select count(1) from DT_OrderInfo where OrderId in (" + OrderIds + @") and MateState>0)=0 begin delete from DT_OrderXXInfo where OrderId in (" + OrderIds + @") delete from DT_OrderXXInfoNew where OrderId in (" + OrderIds + @") update b set b.GoodsPlanNum=ISNULL(b.GoodsPlanNum,0)-isnull(a.GoodsNum,0) from [DT_OrderGoods] a inner join HW_GoodsDetail b on a.DetailId=b.DetailId where a.OrderId in (" + OrderIds + @") delete from API_OrderInfo where OrderCode in (select distinct PlatOrderCode from DT_OrderInfo where OrderId in (" + OrderIds + @")) delete from DT_OrderGoods where OrderId in (" + OrderIds + @") delete from DT_OrderInfo where OrderId in (" + OrderIds + @") delete from DT_OrderInfoNew where OrderId in (" + OrderIds + @") delete from DT_TrackCodeApply where OrderId in (" + OrderIds + @") end "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.ExecuteNonQuery(cmd); } #endregion #region public static JC_Shop GetModel(int ShopId) { JC_Shop model = null; string tsql = "select * from JC_Shop where ShopId=@ShopId"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@ShopId", DbType.Int32, ShopId); DataTable tb = db.ExecuteDataTable(cmd); if (tb.Rows.Count > 0) model = tb.Rows[0].ToModel(); return model; } #endregion public static List GetFedexOrderGoodsList(string OrderIds) { string query = " select a.Id,a.OrderId,a.GoodsNum,Weight=case when c.Weight2 is not null and c.Weight2>0 then c.Weight2 when c.Weight is not null and c.Weight>0 then c.Weight*0.035274 else null end,c.Width2,Length2=c.Long2,c.Height2,InPrice=isnull(c.InPrice,0) from DT_OrderGoods a with(nolock) inner join HW_GoodsDetail b with(nolock) on a.DetailId=b.DetailId inner join HW_GoodsInfo c with(nolock) on b.GoodsId=c.GoodsId where OrderId in (" + OrderIds + ")"; Database database = DatabaseFactory.CreateDatabase(); DbCommand sqlStringCommand = database.GetSqlStringCommand(query); return database.ExecuteDataSet(sqlStringCommand).Tables[0].ToList(); } public static List GetFedexOrderList2(string OrderIds) { string query = " select b.* from DT_OrderInfo a with(nolock) inner join DT_OrderXXInfo b with(nolock) on a.OrderId=b.OrderId where a.OrderId in (" + OrderIds + ")"; Database database = DatabaseFactory.CreateDatabase(); DbCommand sqlStringCommand = database.GetSqlStringCommand(query); return database.ExecuteDataTable(sqlStringCommand).ToList(); } #region 返回Model public static void GetModel_OrderFeeML() { Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetStoredProcCommand("ComputerOrderFees_WL"); db.ExecuteNonQuery(cmd); } #endregion public static List GetListHW_GoodsInfoNewForTM(int userid, int CompanyId, string SKU, int IsDH, int IsBH, RefParameterCollection where, int PageIndex, int PageSize, string Sort, out int RowCount) { string tsql1 = @" select distinct a.GoodsId from HW_GoodsDetail a with(nolock) inner join HW_GoodsInfo b with(nolock) on a.GoodsId=b.GoodsId where b.CompanyId=@CompanyId and (@SKU='' or a.SKU1 like '%'+@SKU+'%' or a.SKU2 like '%'+@SKU+'%' or a.SKU3 like '%'+@SKU+'%' or a.SKU4 like '%'+@SKU+'%' or a.SKU5 like '%'+@SKU+'%' or a.SKU6 like '%'+@SKU+'%' or a.TypeCode like '%'+@SKU+'%' or a.TypeDesc like '%'+@SKU+'%' or b.GoodsName like '%'+@SKU+'%' or b.GoodsCode like '%'+@SKU+'%') and (@IsDH=0 or a.NoGoods=1) and (@IsSafe=0 or a.SafeNum>0) "; string[] templist = SKU.Split(' '); if (templist.Length > 1) { tsql1 = @" select distinct a.GoodsId from HW_GoodsDetail a with(nolock) inner join HW_GoodsInfo b with(nolock) on a.GoodsId=b.GoodsId WHERE (a.TypeCode LIKE '%" + templist[0] + @"%' OR a.TypeDesc LIKE '%" + templist[0] + @"%' OR b.GoodsCode LIKE '%" + templist[0] + @"%' OR b.GoodsOldCode LIKE '%" + templist[0] + @"%' OR b.GoodsName LIKE '%" + templist[0] + @"%') and (a.TypeCode LIKE '%" + templist[1] + @"%' OR a.TypeDesc LIKE '%" + templist[1] + @"%' OR b.GoodsCode LIKE '%" + templist[1] + @"%' OR b.GoodsOldCode LIKE '%" + templist[1] + @"%' OR b.GoodsName LIKE '%" + templist[1] + @"%') "; } if (where == null) where = new RefParameterCollection(); QueryService ser = new QueryService(); ser.Fields = @"GoodsId=cast(a.GoodsId as int),a.GoodsCode,a.GoodsEg,a.GoodsNo,a.GoodsOldCode,a.SortId,a.SortName,a.SupplierId,a.GoodsName,a.GoodsEnglisgName,b.GoodsNum,GoodsOutNum=isnull(b.GoodsNum,0)+isnull(b.GoodsInNum2,0),GoodsInNum2=isnull(b.GoodsInNum2,0),b.GoodsInNum,b.LeftNum,b.GoodsHJNum2,b.GoodsHJNum3,b.GoodsHJNum4,a.InPrice,a.NowPrice,a.Weight,a.WeightUnit,a.Solid,a.SolidUnit,a.Position,a.InDate,a.UpdateDate,a.FirstImgUrl,a.GoodsImageIds,a.CompanyId,a.GoodsPlanNum,b.GoodsHJNum,a.SafeNum,a.HGCode,a.HGCompanyCode,a.UpdateName,a.GoodsRemark,a.AutoPlan,a.NoGoods,a.AvgTime,a.State,NoGoodsState=case when a.NoGoods=1 then '是' else '否' end,a.Cert,a.UpOff,NoticeDays=case when b.GoodsHJNum2-isnull(b.GoodsNum,0)-isnull(b.GoodsInNum2,0)>0 then b.GoodsHJNum2/3 else 0 end,GoodsInNum3=isnull(b.GoodsInNum,0),IsNull(a.IsYC,0) IsYC,Case when IsNull(a.IsYC,0)=0 then '隐藏' else '显示' end YCXS,IsNull(c.BuyQty,0) BuyQty "; if (SKU != "" || IsDH == 1 || IsBH == 1) { ser.Tables = @"(select * from HW_GoodsInfo a with(nolock) where GoodsId in (" + tsql1 + @"))a left join ( select GoodsId,GoodsNum=isnull(SUM(GoodsNum),0),GoodsHJNum=isnull(SUM(GoodsHJNum),0),GoodsHJNum2=isnull(SUM(GoodsHJNum2),0),GoodsHJNum3=isnull(SUM(GoodsHJNum3),0),GoodsHJNum4=isnull(SUM(GoodsHJNum4),0),GoodsInNum=isnull(SUM(GoodsInNum),0),GoodsInNum2=isnull(SUM(GoodsInNum2),0),LeftNum=isnull(SUM(GoodsNum),0)+isnull(SUM(GoodsInNum2),0)-isnull(SUM(GoodsPlanNum),0) from HW_GoodsDetail with(nolock) group by GoodsId)b on a.GoodsId=b.GoodsId"; } else ser.Tables = @"HW_GoodsInfo a with(nolock) left join ( select GoodsId,GoodsNum=isnull(SUM(GoodsNum),0),GoodsHJNum=isnull(SUM(GoodsHJNum),0),GoodsHJNum2=isnull(SUM(GoodsHJNum2),0),GoodsInNum=isnull(SUM(GoodsInNum),0),GoodsHJNum3=isnull(SUM(GoodsHJNum3),0),GoodsHJNum4=isnull(SUM(GoodsHJNum4),0),GoodsInNum2=isnull(SUM(GoodsInNum2),0),LeftNum=isnull(SUM(GoodsNum),0)+isnull(SUM(GoodsInNum2),0)-isnull(SUM(GoodsPlanNum),0) from HW_GoodsDetail with(nolock) group by GoodsId)b on a.GoodsId=b.GoodsId"; ser.Tables += @" left join (select GoodsId,SUM(Quantity) BuyQty from CK_GoodsApply where userid=@userid group by GoodsId) c on a.goodsid=c.Goodsid "; ser.Filter = where.GetWhere(System.Data.CommandType.Text) + " and (a.muserid=@userid or a.guserid_ebay=@userid or a.guserid_wlmart=@userid or a.guserid_wayfair=@userid or a.guserid_shopify=@userid or a.guserid_sheIn=@userid or a.guserid_tiktok=@userid or a.guserid_temu=@userid ) "; ser.PageIndex = PageIndex; ser.PageSize = PageSize; ser.Sort = Sort; ser.KeyName = "GoodsId"; string tsql = ser.GetText(); where.AddOutParameter("RowCount", System.Data.DbType.Int32); List ListModel = null; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, where); db.AddInParameter(cmd, "@CompanyId", DbType.Int32, CompanyId); db.AddInParameter(cmd, "@SKU", DbType.String, SKU); db.AddInParameter(cmd, "@IsDH", DbType.Int32, IsDH); db.AddInParameter(cmd, "@IsSafe", DbType.Int32, IsBH); db.AddInParameter(cmd, "@userid", DbType.Int32, userid); DataTable tb = db.ExecuteDataTable(cmd); RowCount = Convert.ToInt32(cmd.Parameters["@RowCount"].Value); ListModel = tb.ToList(); return ListModel; } #region 返回货物Model public static HW_GoodsNew GetGoodsModelNew(int GoodsId) { HW_GoodsNew model = null; string tsql = "select * from HW_GoodsInfo where GoodsId=@GoodsId"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@GoodsId", DbType.Int32, GoodsId); DataTable tb = db.ExecuteDataTable(cmd); if (tb.Rows.Count > 0) model = tb.Rows[0].ToModel(); return model; } #endregion #region 查询货物明细列表 public static List GetGoodsDetail(int GoodsId) { List list = null; string tsql = @" select *,LeftNum=GoodsNum+GoodsInNum-GoodsPlanNum,NoGoodsState=case when NoGoods=1 then '是' else '否' end from HW_GoodsDetail where GoodsId=@GoodsId ORDER BY TypeCode "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@GoodsId", DbType.Int32, GoodsId); DataSet ds = db.ExecuteDataSet(cmd); list = ds.Tables[0].ToList(); return list; } #endregion #region 查询货物链接列表 public static List GetGoodsBuyLink(int GoodsId, int UserId) { List list = null; string tsql = @" if(select count(0) from HW_BuyLink a inner join JC_Shop b on a.LinkDesc=b.ShopName where GoodsId=@GoodsId)=0 begin select * from HW_BuyLink where GoodsId=@GoodsId end else if @UserId>1 begin select * from HW_BuyLink where GoodsId=@GoodsId and LinkDesc in (select b.ShopName from JC_ShopUser a inner join JC_Shop b on a.ShopId=b.ShopId where UserId=@UserId and (SType='M' or SType='S')) end else begin select * from HW_BuyLink where GoodsId=@GoodsId end "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@GoodsId", DbType.Int32, GoodsId); db.AddInParameter(cmd, "@UserId", DbType.Int32, UserId); DataSet ds = db.ExecuteDataSet(cmd); list = ds.Tables[0].ToList(); return list; } #endregion #region 返回列表 public static List GetListJZLink(int GoodsId, int UserId) { //string tsql = "select a.Id,a.GoodsId,a.LinkUrl,a.Price,a.Sort,a.Price2,a.Price3,a.Remark,a.Remark2,a.Remark3 from HW_JZLink"; string tsql = @" if @UserId>0 begin select * from HW_JZLink where GoodsId=@GoodsId and shopid in (select ShopId from JC_ShopUser where UserId=@UserId and (SType='M' or SType='S')) end else begin select * from HW_JZLink where GoodsId=@GoodsId end "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@GoodsId", DbType.Int32, GoodsId); db.AddInParameter(cmd, "@UserId", DbType.Int32, UserId); DataTable tb = db.ExecuteDataTable(cmd); List ListModel = tb.ToList(); return ListModel; } #endregion #region 返回列表 public static HW_PostFee GetModelPostFee(int GoodsId) { HW_PostFee model = null; //string tsql = "select a.Id,a.GoodsId,a.LinkUrl,a.Price,a.Sort,a.Price2,a.Price3,a.Remark,a.Remark2,a.Remark3 from HW_JZLink"; string tsql = @" select * from HW_PostFee where GoodsId=@GoodsId"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@GoodsId", DbType.Int32, GoodsId); DataSet ds = db.ExecuteDataSet(cmd); if (ds.Tables[0].Rows.Count > 0) { model = ds.Tables[0].Rows[0].ToModel(); } return model; } #endregion #region 保存货物 /// /// 保存货物 /// public static int SaveGoodsInfoForTMNew(HW_GoodsNew Model) { string tsql = @" if @GoodsId>0 begin Update [HW_GoodsInfo] set GoodsOldCode=@GoodsOldCode,SortId=@SortId,SortId1=@SortId1,SortId2=@SortId2,[SupplierId]=@SupplierId,Supplier=@Supplier,[GoodsName]=@GoodsName,[GoodsEnglisgName]=@GoodsEnglisgName,[GoodsNum]=@GoodsNum,[GoodsLockNum]=@GoodsLockNum,[InPrice]=@InPrice,[NowPrice]=@NowPrice,[Weight]=@Weight,[Weight2]=@Weight2,[WeightUnit]=@WeightUnit,[Solid]=@Solid,[SolidUnit]=@SolidUnit,[Position]=@Position,[UpdateDate]=@UpdateDate,[FirstImgUrl]=@FirstImgUrl,[GoodsImageIds]=@GoodsImageIds,[CompanyId]=@CompanyId,[GoodsPlanNum]=@GoodsPlanNum,[GoodsOutNum]=@GoodsOutNum,[GoodsInNum]=@GoodsInNum,[SafeNum]=@SafeNum,[HGCode]=@HGCode,[HGCompanyCode]=@HGCompanyCode,[UpdateName]=@UpdateName,[GoodsRemark]=@GoodsRemark,[AutoPlan]=@AutoPlan,[NoGoods]=@NoGoods,[AvgTime]=@AvgTime,[State]=@State,[DeptRemark]=@DeptRemark,[NoticeDays]=@NoticeDays,[GoodsInfo]=@GoodsInfo,[DefaultCity]=@DefaultCity,[PageFee]=@PageFee,[PostPrice]=@PostPrice,GoodsSupplyCode=@GoodsSupplyCode,BGPrice=@BGPrice,NoticeShop=@NoticeShop,[NetWeight]=@NetWeight,[Long]=@Long,[Width]=@Width,[Height]=@Height,[Long2]=@Long2,[Width2]=@Width2,[Height2]=@Height2,[BoxRate]=@BoxRate,Cert=@Cert,FeeRate=@FeeRate,JYPrice=@JYPrice,BoxNum=@BoxNum,BoxStoreCode=@BoxStoreCode,JHDays=@JHDays,KFName=@KFName,KFName2=@KFName2,SortName=@SortName,SubsidyFee=@SubsidyFee where GoodsId=@GoodsId end else begin --select @GoodsNo=isnull(max(GoodsNo),0)+1 from HW_GoodsInfo where SortId=@SortId INSERT INTO [HW_GoodsInfo]([GoodsCode],[GoodsEg],[GoodsNo],[GoodsOldCode],[SortId],SortId1,SortId2,[SortName],[SupplierId],[GoodsName],[GoodsEnglisgName],[GoodsNum],[GoodsLockNum],[InPrice],[NowPrice],[Weight],[Weight2],[WeightUnit],[Solid],[SolidUnit],[Position],[InDate],[UpdateDate],[FirstImgUrl],[GoodsImageIds],[CompanyId],[GoodsPlanNum],[GoodsOutNum],[GoodsInNum],[SafeNum],[HGCode],[HGCompanyCode],[UpdateName],[GoodsRemark],[AutoPlan],[NoGoods],[AvgTime],[State],[DeptRemark],[NoticeDays],[GoodsInfo],[DefaultCity],[PageFee],[PostPrice],GoodsSupplyCode,BGPrice,NoticeShop,[NetWeight],[Long],[Width],[Height],[Long2],[Width2],[Height2],[BoxRate],Cert,FeeRate,JYPrice,BoxNum,BoxStoreCode,JHDays,KFName,KFName2,SubsidyFee)values(@GoodsCode,@GoodsEg,@GoodsNo,@GoodsOldCode,@SortId,@SortId1,@SortId2,@SortName,@SupplierId,@GoodsName,@GoodsEnglisgName,@GoodsNum,@GoodsLockNum,@InPrice,@NowPrice,@Weight,@Weight2,@WeightUnit,@Solid,@SolidUnit,@Position,@InDate,@UpdateDate,@FirstImgUrl,@GoodsImageIds,@CompanyId,@GoodsPlanNum,@GoodsOutNum,@GoodsInNum,@SafeNum,@HGCode,@HGCompanyCode,@UpdateName,@GoodsRemark,@AutoPlan,@NoGoods,@AvgTime,@State,@DeptRemark,@NoticeDays,@GoodsInfo,@DefaultCity,@PageFee,@PostPrice,@GoodsSupplyCode,@BGPrice,@NoticeShop,@NetWeight,@Long,@Width,@Height,@Long2,@Width2,@Height2,@BoxRate,@Cert,@FeeRate,@JYPrice,@BoxNum,@BoxStoreCode,@JHDays,@KFName,@KFName2,@SubsidyFee) set @GoodsId=SCOPE_IDENTITY() update XP_GoodsSelect set GoodsCode=@GoodsCode,IsAdd=1 where Id=@XPId INSERT INTO [HW_GoodsCode]([EnglishCode],[GoodsNo]) values(@GoodsEg,@GoodsNo) end select @GoodsId"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@GoodsId", DbType.Int32, Model.GoodsId); db.AddInParameter(cmd, "@GoodsCode", DbType.String, Model.GoodsCode); db.AddInParameter(cmd, "@GoodsEg", DbType.String, Model.GoodsEg); db.AddInParameter(cmd, "@GoodsNo", DbType.Int32, Model.GoodsNo); db.AddInParameter(cmd, "@GoodsOldCode", DbType.String, Model.GoodsOldCode); db.AddInParameter(cmd, "@SortId", DbType.Int32, Model.SortId); db.AddInParameter(cmd, "@SortId1", DbType.Int32, Model.SortId1); db.AddInParameter(cmd, "@SortId2", DbType.String, Model.SortId2); db.AddInParameter(cmd, "@SortName", DbType.String, Model.SortName); db.AddInParameter(cmd, "@SupplierId", DbType.String, Model.SupplierId); db.AddInParameter(cmd, "@Supplier", DbType.Int32, Model.Supplier); db.AddInParameter(cmd, "@GoodsName", DbType.String, Model.GoodsName); db.AddInParameter(cmd, "@GoodsEnglisgName", DbType.String, Model.GoodsEnglisgName); db.AddInParameter(cmd, "@GoodsNum", DbType.Int32, Model.GoodsNum); db.AddInParameter(cmd, "@GoodsLockNum", DbType.Int32, Model.GoodsLockNum); db.AddInParameter(cmd, "@InPrice", DbType.Decimal, Model.InPrice); db.AddInParameter(cmd, "@NowPrice", DbType.Decimal, Model.NowPrice); db.AddInParameter(cmd, "@Weight", DbType.Decimal, Model.Weight); db.AddInParameter(cmd, "@Weight2", DbType.Decimal, Model.Weight2); db.AddInParameter(cmd, "@WeightUnit", DbType.String, Model.WeightUnit); db.AddInParameter(cmd, "@Solid", DbType.Decimal, Model.Solid); db.AddInParameter(cmd, "@SolidUnit", DbType.String, Model.SolidUnit); db.AddInParameter(cmd, "@Position", DbType.Int32, Model.Position); db.AddInParameter(cmd, "@InDate", DbType.DateTime, Model.InDate); db.AddInParameter(cmd, "@UpdateDate", DbType.DateTime, Model.UpdateDate); db.AddInParameter(cmd, "@FirstImgUrl", DbType.String, Model.FirstImgUrl); db.AddInParameter(cmd, "@GoodsImageIds", DbType.String, Model.GoodsImageIds); db.AddInParameter(cmd, "@CompanyId", DbType.Int32, Model.CompanyId); db.AddInParameter(cmd, "@GoodsPlanNum", DbType.Int32, Model.GoodsPlanNum); db.AddInParameter(cmd, "@GoodsOutNum", DbType.Int32, Model.GoodsOutNum); db.AddInParameter(cmd, "@GoodsInNum", DbType.Int32, Model.GoodsInNum); db.AddInParameter(cmd, "@SafeNum", DbType.Int32, Model.SafeNum); db.AddInParameter(cmd, "@HGCode", DbType.String, Model.HGCode); db.AddInParameter(cmd, "@HGCompanyCode", DbType.String, Model.HGCompanyCode); db.AddInParameter(cmd, "@UpdateName", DbType.String, Model.UpdateName); db.AddInParameter(cmd, "@GoodsRemark", DbType.String, Model.GoodsRemark); db.AddInParameter(cmd, "@AutoPlan", DbType.Int32, Model.AutoPlan); db.AddInParameter(cmd, "@NoGoods", DbType.Int32, Model.NoGoods); db.AddInParameter(cmd, "@AvgTime", DbType.Decimal, Model.AvgTime); db.AddInParameter(cmd, "@State", DbType.Int32, Model.State); db.AddInParameter(cmd, "@DeptRemark", DbType.String, Model.DeptRemark); db.AddInParameter(cmd, "@NoticeDays", DbType.Int32, Model.NoticeDays); db.AddInParameter(cmd, "@GoodsInfo", DbType.String, Model.GoodsInfo); db.AddInParameter(cmd, "@DefaultCity", DbType.String, Model.DefaultCity); db.AddInParameter(cmd, "@PageFee", DbType.Decimal, Model.PageFee); db.AddInParameter(cmd, "@PostPrice", DbType.Decimal, Model.PostPrice); db.AddInParameter(cmd, "@GoodsSupplyCode", DbType.String, Model.GoodsSupplyCode); db.AddInParameter(cmd, "@BGPrice", DbType.Decimal, Model.BGPrice); db.AddInParameter(cmd, "@NoticeShop", DbType.String, Model.NoticeShop); db.AddInParameter(cmd, "@XPId", DbType.Int32, Model.XPId); db.AddInParameter(cmd, "@NetWeight", DbType.Decimal, Model.NetWeight); db.AddInParameter(cmd, "@Long", DbType.Decimal, Model.Long); db.AddInParameter(cmd, "@Width", DbType.Decimal, Model.Width); db.AddInParameter(cmd, "@Height", DbType.Decimal, Model.Height); db.AddInParameter(cmd, "@Long2", DbType.Decimal, Model.Long2); db.AddInParameter(cmd, "@Width2", DbType.Decimal, Model.Width2); db.AddInParameter(cmd, "@Height2", DbType.Decimal, Model.Height2); db.AddInParameter(cmd, "@BoxRate", DbType.Int32, Model.BoxRate); db.AddInParameter(cmd, "@Cert", DbType.String, Model.Cert); db.AddInParameter(cmd, "@FeeRate", DbType.Decimal, Model.FeeRate); db.AddInParameter(cmd, "@JYPrice", DbType.Decimal, Model.JYPrice); db.AddInParameter(cmd, "@BoxNum", DbType.Int32, Model.BoxNum); db.AddInParameter(cmd, "@BoxStoreCode", DbType.String, Model.BoxStoreCode); db.AddInParameter(cmd, "@JHDays", DbType.Int32, Model.JHDays); db.AddInParameter(cmd, "@KFName", DbType.String, Model.KFName); db.AddInParameter(cmd, "@KFName2", DbType.String, Model.KFName2); db.AddInParameter(cmd, "@SubsidyFee", DbType.Decimal, Model.SubsidyFee); int a = Convert.ToInt32(db.ExecuteScalar(cmd)); return a; } #endregion #region 保存货物明细 /// /// 保存货物明细 /// public static int SaveGoodsDetail(HW_GoodsDetailNew Model) { string tsql = @" if @DetailId>0 begin Update [HW_GoodsDetail] set [GoodsId]=@GoodsId,[TypeCode]=@TypeCode,[TypeDesc]=@TypeDesc,[SKU1]=@SKU1,[SKU2]=@SKU2,[SKU3]=@SKU3,[SKU4]=@SKU4,[SKU5]=@SKU5,[SKU6]=@SKU6,[SKU7]=@SKU7,[SKU8]=@SKU8,SKU9=@SKU9,SKU10=@SKU10,SKU11=@SKU11,SKU12=@SKU12,SKU13=@SKU13,SKU14=@SKU14,SKU15=@SKU15,[Weight]=@Weight,[AutoPlan]=@AutoPlan,[NoGoods]=@NoGoods,[MinBuyNum]=@MinBuyNum,[Price]=@Price,[GoodsImageIds]=@GoodsImageIds,[FirstImgUrl]=@FirstImgUrl,[UpdateDate]=@UpdateDate,[UpdateName]=@UpdateName,[GoodsRemark]=@GoodsRemark,[SaleDays]=@SaleDays,[AvgTime]=@AvgTime,[SafeNum]=@SafeNum,[Solid]=@Solid,Barcode=@Barcode where DetailId=@DetailId end else begin INSERT INTO [HW_GoodsDetail]([GoodsId],[TypeCode],[TypeDesc],[SKU1],[SKU2],[SKU3],[SKU4],[SKU5],[SKU6],[SKU7],[SKU8],[Weight],[AutoPlan],[NoGoods],[MinBuyNum],[GoodsNum],[GoodsLockNum],[GoodsPlanNum],[GoodsOutNum],[GoodsInNum],[Price],[GoodsImageIds],[FirstImgUrl],[UpdateDate],[UpdateName],[GoodsRemark],[SaleDays],[AvgTime],[SafeNum],[Solid],SKU9,SKU10,SKU11,SKU12,SKU13,SKU14,SKU15,Barcode)values(@GoodsId,@TypeCode,@TypeDesc,@SKU1,@SKU2,@SKU3,@SKU4,@SKU5,@SKU6,@SKU7,@SKU8,@Weight,@AutoPlan,@NoGoods,@MinBuyNum,@GoodsNum,@GoodsLockNum,@GoodsPlanNum,@GoodsOutNum,@GoodsInNum,@Price,@GoodsImageIds,@FirstImgUrl,@UpdateDate,@UpdateName,@GoodsRemark,@SaleDays,@AvgTime,@SafeNum,@Solid,@SKU9,@SKU10,@SKU11,@SKU12,@SKU13,@SKU14,@SKU15,@Barcode) set @DetailId=@@IDENTITY end select @DetailId"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@DetailId", DbType.Int32, Model.DetailId); db.AddInParameter(cmd, "@GoodsId", DbType.Int32, Model.GoodsId); db.AddInParameter(cmd, "@TypeCode", DbType.String, Model.TypeCode); db.AddInParameter(cmd, "@TypeDesc", DbType.String, Model.TypeDesc); db.AddInParameter(cmd, "@SKU1", DbType.String, Model.SKU1); db.AddInParameter(cmd, "@SKU2", DbType.String, Model.SKU2); db.AddInParameter(cmd, "@SKU3", DbType.String, Model.SKU3); db.AddInParameter(cmd, "@SKU4", DbType.String, Model.SKU4); db.AddInParameter(cmd, "@SKU5", DbType.String, Model.SKU5); db.AddInParameter(cmd, "@SKU6", DbType.String, Model.SKU6); db.AddInParameter(cmd, "@SKU7", DbType.String, Model.SKU7); db.AddInParameter(cmd, "@SKU8", DbType.String, Model.SKU8); db.AddInParameter(cmd, "@SKU9", DbType.String, Model.SKU9); db.AddInParameter(cmd, "@SKU10", DbType.String, Model.SKU10); db.AddInParameter(cmd, "@SKU11", DbType.String, Model.SKU11); db.AddInParameter(cmd, "@SKU12", DbType.String, Model.SKU12); db.AddInParameter(cmd, "@SKU13", DbType.String, Model.SKU13); db.AddInParameter(cmd, "@SKU14", DbType.String, Model.SKU14); db.AddInParameter(cmd, "@SKU15", DbType.String, Model.SKU15); db.AddInParameter(cmd, "@Weight", DbType.Decimal, Model.Weight); db.AddInParameter(cmd, "@AutoPlan", DbType.Int32, Model.AutoPlan); db.AddInParameter(cmd, "@NoGoods", DbType.Int32, Model.NoGoods); db.AddInParameter(cmd, "@MinBuyNum", DbType.Int32, Model.MinBuyNum); db.AddInParameter(cmd, "@GoodsNum", DbType.Int32, Model.GoodsNum); db.AddInParameter(cmd, "@GoodsLockNum", DbType.Int32, Model.GoodsLockNum); db.AddInParameter(cmd, "@GoodsPlanNum", DbType.Int32, Model.GoodsPlanNum); db.AddInParameter(cmd, "@GoodsOutNum", DbType.Int32, Model.GoodsOutNum); db.AddInParameter(cmd, "@GoodsInNum", DbType.Int32, Model.GoodsInNum); db.AddInParameter(cmd, "@Price", DbType.Decimal, Model.Price); db.AddInParameter(cmd, "@GoodsImageIds", DbType.String, Model.GoodsImageIds); db.AddInParameter(cmd, "@FirstImgUrl", DbType.String, Model.FirstImgUrl); db.AddInParameter(cmd, "@UpdateDate", DbType.DateTime, Model.UpdateDate); db.AddInParameter(cmd, "@UpdateName", DbType.String, Model.UpdateName); db.AddInParameter(cmd, "@GoodsRemark", DbType.String, Model.GoodsRemark); db.AddInParameter(cmd, "@SaleDays", DbType.Decimal, Model.SaleDays); db.AddInParameter(cmd, "@AvgTime", DbType.Decimal, Model.AvgTime); db.AddInParameter(cmd, "@SafeNum", DbType.Int32, Model.SafeNum); db.AddInParameter(cmd, "@Solid", DbType.Decimal, Model.Solid); db.AddInParameter(cmd, "@Barcode", DbType.String, Model.Barcode); int a = Convert.ToInt32(db.ExecuteScalar(cmd)); return a; } #endregion #region 结束采购明细 public static void Delete_CFSKU(int detailid) { string tsql = @" delete from HW_CFSKU where DetailId=@DetailId"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@DetailId", DbType.Int32, detailid); db.ExecuteNonQuery(cmd); } #endregion #region 保存 public static int Save_CFSKU(int detailid, string sku, string inname) { string tsql = @" declare @DetailId2 int set @DetailId2=0 select top 1 @DetailId2=DetailId from HW_GoodsDetail where sku1=@sku if @DetailId2=0 begin select top 1 @DetailId2=DetailId from HW_GoodsDetail where sku2=@sku or sku2=@sku or sku3=@sku or sku4=@sku or sku5=@sku or sku6=@sku or sku7=@sku or sku8=@sku or sku9=@sku or sku10=@sku or sku11=@sku or sku12=@sku or sku13=@sku end if @DetailId2>0 begin INSERT INTO [HW_CFSKU]([DetailId],[DetailId2],[InDate],[InName])values(@DetailId,@DetailId2,getdate(),@InName) end select 1"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@DetailId", DbType.Int32, detailid); db.AddInParameter(cmd, "@sku", DbType.String, sku); db.AddInParameter(cmd, "@InName", DbType.String, inname); int a = Convert.ToInt32(db.ExecuteScalar(cmd)); return a; } #endregion #region 保存货物链接 /// /// 保存货物链接 /// public static int SaveBuyLink(HW_BuyLinkNew Model) { string tsql = @" if @LinkId>0 begin Update [HW_BuyLink] set [GoodsId]=@GoodsId,[LinkUrl]=@LinkUrl,[LinkName]=@LinkName,[LinkDesc]=@LinkDesc,Num=@Num,PM=@PM where LinkId=@LinkId end else begin INSERT INTO [HW_BuyLink]([GoodsId],[LinkUrl],[LinkName],[LinkDesc],Num,PM)values(@GoodsId,@LinkUrl,@LinkName,@LinkDesc,@Num,@PM) set @LinkId=@@IDENTITY end select @LinkId"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@LinkId", DbType.Int32, Model.LinkId); db.AddInParameter(cmd, "@GoodsId", DbType.Int32, Model.GoodsId); db.AddInParameter(cmd, "@LinkUrl", DbType.String, Model.LinkUrl); db.AddInParameter(cmd, "@LinkName", DbType.String, Model.LinkName); db.AddInParameter(cmd, "@LinkDesc", DbType.String, Model.LinkDesc); db.AddInParameter(cmd, "@Num", DbType.Int32, Model.Num); db.AddInParameter(cmd, "@PM", DbType.Int32, Model.PM); int a = Convert.ToInt32(db.ExecuteScalar(cmd)); return a; } #endregion #region 保存货物店铺 public static int SaveShopForTM(HW_Shop Model) { string tsql = @" set @Id=0 select top 1 @Id=Id from HW_Shop where [GoodsId]=@GoodsId and [ShopId]=@ShopId if @Id=0 begin INSERT INTO [HW_Shop]([GoodsId],[ShopId],InName,InDate)values(@GoodsId,@ShopId,@InName,getdate()) set @Id=SCOPE_IDENTITY() end select @Id"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@Id", DbType.Int32, Model.Id); db.AddInParameter(cmd, "@GoodsId", DbType.Int32, Model.GoodsId); db.AddInParameter(cmd, "@ShopId", DbType.Int32, Model.ShopId); db.AddInParameter(cmd, "@InName", DbType.String, Model.InName); int a = Convert.ToInt32(db.ExecuteScalar(cmd)); return a; } #endregion #region 删除货物店铺 public static void DeleteShopForTM(string Ids, int GoodsId, string Name) { string tsql = ""; if (Ids != "") { tsql = @"delete from HW_Shop where GoodsId=@GoodsId and InName=@Name and Id not in (" + Ids + ")"; } else tsql = @"delete from HW_Shop where GoodsId=@GoodsId and InName=@Name "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@GoodsId", DbType.Int32, GoodsId); db.AddInParameter(cmd, "@Name", DbType.String, Name); db.ExecuteNonQuery(cmd); } #endregion #region 分页查询 public static List GetListHW_GoodsDetailNew22(int platid, int StoreId, RefParameterCollection where, int PageIndex, int PageSize, string Sort, out int RowCount) { if (where == null) { where = new RefParameterCollection(); } QueryService service = new QueryService { Fields = "DetailId=cast(a.DetailId as int),a.GoodsId,a.TypeCode,a.TypeDesc,a.SKU1,a.SKU2,a.SKU3,a.SKU4,a.SKU5,a.Weight,GoodsNum=isnull(a.GoodsNum,0),a.GoodsLockNum,a.GoodsPlanNum,a.GoodsOutNum,a.GoodsInNum,GoodsInNum3=isnull(a.GoodsInNum,0)-isnull(a.BHNum3,0),GoodsInNum2=isnull(a.GoodsInNum2,0),GoodsHJNum=isnull(a.GoodsHJNum,0),GoodsHJNum2=isnull(a.GoodsHJNum2,0),GoodsHJNum3=isnull(a.GoodsHJNum3,0),a.GoodsHJNum4,a.Price,a.GoodsImageIds,FirstImgUrl=case when a.FirstImgUrl is null or a.FirstImgUrl='' then b.FirstImgUrl else a.FirstImgUrl end,a.UpdateDate,a.UpdateName,a.GoodsRemark,a.SaleDays,a.AvgTime,a.SafeNum,b.Solid,a.BGPrice,a.SKU6,a.SKU7,a.SKU8,a.SKU9,a.SKU10,b.GoodsCode,b.GoodsName,b.SupplierId,LeftNum=isnull(a.GoodsNum,0)+isnull(a.GoodsInNum,0)+isnull(a.GoodsInNum2,0)-isnull(a.GoodsPlanNum,0),LeftNumW=isnull(a.WestNum,0)+isnull(a.GoodsHJNum14,0)-isnull(a.GoodsPlanNumW,0),LeftNumE=isnull(a.EastNum,0)+isnull(a.GoodsHJNum15,0)-isnull(a.GoodsPlanNumE,0),b.Cert,b.JYPrice,OutNum=isnull(a.GoodsBackNum,0),SJOutNum=isnull(a.GoodsBackNum2,0),MinBuyNum=isnull(a.GoodsBackNum3,0),AutoPlan=DATEDIFF(day,b.LastOrderDate,GETDATE()),NoGoods=isnull(b.IsSure,0),YCState=case when a.IsYC=1 then '显示SKU' else '隐藏SKU' end,CGNum=case when FHPlan=3 then isnull(CGNum,0) when FHPlan=1 then isnull(CGNum2,0) when FHPlan=2 then isnull(CGNum3,0) else isnull(CGNum,0) end,GoodsBackNum4=isnull(a.GoodsBackNum4,0),GoodsBackNum5=isnull(a.GoodsBackNum5,0),GoodsBackNum6=isnull(a.GoodsBackNum6,0),GoodsHJNum5=isnull(a.GoodsHJNum5,0),GoodsHJNum6=isnull(a.GoodsHJNum6,0),GoodsHJNum7=isnull(a.GoodsHJNum7,0),GoodsHJNum8=isnull(a.GoodsHJNum8,0),GoodsHJNum9=isnull(a.GoodsHJNum9,0),GoodsHJNum10=isnull(a.GoodsHJNum10,0),GoodsHJNum11=isnull(a.GoodsHJNum11,0),WestNum=isnull(a.WestNum,0),EastNum=isnull(a.EastNum,0),GoodsHJNum12=isnull(a.GoodsHJNum12,0),GoodsHJNum13=isnull(a.GoodsHJNum13,0),GoodsHJNum14=isnull(a.GoodsHJNum14,0),GoodsHJNum15=isnull(a.GoodsHJNum15,0),JHDays=isnull(b.JHDays,0),FHPlan=isnull(FHPlan,0),CGNum2=isnull(CGNum2,0),CGNum3=isnull(CGNum3,0),bhremark,a.BHNum1,a.BHNum2,a.BHNum3,a.JH_Date,IsSP=isnull(a.IsSP,0),SalesType=isnull(SalesType,-1),b.MName,d.groupname,b.IsExamine,GoodsHJNum_FBA=isnull(a.GoodsHJNum_FBA,0),b.SubsidyFee " }; if (platid == 3) { service = new QueryService { Fields = "DetailId=cast(a.DetailId as int),a.GoodsId,a.TypeCode,a.TypeDesc,a.SKU1,a.SKU2,a.SKU3,a.SKU4,a.SKU5,a.Weight,GoodsNum=isnull(a.GoodsNum,0),a.GoodsLockNum,a.GoodsPlanNum,a.GoodsOutNum,a.GoodsInNum,GoodsInNum3=isnull(a.GoodsInNum,0)-isnull(a.BHNum3,0),GoodsInNum2=isnull(a.GoodsInNum2,0),GoodsHJNum=isnull(a.GoodsHJNum,0),GoodsHJNum2=isnull(a.GoodsHJNum2,0),GoodsHJNum3=isnull(a.GoodsHJNum3,0),a.GoodsHJNum4,a.Price,a.GoodsImageIds,FirstImgUrl=case when a.FirstImgUrl is null or a.FirstImgUrl='' then b.FirstImgUrl else a.FirstImgUrl end,a.UpdateDate,a.UpdateName,a.GoodsRemark,a.SaleDays,a.AvgTime,a.SafeNum,b.Solid,a.BGPrice,a.SKU6,a.SKU7,a.SKU8,a.SKU9,a.SKU10,b.GoodsCode,b.GoodsName,b.SupplierId,LeftNum=isnull(a.GoodsNum,0)+isnull(a.GoodsInNum,0)+isnull(a.GoodsInNum2,0)-isnull(a.GoodsPlanNum,0),LeftNumW=isnull(a.WestNum,0)+isnull(a.GoodsHJNum14,0)-isnull(a.GoodsPlanNumW,0),LeftNumE=isnull(a.EastNum,0)+isnull(a.GoodsHJNum15,0)-isnull(a.GoodsPlanNumE,0),b.Cert,b.JYPrice,OutNum=isnull(a.GoodsBackNum,0),SJOutNum=isnull(a.GoodsBackNum2,0),MinBuyNum=isnull(a.GoodsBackNum3,0),AutoPlan=DATEDIFF(day,b.LastOrderDate,GETDATE()),NoGoods=isnull(b.IsSure,0),YCState=case when a.IsYC=1 then '显示SKU' else '隐藏SKU' end,CGNum=case when FHPlan=3 then isnull(CGNum,0) when FHPlan=1 then isnull(CGNum2,0) when FHPlan=2 then isnull(CGNum3,0) else isnull(CGNum,0) end,GoodsBackNum4=isnull(a.GoodsBackNum4,0),GoodsBackNum5=isnull(a.GoodsBackNum5,0),GoodsBackNum6=isnull(a.GoodsBackNum6,0),GoodsHJNum5=isnull(a.GoodsHJNum5,0),GoodsHJNum6=isnull(a.GoodsHJNum6,0),GoodsHJNum7=isnull(a.GoodsHJNum7,0),GoodsHJNum8=isnull(a.GoodsHJNum8,0),GoodsHJNum9=isnull(a.GoodsHJNum9,0),GoodsHJNum10=isnull(a.GoodsHJNum10,0),GoodsHJNum11=isnull(a.GoodsHJNum11,0),WestNum=isnull(a.WestNum,0),EastNum=isnull(a.EastNum,0),GoodsHJNum12=isnull(a.GoodsHJNum12,0),GoodsHJNum13=isnull(a.GoodsHJNum13,0),GoodsHJNum14=isnull(a.GoodsHJNum14,0),GoodsHJNum15=isnull(a.GoodsHJNum15,0),JHDays=isnull(b.JHDays,0),FHPlan=isnull(FHPlan,0),CGNum2=isnull(CGNum2,0),CGNum3=isnull(CGNum3,0),bhremark,a.BHNum1,a.BHNum2,a.BHNum3,a.JH_Date,IsSP=isnull(a.IsSP,0),SalesType=isnull(SalesType,-1),MName=b.groupname_ebay,d.groupname,b.IsExamine,GoodsHJNum_FBA=isnull(a.GoodsHJNum_FBA,0),b.SubsidyFee" }; } else if (platid == 6) { service = new QueryService { Fields = "DetailId=cast(a.DetailId as int),a.GoodsId,a.TypeCode,a.TypeDesc,a.SKU1,a.SKU2,a.SKU3,a.SKU4,a.SKU5,a.Weight,GoodsNum=isnull(a.GoodsNum,0),a.GoodsLockNum,a.GoodsPlanNum,a.GoodsOutNum,a.GoodsInNum,GoodsInNum3=isnull(a.GoodsInNum,0)-isnull(a.BHNum3,0),GoodsInNum2=isnull(a.GoodsInNum2,0),GoodsHJNum=isnull(a.GoodsHJNum,0),GoodsHJNum2=isnull(a.GoodsHJNum2,0),GoodsHJNum3=isnull(a.GoodsHJNum3,0),a.GoodsHJNum4,a.Price,a.GoodsImageIds,FirstImgUrl=case when a.FirstImgUrl is null or a.FirstImgUrl='' then b.FirstImgUrl else a.FirstImgUrl end,a.UpdateDate,a.UpdateName,a.GoodsRemark,a.SaleDays,a.AvgTime,a.SafeNum,b.Solid,a.BGPrice,a.SKU6,a.SKU7,a.SKU8,a.SKU9,a.SKU10,b.GoodsCode,b.GoodsName,b.SupplierId,LeftNum=isnull(a.GoodsNum,0)+isnull(a.GoodsInNum,0)+isnull(a.GoodsInNum2,0)-isnull(a.GoodsPlanNum,0),LeftNumW=isnull(a.WestNum,0)+isnull(a.GoodsHJNum14,0)-isnull(a.GoodsPlanNumW,0),LeftNumE=isnull(a.EastNum,0)+isnull(a.GoodsHJNum15,0)-isnull(a.GoodsPlanNumE,0),b.Cert,b.JYPrice,OutNum=isnull(a.GoodsBackNum,0),SJOutNum=isnull(a.GoodsBackNum2,0),MinBuyNum=isnull(a.GoodsBackNum3,0),AutoPlan=DATEDIFF(day,b.LastOrderDate,GETDATE()),NoGoods=isnull(b.IsSure,0),YCState=case when a.IsYC=1 then '显示SKU' else '隐藏SKU' end,CGNum=case when FHPlan=3 then isnull(CGNum,0) when FHPlan=1 then isnull(CGNum2,0) when FHPlan=2 then isnull(CGNum3,0) else isnull(CGNum,0) end,GoodsBackNum4=isnull(a.GoodsBackNum4,0),GoodsBackNum5=isnull(a.GoodsBackNum5,0),GoodsBackNum6=isnull(a.GoodsBackNum6,0),GoodsHJNum5=isnull(a.GoodsHJNum5,0),GoodsHJNum6=isnull(a.GoodsHJNum6,0),GoodsHJNum7=isnull(a.GoodsHJNum7,0),GoodsHJNum8=isnull(a.GoodsHJNum8,0),GoodsHJNum9=isnull(a.GoodsHJNum9,0),GoodsHJNum10=isnull(a.GoodsHJNum10,0),GoodsHJNum11=isnull(a.GoodsHJNum11,0),WestNum=isnull(a.WestNum,0),EastNum=isnull(a.EastNum,0),GoodsHJNum12=isnull(a.GoodsHJNum12,0),GoodsHJNum13=isnull(a.GoodsHJNum13,0),GoodsHJNum14=isnull(a.GoodsHJNum14,0),GoodsHJNum15=isnull(a.GoodsHJNum15,0),JHDays=isnull(b.JHDays,0),FHPlan=isnull(FHPlan,0),CGNum2=isnull(CGNum2,0),CGNum3=isnull(CGNum3,0),bhremark,a.BHNum1,a.BHNum2,a.BHNum3,a.JH_Date,IsSP=isnull(a.IsSP,0),SalesType=isnull(SalesType,-1),MName=b.groupname_wlmart,d.groupname,b.IsExamine,GoodsHJNum_FBA=isnull(a.GoodsHJNum_FBA,0),b.SubsidyFee" }; } else if (platid == 15) { service = new QueryService { Fields = "DetailId=cast(a.DetailId as int),a.GoodsId,a.TypeCode,a.TypeDesc,a.SKU1,a.SKU2,a.SKU3,a.SKU4,a.SKU5,a.Weight,GoodsNum=isnull(a.GoodsNum,0),a.GoodsLockNum,a.GoodsPlanNum,a.GoodsOutNum,a.GoodsInNum,GoodsInNum3=isnull(a.GoodsInNum,0)-isnull(a.BHNum3,0),GoodsInNum2=isnull(a.GoodsInNum2,0),GoodsHJNum=isnull(a.GoodsHJNum,0),GoodsHJNum2=isnull(a.GoodsHJNum2,0),GoodsHJNum3=isnull(a.GoodsHJNum3,0),a.GoodsHJNum4,a.Price,a.GoodsImageIds,FirstImgUrl=case when a.FirstImgUrl is null or a.FirstImgUrl='' then b.FirstImgUrl else a.FirstImgUrl end,a.UpdateDate,a.UpdateName,a.GoodsRemark,a.SaleDays,a.AvgTime,a.SafeNum,b.Solid,a.BGPrice,a.SKU6,a.SKU7,a.SKU8,a.SKU9,a.SKU10,b.GoodsCode,b.GoodsName,b.SupplierId,LeftNum=isnull(a.GoodsNum,0)+isnull(a.GoodsInNum,0)+isnull(a.GoodsInNum2,0)-isnull(a.GoodsPlanNum,0),LeftNumW=isnull(a.WestNum,0)+isnull(a.GoodsHJNum14,0)-isnull(a.GoodsPlanNumW,0),LeftNumE=isnull(a.EastNum,0)+isnull(a.GoodsHJNum15,0)-isnull(a.GoodsPlanNumE,0),b.Cert,b.JYPrice,OutNum=isnull(a.GoodsBackNum,0),SJOutNum=isnull(a.GoodsBackNum2,0),MinBuyNum=isnull(a.GoodsBackNum3,0),AutoPlan=DATEDIFF(day,b.LastOrderDate,GETDATE()),NoGoods=isnull(b.IsSure,0),YCState=case when a.IsYC=1 then '显示SKU' else '隐藏SKU' end,CGNum=case when FHPlan=3 then isnull(CGNum,0) when FHPlan=1 then isnull(CGNum2,0) when FHPlan=2 then isnull(CGNum3,0) else isnull(CGNum,0) end,GoodsBackNum4=isnull(a.GoodsBackNum4,0),GoodsBackNum5=isnull(a.GoodsBackNum5,0),GoodsBackNum6=isnull(a.GoodsBackNum6,0),GoodsHJNum5=isnull(a.GoodsHJNum5,0),GoodsHJNum6=isnull(a.GoodsHJNum6,0),GoodsHJNum7=isnull(a.GoodsHJNum7,0),GoodsHJNum8=isnull(a.GoodsHJNum8,0),GoodsHJNum9=isnull(a.GoodsHJNum9,0),GoodsHJNum10=isnull(a.GoodsHJNum10,0),GoodsHJNum11=isnull(a.GoodsHJNum11,0),WestNum=isnull(a.WestNum,0),EastNum=isnull(a.EastNum,0),GoodsHJNum12=isnull(a.GoodsHJNum12,0),GoodsHJNum13=isnull(a.GoodsHJNum13,0),GoodsHJNum14=isnull(a.GoodsHJNum14,0),GoodsHJNum15=isnull(a.GoodsHJNum15,0),JHDays=isnull(b.JHDays,0),FHPlan=isnull(FHPlan,0),CGNum2=isnull(CGNum2,0),CGNum3=isnull(CGNum3,0),bhremark,a.BHNum1,a.BHNum2,a.BHNum3,a.JH_Date,IsSP=isnull(a.IsSP,0),SalesType=isnull(SalesType,-1),MName=b.groupname_shopify,d.groupname,b.IsExamine,GoodsHJNum_FBA=isnull(a.GoodsHJNum_FBA,0),b.SubsidyFee" }; } else if (platid == 18) { service = new QueryService { Fields = "DetailId=cast(a.DetailId as int),a.GoodsId,a.TypeCode,a.TypeDesc,a.SKU1,a.SKU2,a.SKU3,a.SKU4,a.SKU5,a.Weight,GoodsNum=isnull(a.GoodsNum,0),a.GoodsLockNum,a.GoodsPlanNum,a.GoodsOutNum,a.GoodsInNum,GoodsInNum3=isnull(a.GoodsInNum,0)-isnull(a.BHNum3,0),GoodsInNum2=isnull(a.GoodsInNum2,0),GoodsHJNum=isnull(a.GoodsHJNum,0),GoodsHJNum2=isnull(a.GoodsHJNum2,0),GoodsHJNum3=isnull(a.GoodsHJNum3,0),a.GoodsHJNum4,a.Price,a.GoodsImageIds,FirstImgUrl=case when a.FirstImgUrl is null or a.FirstImgUrl='' then b.FirstImgUrl else a.FirstImgUrl end,a.UpdateDate,a.UpdateName,a.GoodsRemark,a.SaleDays,a.AvgTime,a.SafeNum,b.Solid,a.BGPrice,a.SKU6,a.SKU7,a.SKU8,a.SKU9,a.SKU10,b.GoodsCode,b.GoodsName,b.SupplierId,LeftNum=isnull(a.GoodsNum,0)+isnull(a.GoodsInNum,0)+isnull(a.GoodsInNum2,0)-isnull(a.GoodsPlanNum,0),LeftNumW=isnull(a.WestNum,0)+isnull(a.GoodsHJNum14,0)-isnull(a.GoodsPlanNumW,0),LeftNumE=isnull(a.EastNum,0)+isnull(a.GoodsHJNum15,0)-isnull(a.GoodsPlanNumE,0),b.Cert,b.JYPrice,OutNum=isnull(a.GoodsBackNum,0),SJOutNum=isnull(a.GoodsBackNum2,0),MinBuyNum=isnull(a.GoodsBackNum3,0),AutoPlan=DATEDIFF(day,b.LastOrderDate,GETDATE()),NoGoods=isnull(b.IsSure,0),YCState=case when a.IsYC=1 then '显示SKU' else '隐藏SKU' end,CGNum=case when FHPlan=3 then isnull(CGNum,0) when FHPlan=1 then isnull(CGNum2,0) when FHPlan=2 then isnull(CGNum3,0) else isnull(CGNum,0) end,GoodsBackNum4=isnull(a.GoodsBackNum4,0),GoodsBackNum5=isnull(a.GoodsBackNum5,0),GoodsBackNum6=isnull(a.GoodsBackNum6,0),GoodsHJNum5=isnull(a.GoodsHJNum5,0),GoodsHJNum6=isnull(a.GoodsHJNum6,0),GoodsHJNum7=isnull(a.GoodsHJNum7,0),GoodsHJNum8=isnull(a.GoodsHJNum8,0),GoodsHJNum9=isnull(a.GoodsHJNum9,0),GoodsHJNum10=isnull(a.GoodsHJNum10,0),GoodsHJNum11=isnull(a.GoodsHJNum11,0),WestNum=isnull(a.WestNum,0),EastNum=isnull(a.EastNum,0),GoodsHJNum12=isnull(a.GoodsHJNum12,0),GoodsHJNum13=isnull(a.GoodsHJNum13,0),GoodsHJNum14=isnull(a.GoodsHJNum14,0),GoodsHJNum15=isnull(a.GoodsHJNum15,0),JHDays=isnull(b.JHDays,0),FHPlan=isnull(FHPlan,0),CGNum2=isnull(CGNum2,0),CGNum3=isnull(CGNum3,0),bhremark,a.BHNum1,a.BHNum2,a.BHNum3,a.JH_Date,IsSP=isnull(a.IsSP,0),SalesType=isnull(SalesType,-1),MName=b.groupname_wayfair,d.groupname,b.IsExamine,GoodsHJNum_FBA=isnull(a.GoodsHJNum_FBA,0),b.SubsidyFee" }; } else if (platid == 21) { service = new QueryService { Fields = "DetailId=cast(a.DetailId as int),a.GoodsId,a.TypeCode,a.TypeDesc,a.SKU1,a.SKU2,a.SKU3,a.SKU4,a.SKU5,a.Weight,GoodsNum=isnull(a.GoodsNum,0),a.GoodsLockNum,a.GoodsPlanNum,a.GoodsOutNum,a.GoodsInNum,GoodsInNum3=isnull(a.GoodsInNum,0)-isnull(a.BHNum3,0),GoodsInNum2=isnull(a.GoodsInNum2,0),GoodsHJNum=isnull(a.GoodsHJNum,0),GoodsHJNum2=isnull(a.GoodsHJNum2,0),GoodsHJNum3=isnull(a.GoodsHJNum3,0),a.GoodsHJNum4,a.Price,a.GoodsImageIds,FirstImgUrl=case when a.FirstImgUrl is null or a.FirstImgUrl='' then b.FirstImgUrl else a.FirstImgUrl end,a.UpdateDate,a.UpdateName,a.GoodsRemark,a.SaleDays,a.AvgTime,a.SafeNum,b.Solid,a.BGPrice,a.SKU6,a.SKU7,a.SKU8,a.SKU9,a.SKU10,b.GoodsCode,b.GoodsName,b.SupplierId,LeftNum=isnull(a.GoodsNum,0)+isnull(a.GoodsInNum,0)+isnull(a.GoodsInNum2,0)-isnull(a.GoodsPlanNum,0),LeftNumW=isnull(a.WestNum,0)+isnull(a.GoodsHJNum14,0)-isnull(a.GoodsPlanNumW,0),LeftNumE=isnull(a.EastNum,0)+isnull(a.GoodsHJNum15,0)-isnull(a.GoodsPlanNumE,0),b.Cert,b.JYPrice,OutNum=isnull(a.GoodsBackNum,0),SJOutNum=isnull(a.GoodsBackNum2,0),MinBuyNum=isnull(a.GoodsBackNum3,0),AutoPlan=DATEDIFF(day,b.LastOrderDate,GETDATE()),NoGoods=isnull(b.IsSure,0),YCState=case when a.IsYC=1 then '显示SKU' else '隐藏SKU' end,CGNum=case when FHPlan=3 then isnull(CGNum,0) when FHPlan=1 then isnull(CGNum2,0) when FHPlan=2 then isnull(CGNum3,0) else isnull(CGNum,0) end,GoodsBackNum4=isnull(a.GoodsBackNum4,0),GoodsBackNum5=isnull(a.GoodsBackNum5,0),GoodsBackNum6=isnull(a.GoodsBackNum6,0),GoodsHJNum5=isnull(a.GoodsHJNum5,0),GoodsHJNum6=isnull(a.GoodsHJNum6,0),GoodsHJNum7=isnull(a.GoodsHJNum7,0),GoodsHJNum8=isnull(a.GoodsHJNum8,0),GoodsHJNum9=isnull(a.GoodsHJNum9,0),GoodsHJNum10=isnull(a.GoodsHJNum10,0),GoodsHJNum11=isnull(a.GoodsHJNum11,0),WestNum=isnull(a.WestNum,0),EastNum=isnull(a.EastNum,0),GoodsHJNum12=isnull(a.GoodsHJNum12,0),GoodsHJNum13=isnull(a.GoodsHJNum13,0),GoodsHJNum14=isnull(a.GoodsHJNum14,0),GoodsHJNum15=isnull(a.GoodsHJNum15,0),JHDays=isnull(b.JHDays,0),FHPlan=isnull(FHPlan,0),CGNum2=isnull(CGNum2,0),CGNum3=isnull(CGNum3,0),bhremark,a.BHNum1,a.BHNum2,a.BHNum3,a.JH_Date,IsSP=isnull(a.IsSP,0),SalesType=isnull(SalesType,-1),MName=b.groupname_sheIn,d.groupname,b.IsExamine,GoodsHJNum_FBA=isnull(a.GoodsHJNum_FBA,0),b.SubsidyFee" }; } else if (platid == 22) { service = new QueryService { Fields = "DetailId=cast(a.DetailId as int),a.GoodsId,a.TypeCode,a.TypeDesc,a.SKU1,a.SKU2,a.SKU3,a.SKU4,a.SKU5,a.Weight,GoodsNum=isnull(a.GoodsNum,0),a.GoodsLockNum,a.GoodsPlanNum,a.GoodsOutNum,a.GoodsInNum,GoodsInNum3=isnull(a.GoodsInNum,0)-isnull(a.BHNum3,0),GoodsInNum2=isnull(a.GoodsInNum2,0),GoodsHJNum=isnull(a.GoodsHJNum,0),GoodsHJNum2=isnull(a.GoodsHJNum2,0),GoodsHJNum3=isnull(a.GoodsHJNum3,0),a.GoodsHJNum4,a.Price,a.GoodsImageIds,FirstImgUrl=case when a.FirstImgUrl is null or a.FirstImgUrl='' then b.FirstImgUrl else a.FirstImgUrl end,a.UpdateDate,a.UpdateName,a.GoodsRemark,a.SaleDays,a.AvgTime,a.SafeNum,b.Solid,a.BGPrice,a.SKU6,a.SKU7,a.SKU8,a.SKU9,a.SKU10,b.GoodsCode,b.GoodsName,b.SupplierId,LeftNum=isnull(a.GoodsNum,0)+isnull(a.GoodsInNum,0)+isnull(a.GoodsInNum2,0)-isnull(a.GoodsPlanNum,0),LeftNumW=isnull(a.WestNum,0)+isnull(a.GoodsHJNum14,0)-isnull(a.GoodsPlanNumW,0),LeftNumE=isnull(a.EastNum,0)+isnull(a.GoodsHJNum15,0)-isnull(a.GoodsPlanNumE,0),b.Cert,b.JYPrice,OutNum=isnull(a.GoodsBackNum,0),SJOutNum=isnull(a.GoodsBackNum2,0),MinBuyNum=isnull(a.GoodsBackNum3,0),AutoPlan=DATEDIFF(day,b.LastOrderDate,GETDATE()),NoGoods=isnull(b.IsSure,0),YCState=case when a.IsYC=1 then '显示SKU' else '隐藏SKU' end,CGNum=case when FHPlan=3 then isnull(CGNum,0) when FHPlan=1 then isnull(CGNum2,0) when FHPlan=2 then isnull(CGNum3,0) else isnull(CGNum,0) end,GoodsBackNum4=isnull(a.GoodsBackNum4,0),GoodsBackNum5=isnull(a.GoodsBackNum5,0),GoodsBackNum6=isnull(a.GoodsBackNum6,0),GoodsHJNum5=isnull(a.GoodsHJNum5,0),GoodsHJNum6=isnull(a.GoodsHJNum6,0),GoodsHJNum7=isnull(a.GoodsHJNum7,0),GoodsHJNum8=isnull(a.GoodsHJNum8,0),GoodsHJNum9=isnull(a.GoodsHJNum9,0),GoodsHJNum10=isnull(a.GoodsHJNum10,0),GoodsHJNum11=isnull(a.GoodsHJNum11,0),WestNum=isnull(a.WestNum,0),EastNum=isnull(a.EastNum,0),GoodsHJNum12=isnull(a.GoodsHJNum12,0),GoodsHJNum13=isnull(a.GoodsHJNum13,0),GoodsHJNum14=isnull(a.GoodsHJNum14,0),GoodsHJNum15=isnull(a.GoodsHJNum15,0),JHDays=isnull(b.JHDays,0),FHPlan=isnull(FHPlan,0),CGNum2=isnull(CGNum2,0),CGNum3=isnull(CGNum3,0),bhremark,a.BHNum1,a.BHNum2,a.BHNum3,a.JH_Date,IsSP=isnull(a.IsSP,0),SalesType=isnull(SalesType,-1),MName=b.groupname_tiktok,d.groupname,b.IsExamine,GoodsHJNum_FBA=isnull(a.GoodsHJNum_FBA,0),b.SubsidyFee" }; } else if (platid == 23) { service = new QueryService { Fields = "DetailId=cast(a.DetailId as int),a.GoodsId,a.TypeCode,a.TypeDesc,a.SKU1,a.SKU2,a.SKU3,a.SKU4,a.SKU5,a.Weight,GoodsNum=isnull(a.GoodsNum,0),a.GoodsLockNum,a.GoodsPlanNum,a.GoodsOutNum,a.GoodsInNum,GoodsInNum3=isnull(a.GoodsInNum,0)-isnull(a.BHNum3,0),GoodsInNum2=isnull(a.GoodsInNum2,0),GoodsHJNum=isnull(a.GoodsHJNum,0),GoodsHJNum2=isnull(a.GoodsHJNum2,0),GoodsHJNum3=isnull(a.GoodsHJNum3,0),a.GoodsHJNum4,a.Price,a.GoodsImageIds,FirstImgUrl=case when a.FirstImgUrl is null or a.FirstImgUrl='' then b.FirstImgUrl else a.FirstImgUrl end,a.UpdateDate,a.UpdateName,a.GoodsRemark,a.SaleDays,a.AvgTime,a.SafeNum,b.Solid,a.BGPrice,a.SKU6,a.SKU7,a.SKU8,a.SKU9,a.SKU10,b.GoodsCode,b.GoodsName,b.SupplierId,LeftNum=isnull(a.GoodsNum,0)+isnull(a.GoodsInNum,0)+isnull(a.GoodsInNum2,0)-isnull(a.GoodsPlanNum,0),LeftNumW=isnull(a.WestNum,0)+isnull(a.GoodsHJNum14,0)-isnull(a.GoodsPlanNumW,0),LeftNumE=isnull(a.EastNum,0)+isnull(a.GoodsHJNum15,0)-isnull(a.GoodsPlanNumE,0),b.Cert,b.JYPrice,OutNum=isnull(a.GoodsBackNum,0),SJOutNum=isnull(a.GoodsBackNum2,0),MinBuyNum=isnull(a.GoodsBackNum3,0),AutoPlan=DATEDIFF(day,b.LastOrderDate,GETDATE()),NoGoods=isnull(b.IsSure,0),YCState=case when a.IsYC=1 then '显示SKU' else '隐藏SKU' end,CGNum=case when FHPlan=3 then isnull(CGNum,0) when FHPlan=1 then isnull(CGNum2,0) when FHPlan=2 then isnull(CGNum3,0) else isnull(CGNum,0) end,GoodsBackNum4=isnull(a.GoodsBackNum4,0),GoodsBackNum5=isnull(a.GoodsBackNum5,0),GoodsBackNum6=isnull(a.GoodsBackNum6,0),GoodsHJNum5=isnull(a.GoodsHJNum5,0),GoodsHJNum6=isnull(a.GoodsHJNum6,0),GoodsHJNum7=isnull(a.GoodsHJNum7,0),GoodsHJNum8=isnull(a.GoodsHJNum8,0),GoodsHJNum9=isnull(a.GoodsHJNum9,0),GoodsHJNum10=isnull(a.GoodsHJNum10,0),GoodsHJNum11=isnull(a.GoodsHJNum11,0),WestNum=isnull(a.WestNum,0),EastNum=isnull(a.EastNum,0),GoodsHJNum12=isnull(a.GoodsHJNum12,0),GoodsHJNum13=isnull(a.GoodsHJNum13,0),GoodsHJNum14=isnull(a.GoodsHJNum14,0),GoodsHJNum15=isnull(a.GoodsHJNum15,0),JHDays=isnull(b.JHDays,0),FHPlan=isnull(FHPlan,0),CGNum2=isnull(CGNum2,0),CGNum3=isnull(CGNum3,0),bhremark,a.BHNum1,a.BHNum2,a.BHNum3,a.JH_Date,IsSP=isnull(a.IsSP,0),SalesType=isnull(SalesType,-1),MName=b.groupname_temu,d.groupname,b.IsExamine,GoodsHJNum_FBA=isnull(a.GoodsHJNum_FBA,0),b.SubsidyFee" }; } if (StoreId > 0) { service.Tables = "HW_GoodsDetail a with(nolock) inner join HW_GoodsInfo b with(nolock) on a.GoodsId=b.GoodsId inner join (select distinct DetailId from HW_GoodsInDetail where StoreId=" + StoreId + ")c on a.DetailId=c.DetailId left join JC_UserInfo d with(nolock) on b.muserid=d.UserId"; if (platid == 3) { service.Tables = "HW_GoodsDetail a with(nolock) inner join HW_GoodsInfo b with(nolock) on a.GoodsId=b.GoodsId inner join (select distinct DetailId from HW_GoodsInDetail where StoreId=" + StoreId + ")c on a.DetailId=c.DetailId left join JC_UserInfo d with(nolock) on b.guserid_ebay=d.UserId"; } else if (platid == 6) { service.Tables = "HW_GoodsDetail a with(nolock) inner join HW_GoodsInfo b with(nolock) on a.GoodsId=b.GoodsId inner join (select distinct DetailId from HW_GoodsInDetail where StoreId=" + StoreId + ")c on a.DetailId=c.DetailId left join JC_UserInfo d with(nolock) on b.guserid_wlmart=d.UserId"; } else if (platid == 15) { service.Tables = "HW_GoodsDetail a with(nolock) inner join HW_GoodsInfo b with(nolock) on a.GoodsId=b.GoodsId inner join (select distinct DetailId from HW_GoodsInDetail where StoreId=" + StoreId + ")c on a.DetailId=c.DetailId left join JC_UserInfo d with(nolock) on b.guserid_shopify=d.UserId"; } else if (platid == 18) { service.Tables = "HW_GoodsDetail a with(nolock) inner join HW_GoodsInfo b with(nolock) on a.GoodsId=b.GoodsId inner join (select distinct DetailId from HW_GoodsInDetail where StoreId=" + StoreId + ")c on a.DetailId=c.DetailId left join JC_UserInfo d with(nolock) on b.guserid_wayfair=d.UserId"; } else if (platid == 21) { service.Tables = "HW_GoodsDetail a with(nolock) inner join HW_GoodsInfo b with(nolock) on a.GoodsId=b.GoodsId inner join (select distinct DetailId from HW_GoodsInDetail where StoreId=" + StoreId + ")c on a.DetailId=c.DetailId left join JC_UserInfo d with(nolock) on b.guserid_sheIn=d.UserId"; } else if (platid == 22) { service.Tables = "HW_GoodsDetail a with(nolock) inner join HW_GoodsInfo b with(nolock) on a.GoodsId=b.GoodsId inner join (select distinct DetailId from HW_GoodsInDetail where StoreId=" + StoreId + ")c on a.DetailId=c.DetailId left join JC_UserInfo d with(nolock) on b.guserid_tiktok=d.UserId"; } else if (platid == 23) { service.Tables = "HW_GoodsDetail a with(nolock) inner join HW_GoodsInfo b with(nolock) on a.GoodsId=b.GoodsId inner join (select distinct DetailId from HW_GoodsInDetail where StoreId=" + StoreId + ")c on a.DetailId=c.DetailId left join JC_UserInfo d with(nolock) on b.guserid_temu=d.UserId"; } } else { service.Tables = "HW_GoodsDetail a with(nolock) inner join HW_GoodsInfo b with(nolock) on a.GoodsId=b.GoodsId left join JC_UserInfo d with(nolock) on b.muserid=d.UserId"; if (platid == 3) { service.Tables = "HW_GoodsDetail a with(nolock) inner join HW_GoodsInfo b with(nolock) on a.GoodsId=b.GoodsId left join JC_UserInfo d with(nolock) on b.guserid_ebay=d.UserId"; } else if (platid == 6) { service.Tables = "HW_GoodsDetail a with(nolock) inner join HW_GoodsInfo b with(nolock) on a.GoodsId=b.GoodsId left join JC_UserInfo d with(nolock) on b.guserid_wlmart=d.UserId"; } else if (platid == 15) { service.Tables = "HW_GoodsDetail a with(nolock) inner join HW_GoodsInfo b with(nolock) on a.GoodsId=b.GoodsId left join JC_UserInfo d with(nolock) on b.guserid_shopify=d.UserId"; } else if (platid == 18) { service.Tables = "HW_GoodsDetail a with(nolock) inner join HW_GoodsInfo b with(nolock) on a.GoodsId=b.GoodsId left join JC_UserInfo d with(nolock) on b.guserid_wayfair=d.UserId"; } else if (platid == 21) { service.Tables = "HW_GoodsDetail a with(nolock) inner join HW_GoodsInfo b with(nolock) on a.GoodsId=b.GoodsId left join JC_UserInfo d with(nolock) on b.guserid_sheIn=d.UserId"; } else if (platid == 21) { service.Tables = "HW_GoodsDetail a with(nolock) inner join HW_GoodsInfo b with(nolock) on a.GoodsId=b.GoodsId left join JC_UserInfo d with(nolock) on b.guserid_tiktok=d.UserId"; } else if (platid == 21) { service.Tables = "HW_GoodsDetail a with(nolock) inner join HW_GoodsInfo b with(nolock) on a.GoodsId=b.GoodsId left join JC_UserInfo d with(nolock) on b.guserid_temu=d.UserId"; } } service.Filter = where.GetWhere(CommandType.Text); service.PageIndex = PageIndex; service.PageSize = PageSize; service.Sort = Sort; service.KeyName = "DetailId"; string text = service.GetText(); where.AddOutParameter("RowCount", DbType.Int32); Database database = DatabaseFactory.CreateDatabase(); DbCommand sqlStringCommand = database.GetSqlStringCommand(text); database.AddInParameter(sqlStringCommand, where); DataTable tb = database.ExecuteDataTable(sqlStringCommand); RowCount = Convert.ToInt32(sqlStringCommand.Parameters["@RowCount"].Value); return tb.ToList(); } #endregion #region 获取东西部仓库货物当天的销售数量 public static List GetStoreGoodsSaleNumsNowDay() { var sql = @"select t.StoreId,t.DetailId,SUM(ISNULL(t.GoodsNum,0)) SaleNum from ( select case when c.StoreId=9 then 6 when c.StoreId=6 then 6 when c.StoreId=11 then 11 end StoreId, b.DetailId,b.GoodsNum from DT_OrderInfo a inner join DT_OrderXXInfo c on a.OrderId=c.OrderId inner join DT_OrderGoods b on a.OrderId=b.OrderId where a.State>0 and c.StoreId in (6,9,11) and a.State<3 and DATEDIFF(day,a.OrderDate,getdate())=0 ) t group by t.StoreId,t.DetailId "; var db = DatabaseFactory.CreateDatabase(); var cmd = db.GetSqlStringCommand(sql); return db.ExecuteDataTable(cmd).ToList(); } #endregion #region 返回列表 public static List GetListGoodsStar(string GoodsIds) { //string tsql = "select a.Id,a.GoodsId,a.ShopId,a.Url,a.Star1,a.Star2,a.Star3,a.Star4,a.Star5,a.Star6,a.LastDate,a.LastDate2 from HW_GoodsStar"; string tsql = @"select a.Id,a.GoodsId,a.ShopId,a.Url,Star1=isnull(a.Star1,0),Star2=isnull(a.Star2,0),Star3=isnull(a.Star3,0),Star4=isnull(a.Star4,0),Star5=isnull(a.Star5,0),Star6=isnull(a.Star6,0),a.LastDate,a.LastDate2,b.ShopName from HW_GoodsStar a inner join JC_Shop b on a.ShopId=b.ShopId where a.GoodsId in (" + GoodsIds + ") order by isnull(a.Star6,0) desc"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); DataTable tb = db.ExecuteDataTable(cmd); List ListModel = tb.ToList(); return ListModel; } #endregion #region public static void UpdateGoodsDays() { string tsql = @" update a set a.LastOrderDate=b.OrderDate from HW_GoodsInfo a inner join ( select d.GoodsId,OrderDate=MAX(a.OrderDate) from DT_OrderInfo a inner join DT_OrderGoods b on a.OrderId=b.OrderId inner join HW_GoodsDetail c on b.DetailId=c.DetailId inner join HW_GoodsInfo d on c.GoodsId=d.GoodsId where DATEDIFF(day, a.OrderDate,getdate())<2 group by d.GoodsId)b on a.GoodsId=b.GoodsId "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.ExecuteNonQuery(cmd); } #endregion #region 读取首页订单数 public static DT_DefaultDataNew GetDefaultDataForTM2(int userid,int CompanyID, DateTime? InDate, DateTime? PreDate, DateTime? SDate, DateTime? EDate) { DT_DefaultDataNew model = null; string tsql = @" declare @Num int,@TotalPrice Decimal(18,2),@SiglePrice Decimal(18,2),@TotalPriceUSD Decimal(18,2),@TotalPriceUSD2 Decimal(18,2),@SiglePriceUSD Decimal(18,2),@BuyMoney Decimal(18,2),@Num2 int,@Num3 int,@Num4 money,@Num5 money,@Num6 money,@Num7 money,@Num9 int,@Num10 money,@Num11 int,@Num12 int,@Num13 int,@Num14 int,@Num15 int,@Num16 int,@Num17 int,@BackPrice Decimal(18,2),@MRate Decimal(18,4),@Num18 int,@Num19 Decimal(18,1),@Num20 Decimal(18,1),@Num21 Decimal(18,1) --总订单量 select @Num=COUNT( distinct a.OrderId ) from DT_OrderInfo a with(nolock) inner join DT_OrderGoods b with(nolock) on a.OrderId=b.OrderId inner join HW_GoodsDetail c with(nolock) on b.DetailId=c.DetailId inner join HW_GoodsInfo d with(nolock) on c.GoodsId=d.GoodsId where a.CompanyId=@CompanyID and a.state>0 and OrderDate>=@SDate and OrderDate<@EDate and ( d.muserid=@userid or d.guserid_ebay=@userid or d.guserid_wlmart=@userid or d.guserid_wayfair=@userid or d.guserid_shopify=@userid or d.guserid_sheIn=@userid or d.guserid_tiktok=@userid or d.guserid_temu=@userid) --西部订单量 select @Num12=COUNT(distinct a.OrderId ) from DT_OrderInfo a with(nolock) inner join DT_OrderXXInfo b with(nolock) on a.OrderId=b.OrderId inner join DT_OrderGoods e with(nolock) on a.OrderId=e.OrderId inner join HW_GoodsDetail c with(nolock) on e.DetailId=c.DetailId inner join HW_GoodsInfo d with(nolock) on c.GoodsId=d.GoodsId where a.CompanyId=@CompanyID and a.state>0 and a.state<3 and OrderDate>=@SDate and OrderDate<@EDate and b.StoreId=6 and ( d.muserid=@userid or d.guserid_ebay=@userid or d.guserid_wlmart=@userid or d.guserid_wayfair=@userid or d.guserid_shopify=@userid or d.guserid_sheIn=@userid or d.guserid_tiktok=@userid or d.guserid_temu=@userid) --东部订单量 select @Num13=COUNT(distinct a.OrderId ) from DT_OrderInfo a with(nolock) inner join DT_OrderXXInfo b with(nolock) on a.OrderId=b.OrderId inner join DT_OrderGoods e with(nolock) on a.OrderId=e.OrderId inner join HW_GoodsDetail c with(nolock) on e.DetailId=c.DetailId inner join HW_GoodsInfo d with(nolock) on c.GoodsId=d.GoodsId where a.CompanyId=@CompanyID and a.state>0 and a.state<3 and OrderDate>=@SDate and OrderDate<@EDate and b.StoreId=11 and ( d.muserid=@userid or d.guserid_ebay=@userid or d.guserid_wlmart=@userid or d.guserid_wayfair=@userid or d.guserid_shopify=@userid or d.guserid_sheIn=@userid or d.guserid_tiktok=@userid or d.guserid_temu=@userid) select @Num18=COUNT(distinct a.OrderId ) from DT_OrderInfo a with(nolock) inner join DT_OrderXXInfo b with(nolock) on a.OrderId=b.OrderId inner join DT_OrderGoods e with(nolock) on a.OrderId=e.OrderId inner join HW_GoodsDetail c with(nolock) on e.DetailId=c.DetailId inner join HW_GoodsInfo d with(nolock) on c.GoodsId=d.GoodsId where a.CompanyId=@CompanyID and a.state>0 and a.state<3 and OrderDate>=@SDate and OrderDate<@EDate and b.StoreId=5 and ( d.muserid=@userid or d.guserid_ebay=@userid or d.guserid_wlmart=@userid or d.guserid_wayfair=@userid or d.guserid_shopify=@userid or d.guserid_sheIn=@userid or d.guserid_tiktok=@userid or d.guserid_temu=@userid) --昨天订单金额 select @TotalPrice=SUM(RMBPrice),@TotalPriceUSD=SUM(dbo.MoneyUSDChange(TotalPrice,MoneyCode,1)) from DT_OrderInfo with(nolock) where orderid in ( select distinct a.OrderId from DT_OrderInfo a with(nolock) inner join DT_OrderGoods b with(nolock) on a.OrderId=b.OrderId inner join HW_GoodsDetail c with(nolock) on b.DetailId=c.DetailId inner join HW_GoodsInfo d with(nolock) on c.GoodsId=d.GoodsId where a.CompanyId=@CompanyID and a.state>0 and a.state<3 and OrderDate>=@SDate and OrderDate<@EDate and ( d.muserid=@userid or d.guserid_ebay=@userid or d.guserid_wlmart=@userid or d.guserid_wayfair=@userid or d.guserid_shopify=@userid or d.guserid_sheIn=@userid or d.guserid_tiktok=@userid or d.guserid_temu=@userid)) --select @TotalPrice=SUM(RMBPrice),@TotalPriceUSD=SUM(dbo.MoneyUSDChange(TotalPrice,MoneyCode,1)) from DT_OrderInfo with(nolock) where CompanyId=@CompanyID and state>0 and state<3 and OrderDate>='2024-07-15' and OrderDate<'2024-07-16' --今天订单金额 select @TotalPriceUSD2=SUM(dbo.MoneyUSDChange(TotalPrice,MoneyCode,1)) from DT_OrderInfo with(nolock) where orderid in ( select distinct a.OrderId from DT_OrderInfo a with(nolock) inner join DT_OrderGoods b with(nolock) on a.OrderId=b.OrderId inner join HW_GoodsDetail c with(nolock) on b.DetailId=c.DetailId inner join HW_GoodsInfo d with(nolock) on c.GoodsId=d.GoodsId where a.CompanyId=@CompanyID and a.state>0 and a.state<3 and datediff(day,OrderDate,getdate())=0 and ( d.muserid=@userid or d.guserid_ebay=@userid or d.guserid_wlmart=@userid or d.guserid_wayfair=@userid or d.guserid_shopify=@userid or d.guserid_sheIn=@userid or d.guserid_tiktok=@userid or d.guserid_temu=@userid)) --select @TotalPriceUSD2=SUM(dbo.MoneyUSDChange(TotalPrice,MoneyCode,1)) from DT_OrderInfo with(nolock) where CompanyId=@CompanyID and state>0 and state<3 and datediff(day,OrderDate,getdate())=0 select @SiglePrice=@TotalPrice/@Num select @SiglePriceUSD=@TotalPriceUSD/@Num --set @MRate=6.7 --select top 1 @MRate=MRate from JC_Money where MCode='USD' --set @TotalPriceUSD=@TotalPrice/@MRate --set @SiglePriceUSD=@SiglePrice/@MRate select @Num2=COUNT(distinct a.OrderId) from DT_OrderInfo a with(nolock) inner join DT_OrderGoods b with(nolock) on a.OrderId=b.OrderId inner join HW_GoodsDetail c with(nolock) on b.DetailId=c.DetailId inner join HW_GoodsInfo d with(nolock) on c.GoodsId=d.GoodsId where a.CompanyId=@CompanyID and a.state>0 and a.state<3 and datediff(day,a.InDate,@InDate)=0 and ( d.muserid=@userid or d.guserid_ebay=@userid or d.guserid_wlmart=@userid or d.guserid_wayfair=@userid or d.guserid_shopify=@userid or d.guserid_sheIn=@userid or d.guserid_tiktok=@userid or d.guserid_temu=@userid) select @Num14=COUNT(distinct a.OrderId) from DT_OrderInfo a with(nolock) inner join DT_OrderXXInfo b with(nolock) on a.OrderId=b.OrderId inner join DT_OrderGoods e with(nolock) on a.OrderId=e.OrderId inner join HW_GoodsDetail c with(nolock) on e.DetailId=c.DetailId inner join HW_GoodsInfo d with(nolock) on c.GoodsId=d.GoodsId where a.CompanyId=@CompanyID and a.state>0 and a.state<3 and datediff(day,a.InDate,@InDate)=0 and b.StoreId=6 and ( d.muserid=@userid or d.guserid_ebay=@userid or d.guserid_wlmart=@userid or d.guserid_wayfair=@userid or d.guserid_shopify=@userid or d.guserid_sheIn=@userid or d.guserid_tiktok=@userid or d.guserid_temu=@userid) select @Num15=COUNT(distinct a.OrderId) from DT_OrderInfo a with(nolock) inner join DT_OrderXXInfo b with(nolock) on a.OrderId=b.OrderId inner join DT_OrderGoods e with(nolock) on a.OrderId=e.OrderId inner join HW_GoodsDetail c with(nolock) on e.DetailId=c.DetailId inner join HW_GoodsInfo d with(nolock) on c.GoodsId=d.GoodsId where a.CompanyId=@CompanyID and a.state>0 and a.state<3 and datediff(day,a.InDate,@InDate)=0 and b.StoreId=11 and ( d.muserid=@userid or d.guserid_ebay=@userid or d.guserid_wlmart=@userid or d.guserid_wayfair=@userid or d.guserid_shopify=@userid or d.guserid_sheIn=@userid or d.guserid_tiktok=@userid or d.guserid_temu=@userid) --发货订单量 select @Num3=COUNT(distinct a.OrderId) from DT_OrderInfo a with(nolock) inner join DT_OrderGoods b with(nolock) on a.OrderId=b.OrderId inner join HW_GoodsDetail c with(nolock) on b.DetailId=c.DetailId inner join HW_GoodsInfo d with(nolock) on c.GoodsId=d.GoodsId where a.CompanyId=@CompanyID and a.state=2 and datediff(day,PostDate,@PreDate)=0 and ( d.muserid=@userid or d.guserid_ebay=@userid or d.guserid_wlmart=@userid or d.guserid_wayfair=@userid or d.guserid_shopify=@userid or d.guserid_sheIn=@userid or d.guserid_tiktok=@userid or d.guserid_temu=@userid) select @Num19=SUM(b.GoodsNum*ISNULL(d.Solid,0)) from DT_OrderInfo a with(nolock) inner join DT_OrderGoods b with(nolock) on a.OrderId=b.OrderId inner join HW_GoodsDetail c with(nolock) on b.DetailId=c.DetailId inner join HW_GoodsInfo d with(nolock) on c.GoodsId=d.GoodsId where a.CompanyId=@CompanyID and a.state=2 and datediff(day,PostDate,@PreDate)=0 and ( d.muserid=@userid or d.guserid_ebay=@userid or d.guserid_wlmart=@userid or d.guserid_wayfair=@userid or d.guserid_shopify=@userid or d.guserid_sheIn=@userid or d.guserid_tiktok=@userid or d.guserid_temu=@userid) select @Num16=COUNT(distinct a.OrderId) from DT_OrderInfo a with(nolock) inner join DT_OrderXXInfo b with(nolock) on a.OrderId=b.OrderId inner join DT_OrderGoods e with(nolock) on a.OrderId=e.OrderId inner join HW_GoodsDetail c with(nolock) on e.DetailId=c.DetailId inner join HW_GoodsInfo d with(nolock) on c.GoodsId=d.GoodsId where a.CompanyId=@CompanyID and a.state=2 and datediff(day,a.PostDate,@PreDate)=0 and b.StoreId=6 and ( d.muserid=@userid or d.guserid_ebay=@userid or d.guserid_wlmart=@userid or d.guserid_wayfair=@userid or d.guserid_shopify=@userid or d.guserid_sheIn=@userid or d.guserid_tiktok=@userid or d.guserid_temu=@userid) select @Num20=SUM(b.GoodsNum*ISNULL(d.Solid,0)) from DT_OrderInfo a with(nolock) inner join DT_OrderGoods b with(nolock) on a.OrderId=b.OrderId inner join DT_OrderXXInfo e with(nolock) on a.OrderId=e.OrderId inner join HW_GoodsDetail c with(nolock) on b.DetailId=c.DetailId inner join HW_GoodsInfo d with(nolock) on c.GoodsId=d.GoodsId where a.CompanyId=@CompanyID and a.state=2 and datediff(day,PostDate,@PreDate)=0 and e.StoreId=6 and ( d.muserid=@userid or d.guserid_ebay=@userid or d.guserid_wlmart=@userid or d.guserid_wayfair=@userid or d.guserid_shopify=@userid or d.guserid_sheIn=@userid or d.guserid_tiktok=@userid or d.guserid_temu=@userid) select @Num17=COUNT(distinct a.OrderId) from DT_OrderInfo a with(nolock) inner join DT_OrderXXInfo b with(nolock) on a.OrderId=b.OrderId inner join DT_OrderGoods e with(nolock) on a.OrderId=e.OrderId inner join HW_GoodsDetail c with(nolock) on e.DetailId=c.DetailId inner join HW_GoodsInfo d with(nolock) on c.GoodsId=d.GoodsId where a.CompanyId=@CompanyID and a.state=2 and datediff(day,a.PostDate,@PreDate)=0 and b.StoreId=11 and ( d.muserid=@userid or d.guserid_ebay=@userid or d.guserid_wlmart=@userid or d.guserid_wayfair=@userid or d.guserid_shopify=@userid or d.guserid_sheIn=@userid or d.guserid_tiktok=@userid or d.guserid_temu=@userid) select @Num21=SUM(b.GoodsNum*ISNULL(d.Solid,0)) from DT_OrderInfo a with(nolock) inner join DT_OrderGoods b with(nolock) on a.OrderId=b.OrderId inner join DT_OrderXXInfo e with(nolock) on a.OrderId=e.OrderId inner join HW_GoodsDetail c with(nolock) on b.DetailId=c.DetailId inner join HW_GoodsInfo d with(nolock) on c.GoodsId=d.GoodsId where a.CompanyId=@CompanyID and a.state=2 and datediff(day,PostDate,@PreDate)=0 and e.StoreId=11 and ( d.muserid=@userid or d.guserid_ebay=@userid or d.guserid_wlmart=@userid or d.guserid_wayfair=@userid or d.guserid_shopify=@userid or d.guserid_sheIn=@userid or d.guserid_tiktok=@userid or d.guserid_temu=@userid) select @Num10=sum((b.GoodsNum-b.InGoodsNum)*b.GoodsPrice) from CG_Purchase a with(nolock) inner join CG_PurchaseGoods b with(nolock) on a.ChaseId=b.ChaseId inner join HW_GoodsDetail c with(nolock) on b.GoodsDetailId=c.DetailId inner join HW_GoodsInfo d with(nolock) on d.GoodsId=c.GoodsId where a.IsDelete=0 and a.GoodsState<2 and a.State<3 and b.InGoodsNum-1 select @Num7=SUM(Price*KCNum) from HW_GoodsInDetail with(nolock) where CKDetailId=0 --select @Num9=COUNT(0) from DT_OrderInfoNew where State=1 and FPDate is not null and MoneyState=1 and PostState=0 and BuyDate is not null --select @Num9=COUNT(0) from DT_OrderInfoNew with(nolock) where State=1 and PostState=0 select @Num9=COUNT(distinct a.OrderId) from DT_OrderInfoNew a with(nolock) inner join DT_OrderGoods b with(nolock) on a.OrderId=b.OrderId inner join HW_GoodsDetail c with(nolock) on b.DetailId=c.DetailId inner join HW_GoodsInfo d with(nolock) on c.GoodsId=d.GoodsId where a.State=1 and PostState=0 and ( d.muserid=@userid or d.guserid_ebay=@userid or d.guserid_wlmart=@userid or d.guserid_wayfair=@userid or d.guserid_shopify=@userid or d.guserid_sheIn=@userid or d.guserid_tiktok=@userid or d.guserid_temu=@userid) select @Num11=COUNT(0) from DT_OrderInfo a with(nolock) inner join DT_OrderBagBack b with(nolock) on a.OrderId=b.OrderId where a.CompanyId=@CompanyID and DATEDIFF(day,b.InDate,GETDATE())<=7 select @BackPrice=SUM(a.TotalPrice) from DT_OrderInfo a with(nolock) inner join DT_OrderBagBack b with(nolock) on a.OrderId=b.OrderId where a.CompanyId=@CompanyID and DATEDIFF(day,b.InDate,GETDATE())<=7 select Num=isnull(@Num,0),Num15=isnull(@Num15,0),Num16=isnull(@Num16,0),Num17=isnull(@Num17,0),Num12=isnull(@Num12,0),Num13=isnull(@Num13,0),Num14=isnull(@Num14,0),TotalPrice=isnull(@TotalPrice,0),SiglePrice=isnull(@SiglePrice,0),TotalPriceUSD=isnull(@TotalPriceUSD,0),TotalPriceUSD2=isnull(@TotalPriceUSD2,0),SiglePriceUSD=isnull(@SiglePriceUSD,0),Num2=isnull(@Num2,0),Num3=isnull(@Num3,0),Num4=isnull(@Num4,0),Num5=isnull(@Num5,0),Num6=isnull(@Num6,0),Num7=isnull(@Num7,0),Num9=isnull(@Num9,0),Num10=isnull(@Num10,0),Num11=isnull(@Num11,0),BackPrice=isnull(@BackPrice,0),Num18=isnull(@Num18,0),Num19=isnull(@Num19,0),Num20=isnull(@Num20,0),Num21=isnull(@Num21,0) select top 3 a.RMBPrice,b.ShopName from ( select ShopId,RMBPrice=SUM(RMBPrice) from DT_OrderInfo a with(nolock) inner join DT_OrderGoods b with(nolock) on a.OrderId=b.OrderId inner join HW_GoodsDetail c with(nolock) on b.DetailId=c.DetailId inner join HW_GoodsInfo d with(nolock) on c.GoodsId=d.GoodsId where a.State>0 and a.State<3 and DATEDIFF(day,OrderDate,@PreDate)=0 and ( d.muserid=@userid or d.guserid_ebay=@userid or d.guserid_wlmart=@userid or d.guserid_wayfair=@userid or d.guserid_shopify=@userid or d.guserid_sheIn=@userid or d.guserid_tiktok=@userid or d.guserid_temu=@userid) group by ShopId )a inner join JC_Shop b with(nolock) on a.ShopId=b.ShopId order by a.RMBPrice desc "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@CompanyID", DbType.Int32, CompanyID); db.AddInParameter(cmd, "@InDate", DbType.DateTime, InDate); db.AddInParameter(cmd, "@PreDate", DbType.DateTime, PreDate); db.AddInParameter(cmd, "@SDate", DbType.DateTime, SDate); db.AddInParameter(cmd, "@EDate", DbType.DateTime, EDate); db.AddInParameter(cmd, "@userid", DbType.Int32, userid); DataSet tb = db.ExecuteDataSet(cmd); if (tb.Tables[0].Rows.Count > 0) model = tb.Tables[0].Rows[0].ToModel(); string shop = ""; if (tb.Tables[1].Rows.Count > 0) { for (int i = 0; i < tb.Tables[1].Rows.Count; i++) { //shop += tb.Tables[1].Rows[i]["ShopName"].ToString() + "【" + tb.Tables[1].Rows[i]["RMBPrice"].ToString() + "】 "; shop += tb.Tables[1].Rows[i]["ShopName"].ToString() + " "; } } model.Num8 = shop.Trim(); return model; } #endregion #region 读取首页编号 public static List GetDefaultDataForCode2(int userid,int CompanyID, DateTime? SDate, DateTime? EDate) { string tsql = @" select top 3 Num1=b.GoodsCode,Num2=b.FirstImgUrl,Num4=a.Price from ( select d.GoodsId,Price=SUM(dbo.MoneyUSDChange(a.TotalPrice,a.moneycode,a.companyId)) from DT_OrderInfo a with(nolock) inner join DT_OrderGoods b with(nolock) on a.OrderId=b.OrderId inner join HW_GoodsDetail c with(nolock) on b.DetailId=c.DetailId inner join HW_GoodsInfo d with(nolock) on c.GoodsId=d.GoodsId where a.CompanyId=@CompanyID and a.state>0 and a.state<3 and a.OrderDate>=@SDate and a.OrderDate<@EDate and ( d.muserid=@userid or d.guserid_ebay=@userid or d.guserid_wlmart=@userid or d.guserid_wayfair=@userid or d.guserid_shopify=@userid or d.guserid_sheIn=@userid or d.guserid_tiktok=@userid or d.guserid_temu=@userid) group by d.GoodsId)a inner join HW_GoodsInfo b with(nolock) on a.GoodsId=b.GoodsId order by a.Price desc "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@userid", DbType.Int32, userid); db.AddInParameter(cmd, "@CompanyID", DbType.Int32, CompanyID); db.AddInParameter(cmd, "@SDate", DbType.DateTime, SDate); db.AddInParameter(cmd, "@EDate", DbType.DateTime, EDate); DataTable tb = db.ExecuteDataTable(cmd); List ListModel = tb.ToList(); return ListModel; } #endregion #region 读取首页编号 public static List GetDefaultDataForCode(int userid,int CompanyID, DateTime? SDate, DateTime? EDate) { string tsql = @" select top 3 Num1=b.GoodsCode,Num2=b.FirstImgUrl,Num3=a.GoodsNum from ( select d.GoodsId,GoodsNum=SUM(b.GoodsNum) from DT_OrderInfo a with(nolock) inner join DT_OrderGoods b with(nolock) on a.OrderId=b.OrderId inner join HW_GoodsDetail c with(nolock) on b.DetailId=c.DetailId inner join HW_GoodsInfo d with(nolock) on c.GoodsId=d.GoodsId where a.CompanyId=@CompanyID and a.state>0 and a.state<3 and a.OrderDate>=@SDate and a.OrderDate<@EDate and ( d.muserid=@userid or d.guserid_ebay=@userid or d.guserid_wlmart=@userid or d.guserid_wayfair=@userid or d.guserid_shopify=@userid or d.guserid_sheIn=@userid or d.guserid_tiktok=@userid or d.guserid_temu=@userid) group by d.GoodsId)a inner join HW_GoodsInfo b with(nolock) on a.GoodsId=b.GoodsId order by a.GoodsNum desc "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@userid", DbType.Int32, userid); db.AddInParameter(cmd, "@CompanyID", DbType.Int32, CompanyID); db.AddInParameter(cmd, "@SDate", DbType.DateTime, SDate); db.AddInParameter(cmd, "@EDate", DbType.DateTime, EDate); DataTable tb = db.ExecuteDataTable(cmd); List ListModel = tb.ToList(); return ListModel; } #endregion #region 读取主管店铺 public static List GetShopListFPage(int UserId, int PlatType, string UserType) { string tsql = @" select ShopId,ShopName,PlatType,DeptId,InDate,CompanyId,LevelGrade from JC_Shop where ShopId IN (SELECT ShopId from JC_ShopUser WHERE SType='M' and UserId=@UserId) and (@PlatType=0 or PlatType=@PlatType) order by PlatType "; if (UserType == "M" || UserType == "S") tsql = @" if(select count(0) from JC_Shop where CompanyId=1 and (PlatType=2 or PlatType=6))>4 begin select ShopId,ShopName,PlatType,DeptId,InDate,CompanyId,LevelGrade from JC_Shop where CompanyId=1 and (PlatType=2 or PlatType=6) and (@PlatType=0 or PlatType=@PlatType) order by PlatType end else begin select ShopId,ShopName,PlatType,DeptId,InDate,CompanyId,LevelGrade from JC_Shop where CompanyId=1 and (@PlatType=0 or PlatType=@PlatType) order by PlatType end "; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@UserId", DbType.Int32, UserId); db.AddInParameter(cmd, "@PlatType", DbType.Int32, PlatType); DataTable tb = db.ExecuteDataTable(cmd); return tb.ToList(); } #endregion #region 返回列表 public static List GetListUSOrder(int userid,string GoodsCode, DateTime? SDate, DateTime? EDate) { //string tsql = "select a.Id,a.statename,a.Num,a.code,a.color,a.Price from DT_USMap"; string tsql = @" select b.RevProvinceCode,Num=COUNT(0),Price=SUM(a.totalprice) into #map_ls from DT_OrderInfo a with(nolock) inner join DT_OrderXXInfo b with(nolock) on a.OrderId=b.OrderId where a.OrderId in ( select distinct a.OrderId from DT_OrderInfo a with(nolock) inner join DT_OrderXXInfo b with(nolock) on a.OrderId=b.OrderId inner join DT_OrderGoods c with (nolock) on a.OrderId=c.OrderId inner join HW_GoodsDetail d with(nolock) on c.DetailId=d.DetailId inner join HW_GoodsInfo f with(nolock) on d.GoodsId=f.GoodsId where b.CountryCode='US' and a.OrderDate>=@SDate and a.OrderDate<@EDate and a.State>0 and a.State<3 and ( f.muserid=@userid or f.guserid_ebay=@userid or f.guserid_wlmart=@userid or f.guserid_wayfair=@userid or f.guserid_shopify=@userid or f.guserid_sheIn=@userid or f.guserid_tiktok=@userid or f.guserid_temu=@userid) ) group by b.RevProvinceCode select a.Id,statename=a.code,a.ename,name=a.code,a.code,value=isnull(b.Num,1),num=isnull(b.Num,0),Price=isnull(b.Price,0) from DT_USMap a left join #map_ls b on a.code=b.RevProvinceCode order by isnull(b.Num,0) desc,isnull(b.Price,0) desc drop table #map_ls "; if (GoodsCode != "") { tsql = @"select a.Id,a.statename,a.ename,name=a.code,a.code,value=isnull(b.Num,0),num=isnull(b.Num,0),Price=isnull(b.Price,0) from DT_USMap a left join ( select b.RevProvinceCode,Num=COUNT(0),Price=SUM(a.totalprice) from DT_OrderInfo a inner join DT_OrderXXInfo b on a.OrderId=b.OrderId inner join DT_OrderGoods c on a.OrderId=c.OrderId inner join HW_GoodsDetail d on c.DetailId=d.DetailId inner join HW_GoodsInfo e on d.GoodsId=e.GoodsId where b.CountryCode='US' and e.GoodsCode like '%'+@GoodsCode+'%' and a.OrderDate>=@SDate and a.OrderDate<@EDate and a.State>0 and a.State<3 group by b.RevProvinceCode)b on a.code=b.RevProvinceCode order by isnull(b.Num,0) desc,isnull(b.Price,0) desc"; } Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@userid", DbType.Int32, userid); db.AddInParameter(cmd, "@GoodsCode", DbType.String, GoodsCode); db.AddInParameter(cmd, "@SDate", DbType.DateTime, SDate); db.AddInParameter(cmd, "@EDate", DbType.DateTime, EDate); DataTable tb = db.ExecuteDataTable(cmd); List ListModel = tb.ToList(); return ListModel; } #endregion #region 按s首页日期返回订单数 public static List GetDefaultCountListFromDay2(int userid, int PlatType, string Ids, DateTime? SDate, DateTime? EDate, int CompanyId) { string tsql = ""; List list = null; if (PlatType == 1) { tsql = @"select PlatId,OrderDate=convert(nvarchar(10),OrderDate,120),Num=COUNT(0) from DT_OrderInfo a inner join DT_OrderGoods b on a.OrderId=b.OrderId inner join HW_GoodsDetail c on c.DetailId=b.DetailId inner join HW_GoodsInfo d on d.GoodsId=c.GoodsId where a.State>0 and a.State<3 and a.CompanyId=@CompanyId and orderDate>=@SDate and orderDate<@EDate and ( d.muserid=@userid or d.guserid_ebay=@userid or d.guserid_wlmart=@userid or d.guserid_wayfair=@userid or d.guserid_shopify=@userid or d.guserid_sheIn=@userid or d.guserid_tiktok=@userid or d.guserid_temu=@userid) group by PlatId,convert(nvarchar(10),OrderDate,120) "; } else if (PlatType == 3) { tsql = @"select PlatId=ShopId,OrderDate=convert(nvarchar(10),OrderDate,120),Price=SUM(dbo.MoneyUSDChange(totalprice,a.moneycode,1)) from DT_OrderInfo a inner join DT_OrderGoods b on a.OrderId=b.OrderId inner join HW_GoodsDetail c on c.DetailId=b.DetailId inner join HW_GoodsInfo d on d.GoodsId=c.GoodsId where a.State>0 and a.State<3 and a.CompanyId=@CompanyId and orderDate>=@SDate and orderDate<@EDate and ( d.muserid=@userid or d.guserid_ebay=@userid or d.guserid_wlmart=@userid or d.guserid_wayfair=@userid or d.guserid_shopify=@userid or d.guserid_sheIn=@userid or d.guserid_tiktok=@userid or d.guserid_temu=@userid) group by ShopId,convert(nvarchar(10),OrderDate,120)"; } else if (PlatType == 4) { tsql = @"select PlatId=0,OrderDate=convert(nvarchar(10),OrderDate,120),Price=SUM(dbo.MoneyUSDChange(totalprice,a.moneycode,1)) from DT_OrderInfo a inner join DT_OrderGoods b on a.OrderId=b.OrderId inner join HW_GoodsDetail c on c.DetailId=b.DetailId inner join HW_GoodsInfo d on d.GoodsId=c.GoodsId where a.State>0 and a.State<3 and a.CompanyId=@CompanyId and orderDate>=@SDate and orderDate<@EDate and ( d.muserid=@userid or d.guserid_ebay=@userid or d.guserid_wlmart=@userid or d.guserid_wayfair=@userid or d.guserid_shopify=@userid or d.guserid_sheIn=@userid or d.guserid_tiktok=@userid or d.guserid_temu=@userid) group by convert(nvarchar(10),OrderDate,120)"; } else { tsql = @"select PlatId=ShopId,OrderDate=convert(nvarchar(10),OrderDate,120),Num=COUNT(0) from DT_OrderInfo a inner join DT_OrderGoods b on a.OrderId=b.OrderId inner join HW_GoodsDetail c on c.DetailId=b.DetailId inner join HW_GoodsInfo d on d.GoodsId=c.GoodsId where a.State>0 and a.State<3 and a.CompanyId=@CompanyId and orderDate>=@SDate and orderDate<@EDate and ( d.muserid=@userid or d.guserid_ebay=@userid or d.guserid_wlmart=@userid or d.guserid_wayfair=@userid or d.guserid_shopify=@userid or d.guserid_sheIn=@userid or d.guserid_tiktok=@userid or d.guserid_temu=@userid) group by ShopId,convert(nvarchar(10),OrderDate,120)"; } Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@Ids", DbType.String, Ids); db.AddInParameter(cmd, "@userid", DbType.Int32, userid); db.AddInParameter(cmd, "@CompanyId", DbType.Int32, CompanyId); db.AddInParameter(cmd, "@SDate", DbType.DateTime, SDate); db.AddInParameter(cmd, "@EDate", DbType.DateTime, EDate); DataSet ds = db.ExecuteDataSet(cmd); list = ds.Tables[0].ToList(); return list; } #endregion #region 按s首页日期返回订单数 public static List GetDefaultCountListFromMonth(int userid, DateTime? SDate, DateTime? EDate, int CompanyId) { string tsql = ""; List list = null; tsql = @"select ShopId,Month=DATEPART(month,OrderDate),Num=COUNT(0) from DT_OrderInfo a with(nolock) inner join DT_OrderGoods b with(nolock) on a.OrderId=b.OrderId inner join HW_GoodsDetail c with(nolock) on b.DetailId=c.DetailId inner join HW_GoodsInfo d with(nolock) on d.GoodsId=c.GoodsId where a.CompanyId=@CompanyId and a.State>0 and a.State<3 and OrderDate>=@SDate and ( d.muserid=@userid or d.guserid_ebay=@userid or d.guserid_wlmart=@userid or d.guserid_wayfair=@userid or d.guserid_shopify=@userid or d.guserid_sheIn=@userid or d.guserid_tiktok=@userid or d.guserid_temu=@userid) group by shopId,DATEPART(month,OrderDate)"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@userid", DbType.Int32, userid); db.AddInParameter(cmd, "@CompanyId", DbType.Int32, CompanyId); db.AddInParameter(cmd, "@SDate", DbType.DateTime, SDate); db.AddInParameter(cmd, "@EDate", DbType.DateTime, EDate); DataSet ds = db.ExecuteDataSet(cmd); list = ds.Tables[0].ToList(); return list; } #endregion #region 按s首页日期返回订单金额 public static List GetDefaultCountListFromMonthPrice(int userid, DateTime? SDate, DateTime? EDate, int CompanyId) { string tsql = ""; List list = null; tsql = @"select ShopId,Month=DATEPART(month,OrderDate),Price=SUM(dbo.MoneyUSDChange(TotalPrice,a.moneycode,a.companyid)) from DT_OrderInfo a with(nolock) inner join DT_OrderGoods b with(nolock) on a.OrderId=b.OrderId inner join HW_GoodsDetail c with(nolock) on b.DetailId=c.DetailId inner join HW_GoodsInfo d with(nolock) on d.GoodsId=c.GoodsId where a.CompanyId=@CompanyId and a.State>0 and a.State<3 and OrderDate>=@SDate and ( d.muserid=@userid or d.guserid_ebay=@userid or d.guserid_wlmart=@userid or d.guserid_wayfair=@userid or d.guserid_shopify=@userid or d.guserid_sheIn=@userid or d.guserid_tiktok=@userid or d.guserid_temu=@userid) group by shopId,DATEPART(month,OrderDate)"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@userid", DbType.Int32, userid); db.AddInParameter(cmd, "@CompanyId", DbType.Int32, CompanyId); db.AddInParameter(cmd, "@SDate", DbType.DateTime, SDate); db.AddInParameter(cmd, "@EDate", DbType.DateTime, EDate); DataSet ds = db.ExecuteDataSet(cmd); list = ds.Tables[0].ToList(); return list; } #endregion #region 按s首页日期返回订单数 public static List GetDefaultCountListFromMonth2(int userid, DateTime? SDate, DateTime? EDate, int CompanyId) { string tsql = ""; List list = null; tsql = @"select ShopId=0,Month=DATEPART(month,OrderDate),Num=COUNT(0) from DT_OrderInfo a with(nolock) inner join DT_OrderGoods b with(nolock) on a.OrderId=b.OrderId inner join HW_GoodsDetail c with(nolock) on b.DetailId=c.DetailId inner join HW_GoodsInfo d with(nolock) on d.GoodsId=c.GoodsId where a.CompanyId=@CompanyId and a.State>0 and a.State<3 and OrderDate>=@SDate and ( d.muserid=@userid or d.guserid_ebay=@userid or d.guserid_wlmart=@userid or d.guserid_wayfair=@userid or d.guserid_shopify=@userid or d.guserid_sheIn=@userid or d.guserid_tiktok=@userid or d.guserid_temu=@userid) group by DATEPART(month,OrderDate)"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@userid", DbType.Int32, userid); db.AddInParameter(cmd, "@CompanyId", DbType.Int32, CompanyId); db.AddInParameter(cmd, "@SDate", DbType.DateTime, SDate); db.AddInParameter(cmd, "@EDate", DbType.DateTime, EDate); DataSet ds = db.ExecuteDataSet(cmd); list = ds.Tables[0].ToList(); return list; } #endregion #region 按s首页日期返回订单金额 public static List GetDefaultCountListFromMonthPrice2(int userid, DateTime? SDate, DateTime? EDate, int CompanyId) { string tsql = ""; List list = null; tsql = @"select ShopId=0,Month=DATEPART(month,OrderDate),Price=SUM(dbo.MoneyUSDChange(TotalPrice,a.moneycode,a.companyid)) from DT_OrderInfo a with(nolock) inner join DT_OrderGoods b with(nolock) on a.OrderId=b.OrderId inner join HW_GoodsDetail c with(nolock) on b.DetailId=c.DetailId inner join HW_GoodsInfo d with(nolock) on d.GoodsId=c.GoodsId where a.CompanyId=@CompanyId and a.State>0 and a.State<3 and OrderDate>=@SDate and ( d.muserid=@userid or d.guserid_ebay=@userid or d.guserid_wlmart=@userid or d.guserid_wayfair=@userid or d.guserid_shopify=@userid or d.guserid_sheIn=@userid or d.guserid_tiktok=@userid or d.guserid_temu=@userid) group by DATEPART(month,OrderDate)"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@userid", DbType.Int32, userid); db.AddInParameter(cmd, "@CompanyId", DbType.Int32, CompanyId); db.AddInParameter(cmd, "@SDate", DbType.DateTime, SDate); db.AddInParameter(cmd, "@EDate", DbType.DateTime, EDate); DataSet ds = db.ExecuteDataSet(cmd); list = ds.Tables[0].ToList(); return list; } #endregion #region 按s首页日期返回订单数 public static List GetDefaultCountListFromMonthPT(int userid, DateTime? SDate, DateTime? EDate, int CompanyId) { string tsql = ""; List list = null; tsql = @"select PlatId,Month=DATEPART(month,OrderDate),Num=COUNT(0) from DT_OrderInfo a with(nolock) inner join DT_OrderGoods b with(nolock) on a.OrderId=b.OrderId inner join HW_GoodsDetail c with(nolock) on b.DetailId=c.DetailId inner join HW_GoodsInfo d with(nolock) on d.GoodsId=c.GoodsId where a.CompanyId=@CompanyId and a.State>0 and a.State<3 and OrderDate>=@SDate and ( d.muserid=@userid or d.guserid_ebay=@userid or d.guserid_wlmart=@userid or d.guserid_wayfair=@userid or d.guserid_shopify=@userid or d.guserid_sheIn=@userid or d.guserid_tiktok=@userid or d.guserid_temu=@userid) group by PlatId,DATEPART(month,OrderDate)"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@userid", DbType.Int32, userid); db.AddInParameter(cmd, "@CompanyId", DbType.Int32, CompanyId); db.AddInParameter(cmd, "@SDate", DbType.DateTime, SDate); db.AddInParameter(cmd, "@EDate", DbType.DateTime, EDate); DataSet ds = db.ExecuteDataSet(cmd); list = ds.Tables[0].ToList(); return list; } #endregion #region 按s首页日期返回订单金额 public static List GetDefaultCountListFromMonthPTPrice(int userid, DateTime? SDate, DateTime? EDate, int CompanyId) { string tsql = ""; List list = null; tsql = @"select PlatId,Month=DATEPART(month,OrderDate),Price=SUM(dbo.MoneyUSDChange(TotalPrice,a.moneycode,a.companyid)) from DT_OrderInfo a with(nolock) inner join DT_OrderGoods b with(nolock) on a.OrderId=b.OrderId inner join HW_GoodsDetail c with(nolock) on b.DetailId=c.DetailId inner join HW_GoodsInfo d with(nolock) on d.GoodsId=c.GoodsId where a.CompanyId=@CompanyId and a.State>0 and a.State<3 and OrderDate>=@SDate and ( d.muserid=@userid or d.guserid_ebay=@userid or d.guserid_wlmart=@userid or d.guserid_wayfair=@userid or d.guserid_shopify=@userid or d.guserid_sheIn=@userid or d.guserid_tiktok=@userid or d.guserid_temu=@userid) group by PlatId,DATEPART(month,OrderDate)"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@userid", DbType.Int32, userid); db.AddInParameter(cmd, "@CompanyId", DbType.Int32, CompanyId); db.AddInParameter(cmd, "@SDate", DbType.DateTime, SDate); db.AddInParameter(cmd, "@EDate", DbType.DateTime, EDate); DataSet ds = db.ExecuteDataSet(cmd); list = ds.Tables[0].ToList(); return list; } #endregion #region 首页报表查询的新方法 #region 查询某人某日分配sku的订单 /// /// 查询某人某日分配sku的订单 /// /// 查询时间 /// 查询人 /// public static List MRJL_GetUserListByDay(DateTime newDate, int userid) { //返回数据 List ListModel = new List(); //店铺数据记录 Dictionary shopMsg = new Dictionary(); shopMsg.Add(15, "guserid_shopify"); shopMsg.Add(18, "guserid_wayfair"); shopMsg.Add(21, "guserid_sheIn"); shopMsg.Add(3, "guserid_ebay"); shopMsg.Add(6, "guserid_wlmart"); shopMsg.Add(2, "muserid"); shopMsg.Add(22, "guserid_tiktok"); shopMsg.Add(23, "guserid_temu"); //循环获取订单数据 foreach (var sMsg in shopMsg) { string tsql = @"select oi.* from DT_OrderInfo oi with(nolock) left join DT_OrderGoods og with(nolock) on oi.OrderId=og.OrderId left join HW_GoodsDetail hgd with(nolock) on hgd.DetailId=og.DetailId where DATEDIFF(day,oi.OrderDate,@newDate)=0 and oi.ShopId in (select DISTINCT ShopId from JC_Shop where PlatType = @PlatType) and hgd.GoodsID in (select GoodsID from HW_GoodsInfo where " + sMsg.Value + " = @skuUserId)"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@newDate", DbType.Date, newDate.Date); db.AddInParameter(cmd, "@PlatType", DbType.Int32, sMsg.Key); //db.AddInParameter(cmd, "@PlatGoodsId", DbType.String, sMsg.Value); db.AddInParameter(cmd, "@skuUserId", DbType.Int32, userid); DataTable tb = db.ExecuteDataTable(cmd); var list = tb.ToList(); if (list != null && list.Count() > 0) { ListModel.AddRange(list); } } return ListModel; } #endregion #region 获取店铺信息 /// /// 获取店铺信息 /// /// 查询时间 /// 查询人 /// public static Dictionary GetShopUserId() { //返回数据 List ListModel = new List(); //店铺数据记录 Dictionary shopMsg = new Dictionary(); shopMsg.Add(15, "guserid_shopify"); shopMsg.Add(18, "guserid_wayfair"); shopMsg.Add(21, "guserid_sheIn"); shopMsg.Add(3, "guserid_ebay"); shopMsg.Add(6, "guserid_wlmart"); shopMsg.Add(2, "muserid"); shopMsg.Add(22, "guserid_tiktok"); shopMsg.Add(23, "guserid_temu"); return shopMsg; } #endregion #region 查询某人某日分配sku的订单总和信息 /// /// 查询某人某日分配sku的订单 /// /// 查询时间 /// 查询人 /// public static List MRJL_GetUserOderMsgByDay(DateTime newDate, int userid) { //返回数据 List ListModel = new List(); //店铺数据记录 Dictionary shopMsg = GetShopUserId(); //循环获取订单数据 foreach (var sMsg in shopMsg) { string tsql = @" select oi.ShopId, OrderNum = COUNT(0), RMBMoney = SUM(RMBPrice), escrowFee = sum(isnull(oi.escrowFee, 0)), USDMoney = SUM(oi.TotalPrice), InPrice = SUM(fee.cb), ckfee = SUM(fee.ck), mdfee = SUM(fee.md), adfee = SUM(oi.Ad_Fee), yf = SUM(fee.yf), LR=SUM(isnull(TotalPrice, 0) - isnull(escrowFee, 0) - isnull(yj, 0) - isnull(yf, 0) -((isnull(cb, 0) + isnull(hwsf, 0)) / moneyrate) - isnull(tc, 0) - isnull(ck, 0) - isnull(md, 0) - isnull(Ad_Fee, 0) + SubsidyFee) from DT_OrderInfo oi with(nolock) left join DT_Fees fee with(nolock) on oi.OrderId = fee.orderid left join DT_OrderGoods og with(nolock) on oi.OrderId=og.OrderId left join HW_GoodsDetail hgd with(nolock) on hgd.DetailId=og.DetailId where DATEDIFF(day,oi.OrderDate,@newDate)=0 and oi.ShopId in (select DISTINCT ShopId from JC_Shop where PlatType = @PlatType) and hgd.GoodsID in (select GoodsID from HW_GoodsInfo where " + sMsg.Value + @" = @skuUserId) group by oi.ShopId"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@newDate", DbType.Date, newDate.Date); db.AddInParameter(cmd, "@PlatType", DbType.Int32, sMsg.Key); db.AddInParameter(cmd, "@skuUserId", DbType.Int32, userid); DataTable tb = db.ExecuteDataTable(cmd); var list = tb.ToList(); if (list != null && list.Count() > 0) { ListModel.AddRange(list); } } return ListModel; } #endregion #region 查询某人某日分配sku的订单的goodsid信息 /// /// 查询某人某日分配sku的订单 /// /// 查询时间 /// 查询人 /// public static List MRJL_GetGoodsIdByDay(DateTime newDate, int userid) { //返回数据 List ListModel = new List(); //店铺数据记录 Dictionary shopMsg = GetShopUserId(); //循环获取订单数据 foreach (var sMsg in shopMsg) { string tsql = @"select DISTINCT oi.PlatId,oi.ShopId,hgd.GoodsID from DT_OrderInfo oi with(nolock) left join DT_OrderGoods og with(nolock) on oi.OrderId=og.OrderId left join HW_GoodsDetail hgd with(nolock) on hgd.DetailId=og.DetailId where DATEDIFF(day,oi.OrderDate,@newDate)=0 and oi.ShopId in (select DISTINCT ShopId from JC_Shop where PlatType = @PlatType) and hgd.GoodsID in (select GoodsID from HW_GoodsInfo where " + sMsg.Value + @" = @skuUserId)"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@newDate", DbType.Date, newDate.Date); db.AddInParameter(cmd, "@PlatType", DbType.Int32, sMsg.Key); db.AddInParameter(cmd, "@skuUserId", DbType.Int32, userid); DataTable tb = db.ExecuteDataTable(cmd); var list = tb.ToList(); if (list != null && list.Count() > 0) { ListModel.AddRange(list); } } return ListModel; } #endregion #region 获取日广告信息 /// /// 获取日广告信息 /// /// 查询时间 /// 查询人 /// public static BB_MRJL_Adfee MRJL_GetGKFeeByDay(DateTime newDate, int plat, int shopid, List goodsIds) { //返回数据 BB_MRJL_Adfee model = new BB_MRJL_Adfee(); string tsql = ""; if (goodsIds.Count() > 0) { string goodsIdStr = string.Join(",", goodsIds); //亚马逊 if (plat == 2) { tsql = @" SELECT shopid,Adfee=SUM(isnull(adfeenew, 0)) from AD_FeeList where DATEDIFF(day,addate,@newDate)=0 and shopid = @shopid and goodsid in (" + goodsIdStr + @") GROUP BY shopid"; } else { tsql = @" SELECT shopid,Adfee=SUM(isnull(adfee, 0)) from ShopGoodsAdFee where DATEDIFF(day,addate,@newDate)=0 and shopid = @shopid and goodsid in (" + goodsIdStr + @") GROUP BY shopid"; } } Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@newDate", DbType.Date, newDate.Date); db.AddInParameter(cmd, "@shopid", DbType.Int32, shopid); DataTable tb = db.ExecuteDataTable(cmd); if (tb != null && tb.Rows.Count > 0) model = tb.Rows[0].ToModel(); return model; } #endregion #region 获取店铺名称 /// /// 店铺名称 /// /// 查询时间 /// 查询人 /// public static string MRJL_GetShopName(int shopid) { string name = ""; try { string tsql = "SELECT top 1 ShopName from jc_shop where ShopId = @ShopId"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@ShopId", DbType.Int32, shopid); name = Convert.ToString(db.ExecuteScalar(cmd)); } catch { } return name; } #endregion #region 获取月广告信息 /// /// 获取月广告信息 /// /// 查询时间 /// 查询人 /// public static BB_MRJL_Adfee MRJL_GetGKFeeByMouth(DateTime newDate, int plat, int shopid, List goodsIds) { //返回数据 BB_MRJL_Adfee model = new BB_MRJL_Adfee(); string tsql = ""; if (goodsIds.Count() > 0) { string goodsIdStr = string.Join(",", goodsIds); //亚马逊 if (plat == 2) { tsql = @" SELECT shopid,Adfee=SUM(isnull(adfeenew, 0)) from AD_FeeList where CONVERT(date, addate) <= @newDate and CONVERT(date, addate) >= @newDate1 and shopid = @shopid and goodsid in (" + goodsIdStr + @") GROUP BY shopid"; } else { tsql = @" SELECT shopid,Adfee=SUM(isnull(adfee, 0)) from ShopGoodsAdFee where CONVERT(date, addate) <= @newDate and CONVERT(date, addate) >= @newDate1 and shopid = @shopid and goodsid in (" + goodsIdStr + @") GROUP BY shopid"; } } Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@newDate", DbType.Date, newDate.Date); db.AddInParameter(cmd, "@newDate1", DbType.Date, new DateTime(newDate.Year, newDate.Month, 1).Date); db.AddInParameter(cmd, "@shopid", DbType.Int32, shopid); DataTable tb = db.ExecuteDataTable(cmd); //ListModel = tb.ToList(); if (tb != null && tb.Rows.Count > 0) model = tb.Rows[0].ToModel(); return model; } #endregion #region 查询上架编号数和订单编号数 /// /// 获取月广告信息 /// /// 查询时间 /// 查询人 /// public static BB_MRJL_GoodsIDMsg MRJL_GetGoodsMsgByMouth(DateTime newDate, int plat, int shopid, int userid) { //返回数据 BB_MRJL_GoodsIDMsg model = new BB_MRJL_GoodsIDMsg(); //店铺数据记录 Dictionary shopMsg = GetShopUserId(); string tsql = @" select a.*, Num2 = isnull(b.Num2, 0) from ( select b.ShopId, Num = COUNT(0) from HW_GoodsInfo a with(nolock) inner join HW_Shop b with(nolock) on a.GoodsId = b.GoodsId where a." + shopMsg[plat] + @" = @skuUserId and b.shopid = @shopid group by b.ShopId ) a left join ( select a.ShopId, Num2 = COUNT(distinct c.GoodsId) from DT_OrderInfo a with(nolock) inner join DT_OrderGoods b with(nolock) on a.OrderId = b.OrderId inner join HW_GoodsDetail c with(nolock) on b.DetailId = c.DetailId inner JOIN HW_GoodsInfo d with(nolock) on d.GoodsId = c.GoodsId where a.State > 0 and a.State < 3 and DATEDIFF(day, a.OrderDate, @newDate) = 0 and d." + shopMsg[plat] + @" = @skuUserId and a.ShopId = @shopid group by a.ShopId ) b on a.ShopId = b.ShopId"; Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetSqlStringCommand(tsql); db.AddInParameter(cmd, "@newDate", DbType.Date, newDate.Date); db.AddInParameter(cmd, "@shopid", DbType.Int32, shopid); db.AddInParameter(cmd, "@skuUserId", DbType.Int32, userid); DataTable tb = db.ExecuteDataTable(cmd); //ListModel = tb.ToList(); if (tb != null && tb.Rows.Count > 0) model = tb.Rows[0].ToModel(); return model; } #endregion #region list转DataTable public static DataTable ListToDataTable(List items) { // 获取类型T的所有公共属性 var properties = typeof(T).GetProperties(); // 创建DataTable var table = new DataTable(); // 添加列 foreach (var prop in properties) { table.Columns.Add(prop.Name, Nullable.GetUnderlyingType(prop.PropertyType) ?? prop.PropertyType); } // 添加行 foreach (var item in items) { var values = properties.Select(prop => prop.GetValue(item, null)).ToArray(); table.Rows.Add(values); } return table; } #endregion #endregion } }