using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using CoreFS.CA06;
using System.ComponentModel;
using System.Drawing;
using System.Windows.Forms;
using Infragistics.Win.UltraWinGrid;
using System.Collections;
using ColumnDefine = Core.StlMes.Client.Sale.Common.TbColumnDefine.TbColumnDefine;
namespace Core.StlMes.Client.Sale.BLL.SaleBusinessMgt.BaseData
{
public class SlmBasePortInfoBll : SaleBusinessMgt.BllBase.BaseBll
{
public SlmBasePortInfoBll(OpeBase ob)
: base(ob)
{
}
///
/// 查询入口
///
///
///
private DataSet GetSlmBasePortInfo(string sqlCondition)
{
string sqlStr = string.Format(SqlCollection.BaseData._QUERYSLMBASESTATION, sqlCondition, base.DateTimeTocharFormat);
return base.ExecuteQuery(sqlStr);
}
///
/// 查询有效船运信息
///
///
///
public DataSet GetValidPortSlmBasePortInfo()
{
string sqlCondition = string.Format(" and cartype = '{0}' and validflag = '{1}'", "船运", "1");
return GetSlmBasePortInfo(sqlCondition);
}
///
/// 查询无效船运信息
///
///
///
public DataSet GetNotValidPortSlmBasePortInfo()
{
string sqlCondition = string.Format(" and cartype = '{0}' and validflag = '{1}'", "船运", "0");
return GetSlmBasePortInfo(sqlCondition);
}
///
/// 查询所有有效的信息(船运、汽运)
///
///
public DataSet GetValidSlmBasePortInfoAll()
{
string sqlCondition = string.Format(" and validflag = '{0}'", "1");
return GetSlmBasePortInfo(sqlCondition);
}
///
/// 查询所有无效的信息(船运、汽运)
///
///
public DataSet GetNotValidSlmBasePortInfoAll()
{
string sqlCondition = string.Format(" and validflag = '{0}'", "0");
return GetSlmBasePortInfo(sqlCondition);
}
///
/// 根据编号查询信息
///
///
///
public DataSet GetSlmBaseStationByStationNo(string stationNo)
{
string sqlCondition = string.Format(" and station_no = '{0}'", stationNo);
return GetSlmBasePortInfo(sqlCondition);
}
///
/// 查询所有信息(有效、无效)
///
///
public DataSet GetSlmBaseStationAll()
{
return GetSlmBasePortInfo("");
}
///
/// 新增港口信息
///
///
///
public void Insert(Hashtable hs,out string errMsg)
{
errMsg = "";
hs.Add(ColumnDefine.SLM_BASE_STATION.STATION_NO, GetSlmBaseStationCode());
CoreClientParam param = base.GetCoreClientParam(_ServerName, "portInsert", new object[] { hs });
CoreClientParam result = base.fr.ExecuteNonQuery(param, CoreInvokeType.Internal);
errMsg = base.GetReturnErrorInfo(result);
}
///
/// 修改港口信息
///
///
///
public void Update(Hashtable hs, out string errMsg)
{
errMsg = "";
CoreClientParam param = base.GetCoreClientParam(_ServerName, "portUpdate", new object[] { hs });
CoreClientParam result = base.fr.ExecuteNonQuery(param, CoreInvokeType.Internal);
errMsg = base.GetReturnErrorInfo(result);
}
///
/// 删除港口信息
///
///
public void Delete(string stationNo,string deleteName,out string errMsg)
{
errMsg = "";
CoreClientParam param = base.GetCoreClientParam(_ServerName, "portDelete", new object[] { stationNo,deleteName });
CoreClientParam result = base.fr.ExecuteNonQuery(param, CoreInvokeType.Internal);
errMsg = base.GetReturnErrorInfo(result);
}
///
/// 获取数据行数
///
///
private double GetCoutOfSlmBaseStation()
{
string sqlStr = "select count(1) from slm_base_station ";
DataSet ds = base.ExecuteQuery(sqlStr);
if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
return 0;
return Util.ConverObject.ConvertToDouble(ds.Tables[0].Rows[0][0]);
}
///
/// 自动生成客户编码
///
///
private string GetSlmBaseStationCode()
{
string customberno = "";
string sqlStr = @"select *
from (select lpad(l || '', 6, 0) customberno, a.station_no, rownum rn
from (select level - 1 l from dual connect by level < {0}) b
left join slm_base_station a on a.station_no =
lpad(b.l || '', 6, 0)
where a.station_no is null
order by b.l)
where rn = 1";
sqlStr = string.Format(sqlStr, GetCoutOfSlmBaseStation() + 100);
DataSet ds = base.ExecuteQuery(sqlStr);
try
{
if (ds.Tables[0].Rows.Count == 0)
customberno = "000001";
else
customberno = ds.Tables[0].Rows[0]["CUSTOMBERNO"].ToString();
}
catch
{
}
return customberno;
}
private string _ServerName = "core.stlmes.server.sale.service.basedata.SlmBaseStation";
}
}