using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; using Estsh.Web.Util; using Estsh.Web.Service; using System.Collections; using Estsh.Web.Models; using NPOI.HSSF.UserModel; using System.IO; using System.Data; /*************************************************************************************************** * * 作者:王勇 * 创建时间:2013.04.15 * 描述:客户订单维护 * * *************************************************************************************************/ namespace Estsh.Core.Web.Controllers { /// /// 客户订单维护 /// public class KittingHistoryController : Controller { private KittingHistoryService service = new KittingHistoryService(); // // GET: /KittingHistory/ public ActionResult Index() { return View(); } /// /// 获取列表数据 /// /// 菜单名称 /// 分页 /// 排序方式 /// 排序列 /// public ActionResult getKittingHistoryListByPage(String type_name, String StartCarNo,String view_board_name, Pager pager, String direction, String sort) { if (string.IsNullOrEmpty(type_name)) { return null; } if (string.IsNullOrEmpty(StartCarNo)) { return null; } if (string.IsNullOrEmpty(view_board_name)) { return null; } Hashtable result = new Hashtable(); result.Add("pager.pageNo", pager.pageNo); Hashtable dataHt = this.service.getKittingHistoryListByPage(type_name, StartCarNo, view_board_name, pager, direction, sort); result.Add("rows", dataHt["dataList"]); result.Add("pager.totalRows", dataHt["totalCount"]); result.Add("sort", sort); result.Add("direction", direction); return Json(result); } /// /// 查询2 /// /// 菜单名称 /// 分页 /// 排序方式 /// 排序列 /// public ActionResult getKittingHistoryListByPage(String pdline_name, String view_board_name, String Date, String Date2, Pager pager, String direction, String sort) { if (string.IsNullOrEmpty(pdline_name)) { return null; } if (string.IsNullOrEmpty(view_board_name)) { return null; } if (string.IsNullOrEmpty(Date)) { return null; } if (string.IsNullOrEmpty(Date2)) { return null; } Hashtable result = new Hashtable(); result.Add("pager.pageNo", pager.pageNo); Hashtable dataHt = this.service.getKittingHistoryListByPage_2(pdline_name, view_board_name,Date,Date2, pager, direction, sort); result.Add("rows", dataHt["dataList"]); result.Add("pager.totalRows", dataHt["totalCount"]); result.Add("sort", sort); result.Add("direction", direction); return Json(result); } /// /// 获取下拉列表数据 /// /// public ActionResult getSelectKittingHistory() { Hashtable result = new Hashtable(); ArrayList KittingHistoryList = this.service.getSelectKittingHistory(); result.Add("list", KittingHistoryList); return Json(result, JsonRequestBehavior.AllowGet); } /// /// 获取下拉列表数据 /// /// public ActionResult getSelectKittingHistory_view_board_name() { Hashtable result = new Hashtable(); ArrayList KittingHistoryList = this.service.getSelectKittingHistory_view_board_name(); result.Add("list", KittingHistoryList); return Json(result, JsonRequestBehavior.AllowGet); } /// /// 获取下拉列表数据 /// /// public ActionResult getSelectKittingHistory_pdline_name() { Hashtable result = new Hashtable(); ArrayList KittingHistoryList = this.service.getSelectKittingHistory_pdline_name(); result.Add("list", KittingHistoryList); return Json(result, JsonRequestBehavior.AllowGet); } /// /// 保存数据 /// /// public ActionResult saveKittingHistory() { String editType = Request["editType"].ToString(); String part_id = Request["part_id"].ToString(); String cust_order = Request["cust_order"].ToString(); String ship_unit = Request["ship_unit"].ToString(); Hashtable htParams = new Hashtable(); htParams.Add("@part_id", part_id); htParams.Add("@cust_order", cust_order); htParams.Add("@ship_unit", ship_unit); String message = ""; if (editType != null && editType.Trim().Equals("edit")) { try { this.service.updateKittingHistory(htParams); message = "修改成功"; } catch (Exception e) { message = "修改失败!"; } } else { try { this.service.saveKittingHistory(htParams); message = "添加成功"; } catch (Exception e) { message = "添加失败!"; } } Hashtable result = new Hashtable(); result.Add("message", message); return Json(result); } /// /// 查看详情 /// /// /// public ActionResult getKittingHistory(String KittingHistory_id) { ArrayList KittingHistoryInfo = this.service.getKittingHistory(KittingHistory_id); Hashtable htKittingHistoryInfo = (Hashtable)KittingHistoryInfo[0]; ViewData.Add("part_id", htKittingHistoryInfo["part_id"]); ViewData.Add("cust_order", htKittingHistoryInfo["cust_order"]); ViewData.Add("ship_unit", htKittingHistoryInfo["ship_unit"]); return View("~/Views/KittingHistoryManage/viewKittingHistory.aspx"); } /// /// 编辑 /// /// /// public ActionResult editKittingHistory(String part_id) { ArrayList KittingHistoryInfo = this.service.getKittingHistory(part_id); Hashtable htKittingHistoryInfo = (Hashtable)KittingHistoryInfo[0]; ViewData.Add("editType", "edit"); ViewData.Add("part_id", part_id); ViewData.Add("cust_order", htKittingHistoryInfo["cust_order"]); ViewData.Add("ship_unit", htKittingHistoryInfo["ship_unit"]); return View("~/Views/KittingHistory/EditKittingHistory.aspx"); } /// /// 删除 /// /// /// public ActionResult deleteKittingHistory(String ids) { int delCount = 0; try { delCount = this.service.deleteKittingHistory(ids); } catch (Exception e) { delCount = -1; } Hashtable result = new Hashtable(); result.Add("status", delCount); return Json(result); } /// /// 导出 /// /// /// /// /// /// /// public ActionResult ExportKittingHistory(String part_no, String cust_order, Pager pager, String sort, String direction, String isPage) { Boolean paging = false; if (isPage == null || "".Equals(isPage)) { paging = false; } else { if ("1".Equals(isPage)) { paging = true; } else { paging = false; } } DataTable dataHt = this.service.getTableListByPage(part_no, cust_order, pager, direction, sort, paging); HSSFWorkbook workbook = new HSSFWorkbook(); Stream outputStream = Response.OutputStream; HSSFSheet sheet = (HSSFSheet)workbook.CreateSheet("客户订单号明细"); try { if (workbook != null) { HSSFRow headRow = (HSSFRow)sheet.CreateRow(0); headRow.CreateCell(0).SetCellValue("总成零件号"); headRow.CreateCell(1).SetCellValue("零件描述"); headRow.CreateCell(2).SetCellValue("客户单号"); headRow.CreateCell(3).SetCellValue("出货单位"); } for (int i = 0; i < dataHt.Rows.Count; i++) { int row = i + 1; HSSFRow dataRow = (HSSFRow)sheet.CreateRow(row); dataRow.CreateCell(0).SetCellValue(dataHt.Rows[i]["part_no"].ToString()); dataRow.CreateCell(1).SetCellValue(dataHt.Rows[i]["part_spec"].ToString()); dataRow.CreateCell(2).SetCellValue(dataHt.Rows[i]["cust_order"].ToString()); dataRow.CreateCell(3).SetCellValue(dataHt.Rows[i]["ship_unit"].ToString()); } Response.Clear(); workbook.Write(outputStream); Response.Buffer = true; Response.AppendHeader("Content-Disposition", "attachment;filename=客户订单号明细.xls"); Response.ContentEncoding = System.Text.Encoding.UTF8; Response.ContentType = "application/vnd.ms-excel"; Response.Flush(); } catch (Exception e) { } finally { workbook = null; } return null; } } }