예제 #1
0
 public void ProcessRequest(HttpContext context)
 {
     //清空之前数据
     context.Response.Clear();
     //执行基类的方法
     if (!base.CheckIsLogin(context))
     {
         return;
     }
     //用户传入的部门名称
     string deptName = context.Request["dept"];
     //检测部门名称
     if (string.IsNullOrWhiteSpace(deptName))
     {
         return;
     }
     //数据适配器
     using (var da = new t_scrap_codeTableAdapter())
     {
         //获取该部门的最大报废代码
         var scrapCode = da.GetMaxScrapCodeByScrapDeptName(deptName);
         //检测是否获取到数据
         if (scrapCode.HasValue && scrapCode.Value > 0)
         {
             //输出数据
             context.Response.Write(scrapCode + 1);
         }
         else
         {
             //数据适配器
             //获取该部门的代码
             using (var da2 = new t_deptTableAdapter())
             using (var tab2 = da2.GetDataByDeptName(deptName))
             {
                 //检测是否获取到数据
                 if (tab2.Rows.Count > 0)
                 {
                     //首行
                     var row2 = (DataSetDept.t_deptRow)tab2.Rows[0];
                     //输出数据
                     context.Response.Write(row2.dept_id.ToString() + "01");
                 }
             }
         }
     }
 }
예제 #2
0
 protected void fvSampleLotCardMgrAdd_ItemCreated(object sender, EventArgs e)
 {
     //新增状态
     if (fvSampleLotCardMgrAdd.CurrentMode == FormViewMode.Insert)
     {
         //当前lot卡id号
         var tb = (TextBox)fvSampleLotCardMgrAdd.FindControl("txtLotId");
         if (tb != null)
         {
             //获取最大id号
             using (var da = new t_sample_lot_cardTableAdapter())
             {
                 //获取结果
                 object obj = da.GetLastLotId();
                 //获取最大id号
                 string str = string.Empty;
                 if (obj != null)
                 {
                     //获取最大id号
                     str = obj.ToString();
                 }
                 if (!Regex.IsMatch(str, @"^[1-9]\d(0[1-9]|1[012])-S[1-9]\d{0,4}$")
                     || DateTime.Now.ToString("yyMM") != str.Substring(0, 4))
                 {
                     //本年度第一张lot卡
                     str = DateTime.Now.ToString("yyMM-S1");
                 }
                 else
                 {
                     //修改lot卡号+1
                     str = str.Substring(0, 5) + (int.Parse(str.Substring(5)) + 1).ToString();
                 }
                 //设置起始lot卡号
                 tb.Text = str;
             }
         }
         //设置默认订单序号
         tb = (TextBox)fvSampleLotCardMgrAdd.FindControl("txtOrderId");
         if (tb != null)
         {
             //获取当前已经开lot卡的最大订单序号
             using (var da = new t_sample_lot_cardTableAdapter())
             {
                 //获取
                 object obj = da.GetLastOrderId();
                 string strMaxId = "SA0";
                 if (obj != null && obj.ToString().Trim().Length > 0)
                 {
                     strMaxId = obj.ToString();
                 }
                 //设置为最大id号+1
                 tb.Text = strMaxId.Substring(0, 1) + (int.Parse(strMaxId.Substring(1)) + 1).ToString();
             }
         }
         //设置lot卡默认pnl数量
         tb = (TextBox)fvSampleLotCardMgrAdd.FindControl("txtEveryCardPnlQty");
         if (tb != null)
         {
             //设置lot卡默认pnl数量
             tb.Text = "200";
         }
         //当前编号首部门
         tb = (TextBox)fvSampleLotCardMgrAdd.FindControl("txtFirstDeptName");
         if (tb != null)
         {
             //检查用户提供的首部门参数标识
             string strDept = Request["fdept"];
             if (strDept != null && strDept.Length > 0)
             {
                 //设置默认用户提供的首部门
                 tb.Text = strDept;
             }
             else
             {
                 //当前用户所在部门id
                 byte deptId = Convert.ToByte(Session["dept_id"]);
                 //从数据库中获取Sample的下个部门
                 using (var da = new t_deptTableAdapter())
                 using (var tab = da.GetDataByDeptId(deptId))
                 {
                     //检查是否存在数据
                     if (tab.Rows.Count > 0)
                     {
                         var row = tab.Rows[0] as DataSetDept.t_deptRow;
                         //设置到文本框
                         if (!row.Isnext_dept_nameNull())
                         {
                             tb.Text = row.next_dept_name;
                         }
                     }
                 }
             }
         }
     }
     //当前订单序号获取焦点
     var txtOrderId = (TextBox)fvSampleLotCardMgrAdd.FindControl("txtOrderId");
     if (txtOrderId != null)
     {
         //设置焦点
         txtOrderId.Focus();
     }
 }
