You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

283 lines
9.5 KiB
C#

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

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
{
/// <summary>
/// 客户订单维护
/// </summary>
public class SeedPartDefineController : Controller
{
private SeedPartDefineService service = new SeedPartDefineService();
//
// GET: /SeedPartDefine/
public ActionResult Index()
{
return View();
}
/// <summary>
/// 获取列表数据
/// </summary>
/// <param name="SeedPartDefineName">菜单名称</param>
/// <param name="pager">分页</param>
/// <param name="direction">排序方式</param>
/// <param name="sort">排序列</param>
/// <returns></returns>
public ActionResult getSeedPartDefineListByPage(String FuLingJianHao, String ZiJieLingJianHao, Pager pager, String direction, String sort)
{
//if (string.IsNullOrEmpty(FuLingJianHao) && string.IsNullOrEmpty(ZiJieLingJianHao))
//{
// return null;
//}
Hashtable result = new Hashtable();
result.Add("pager.pageNo", pager.pageNo);
Hashtable dataHt = this.service.getSeedPartDefineListByPage(FuLingJianHao, ZiJieLingJianHao, 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);
}
/// <summary>
/// 获取下拉列表数据
/// </summary>
/// <rehuoturns></returns>
public ActionResult getSelectSeedPartDefine()
{
Hashtable result = new Hashtable();
ArrayList SeedPartDefineList = this.service.getSelectSeedPartDefine();
result.Add("list", SeedPartDefineList);
return Json(result, JsonRequestBehavior.AllowGet);
}
/// <summary>
/// 保存数据
/// </summary>
/// <returns></returns>
public ActionResult saveSeedPartDefine()
{
string partID = string.Empty;
string subsPartID = string.Empty;
String message = "";
String editType = Request["editType"].ToString();
String part_id = Request["part_id"].ToString();
String sub_part_id = Request["sub_part_id"].ToString();
String sub_part_type = Request["sub_part_type"].ToString();
String GUID = Request["GUID"].ToString();
Hashtable htParams = new Hashtable();
htParams.Add("part_id", part_id);
htParams.Add("sub_part_id", sub_part_id);
htParams.Add("sub_part_type", sub_part_type);
htParams.Add("GUID", GUID);
DataTable dtPartID = service.GetPartMessage(part_id);
DataTable dtSubsPartID = service.GetPartMessage(sub_part_id);
partID = dtPartID.Rows[0][0].ToString();
subsPartID = dtSubsPartID.Rows[0][0].ToString();
if (editType != null && editType.Trim().Equals("edit"))
{
try
{
this.service.updateSeedPartDefine(htParams);
message = "修改成功";
}
catch (Exception e)
{
message = "修改失败!";
}
}
else
{
try
{
if (service.GetPartID(partID, subsPartID))
{
message = "零件已经存在";
Hashtable result_2 = new Hashtable();
result_2.Add("message", message);
return Json(result_2);
}
this.service.saveSeedPartDefine(htParams);
message = "添加成功";
}
catch (Exception e)
{
message = "添加失败!";
}
}
Hashtable result = new Hashtable();
result.Add("message", message);
return Json(result);
}
/// <summary>
/// 查看详情
/// </summary>
/// <param name="ruid"></param>
/// <returns></returns>
public ActionResult getSeedPartDefine(String SeedPartDefine_id)
{
ArrayList SeedPartDefineInfo = this.service.getSeedPartDefine(SeedPartDefine_id);
Hashtable htSeedPartDefineInfo = (Hashtable)SeedPartDefineInfo[0];
ViewData.Add("part_id", htSeedPartDefineInfo["part_id"]);
ViewData.Add("cust_order", htSeedPartDefineInfo["cust_order"]);
ViewData.Add("ship_unit", htSeedPartDefineInfo["ship_unit"]);
return View("~/Views/SeedPartDefineManage/viewSeedPartDefine.aspx");
}
/// <summary>
/// 编辑
/// </summary>
/// <param name="ruid"></param>
/// <returns></returns>
public ActionResult editSeedPartDefine(String GUID)
{
if (string.IsNullOrEmpty(GUID))
{
return null;
}
ArrayList SeedPartDefineInfo = this.service.getSeedPartDefine(GUID);
Hashtable htSeedPartDefineInfo = (Hashtable)SeedPartDefineInfo[0];
ViewData.Add("editType", "edit");
ViewData.Add("part_id", "part_id");
ViewData.Add("sub_part_id", htSeedPartDefineInfo["sub_part_id"]);
ViewData.Add("sub_part_type", htSeedPartDefineInfo["sub_part_type"]);
return View("~/Views/SeedPartDefine/EditSeedPartDefine.aspx");
}
/// <summary>
/// 删除
/// </summary>
/// <param name="ids"></param>
/// <returns></returns>
public ActionResult deleteSeedPartDefine(String ids)
{
int delCount = 0;
try
{
delCount = this.service.deleteSeedPartDefine(ids);
}
catch (Exception e)
{
delCount = -1;
}
Hashtable result = new Hashtable();
result.Add("status", delCount);
return Json(result);
}
/// <summary>
/// 导出
/// </summary>
/// <param name="pager"></param>
/// <param name="txtOrderNo"></param>
/// <param name="sort"></param>
/// <param name="direction"></param>
/// <param name="isPage"></param>
/// <returns></returns>
public ActionResult ExportSeedPartDefine(String FuLingJianHao, String ZiJieLingJianHao, 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(FuLingJianHao, ZiJieLingJianHao, 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("GUID");
}
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]["sub_part_no"].ToString());
dataRow.CreateCell(2).SetCellValue(dataHt.Rows[i]["sub_part_type"].ToString());
dataRow.CreateCell(3).SetCellValue(dataHt.Rows[i]["guid"].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;
}
}
}