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;
}
}
}