예제 #3
0
 protected void fvProductRecordAdd_ItemCreated(object sender, EventArgs e)
 {
     //修改状态
     if (fvProductRecordAdd.CurrentMode == FormViewMode.Edit)
     {
         //当前日期文本框获取焦点
         var tb = (TextBox)fvProductRecordAdd.FindControl("txtProductDate");
         if (tb != null)
         {
             //设置焦点
             tb.Focus();
         }
     }
     //新增状态
     else if (fvProductRecordAdd.CurrentMode == FormViewMode.Insert)
     {
         //当前日期文本框获取焦点
         var tb = (TextBox)fvProductRecordAdd.FindControl("txtProductDate");
         if (tb != null)
         {
             //检查用户提供的日期参数标识
             string strTakeBackDate = Request["pdate"];
             DateTime dtTakeBackDate;
             if (strTakeBackDate != null && strTakeBackDate.Length > 0 &&
                 DateTime.TryParse(strTakeBackDate, out dtTakeBackDate))
             {
                 //设置默认日期
                 tb.Text = dtTakeBackDate.ToString("yyyy-MM-dd");
             }
             else
             {
                 //设置日期为当前时间8小时前的日期
                 tb.Text = DateTime.Now.AddHours(-8).ToString("yyyy-MM-dd");
             }
         }
         //当前部门名称
         var lit = (Literal)fvProductRecordAdd.FindControl("litDeptName");
         if (lit != null)
         {
             //session中保存的当前部门
             string deptName = Session["dept_name"].ToString();
             //写入到客户端
             lit.Text = deptName;
         }
         //当前下部门文本框
         tb = (TextBox)fvProductRecordAdd.FindControl("txtNextDept");
         if (tb != null)
         {
             //检查用户提供的部门名称参数标识
             string nextDept = Request["ndept"];
             if (nextDept != null && nextDept.Length > 0)
             {
                 //设置默认部门名称
                 tb.Text = nextDept;
             }
             else
             {
                 //获取当前部门的id号
                 string str = Session["dept_id"].ToString();
                 //转换id数据格式
                 Byte deptId;
                 if (Byte.TryParse(str, out deptId))
                 {
                     //获取默认的下个部门
                     using (var da = new t_deptTableAdapter())
                     using (var tab = da.GetDataByDeptId(deptId))
                     {
                         //检查值
                         if (tab.Rows.Count > 0)
                         {
                             //取首行
                             var row = (DataSetDept.t_deptRow)tab.Rows[0];
                             //设置默认部门名称
                             if (!row.Isnext_dept_nameNull())
                             {
                                 tb.Text = row.next_dept_name;
                             }
                         }
                     }
                 }
             }
         }
         //当前lot卡号文本框获取焦点
         tb = (TextBox)fvProductRecordAdd.FindControl("txtLotId");
         if (tb != null)
         {
             //设置焦点
             tb.Focus();
         }
     }
 }
