using System;
|
using System.Collections.Generic;
|
using System.Text;
|
using System.Data;
|
|
namespace DAL
|
{
|
//接口类 物料
|
public class ClsIF_Material_View : DBUtility.ClsGy_Base_View
|
{
|
//
|
public Model.ClsGy_Material_Model omodel = new Model.ClsGy_Material_Model();
|
public List<Model.ClsGy_Material_Model> omodelList = new List<Model.ClsGy_Material_Model>();
|
SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
|
public ClsIF_Material_View()
|
{
|
base.MvarReportTitle = "物料设置";
|
base.MvarItemKey = "h_v_IF_Material";
|
base.SQLName = "Select HItemID,Hnumber 物料代码,Hname 物料名称,HModel 规格型号,HPicNo 图号,HUnitNumber 单位代码,Hunitname 计量单位,HUnitID from h_v_IF_Material where HStopflag=0 Order by HItemID ";
|
base.SQLList = "Select top 50 * from " + MvarItemKey + " ";
|
//下拉SQL
|
base.SQLNameForDown = " Select top 30 HItemID,HNumber 物料代码,HName 物料名称,HModel 规格型号,HUnitNumber 单位代码,HUnitName 计量单位 from h_v_IF_Material "; //,HSubjoin 图号1,HSubjoin2 图号2,HColor 颜色
|
base.SQLOrderForDown = " Order by HNumber ";
|
base.SQLWhereForDown = " where HStopflag=0 and HEndFlag<>0 ";
|
//HlpInfoForBig
|
base.sBillColName = "物料名称";
|
base.sBillColNumber = "物料代码";
|
base.sBillShowItem = " * ";
|
base.sBillView = "h_v_IF_MaterialList";
|
base.sBillOrder = " order by 物料代码 desc ";
|
}
|
//
|
public void Dispose()
|
{
|
GC.SuppressFinalize(this);
|
}
|
//
|
|
//返回项目信息
|
public override bool GetInfoByID(Int64 sItemID)
|
{
|
DataSet DS ;
|
try
|
{
|
DS = oCn.RunProcReturn("Select * from " + MvarItemKey + " Where HItemID='" + sItemID + "'", MvarItemKey, ref DBUtility.ClsPub.sExeReturnInfo);
|
if (DS.Tables[0].Rows.Count == 0)
|
return false;
|
else
|
{
|
return GetInfo(DS);
|
}
|
}
|
catch (Exception e)
|
{
|
throw (e);
|
}
|
}
|
|
//根据代码返回项目信息
|
public override bool GetInfoByNumber(string sNumber)
|
{
|
DataSet DS;
|
try
|
{
|
DS = oCn.RunProcReturn("Select * from " + MvarItemKey + " Where HNumber='" + sNumber + "' and HUSEORGID="+ DBUtility.ClsPub.HOrgID, MvarItemKey, ref DBUtility.ClsPub.sExeReturnInfo);
|
if (DS.Tables[0].Rows.Count == 0)
|
return false;
|
else
|
{
|
return GetInfo(DS);
|
}
|
}
|
catch (Exception e)
|
{
|
throw (e);
|
}
|
}
|
|
//根据代码返回项目信息
|
public bool GetInfoByShortNum(string sShortNum)
|
{
|
DataSet DS;
|
try
|
{
|
DS = oCn.RunProcReturn("Select * from h_v_IF_Material Where HShortNumber='" + sShortNum + "'", MvarItemKey, ref DBUtility.ClsPub.sExeReturnInfo);
|
if (DS.Tables[0].Rows.Count == 0)
|
return false;
|
else
|
{
|
return GetInfo(DS);
|
}
|
}
|
catch (Exception e)
|
{
|
throw (e);
|
}
|
}
|
|
//根据代码返回项目信息
|
public bool GetInfoByPicNo(string sPicNo)
|
{
|
DataSet DS;
|
try
|
{
|
DS = oCn.RunProcReturn("Select * from " + MvarItemKey + " Where HPicNo='" + sPicNo + "'", MvarItemKey, ref DBUtility.ClsPub.sExeReturnInfo);
|
if (DS.Tables[0].Rows.Count == 0)
|
return false;
|
else
|
{
|
return GetInfo(DS);
|
}
|
}
|
catch (Exception e)
|
{
|
throw (e);
|
}
|
}
|
|
//得到该物料库存
|
public bool GetStockQty(Int64 HMaterID, ref string s)
|
{
|
try
|
{
|
DataSet DS;
|
DS = oCn.RunProcReturn("exec h_p_IF_GetMaterStockQty " + HMaterID.ToString() + ",0", "h_p_IF_GetMaterStockQty");
|
if (DS.Tables[0].Rows.Count == 0)
|
return false;
|
else
|
{
|
s = DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0]["sSQL"]);
|
return true;
|
}
|
}
|
catch (Exception e)
|
{
|
return false;
|
}
|
}
|
|
//返回项目信息
|
public override bool GetInfo(DataSet DS)
|
{
|
try
|
{
|
omodel = new Model.ClsGy_Material_Model();
|
omodel.HItemID = Convert.ToInt64(DS.Tables[0].Rows[0]["HItemID"]);
|
omodel.HNumber = DS.Tables[0].Rows[0]["HNumber"].ToString().Trim();
|
omodel.HName = DS.Tables[0].Rows[0]["HName"].ToString().Trim();
|
omodel.HModel = DS.Tables[0].Rows[0]["HModel"].ToString().Trim();
|
omodel.HUnitID = DBUtility.ClsPub.isLong(DS.Tables[0].Rows[0]["HUnitID"]);
|
omodel.HUnitNumber = DS.Tables[0].Rows[0]["HUnitNumber"].ToString().Trim();
|
omodel.HUnitName = DS.Tables[0].Rows[0]["HUnitName"].ToString().Trim();
|
omodel.HShortNumber = DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0]["HShortNumber"]);
|
omodel.HParentID = DBUtility.ClsPub.isLong(DS.Tables[0].Rows[0]["HParentID"]);
|
omodel.HLevel = DBUtility.ClsPub.isLong(DS.Tables[0].Rows[0]["HLevel"]);
|
omodel.HEndFlag = DBUtility.ClsPub.isBool(DS.Tables[0].Rows[0]["HEndFlag"]);
|
omodel.HStopflag = DBUtility.ClsPub.isBool(DS.Tables[0].Rows[0]["HStopflag"]);
|
omodel.HBarCode = DS.Tables[0].Rows[0]["HBarCode"].ToString().Trim();
|
omodel.HPicNo = DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0]["HPicNo"]);
|
omodel.HRemark = DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0]["HRemark"]);
|
omodel.HQtyMin = DBUtility.ClsPub.isLong(DS.Tables[0].Rows[0]["HMinPickQty"]);
|
return true;
|
|
}
|
catch (Exception e)
|
{
|
throw (e);
|
}
|
}
|
|
//帮助
|
public override bool RefreshView()
|
{
|
try
|
{//
|
Pub_Control.frmHlpInfo ofrm = new Pub_Control.frmHlpInfo();
|
//
|
string sSQL = SQLName;
|
//编辑ofrm
|
ofrm.sTitle = MvarReportTitle;
|
ofrm.sBill = "h_v_IF_Material";
|
ofrm.txtFindInfo.Text = WherePart;
|
//编辑
|
ofrm.grdShow.RowTemplate.Height = 20;
|
ofrm.ShowDialog();
|
//得到对应列
|
//
|
if (ofrm.OKTag == Pub_Class.ClsPub.Enum_OKTag.OKTag_OK)
|
{
|
if (ofrm.grdShow.CurrentRow == null)
|
{
|
return false;
|
}
|
this.omodel.HItemID = Pub_Class.ClsPub.isLong(ofrm.grdShow.Rows[ofrm.grdShow.CurrentRow.Index].Cells[0].Value);
|
this.omodel.HNumber = DBUtility.ClsPub.isStrNull(ofrm.grdShow.Rows[ofrm.grdShow.CurrentRow.Index].Cells[1].Value);
|
this.omodel.HName = DBUtility.ClsPub.isStrNull(ofrm.grdShow.Rows[ofrm.grdShow.CurrentRow.Index].Cells[2].Value);
|
this.omodel.HModel = DBUtility.ClsPub.isStrNull(ofrm.grdShow.Rows[ofrm.grdShow.CurrentRow.Index].Cells[3].Value);
|
this.omodel.HUnitID = DBUtility.ClsPub.isLong(ofrm.grdShow.Rows[ofrm.grdShow.CurrentRow.Index].Cells[6].Value.ToString());
|
this.omodel.HUnitNumber = DBUtility.ClsPub.isStrNull(ofrm.grdShow.Rows[ofrm.grdShow.CurrentRow.Index].Cells[4].Value);
|
this.omodel.HUnitName = DBUtility.ClsPub.isStrNull(ofrm.grdShow.Rows[ofrm.grdShow.CurrentRow.Index].Cells[5].Value);
|
}
|
else
|
{
|
return false;
|
}
|
//
|
ofrm.Dispose();
|
ofrm = null;
|
//
|
return true;
|
}
|
catch (Exception e)
|
{
|
throw (e);
|
}
|
}
|
|
|
//审核代码合理性
|
public bool AllowNumber(string sCode)
|
{
|
sCode = sCode.Trim();
|
if (sCode == "")
|
{
|
return true;
|
}
|
////第末位不能为【.】
|
//if (sCode.Substring(sCode.Length - 1, 1) == ".")
|
//{
|
// return false;
|
//}
|
////第一位不能为【.】
|
//if (sCode.Substring(0, 1) == ".")
|
//{
|
// return false;
|
//}
|
//不能包含【.】
|
if (sCode.Contains("."))
|
{
|
return false;
|
}
|
return true;
|
}
|
|
//根据代码返回项目信息 根据图号
|
public bool GetInfoByChartNum(string sShortNum)
|
{
|
DataSet DS;
|
try
|
{
|
//如果存在【.】则替换为【。】
|
sShortNum = sShortNum.Replace(Convert.ToChar("."), Convert.ToChar("。"));
|
DS = oCn.RunProcReturn("Select HItemID,HNumber,Hname,HModel,HUnitID,HUnitNumber,HUnitName,HErpclsID,HParentID,HPicNo,HShortNumber,HUnitGroupID,HRemark from h_v_IF_Material Where HStopflag=0 and HPicNo='" + sShortNum + "'", MvarItemKey, ref DBUtility.ClsPub.sExeReturnInfo);
|
if (DS.Tables[0].Rows.Count == 0 || DS.Tables[0].Rows.Count >=2) //必须是唯一的图号
|
return false;
|
else
|
{
|
return GetInfo(DS);
|
|
//omodel.HItemID = Convert.ToInt64(DS.Tables[0].Rows[0]["HItemID"]);
|
//omodel.HNumber = DS.Tables[0].Rows[0]["HNumber"].ToString().Trim();
|
//omodel.HName = DS.Tables[0].Rows[0]["Hname"].ToString().Trim();
|
//omodel.HModel = DS.Tables[0].Rows[0]["HModel"].ToString().Trim();
|
//omodel.HUnitID = DBUtility.ClsPub.isLong(DS.Tables[0].Rows[0]["HUnitID"]);
|
//omodel.HUnitNumber = DS.Tables[0].Rows[0]["HUnitNumber"].ToString().Trim();
|
//omodel.HUnitName = DS.Tables[0].Rows[0]["HUnitName"].ToString().Trim();
|
//omodel.HErpclsID = DBUtility.ClsPub.isLong(DS.Tables[0].Rows[0]["HErpclsID"]);
|
//omodel.HParentID = DBUtility.ClsPub.isLong(DS.Tables[0].Rows[0]["HParentID"]);
|
//omodel.HPicNo = DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0]["HPicNo"]);
|
//omodel.HShortNumber = DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0]["HShortNumber"]);
|
//omodel.HUnitGroupID = DBUtility.ClsPub.isLong(DS.Tables[0].Rows[0]["HUnitGroupID"]);
|
//omodel.HRemark = DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0]["HRemark"]);
|
}
|
}
|
catch (Exception e)
|
{
|
throw (e);
|
}
|
}
|
|
}
|
}
|