public ActionResult List(GridCommand command, TyreOrderSearchModel searchModel) { SearchCacheModel searchCacheModel = this.ProcessSearchModel(command, searchModel); ViewBag.PageSize = base.ProcessPageSize(command.PageSize); return View(); }
public ActionResult _AjaxList(GridCommand command, TyreOrderSearchModel searchModel) { SearchStatementModel searchStatementModel = this.PrepareSearchStatement(command, searchModel); return PartialView(GetAjaxPageData<TyreOrderMaster>(searchStatementModel, command)); }
private IList<OrderDetail> _GetTyreOrderDetail(TyreOrderSearchModel searchModel) { string searchSql = PrepareReceiveSearchStatement(searchModel); var searchResult = this.genericMgr.FindAllWithNativeSql<object[]>(searchSql); var orderDetList = (from tak in searchResult select new OrderDetail { #region Id = (int)tak[0], Item = (string)tak[1], ItemDescription = (string)tak[2], ReferenceItemCode = (string)tak[3], ReserveNo = (string)tak[4], Uom = (string)tak[5], UnitCount = (decimal)tak[6], LocationFrom = (string)tak[7], LocationFromName = (string)tak[8], LocationTo = (string)tak[9], LocationToName = (string)tak[10], OrderedQty = (decimal)tak[11], ShippedQty = (decimal)tak[12], ReceivedQty = (decimal)tak[13], OrderNo = (string)tak[14], RefOrderNo = (string)tak[14], Flow = (string)tak[15], FlowDescription = (string)tak[16], SequenceGroup = (string)tak[17], ProdNo = (string)tak[18], ProdLine = (string)tak[19], ProdLineDescription = (string)tak[20], CompleteDate = (DateTime?)tak[21], #endregion }).ToList(); return orderDetList ?? new List<OrderDetail>(); }
private string PrepareReceiveSearchStatement(TyreOrderSearchModel searchModel) { IList<string> prodLines = new List<string>(); if (string.IsNullOrWhiteSpace(searchModel.ProdLines)) { prodLines = "RAA00,RAB00,RTX00".Split(new char[] { ',' }); } else { prodLines = searchModel.ProdLines.Split(new char[] { ',' }); } //var startDate = new List<DateTime>(); //foreach (var prodLine in prodLines) //{ // startDate.Add(this.genericMgr.FindAllWithNativeSql<DateTime>("select isnull(MAX(LastModifyDate),DATEADD(day,-30,GETDATE())) from ORD_TyreOrderDet where ProdLine=?", prodLine)[0]); //} string searchSql = @" select d2.Id,d2.Item,d2.ItemDesc,d2.RefItemCode,d2.ReserveNo,d2.uom,d2.UC,d2.LocFrom,d2.LocFromNm,d2.LocTo,d2.LocToNm,d2.OrderQty,d2.ShipQty,d2.RecQty,m2.OrderNo,m2.Flow,m2.FlowDesc,m2.SeqGroup,m4.OrderNo as ProdNo ,m4.Flow as ProdLine,m4.FlowDesc as ProdLineDesc,m4.CompleteDate from ORD_OrderDet_2 as d2 with(nolock) inner join ORD_OrderMstr_2 as m2 with(nolock) on m2.OrderNo=d2.OrderNo inner join CUST_FlowRelationship as cf on cf.Flow=m2.Flow inner join ORD_OrderMstr_4 as m4 with(nolock) on right('0000000000'+d2.ReserveNo,10)=m4.TraceCode and cf.ProdLine=m4.Flow where m4.Status=4 "; //and d2.RecQty<d2.OrderQty searchSql += string.Format(" and m4.CompleteDate between '{0}' and '{1}' ", searchModel.CompleteDateFrom,searchModel.CompleteDateTo); searchSql += string.Format(" and m4.Flow in('{0}') ", string.Join("','", prodLines)); if (!string.IsNullOrWhiteSpace(searchModel.ids)) { searchSql += string.Format(" and d2.Id in({0})",searchModel.ids); } return searchSql; }
public ActionResult TyreReceive(TyreOrderSearchModel searchModel) { try { if (searchModel.CompleteDateFrom == null || searchModel.CompleteDateTo == null) { throw new BusinessException("订单完工开始结束日期不能为空。"); } IList<OrderDetail> orderDetList = new List<OrderDetail>(); orderDetList = _GetTyreOrderDetail(searchModel); orderDetList = orderDetList.Where(d => d.OrderedQty > d.ReceivedQty).ToList(); orderMgr.TyreReceive(orderDetList); SaveSuccessMessage("轮胎结算成功。"); } catch (BusinessException eb) { SaveErrorMessage("轮胎结算失败:" + eb.GetMessages()[0].GetMessageString()); } catch (Exception e) { SaveErrorMessage("轮胎结算失败:" + e.Message); } return RedirectToAction("ReceiveList", searchModel); }
public ActionResult _AjaxReceiveList(GridCommand command, TyreOrderSearchModel searchModel) { if (searchModel.CompleteDateFrom == null || searchModel.CompleteDateTo == null) { return PartialView(new GridModel<OrderDetail>(new List<OrderDetail>())); } //d2.Id,d2.Item,d2.ItemDesc,d2.RefItemCode,d2.ReserveNo,d2.uom,d2.UC,d2.LocFrom,d2.LocFromNm,d2.LocTo,d2.LocToNm, //d2.OrderQty,d2.ShipQty,d2.RecQty,m2.OrderNo,m2.Flow,m2.FlowDesc,m2.SeqGroup,m4.OrderNo as ProdNo , //m4.Flow as ProdLine,m4.FlowDesc as ProdLineDesc,m4.CompleteDate IList<OrderDetail> orderDetList = new List<OrderDetail>(); orderDetList = _GetTyreOrderDetail(searchModel); GridModel<OrderDetail> gridModelOrderDet = new GridModel<OrderDetail>(); gridModelOrderDet.Total = orderDetList.Count; gridModelOrderDet.Data = orderDetList.Skip((command.Page-1)*command.PageSize) .Take(command.PageSize); return PartialView(gridModelOrderDet); }
public ActionResult ReceiveList(GridCommand command, TyreOrderSearchModel searchModel) { SearchCacheModel searchCacheModel = this.ProcessSearchModel(command, searchModel); ViewBag.PageSize = 50; if (searchModel.CompleteDateFrom == null || searchModel.CompleteDateTo == null) { SaveWarningMessage("订单完工开始结束日期不能为空。"); } return View(); }
private SearchStatementModel PrepareSearchDetailStatement(GridCommand command, TyreOrderSearchModel searchModel) { string whereStatement = string.Empty; IList<object> param = new List<object>(); HqlStatementHelper.AddEqStatement("ProdLine", searchModel.ProdLine, "t", ref whereStatement, param); HqlStatementHelper.AddEqStatement("Flow", searchModel.Flow, "t", ref whereStatement, param); HqlStatementHelper.AddEqStatement("ProdNo", searchModel.ProdNo, "t", ref whereStatement, param); HqlStatementHelper.AddEqStatement("TyreOrderNo", searchModel.TyreOrderNo, "t", ref whereStatement, param); HqlStatementHelper.AddEqStatement("RefOrderNo", searchModel.RefOrderNo, "t", ref whereStatement, param); HqlStatementHelper.AddEqStatement("SeqGroup", searchModel.SeqGroup, "t", ref whereStatement, param); HqlStatementHelper.AddEqStatement("Item", searchModel.Item, "t", ref whereStatement, param); HqlStatementHelper.AddEqStatement("VanNo", searchModel.VanNo, "t", ref whereStatement, param); if (searchModel.CreateDateFrom != null & searchModel.CreateDateTo != null) { HqlStatementHelper.AddBetweenStatement("CreateDate", searchModel.CreateDateFrom, searchModel.CreateDateTo, "t", ref whereStatement, param); } else if (searchModel.CreateDateFrom != null & searchModel.CreateDateTo == null) { HqlStatementHelper.AddGeStatement("CreateDate", searchModel.CreateDateFrom, "t", ref whereStatement, param); } else if (searchModel.CreateDateFrom == null & searchModel.CreateDateTo != null) { HqlStatementHelper.AddLeStatement("CreateDate", searchModel.CreateDateTo, "t", ref whereStatement, param); } string sortingStatement = HqlStatementHelper.GetSortingStatement(command.SortDescriptors); if (string.IsNullOrWhiteSpace(sortingStatement)) { sortingStatement = " ORDER BY t.CreateDate desc "; } SearchStatementModel searchStatementModel = new SearchStatementModel(); searchStatementModel.SelectCountStatement = selectTyreOrderDetailCountStatement; searchStatementModel.SelectStatement = selectTyreOrderDetailStatement; searchStatementModel.WhereStatement = whereStatement; //searchStatementModel.SortingStatement = sortingStatement; searchStatementModel.Parameters = param.ToArray<object>(); return searchStatementModel; }
//[SconitAuthorize(Permissions = "Url_OrderSeq_View")] //public ActionResult ExportXLS(GridCommand command, TyreOrderSearchModel searchModel) //{ // string hql = " select u from VanOrderSeqView as u where 1=1"; // IList<object> param = new List<object>(); // var error = false; // if (string.IsNullOrWhiteSpace(searchModel.ProdLine)) // { // error = true; // SaveWarningMessage(Resources.ErrorMessage.Errors_Common_FieldRequired, Resources.ORD.OrderMaster.OrderMaster_Flow); // } // else // { // hql += " and u.Flow=?"; // param.Add(searchModel.ProdLine); // } // long seq = 0; // if (!string.IsNullOrWhiteSpace(searchModel.ProdLine) && !string.IsNullOrWhiteSpace(searchModel.TraceCode)) // { // seq = this.genericMgr.FindAllWithNativeSql<long>("SELECT Seq FROM ORD_OrderSeq os where os.TraceCode=? AND os.ProdLine=? ", new object[] { searchModel.TraceCode, searchModel.ProdLine })[0]; // if (seq > 0) // { // hql += " and u.Sequence>=?"; // param.Add(seq); // } // else // { // error = true; // SaveErrorMessage("Van号值加生产线找不到对应的数据."); // } // } // if (error) // { // ViewBag.ReadOnly = true; // return RedirectToAction("Index"); // } // var list = this.genericMgr.FindAll<VanOrderSeqView>(hql,param.ToArray()); // ExportToXLS<VanOrderSeqView>("VanOrderSeqView", "XLS", list); // return null; //} private SearchStatementModel PrepareSearchStatement(GridCommand command, TyreOrderSearchModel searchModel) { string whereStatement = " where 1=1 "; IList<object> param = new List<object>(); if (!string.IsNullOrWhiteSpace(searchModel.ProdLine) && !string.IsNullOrWhiteSpace(searchModel.Flow)) { whereStatement += " and exists( select 1 from TyreOrderDetail as d where d.TyreOrderNo=t.TyreOrderNo and d.ProdLine=? and d.Flow=?) "; param.Add(searchModel.ProdLine); param.Add(searchModel.Flow); } else if (!string.IsNullOrWhiteSpace(searchModel.ProdLine) && string.IsNullOrWhiteSpace(searchModel.Flow)) { whereStatement += " and exists( select 1 from TyreOrderDetail as d where d.TyreOrderNo=t.TyreOrderNo and d.ProdLine=? ) "; param.Add(searchModel.ProdLine); } else if (string.IsNullOrWhiteSpace(searchModel.ProdLine) && !string.IsNullOrWhiteSpace(searchModel.Flow)) { whereStatement += " and exists( select 1 from TyreOrderDetail as d where d.TyreOrderNo=t.TyreOrderNo and d.Flow=? ) "; param.Add(searchModel.Flow); } if (searchModel.CreateDateFrom != null & searchModel.CreateDateTo != null) { HqlStatementHelper.AddBetweenStatement("CreateDate", searchModel.CreateDateFrom, searchModel.CreateDateTo, "t", ref whereStatement, param); } else if (searchModel.CreateDateFrom != null & searchModel.CreateDateTo == null) { HqlStatementHelper.AddGeStatement("CreateDate", searchModel.CreateDateFrom, "t", ref whereStatement, param); } else if (searchModel.CreateDateFrom == null & searchModel.CreateDateTo != null) { HqlStatementHelper.AddLeStatement("CreateDate", searchModel.CreateDateTo, "t", ref whereStatement, param); } string sortingStatement = HqlStatementHelper.GetSortingStatement(command.SortDescriptors); if (string.IsNullOrWhiteSpace(sortingStatement)) { sortingStatement = " ORDER BY t.CreateDate desc "; } SearchStatementModel searchStatementModel = new SearchStatementModel(); searchStatementModel.SelectCountStatement = selectCountStatement; searchStatementModel.SelectStatement = selectStatement; searchStatementModel.WhereStatement = whereStatement; //searchStatementModel.SortingStatement = sortingStatement; searchStatementModel.Parameters = param.ToArray<object>(); return searchStatementModel; }