예제 #4
0
 protected new void Page_Load(object sender, EventArgs e)
 {
     //执行基类事件过程
     base.Page_Load(sender, e);
     //根据部门名称设置是否默认选中只显示本部门
     if (!IsPostBack)
     {
         //保存排序规则到session
         Session["over_time_balance_order_by_content"] = "order by [dept_name],[product_num],[lot_id],[id]";
         //检测是否含有session
         if (Session.Count < 5)
         {
             //跳转
             Response.Redirect("/Account/Login", true);
             //停止加载后续内容
             Response.End();
             //直接返回
             return;
         }
         //当前所选择的部门
         string deptName = Session["dept_name"].ToString();
         //检测当前部门是否是生产部门
         bool isShowAllDept = true;
         if (deptName == "成品仓")
         {
             isShowAllDept = false;
         }
         else
         {
             using (var da = new t_deptTableAdapter())
             using (var tab = da.GetDataByProductDeptName(deptName))
             {
                 if (tab.Rows.Count > 0)
                 {
                     isShowAllDept = false;
                 }
             }
         }
         //检测是否显示全部部门结存lot卡
         if (isShowAllDept)
         {
             //选择显示所有部门余数
             chkThisDeptOnly.Checked = false;
             chkThisDeptOnly.Visible = false;
         }
         //检测当前是否为空的查询条件
         var obj = Session["over_time_balance_where_content"];
         if (obj == null || obj == DBNull.Value || obj.ToString().Length <= 0)
         {
             Session["over_time_balance_where_content"] =
                 string.Format(" where [add_time]<'{0}'", DateTime.Now.AddHours(-25));
             txtOverHours.Value = "25";
         }
         //默认汇总条件
         divTotalInfo.Attributes.Add("wh", Session["over_time_balance_where_content"].ToString());
     }
     //检查传入的参数
     string dept = Request["dept"];
     //是否指定只取指定部门的余数
     if (dept != null && dept.Length > 0)
     {
         //选择只显示当前部门余数
         chkThisDeptOnly.Checked = true;
         chkThisDeptOnly.Visible = false;
         //只显示当前部门
         litHeadName.Text = dept;
         odsOverTimeBalance.SelectParameters["deptName"].DefaultValue = dept;
     }
     else if (chkThisDeptOnly.Checked)
     {
         //选中只显示当前部门
         odsOverTimeBalance.SelectParameters["deptName"].DefaultValue = Session["dept_name"].ToString();
     }
     else
     {
         //显示全部部门
         odsOverTimeBalance.SelectParameters["deptName"].DefaultValue = "";
     }
     //默认汇总条件
     string strDeptName = odsOverTimeBalance.SelectParameters["deptName"].DefaultValue;
     divTotalInfo.Attributes.Add("dept", strDeptName);
     if (!IsPostBack)
     {
         txtDeptName.Value = strDeptName;
     }
 }
