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.

434 lines
19 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 System.Text.RegularExpressions;
using System.Data;
using NPOI.HSSF.UserModel;
using System.IO;
using Estsh.Web.Models;
namespace Estsh.Core.Web.Controllers
{
/**
* 配置生产信息管理
*
* NOAH
*
*/
public class ModelProdInfoDefineController : Controller
{
private ModelProdInfoDefineService service = new ModelProdInfoDefineService();
//
// GET: /Menu/
public ActionResult Index()
{
return View();
}
/// <summary>
/// 加载功能树
/// </summary>
/// <returns></returns>
public ActionResult getMenuTree()
{
string path = Request.ApplicationPath; if (path.EndsWith("/")) { path = path.Substring(0, path.Length - 1); }
List<TreeNode> treeNodes = new List<TreeNode>();
treeNodes = service.getMenuList("isIndex = '是'", " RUID ASC ", path);
Hashtable result = new Hashtable();
result.Add("treeNodes", treeNodes);
String json = Estsh.Web.Util.JSON.Encode(result);
return Json(result, JsonRequestBehavior.AllowGet);
}
/// <summary>
/// 获取菜单管理列表数据
/// </summary>
/// <param name="menuName"></param>
/// <param name="pager"></param>
/// <param name="direction"></param>
/// <param name="sort"></param>
/// <returns></returns>
public ActionResult getModelProdInfoListByPage(String model_name_search, String enabled_search, Pager pager, String direction, String sort)
{
Hashtable result = new Hashtable();
result.Add("pager.pageNo", pager.pageNo);
ArrayList menuList = this.service.getModelProdInfoListByPage(model_name_search, enabled_search, pager, direction, sort);
result.Add("rows", menuList);
int total = this.service.getMenuCount(model_name_search, enabled_search);
result.Add("pager.totalRows", total);
result.Add("sort", sort);
result.Add("direction", direction);
return Json(result);
}
/// <summary>
/// 保存菜单数据
/// </summary>
/// <returns></returns>
public ActionResult saveModelProdInfo()
{
Hashtable result = new Hashtable();
String message = "";
String editType = Request["editType"].ToString();
String model_id = Request["model_id"].ToString();
//String model_name = Request["model_name"].ToString();
String print_barcode = Request["print_barcode"].ToString();
String print_tray_page = Request["print_tray_page"].ToString();
String print_insp_page = Request["print_insp_page"].ToString();
String barcode_template = Request["barcode_template"].ToString();
String insp_page_template = Request["insp_page_template"].ToString();
String tray_page_template = Request["tray_page_template"].ToString();
String fillPatter = Request["fillPatter"].ToString();
String bgcolor = Request["bgcolor"].ToString();
String forecolor = Request["forecolor"].ToString();
String insp_special_char = Request["insp_special_char"].ToString();
String Barcode_count = Request["Barcode_count"].ToString();
//String qa_label_count = Request["qa_label_count"].ToString();
String tray_page_count = Request["tray_page_count"].ToString();
String insp_page_count = Request["insp_page_count"].ToString();
String need_ab_data = Request["need_ab_data"].ToString();
String need_zkc_data = Request["need_zkc_data"].ToString();
String enabled = Request["enabled"].ToString();
//页面中的model_id
if (String.IsNullOrEmpty(model_id))
{
model_id = Request["model_id_bak"].ToString();
}
//if (String.IsNullOrEmpty(model_id))
//{
// message = "无可新增的配置!";
// result.Add("message", message);
// return Json(result);
//}
//检测 填充样式 前景色 背景色中的enmu_value
//if (String.IsNullOrEmpty(fillPatter) || String.IsNullOrEmpty(bgcolor) || String.IsNullOrEmpty(forecolor))
//{
// message = "填充样式,前景色,背景色不能为空!";
// result.Add("message", message);
// return Json(result);
//}
int fillPatter_enum_value = -1000;
int bgcolor_enum_value = -1000;
int forecolor_enum_value = -1000;
try
{
fillPatter_enum_value = Convert.ToInt32((getEnumValue("insp_page_fillpattern", fillPatter)).Rows[0][0].ToString());
bgcolor_enum_value = Convert.ToInt32((getEnumValue("sys_bgcolor", bgcolor)).Rows[0][0].ToString());
forecolor_enum_value = Convert.ToInt32((getEnumValue("sys_forecolor", forecolor)).Rows[0][0].ToString());
}
catch
{
message = "填充样式前景色背景色Enum值不正确";
result.Add("message", message);
return Json(result);
}
//传递要更新的数据库字段 2013 0510 14:05 by NOAH
Hashtable htParams = new Hashtable();
htParams.Add("@print_barcode", print_barcode);
htParams.Add("@print_tray_page", print_tray_page);
htParams.Add("@print_insp_page", print_insp_page);
htParams.Add("@barcode_template", barcode_template);
htParams.Add("@insp_page_template", insp_page_template);
htParams.Add("@tray_page_template", tray_page_template);
htParams.Add("@insp_page_fillpattern", fillPatter_enum_value);
htParams.Add("@insp_page_bgcolor", bgcolor_enum_value);
htParams.Add("@insp_page_forecolor", forecolor_enum_value);
htParams.Add("@insp_special_char", insp_special_char);
htParams.Add("@Barcode_count", Barcode_count);
htParams.Add("@tray_page_count", tray_page_count);
htParams.Add("@insp_page_count", insp_page_count);
htParams.Add("@need_ab_data", need_ab_data);
htParams.Add("@need_zkc_data", need_zkc_data);
htParams.Add("@enabled", enabled);
//htParams.Add("@qa_label_count", qa_label_count);
//用户id
UserInfo user = (UserInfo)Session["loginedUser"];
htParams.Add("@update_userid", user.updateUserId);
htParams.Add("@create_userid", user.updateUserId);
if (editType != null && editType.Trim().Equals("edit"))
{
try
{
htParams.Add("@model_id",model_id);
this.service.updateModelProdInfo(htParams);
message = "修改成功";
}
catch (Exception e)
{
message = "修改失败!";
}
}
else
{
try
{
htParams.Add("@model_id", model_id);
this.service.saveModelProdInfo(htParams);
message = "添加成功";
}
catch (Exception e)
{
message = "添加失败!";
}
}
result.Add("message", message);
return Json(result) ;
}
/// <summary>
/// 查看菜单详情
/// </summary>
/// <param name="model_id"></param>
/// <returns></returns>
public ActionResult getModelProdInfoDetail(String model_id)
{
Hashtable ht = this.service.getModelProdInfoDetail(model_id);
ViewData.Add("model_id", ht["model_id"]);
ViewData.Add("model_name", ht["model_name"]);
ViewData.Add("print_barcode", ht["print_barcode"]);
ViewData.Add("print_tray_page", ht["print_tray_page"]);
ViewData.Add("print_insp_page", ht["print_insp_page"]);
ViewData.Add("barcode_template", ht["barcode_template"]);
ViewData.Add("insp_page_template", ht["insp_page_template"]);
ViewData.Add("tray_page_template", ht["tray_page_template"]);
ViewData.Add("fillPatter", ht["fillPatter"]);
ViewData.Add("bgcolor", ht["bgcolor"]);
ViewData.Add("forecolor", ht["forecolor"]);
ViewData.Add("fillPatter_id", ht["fillPatter_id"]);
ViewData.Add("bgcolor_id", ht["bgcolor_id"]);
ViewData.Add("forecolor_id", ht["forecolor_id"]);
ViewData.Add("insp_special_char", ht["insp_special_char"]);
ViewData.Add("Barcode_count", ht["Barcode_count"]);
//ViewData.Add("qa_label_count", ht["qa_label_count"]);
ViewData.Add("tray_page_count", ht["tray_page_count"]);
ViewData.Add("insp_page_count", ht["insp_page_count"]);
ViewData.Add("need_ab_data", ht["need_ab_data"]);
ViewData.Add("need_zkc_data", ht["need_zkc_data"]);
//ViewData.Add("need_bxd_data", ht["need_bxd_data"]);
//ViewData.Add("need_zp_data", ht["need_zp_data"]);
//ViewData.Add("need_dgn_data", ht["need_dgn_data"]);
//ViewData.Add("need_ab_test", ht["need_ab_test"]);
ViewData.Add("enabled", ht["enabled"]);
return View("~/Views/ModelProdInfoDefine/ViewModelProdInfoDefine.aspx");
}
/// <summary>
/// 编辑菜单
/// </summary>
/// <param name="model_id"></param>
/// <returns></returns>
public ActionResult editModelProdInfo(String model_id)
{
Hashtable ht = this.service.getModelProdInfoDetail(model_id);
ViewData.Add("editType", "edit");
ViewData.Add("model_id", ht["model_id"]);
ViewData.Add("model_name", ht["model_name"]);
ViewData.Add("print_barcode", ht["print_barcode"]);
ViewData.Add("print_tray_page", ht["print_tray_page"]);
ViewData.Add("print_insp_page", ht["print_insp_page"]);
ViewData.Add("barcode_template", ht["barcode_template"]);
ViewData.Add("insp_page_template", ht["insp_page_template"]);
ViewData.Add("tray_page_template", ht["tray_page_template"]);
ViewData.Add("fillPatter", ht["fillPatter"]);
ViewData.Add("bgcolor", ht["bgcolor"]);
ViewData.Add("forecolor", ht["forecolor"]);
ViewData.Add("fillPatter_id", ht["fillPatter_id"]);
ViewData.Add("bgcolor_id", ht["bgcolor_id"]);
ViewData.Add("forecolor_id", ht["forecolor_id"]);
ViewData.Add("insp_special_char", ht["insp_special_char"]);
ViewData.Add("Barcode_count", ht["Barcode_count"]);
//ViewData.Add("qa_label_count", ht["qa_label_count"]);
ViewData.Add("tray_page_count", ht["tray_page_count"]);
ViewData.Add("insp_page_count", ht["insp_page_count"]);
ViewData.Add("need_ab_data", ht["need_ab_data"]);
ViewData.Add("need_zkc_data", ht["need_zkc_data"]);
//ViewData.Add("need_bxd_data", ht["need_bxd_data"]);
//ViewData.Add("need_zp_data", ht["need_zp_data"]);
//ViewData.Add("need_dgn_data", ht["need_dgn_data"]);
//ViewData.Add("need_ab_test", ht["need_ab_test"]);
ViewData.Add("enabled", ht["enabled"]);
return View("~/Views/ModelProdInfoDefine/EditModelProdInfoDefine.aspx");
}
/// <summary>
/// 删除菜单
/// </summary>
/// <param name="ids"></param>
/// <returns></returns>
public ActionResult deleteModelProdInfo(String ids)
{
int delCount = 0;
try
{
delCount = this.service.deleteModelProdInfo(ids);
}
catch(Exception e)
{
delCount = -1;
}
Hashtable result = new Hashtable();
result.Add("status", delCount);
return Json(result);
}
/// <summary>
/// 获取 配置名称
/// BY NOAH
/// </summary>
/// <rehuoturns></returns>
public ActionResult getModelName()
{
Hashtable result = new Hashtable();
ArrayList menuList = this.service.getModelName();
result.Add("list", menuList);
return Json(result, JsonRequestBehavior.AllowGet);
}
/// <summary>
/// 获取 填充样式
/// BY NOAH
/// </summary>
/// <rehuoturns></returns>
public ActionResult getFillPatterName(String style)
{
Hashtable result = new Hashtable();
ArrayList menuList = this.service.getFillPatterName(style);
result.Add("list", menuList);
return Json(result, JsonRequestBehavior.AllowGet);
}
/// <summary>
/// 获取 enum_value
/// BY NOAH
/// </summary>
/// <rehuoturns></returns>
public DataTable getEnumValue(String enum_type, String enum_id)
{
return this.service.getEnumValue(enum_type, enum_id);
}
/// <summary>
/// 导出数据到Excel
/// BY NOAH
/// </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 exportData(String model_name_search , String enabled_search, Pager pager, String sort, String direction, String isPage)
{
Boolean paging = false;
if (isPage == null || "".Equals(isPage))
{
paging = false;
}
else
{
if ("1".Equals(isPage.Trim()))
{
paging = true;
}
else
{
paging = false;
}
}
DataTable dataHt = this.service.getTableListByPage(model_name_search, enabled_search, pager, direction, sort, paging);//txtOrderNo, 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("是否打印料架清单");
headRow.CreateCell(4).SetCellValue("是否打印目视单");
headRow.CreateCell(5).SetCellValue("条码模板文件");
headRow.CreateCell(6).SetCellValue("目视单模板文件");
headRow.CreateCell(7).SetCellValue("料架模板文件");
headRow.CreateCell(8).SetCellValue("填充样式");
headRow.CreateCell(9).SetCellValue("背景颜色");
headRow.CreateCell(10).SetCellValue("前景颜色");
headRow.CreateCell(11).SetCellValue("特殊标示符");
headRow.CreateCell(12).SetCellValue("条码打印张数");
headRow.CreateCell(13).SetCellValue("料架单打印张数");
headRow.CreateCell(14).SetCellValue("目视单打印张数");
headRow.CreateCell(15).SetCellValue("是否采集安全气囊扭矩");
headRow.CreateCell(16).SetCellValue("是否采集坐靠结合扭矩");
headRow.CreateCell(17).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]["model_id"].ToString());
dataRow.CreateCell(1).SetCellValue(dataHt.Rows[i]["model_name"].ToString());
dataRow.CreateCell(2).SetCellValue(dataHt.Rows[i]["print_barcode"].ToString());
dataRow.CreateCell(3).SetCellValue(dataHt.Rows[i]["print_tray_page"].ToString());
dataRow.CreateCell(4).SetCellValue(dataHt.Rows[i]["print_insp_page"].ToString());
dataRow.CreateCell(5).SetCellValue(dataHt.Rows[i]["barcode_template"].ToString());
dataRow.CreateCell(6).SetCellValue(dataHt.Rows[i]["insp_page_template"].ToString());
dataRow.CreateCell(7).SetCellValue(dataHt.Rows[i]["tray_page_template"].ToString());
dataRow.CreateCell(8).SetCellValue(dataHt.Rows[i]["fillPatter"].ToString());
dataRow.CreateCell(9).SetCellValue(dataHt.Rows[i]["bgcolor"].ToString());
dataRow.CreateCell(10).SetCellValue(dataHt.Rows[i]["forecolor"].ToString());
dataRow.CreateCell(11).SetCellValue(dataHt.Rows[i]["insp_special_char"].ToString());
dataRow.CreateCell(12).SetCellValue(dataHt.Rows[i]["Barcode_count"].ToString());
dataRow.CreateCell(13).SetCellValue(dataHt.Rows[i]["tray_page_count"].ToString());
dataRow.CreateCell(14).SetCellValue(dataHt.Rows[i]["insp_page_count"].ToString());
dataRow.CreateCell(15).SetCellValue(dataHt.Rows[i]["need_ab_data"].ToString());
dataRow.CreateCell(16).SetCellValue(dataHt.Rows[i]["need_zkc_data"].ToString());
dataRow.CreateCell(17).SetCellValue(dataHt.Rows[i]["enabled"].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;
}
}
}