using FineUIPro; using iWareCommon.Common.Entity; using iWareDataCore.BASE.Service; using iWareDataCore.ORM; using iWareLog.LOG.Service; using System; using System.Collections.Generic; using System.Text; namespace iWareWms.View.InOut { public partial class WebOrder : PageBase { protected override Grid GetGrid() { return WebOrderGrid; } protected override DropDownList GetPageSizeDropDownList() { return ddlPageSize; } protected override List GetDataSource(int pageIndex, int pageSize, out string msg, out int totalNum, out int currentPage) { var places = WebOrderService.GetInstance().QueryByParam(new QueryParam { Search = new Dictionary { { "RequestOrder", tbRequestOrder.Text.Trim() },{ "ListNo", tbListNo.Text.Trim() }}, Geq = new Dictionary { { "CreateTime", (DateTime)SCreateTime.SelectedDate } }, Ltd = new Dictionary { { "CreateTime", ((DateTime)CreateTime.SelectedDate).AddDays(1) } }, Filter = new Dictionary { { "BusType", ddlBusType.SelectedValue } }, PageIndex = pageIndex, PageSize = pageSize }, out msg, out totalNum, out currentPage); var res = new List(); places.ForEach(x => { res.Add(x); }); return res; } protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { var today = DateTime.Today; SCreateTime.SelectedDate = today.AddDays(-6); CreateTime.SelectedDate = today; Query(1); } } /// /// 类型前台显示 /// /// /// protected string GetType(object type) { string st = "未知"; try { int ty = int.Parse(type.ToString()); switch (ty) { case 0: st = "入库"; break; case 1: st = "出库"; break; default: break; } return st; } catch (Exception) { return st; } } protected override Window GetWindow() { return Window1; } protected override void GetPath(object userName) { string msg; var places = InOutStorageDetailService.GetInstance().QueryByParam(new QueryParam { Search = new Dictionary { { "RequestOrder", tbRequestOrder.Text.Trim() }, { "ListNo", tbListNo.Text.Trim() } }, Geq = new Dictionary { { "CreateTime", (DateTime)SCreateTime.SelectedDate } }, Ltd = new Dictionary { { "CreateTime", ((DateTime)CreateTime.SelectedDate).AddDays(1) } }, }, out msg); } protected override FineUIPro.Timer GetTimer() { return timer1; } /// /// 删除物料单按钮 /// /// /// protected void btnDeleteRequest_Click(object sender, EventArgs e) { List selectedRowIDs = new List(WebOrderGrid.SelectedRowIDArray); int[] selections = WebOrderGrid.SelectedRowIndexArray; var detail = WebOrderGrid.Rows; int selectRowId = -1; for (int i = 0; i < selections.Length; i++) { string RowId = detail[selections[i]].RowID.ToString(); int id = Convert.ToInt32(detail[selections[i]].Values[1].ToString()); if (selectedRowIDs.Contains(RowId)) { selectRowId = id; break; } } if (selectRowId > -1) { string msg; int count = WebOrderService.GetInstance().DeleteRequest(selectRowId, out msg); if (count >= 0) { Alert.ShowInTop("删除成功!"); Query(1); } else Alert.ShowInTop(msg); } else Alert.ShowInTop("请选择单据!"); } /// /// 确认作业 /// /// /// protected void btnDoInOutWork_Click(object sender, EventArgs e) { List selectedRowIDs = new List(WebOrderGrid.SelectedRowIDArray); int[] selections = WebOrderGrid.SelectedRowIndexArray; var detail = WebOrderGrid.Rows; int selectRowId = -1; for (int i = 0; i < selections.Length; i++) { string RowId = detail[selections[i]].RowID.ToString(); int id = Convert.ToInt32(detail[selections[i]].Values[1].ToString()); if (selectedRowIDs.Contains(RowId)) { selectRowId = id; break; } } if (selectRowId > -1) { string msg; bool doResult = WebOrderService.GetInstance().DoInOutWork(selectRowId, out msg); if (doResult) { Alert.ShowInTop("下发成功!"); Query(1); } else Alert.ShowInTop(msg); } else Alert.ShowInTop("请选择单据!"); } /// /// 校验 /// /// /// protected void btnCheckWorkOption_Click(object sender, EventArgs e) { List selectedRowIDs = new List(WebOrderGrid.SelectedRowIDArray); int[] selections = WebOrderGrid.SelectedRowIndexArray; var detail = WebOrderGrid.Rows; int selectRowId = -1; for (int i = 0; i < selections.Length; i++) { string RowId = detail[selections[i]].RowID.ToString(); int id = Convert.ToInt32(detail[selections[i]].Values[1].ToString()); if (selectedRowIDs.Contains(RowId)) { selectRowId = id; break; } } if (selectRowId > -1) { string msg; List outMrl; WebOrderService.GetInstance().CheckWorkOption(selectRowId,out outMrl,out msg); Alert.ShowInTop(msg); } else Alert.ShowInTop("请选择单据!"); } /// /// 导出excel /// /// /// protected void ExportToExcel(object sender, EventArgs e) { List selectedRowIDs = new List(WebOrderGrid.SelectedRowIDArray); int[] selections = WebOrderGrid.SelectedRowIndexArray; var detail = WebOrderGrid.Rows; int selectRowId = -1; for (int i = 0; i < selections.Length; i++) { string RowId = detail[selections[i]].RowID.ToString(); int id = Convert.ToInt32(detail[selections[i]].Values[1].ToString()); if (selectedRowIDs.Contains(RowId)) { selectRowId = id; break; } } if (selectRowId > -1) { string msg = ""; List cutOrderDetail = WebOrderDetailService.GetInstance().GetWebOrderDetail(selectRowId,out msg); if (cutOrderDetail == null || cutOrderDetail.Count == 0) { ShowNotify("无单据明细"); return; } Response.ClearContent(); Response.AddHeader("content-disposition", "attachment; filename=推送单" + DateTime.Now.ToString("yyyy-MM-dd") + ".xls"); Response.ContentType = "application/excel"; Response.ContentEncoding = System.Text.Encoding.UTF8; Response.Write(GetGridHtml(cutOrderDetail)); Response.End(); } else Alert.ShowInTop("请选择单据!"); } private string GetGridHtml(List orderDetail) { StringBuilder sb = new StringBuilder(); sb.Append(""); sb.Append(""); sb.Append(""); List titles = new List() { "推送单据号", "出入库单据号", "序号", "规格号", "物料二维码", "物料名称", "数量", "物件编号", "等级", "分类", "类型", "长度" , "density","宽度", "厚度", "突起宽度", "突起厚度","规格","单位重量" }; foreach (string column in titles) { sb.AppendFormat("", column); } sb.Append(""); foreach (WebOrderDetailView row in orderDetail) { sb.AppendFormat("" + "", row.requestorder, row.listno, row.sequenceno, row.materialno, row.nestingno, row.nestingname, row.quantity, row.articlenumber, row.grade,row.classification,row.profiletype,row.length,row.density,row.webheight,row.webthickness,row.flangewidth,row.flangethickness, row.sectiondim,row.unitweight); } sb.Append("
{0}
{0}{1}{2}{3}{4}{5}{6}{7}{8}{9}{10}{11}{12}{13}{14}{15}{16}{17}{18}
"); return sb.ToString(); } } }