예제 #5
0
 //根据传入的参数处理事情
 public void ProcessRequest(HttpContext context)
 {
     //清空之前数据
     context.Response.Clear();
     //检测是否含有session
     if (context.Session.Count < 5)
     {
         //跳转
         context.Response.Redirect("/Account/Login", true);
         //停止加载后续内容
         context.Response.End();
         //直接返回
         return;
     }
     //执行基类的方法
     if (!base.CheckIsLogin(context))
     {
         return;
     }
     //用户传入的操作名称
     string oper = context.Request["oper"];
     //查询除自己所在部门外的部门名称
     if (oper != null)
     {
         switch (oper)
         {
             case "getall":
                 //实例化查询所有部门名称信息数据适配器类
                 //执行获取结果
                 using (var da = new t_deptTableAdapter())
                 using (var tab = da.GetData())
                 {
                     //将查询到的结果保存到泛型变量中
                     var l = new List<LiItem>();
                     //写入获取到的部门名称到泛型变量
                     AddListItem(tab, ref l);
                     //将内容写入浏览器
                     for (int i = 0; i < l.Count; i++)
                     {
                         //写入当前行
                         context.Response.Write(l[i].ToString());
                     }
                 }
                 //不继续执行后续代码
                 return;
             case "getallproduct":
                 //实例化查询所有部门名称信息数据适配器类
                 //执行获取结果
                 using (var da = new t_deptTableAdapter())
                 using (var tab = da.GetProductDeptName())
                 {
                     //将查询到的结果保存到泛型变量中
                     var l = new List<LiItem>();
                     //写入获取到的部门名称到泛型变量
                     AddListItem(tab, ref l);
                     //将内容写入浏览器
                     for (int i = 0; i < l.Count; i++)
                     {
                         //写入当前行
                         context.Response.Write(l[i].ToString());
                     }
                 }
                 //不继续执行后续代码
                 return;
             case "getallproductother":
                 //部门id参数
                 //当前用户所操作的部门id
                 object objId = context.Session["dept_id"];
                 byte deptId;
                 if (objId == null || !Byte.TryParse(objId.ToString(), out deptId))
                 {
                     return;
                 }
                 //实例化查询所有部门名称信息数据适配器类
                 //执行获取结果
                 using (var da = new t_deptTableAdapter())
                 using (var tab = da.GetProductDeptNameExceptSelf(deptId))
                 {
                     //将查询到的结果保存到泛型变量中
                     var l = new List<LiItem>();
                     //写入获取到的部门名称到泛型变量
                     AddListItem(tab, ref l);
                     //将内容写入浏览器
                     for (int i = 0; i < l.Count; i++)
                     {
                         //写入当前行
                         context.Response.Write(l[i].ToString());
                     }
                 }
                 //不继续执行后续代码
                 return;
             case "getotherproductandmrb":
                 //部门id参数
                 //当前用户所操作的部门id
                 objId = context.Session["dept_id"];
                 if (objId == null || !Byte.TryParse(objId.ToString(), out deptId))
                 {
                     return;
                 }
                 //实例化查询所有部门名称信息数据适配器类
                 //执行获取结果
                 using (var da = new t_deptTableAdapter())
                 using (var tab = da.GetProductDeptNameExceptSelfOrMRB(deptId))
                 {
                     //将查询到的结果保存到泛型变量中
                     var l = new List<LiItem>();
                     //写入获取到的部门名称到泛型变量
                     AddListItem(tab, ref l);
                     //将内容写入浏览器
                     for (int i = 0; i < l.Count; i++)
                     {
                         //写入当前行
                         context.Response.Write(l[i].ToString());
                     }
                 }
                 //不继续执行后续代码
                 return;
         }
     }
 }
예제 #6
0
 /// <summary>
 /// 检测是否存在指定的部门名称
 /// </summary>
 /// <param name="deptName">待检测的部门名称</param>
 /// <returns></returns>
 internal static bool IsExistDept(string deptName)
 {
     //部门名称转大写
     deptName = deptName.ToUpper();
     //实例化数据适配器并获取数据
     using (var da = new t_deptTableAdapter())
     using (var tab = da.GetDataByDeptName(deptName))
     {
         //检测是否获取到数据
         if (tab.Rows.Count > 0)
         {
             //存在该部门
             return true;
         }
         else
         {
             //不存在该部门
             return false;
         }
     }
 }
예제 #7
0
 protected new void Page_Load(object sender, EventArgs e)
 {
     //执行基类事件过程
     base.Page_Load(sender, e);
     //根据部门名称设置是否默认选中只显示本部门
     if (!IsPostBack)
     {
         //保存排序规则到session
         Session["dept_lot_card_mgr_order_by_content"] = "order by [dept_name],[lot_id],[id]";
         //检测是否含有session
         if (Session.Count < 5)
         {
             //跳转
             Response.Redirect("/Account/Login", true);
             //停止加载后续内容
             Response.End();
             //直接返回
             return;
         }
         //当前所选择的部门
         string deptName = Session["dept_name"].ToString().ToUpper();
         //当前角色id
         Int16 roleId = Convert.ToInt16(Session["role_id"]);
         //检测是否有权限
         if ((deptName != mustDeptName && deptName != "样板") || roleId < 0 || roleId > 2)
         {
             //设置部分按钮和超链接不可用
             lnkAdd.Attributes.Remove("href");
             lnkAdd.Attributes.Add("class", "yd-no-underline");
         }
         //检测当前部门是否是生产部门
         bool isShowAllDept = true;
         if (deptName == "成品仓" || deptName == "MRB")
         {
             isShowAllDept = false;
         }
         else
         {
             using (var da = new t_deptTableAdapter())
             using (var tab = da.GetDataByProductDeptName(deptName))
             {
                 if (tab.Rows.Count > 0)
                 {
                     isShowAllDept = false;
                 }
             }
         }
         //检测是否显示全部部门结存lot卡
         if (isShowAllDept)
         {
             //选择显示所有部门余数
             chkThisDeptOnly.Checked = false;
             chkThisDeptOnly.Visible = false;
         }
         //默认汇总条件
         divTotalInfo.Attributes.Add("wh", string.Empty);
     }
     //检查传入的参数
     string dept = Request["dept"];
     //是否指定只取指定部门的余数
     if (dept != null && dept.Length > 0)
     {
         //选择只显示当前部门余数
         chkThisDeptOnly.Checked = true;
         chkThisDeptOnly.Visible = false;
         //只显示当前部门
         litHeadName.Text = dept;
         odsDeptLotCardMgr.SelectParameters["deptName"].DefaultValue = dept;
     }
     else if (chkThisDeptOnly.Checked)
     {
         //选中只显示当前部门
         odsDeptLotCardMgr.SelectParameters["deptName"].DefaultValue = Session["dept_name"].ToString();
     }
     else
     {
         //显示全部部门
         odsDeptLotCardMgr.SelectParameters["deptName"].DefaultValue = "";
     }
     //默认汇总条件
     divTotalInfo.Attributes.Add("dept", odsDeptLotCardMgr.SelectParameters["deptName"].DefaultValue);
 }
 /// <summary>
 /// 检查用的输入是否合法.合法返回true,否则返回false
 /// </summary>
 /// <returns></returns>
 private bool CheckUserInput()
 {
     //部门序号文本框
     var txtDeptId = (TextBox)fvDeptMaterialBalanceAdd.FindControl("txtDeptId");
     //数据适配器
     using (var daProc = new t_deptTableAdapter())
     using (var conn = daProc.Connection)
     {
         //打开数据连接
         conn.Open();
         //取得部门相关数据行
         var tabProc = daProc.GetDataByDeptId(byte.Parse(txtDeptId.Text));
         //检测部门名称
         if (tabProc.Rows.Count <= 0)
         {
             throw new Exception(string.Format("没有部门序号为 {0} 的部门!", txtDeptId.Text));
         }
         //部门名称文本框
         var txtDeptName = (TextBox)fvDeptMaterialBalanceAdd.FindControl("txtDeptName");
         //序号和名称必须对应
         if (!txtDeptName.Text.ToUpper().Equals(((DataSetDept.t_deptRow)tabProc.Rows[0]).dept_name.ToUpper()))
         {
             throw new Exception(string.Format("部门序号与部门名称不匹配!!", txtDeptId.Text));
         }
         //当前数量文本框
         var txtQty = (TextBox)fvDeptMaterialBalanceAdd.FindControl("txtQty");
         //将用输入的内容转换为整数数字
         decimal dec;
         //检测数量文本框
         if (!decimal.TryParse(txtQty.Text, out dec) || dec <= 0)
         {
             throw new Exception("数量必须大于0!");
         }
         //当前单价文本框
         var txtPrice = (TextBox)fvDeptMaterialBalanceAdd.FindControl("txtPrice");
         //将用输入的内容转换为整数数字
         //检测单价文本框
         if (!decimal.TryParse(txtPrice.Text, out dec) || dec <= 0)
         {
             throw new Exception("单价必须大于0!");
         }
         //结存的物料必须在物料清单中存在且与供应商代码、供应商名称、物料代码、规格、单位、单价一一对应
         using (var daMaterial = new t_material_nameTableAdapter())
         {
             //设置数据库连接
             daMaterial.Connection = conn;
             //物料代码文本框
             var txtMaterialCode = (TextBox)fvDeptMaterialBalanceAdd.FindControl("txtMaterialCode");
             //获取该物料代码的物料属性
             using (var tabMaterial = daMaterial.GetDataByMaterialCode(txtMaterialCode.Text))
             {
                 //检测数据
                 if (tabMaterial.Rows.Count <= 0)
                 {
                     throw new Exception(string.Format("不存在物料代码为 {0} 的物料!", txtMaterialCode.Text));
                 }
                 //首行数据
                 var rowFirst = (DataSetMaterialName.t_material_nameRow)tabMaterial.Rows[0];
                 //检测物料其他属性
                 //供应商代码
                 var txtSupplierCode = (TextBox)fvDeptMaterialBalanceAdd.FindControl("txtSupplierCode");
                 if (!rowFirst.supplier_code.Equals(txtSupplierCode.Text))
                 {
                     throw new Exception(
                         string.Format(
                             "物料代码为 {0} 的物料的供应商代码应该为\n{1}\n而不是\n{2}!",
                             txtMaterialCode.Text,
                             rowFirst.supplier_code,
                             txtSupplierCode.Text
                         )
                     );
                 }
                 //供应商名称
                 var txtSupplierName = (TextBox)fvDeptMaterialBalanceAdd.FindControl("txtSupplierName");
                 if (!rowFirst.supplier_code.Equals(txtSupplierCode.Text))
                 {
                     throw new Exception(
                         string.Format(
                             "物料代码为 {0} 的物料的供应商名称应该为\n{1}\n而不是\n{2}!",
                             txtMaterialCode.Text,
                             rowFirst.supplier_name,
                             txtSupplierName.Text
                         )
                     );
                 }
                 //物料名称
                 var txtMaterialName = (TextBox)fvDeptMaterialBalanceAdd.FindControl("txtMaterialName");
                 if (!rowFirst.material_name.Equals(txtMaterialName.Text))
                 {
                     throw new Exception(
                         string.Format(
                             "物料代码为 {0} 的物料名称应该为 \n{1}\n而不是\n{2}!",
                             txtMaterialCode.Text,
                             rowFirst.material_name,
                             txtMaterialName.Text
                         )
                     );
                 }
                 //物料规格
                 var txtMaterialSize = (TextBox)fvDeptMaterialBalanceAdd.FindControl("txtMaterialSize");
                 if (!(rowFirst.Ismaterial_sizeNull() ? string.Empty : rowFirst.material_size).Equals(txtMaterialSize.Text))
                 {
                     throw new Exception(
                         string.Format(
                             "物料代码为 {0} 的物料规格应该为 \n{1}\n而不是\n{2}!",
                             txtMaterialCode.Text,
                             rowFirst.material_size,
                             txtMaterialSize.Text
                         )
                     );
                 }
                 //物料单位
                 var txtUnit = (TextBox)fvDeptMaterialBalanceAdd.FindControl("txtUnit");
                 if (!rowFirst.unit.Equals(txtUnit.Text))
                 {
                     throw new Exception(
                         string.Format(
                             "物料代码为 {0} 的物料单位应该为 \n{1}\n而不是\n{2}!",
                             txtMaterialCode.Text,
                             rowFirst.unit,
                             txtUnit.Text
                         )
                     );
                 }
                 //物料单价
                 if (rowFirst.price != decimal.Parse(txtPrice.Text))
                 {
                     throw new Exception(
                         string.Format(
                             "物料代码为 {0} 的物料单价应该为 \n{1}\n而不是\n{2}!",
                             txtMaterialCode.Text,
                             rowFirst.price,
                             txtPrice.Text
                         )
                     );
                 }
             }
         }
     }
     //可以提交
     return true;
 }