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.
DS7/JobAutoCreateFee/JobGetMhD7Data.cs

604 lines
35 KiB
C#

6 months ago
using log4net;
using Newtonsoft.Json;
using Quartz;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using JobAutoCreateFee.Model;
namespace JobCreateFee
{
public class JobGetMhD7Data : IJob
{
private ILog log = LogManager.GetLogger(typeof(JobGetMhD7Data));
public void Execute(IJobExecutionContext context)
{
try
{
string connStr = context.JobDetail.JobDataMap.GetString("ConnectString");
string MhconnStr = context.JobDetail.JobDataMap.GetString("MhConnectString");
string D6querySql = context.JobDetail.JobDataMap.GetString("D6QuerySql");
log.Debug($"开始获取数据");
using (SqlConnection dbcon = new SqlConnection(connStr))
{
var strSql = new StringBuilder();
strSql.Append(D6querySql);
SqlCommand cmd = new SqlCommand();
cmd.CommandText = strSql.ToString();
cmd.CommandTimeout = 120000; //要加这一句
cmd.Connection = dbcon;
SqlDataAdapter adapter = new SqlDataAdapter(cmd);
DataTable table = new DataTable();
adapter.Fill(table);
var CtnCodeList = GetCtnCodeList(dbcon);
var ServiceCodeList = GetServiceCodeList(dbcon);
var FrtCodeList = GetFrtCodeList(dbcon);
if (table.Rows.Count > 0)
{
log.Debug($"数据{table.Rows.Count}条");
foreach (DataRow row in table.Rows)
{
var MBLNO = row["MBLNO"].ToString();
var BSNO = row["BSNO"].ToString();
var BSTYPE = row["BSTYPE"].ToString();
if (!string.IsNullOrEmpty(MBLNO))
{
log.Debug($"提单号:{MBLNO}");
while (BSNO.Length < 10) {
BSNO = " " + BSNO;
}
using (SqlConnection dbmh = new SqlConnection(MhconnStr))
{
var strSqlMh = new StringBuilder();
strSqlMh.Append("exec spGetBookingId '"+ MBLNO + "' ");
SqlCommand cmdMh = new SqlCommand();
cmdMh.CommandText = strSqlMh.ToString();
cmdMh.CommandTimeout = 120000; //要加这一句
cmdMh.Connection = dbmh;
SqlDataAdapter adapterMh = new SqlDataAdapter(cmdMh);
DataTable tableMh = new DataTable();
adapterMh.Fill(tableMh);
var BOOKID = "";
if (tableMh.Rows.Count > 0)
{
foreach (DataRow rowmh in tableMh.Rows)
{
BOOKID=rowmh["BookingId"].ToString();
}
}
if (!string.IsNullOrEmpty(BOOKID))
{
log.Debug($"BOOKID{BOOKID}");
var strSqlMhData = new StringBuilder();
strSqlMhData.Append("exec sp_Rpt_GetBooking " + BOOKID + " ");
SqlCommand cmdMhData = new SqlCommand();
cmdMhData.CommandText = strSqlMhData.ToString();
cmdMhData.CommandTimeout = 120000; //要加这一句
cmdMhData.Connection = dbmh;
SqlDataAdapter adapterMhData = new SqlDataAdapter(cmdMhData);
DataTable tableMhData = new DataTable();
adapterMhData.Fill(tableMhData);
if (tableMhData.Rows.Count > 0)
{
var i = 1;
var cargoid = "S";
Int32 pkgs = 0;
decimal kgs = 0;
decimal cbm = 0;
string ServiceContract = "";
string Comment = "";
string Vessel = "";
string Voyage = "";
string POL = "";
string POD = "";
string TermsCode = "";
string PaymentTypeDescription = "";
string ShipperDescription = "";
string MarksNumbers = "";
string HarmonizedCode = "";
string PackageType = "";
string SHIPPER = "";
string CONSIGNEE = "";
string NOTIFYPARTY = "";
string FinalDest = "";
string FinalDestCountry = "";
string ETD = "";
string MhLane = "";
string POLID = "";
string PODID = "";
string FinalDestID = "";
var CtnList = new List<Ctn>();
var CtnSumList = new List<Ctn>();
foreach (DataRow rowmhdata in tableMhData.Rows)
{
if (i == 1)
{
var isnotref = rowmhdata["IsNonOperReefer"].ToString();
if (isnotref == "0") cargoid = "R";
ServiceContract = rowmhdata["ServiceContract"].ToString();
Comment = rowmhdata["Comment"].ToString();
Vessel = rowmhdata["Vessel"].ToString();
Voyage = rowmhdata["Voyage"].ToString();
POL = rowmhdata["POL"].ToString();
POD = rowmhdata["POD"].ToString();
TermsCode = rowmhdata["TermsCode"].ToString();
var ServiceCode = ServiceCodeList.Find(x => x.EDICODE == TermsCode);
if (ServiceCode != null) TermsCode = ServiceCode.SERVICE;
FinalDest = rowmhdata["FinalDest"].ToString();
FinalDestCountry = rowmhdata["FinalDestCountry"].ToString();
if (FinalDestCountry == "United States" || FinalDestCountry == "Canada") {
var FinalDestCountryStateCode = rowmhdata["FinalDestCountryStateCode"].ToString();
FinalDest = FinalDest + "," + FinalDestCountryStateCode;
}
log.Debug($"提单号:{MBLNO} ,目的港:{FinalDest}");
6 months ago
if (string.IsNullOrEmpty(FinalDest)) FinalDest = POD;
6 months ago
PaymentTypeDescription = rowmhdata["PaymentTypeDescription"].ToString();
var FrtCode = FrtCodeList.Find(x => x.EDICODE == PaymentTypeDescription);
if (FrtCode != null) PaymentTypeDescription = FrtCode.FRT;
ShipperDescription = rowmhdata["ShipperDescription"].ToString();
MarksNumbers = rowmhdata["MarksNumbers"].ToString();
HarmonizedCode = rowmhdata["HarmonizedCode"].ToString();
PackageType = rowmhdata["PackageType"].ToString();
SHIPPER = rowmhdata["BLShipper"].ToString() + Environment.NewLine + rowmhdata["BLShipperAddress"].ToString();
if (!string.IsNullOrEmpty(rowmhdata["BLShipperContact"].ToString())) SHIPPER = SHIPPER + Environment.NewLine + rowmhdata["BLShipperContact"].ToString();
CONSIGNEE = rowmhdata["BLConsignee"].ToString() + Environment.NewLine + rowmhdata["BLConsigneeAddress"].ToString();
if (!string.IsNullOrEmpty(rowmhdata["BLConsigneeContact"].ToString())) CONSIGNEE = CONSIGNEE + Environment.NewLine + rowmhdata["BLConsigneeContact"].ToString();
NOTIFYPARTY = rowmhdata["BLNotify1"].ToString();
if (!string.IsNullOrEmpty(rowmhdata["BLNotify1Address"].ToString())) NOTIFYPARTY = NOTIFYPARTY + Environment.NewLine + rowmhdata["BLNotify1Address"].ToString();
if (!string.IsNullOrEmpty(rowmhdata["BLNotify1Contact"].ToString())) NOTIFYPARTY = NOTIFYPARTY + Environment.NewLine + rowmhdata["BLNotify1Contact"].ToString();
//ETD = GETETD(Vessel, Voyage, dbcon);
log.Debug($"提单号:{MBLNO} ,获取数据完成");
MhLane = GetMHLane(BOOKID,dbmh);
POLID = GetMHPortid(POL, dbmh);
PODID = GetMHPortid(POD, dbmh);
FinalDestID = GetMHPortid(FinalDest, dbmh);
log.Debug($"提单号:{MBLNO} ,获取港口代码");
}
pkgs = pkgs + Convert.ToInt32(rowmhdata["Quantity"]);
cbm = cbm + Convert.ToDecimal(rowmhdata["Measurement"]);
kgs = kgs + Convert.ToDecimal(rowmhdata["Weight"]);
5 months ago
var ContainerNumber = "";
if (!string.IsNullOrEmpty(rowmhdata["ContainerNumber"].ToString()))
ContainerNumber = rowmhdata["ContainerNumber"].ToString();
var SealNumber = "";
if (!string.IsNullOrEmpty(rowmhdata["ContainerNumber"].ToString()))
SealNumber = rowmhdata["SealNumber"].ToString();
6 months ago
var ContainerTypeCode = rowmhdata["ContainerTypeCode"].ToString();
var CtnsCount = rowmhdata["CtnsCount"].ToString();
var CtnCode = CtnCodeList.Find(x => x.EDICODE == ContainerTypeCode);
var Ctnid = rowmhdata["ContainerId"].ToString();
6 months ago
var ContainerSequence = rowmhdata["ContainerSequence"].ToString();
6 months ago
var Ctn = CtnList.Find(x => x.Ctnid == Ctnid);
if (Ctn == null)
{
var NewCtn = new Ctn();
NewCtn.Ctnid = Ctnid;
if (CtnCode != null)
{
NewCtn.CTNALL = CtnCode.CTNALL;
NewCtn.CTNSIZE = CtnCode.CTNSIZE;
NewCtn.CTNTYPE = CtnCode.CTNTYPE;
6 months ago
NewCtn.CTNCODE = ContainerSequence;
NewCtn.Cntrno = ContainerNumber;
NewCtn.Sealno= SealNumber;
6 months ago
}
else {
NewCtn.CTNALL = ContainerTypeCode;
6 months ago
NewCtn.CTNCODE = ContainerSequence;
NewCtn.Cntrno = ContainerNumber;
NewCtn.Sealno = SealNumber;
6 months ago
}
NewCtn.EdiCode = ContainerTypeCode;
NewCtn.CtnNum = 1;
NewCtn.Pkgs = Convert.ToInt32(rowmhdata["Quantity"]);
NewCtn.Cbm = Convert.ToDecimal(rowmhdata["Measurement"]);
NewCtn.Kgs = Convert.ToDecimal(rowmhdata["Weight"]);
6 months ago
NewCtn.Cntrno = ContainerNumber;
NewCtn.Sealno = SealNumber;
6 months ago
var TMPTEU = 1;
6 months ago
if (ContainerTypeCode.IndexOf("40") >= 0)
6 months ago
{
TMPTEU = 2;
}
NewCtn.Teu = TMPTEU;
var CtnSum = CtnSumList.Find(x => x.CTNALL == NewCtn.CTNALL);
if (CtnSum == null)
{
var NewCtnSum = new Ctn();
NewCtnSum.CTNALL = CtnCode.CTNALL;
NewCtnSum.CtnNum = 1;
NewCtnSum.Teu = NewCtn.Teu;
CtnSumList.Add(NewCtnSum);
}
else
{
CtnSum.CtnNum = CtnSum.CtnNum + 1;
CtnSum.Teu = CtnSum.Teu + NewCtn.Teu;
}
CtnList.Add(NewCtn);
}
else
{
Ctn.Pkgs = Ctn.Pkgs+ Convert.ToInt32(rowmhdata["Quantity"]);
Ctn.Cbm = Ctn.Cbm+Convert.ToDecimal(rowmhdata["Measurement"]);
Ctn.Kgs = Ctn.Kgs+ Convert.ToDecimal(rowmhdata["Weight"]);
}
i = i + 1;
6 months ago
}
6 months ago
log.Debug($"提单号:{MBLNO} ,集装箱处理");
if (BSTYPE == "分单")
{
dbcon.Open();
var cmdDeleteCtnSQL = "delete from op_ctn where BSNO='" + BSNO + "' ";
SqlCommand cmdDeleteCtn = new SqlCommand(cmdDeleteCtnSQL, dbcon);
cmdDeleteCtn.ExecuteNonQuery();
dbcon.Close();
}
else
{
dbcon.Open();
var cmdDeleteCtnSQL = "delete from op_ctn where BSNO='" + BSNO + "' ";
SqlCommand cmdDeleteCtn = new SqlCommand(cmdDeleteCtnSQL, dbcon);
cmdDeleteCtn.ExecuteNonQuery();
dbcon.Close();
}
log.Debug($"提单号:{MBLNO} ,清空集装箱");
var ctnstr = "";
var ctnUpdatestr = "";
int TEU = 0;
int CTN20 = 0;
int CTN40= 0;
int CTN40HC= 0;
int CTN45 = 0;
foreach (var items in CtnSumList)
{
if (!string.IsNullOrEmpty(ctnstr))
ctnstr = ctnstr + " " + items.CTNALL + "*" + items.CtnNum.ToString();
else ctnstr = items.CTNALL + "*" + items.CtnNum.ToString();
TEU = TEU + items.Teu;
if (items.CTNALL == "20GP")
{
ctnUpdatestr = ctnUpdatestr + ",CNTR1=" + items.CtnNum.ToString();
CTN20 = CTN20 + items.CtnNum;
}
if (items.CTNALL == "20RF")
{
ctnUpdatestr = ctnUpdatestr + ",CNTR5=" + items.CtnNum.ToString();
CTN20 = CTN20 + items.CtnNum;
}
if (items.CTNALL == "40GP")
{
ctnUpdatestr = ctnUpdatestr + ",CNTR2=" + items.CtnNum.ToString();
CTN40 = CTN40 + items.CtnNum;
}
if (items.CTNALL == "40RF") {
ctnUpdatestr = ctnUpdatestr + ",CNTR6=" + items.CtnNum.ToString();
CTN40 = CTN40 + items.CtnNum;
}
if (items.CTNALL == "40RH")
{
ctnUpdatestr = ctnUpdatestr + ",CNTR7=" + items.CtnNum.ToString();
CTN40HC = CTN40HC + items.CtnNum;
}
if (items.CTNALL == "45HC")
{
ctnUpdatestr = ctnUpdatestr + ",CNTR9=" + items.CtnNum.ToString();
CTN45 = CTN45 + items.CtnNum;
}
if (items.CTNALL == "40HC")
{
ctnUpdatestr = ctnUpdatestr + ",CNTR4=" + items.CtnNum.ToString();
CTN40HC = CTN40HC + items.CtnNum;
}
if (items.CTNALL == "45HQ")
{
ctnUpdatestr = ctnUpdatestr + ",CNTR9=" + items.CtnNum.ToString();
CTN45 = CTN45 + items.CtnNum;
}
}
ctnUpdatestr = ctnUpdatestr + ",TEU=" + TEU.ToString();
foreach (var items in CtnList) {
if (BSTYPE == "分单")
{
dbcon.Open();
var cmdInsertCtnSQL = "insert into op_ctn (CTN_ID,BSNO,CTNCODE,SIZE,CTN,CTNNUM,TEU,CTNALL,CNTRNO,SEALNO,PKGS,KINDPKGS,KGS,CBM) values ("
+ "'"+ Guid.NewGuid().ToString() + "','" + BSNO + "','" + items.CTNCODE + "','" + items.CTNSIZE + "','" + items.CTNTYPE + "',1," + items.Teu.ToString() + ",'" + items.CTNALL.Replace("'", "''") + "','" + items.Cntrno + "','" + items.Sealno + "','" + Convert.ToString(items.Pkgs) + "','" + PackageType + "'," + Convert.ToString(items.Kgs) + "," + Convert.ToString(items.Cbm) + " )";
SqlCommand cmdInsertCtn = new SqlCommand(cmdInsertCtnSQL, dbcon);
cmdInsertCtn.ExecuteNonQuery();
dbcon.Close();
}
else
{
dbcon.Open();
var cmdInsertCtnSQL = "insert into op_ctn (CTN_ID,BSNO,CTNCODE,SIZE,CTN,CTNNUM,TEU,CTNALL,CNTRNO,SEALNO,PKGS,KINDPKGS,KGS,CBM) values ("
+ "'" + Guid.NewGuid().ToString() + "','" + BSNO + "','" + items.CTNCODE + "','" + items.CTNSIZE + "','" + items.CTNTYPE + "',1," + items.Teu.ToString() + ",'" + items.CTNALL.Replace("'", "''") + "','" + items.Cntrno + "','" + items.Sealno + "','" + Convert.ToString(items.Pkgs) + "','" + PackageType + "'," + Convert.ToString(items.Kgs) + "," + Convert.ToString(items.Cbm) + " )";
SqlCommand cmdInsertCtn = new SqlCommand(cmdInsertCtnSQL, dbcon);
cmdInsertCtn.ExecuteNonQuery();
dbcon.Close();
}
}
log.Debug($"提单号:{MBLNO} ,插入集装箱");
var strSqlUpdateD6 = new StringBuilder();
if (BSTYPE == "分单")
{
strSqlUpdateD6.Append("update op_seae_billmanage set REMARK=@Comment,VESSEL=@Vessel,VOYNO=@Voyage,PORTLOAD=@POL");
strSqlUpdateD6.Append(",PORTDISCHARGE=@POD,DESTINATION=@DEST,SERVICE=@TermsCode,BLFRT=@PaymentTypeDescription,DESCRIPTION=@ShipperDescription,MARKS=@MarksNumbers");
strSqlUpdateD6.Append(",PKGS=@PKGS,KGS=@KGS,CBM=@CBM,KINDPKGS=@PackageType,NOPKGS=@PKGSKIND,GROSSWEIGHT=@GOODKGS,MEASUREMENT=@GOODCBM,CNTRTOTAL=@CTNSTR");
strSqlUpdateD6.Append(",PORTLOADID=@POLID,PORTDISCHARGEID=@PODID,DESTINATIONID=@FinalDestID");
6 months ago
strSqlUpdateD6.Append(",SHIPPER=@SHIPPER,CONSIGNEE=@CONSIGNEE,NOTIFYPARTY=@NOTIFYPARTY " + ctnUpdatestr + " where AS_ID='" + BSNO + "'");
6 months ago
}
else
{
strSqlUpdateD6.Append("update op_seae set SERVICECONTRACTNO=@ServiceContract,REMARK=@Comment,VESSEL=@Vessel,VOYNO=@Voyage,PORTLOAD=@POL");
strSqlUpdateD6.Append(",PORTDISCHARGE=@POD,DESTINATION=@DEST,SERVICE=@TermsCode,BLFRT=@PaymentTypeDescription,DESCRIPTION=@ShipperDescription,MARKS=@MarksNumbers");
strSqlUpdateD6.Append(",PKGS=@PKGS,KGS=@KGS,CBM=@CBM,HSCODE=@HarmonizedCode,KINDPKGS=@PackageType,NOPKGS=@PKGSKIND,GROSSWEIGHT=@GOODKGS,MEASUREMENT=@GOODCBM,CNTRTOTAL=@CTNSTR");
strSqlUpdateD6.Append(",PORTLOADID=@POLID,PORTDISCHARGEID=@PODID,DESTINATIONID=@FinalDestID");
strSqlUpdateD6.Append(",SHIPPER=@SHIPPER,CONSIGNEE=@CONSIGNEE,NOTIFYPARTY=@NOTIFYPARTY,LANE=@MHLANE "+ ctnUpdatestr + " where BSNO='" + BSNO + "'");
}
dbcon.Open();
log.Debug($"更新业务信息{strSqlUpdateD6.ToString()}");
SqlCommand cmdUpdateD6 = new SqlCommand(strSqlUpdateD6.ToString(), dbcon);
cmdUpdateD6.Parameters.AddWithValue("@ServiceContract", ServiceContract);
cmdUpdateD6.Parameters.AddWithValue("@Comment", Comment);
cmdUpdateD6.Parameters.AddWithValue("@Vessel", Vessel);
cmdUpdateD6.Parameters.AddWithValue("@Voyage", Voyage);
cmdUpdateD6.Parameters.AddWithValue("@POL", POL);
cmdUpdateD6.Parameters.AddWithValue("@POD", POD);
cmdUpdateD6.Parameters.AddWithValue("@DEST", FinalDest);
cmdUpdateD6.Parameters.AddWithValue("@TermsCode", TermsCode);
cmdUpdateD6.Parameters.AddWithValue("@PaymentTypeDescription", PaymentTypeDescription);
cmdUpdateD6.Parameters.AddWithValue("@ShipperDescription", ShipperDescription);
cmdUpdateD6.Parameters.AddWithValue("@MarksNumbers", MarksNumbers);
cmdUpdateD6.Parameters.AddWithValue("@PKGS", pkgs);
cmdUpdateD6.Parameters.AddWithValue("@KGS", kgs);
cmdUpdateD6.Parameters.AddWithValue("@CBM", cbm);
cmdUpdateD6.Parameters.AddWithValue("@HarmonizedCode", HarmonizedCode);
cmdUpdateD6.Parameters.AddWithValue("@PackageType", PackageType);
cmdUpdateD6.Parameters.AddWithValue("@PKGSKIND", pkgs.ToString() + PackageType);
cmdUpdateD6.Parameters.AddWithValue("@GOODKGS", kgs.ToString() + "KGS");
cmdUpdateD6.Parameters.AddWithValue("@GOODCBM", cbm.ToString() + "CBM");
cmdUpdateD6.Parameters.AddWithValue("@CTNSTR", ctnstr);
cmdUpdateD6.Parameters.AddWithValue("@POLID", POLID);
cmdUpdateD6.Parameters.AddWithValue("@PODID", PODID);
cmdUpdateD6.Parameters.AddWithValue("@FinalDestID", FinalDestID);
cmdUpdateD6.Parameters.AddWithValue("@SHIPPER", SHIPPER);
cmdUpdateD6.Parameters.AddWithValue("@CONSIGNEE", CONSIGNEE);
cmdUpdateD6.Parameters.AddWithValue("@NOTIFYPARTY", NOTIFYPARTY);
cmdUpdateD6.Parameters.AddWithValue("@ETD", ETD);
cmdUpdateD6.Parameters.AddWithValue("@MHLANE", MhLane);
cmdUpdateD6.ExecuteNonQuery();
dbcon.Close();
}
else {
log.Debug($"提单号:{MBLNO}未获取MH数据");
}
}
else {
log.Debug($"提单号:{MBLNO}未获取MH BOOKINGID");
}
}
}
}
}
}
}
catch (Exception ex)
{
log.Error(ex.Message);
log.Error(ex.StackTrace);
}
}
public static List<CtnTypeCode> GetCtnCodeList(SqlConnection dbcon)
{
var strSql = new StringBuilder();
strSql.Append("Select CTNID,CTNTYPE,CTNSIZE,CTN,(SELECT TOP 1 EDICODE FROM code_ctn_edi WHERE EDINAME='MHEDI' AND CTN=CODE_CTN.CTN) MHEDI ");
strSql.Append(" from code_ctn ");
var evList = new List<CtnTypeCode>();
SqlDataAdapter adapter = new SqlDataAdapter(strSql.ToString(), dbcon);
DataTable table = new DataTable();
adapter.Fill(table);
if (table.Rows.Count > 0)
{
foreach (DataRow row in table.Rows)
{
var evData = new CtnTypeCode();
evData.CTNCODE = Convert.ToString(row["CTNID"]);
evData.CTNTYPE = Convert.ToString(row["CTNTYPE"]);
evData.CTNSIZE= Convert.ToString(row["CTNSIZE"]);
evData.CTNALL= Convert.ToString(row["CTN"]);
evData.EDICODE = Convert.ToString(row["MHEDI"]);
evList.Add(evData);
}
}
return evList;
}
//static public string GETETD(string VESSEL, string VOYNO, SqlConnection dbcon)
//{
// var result = "";
// var strSql = new StringBuilder();
// strSql.Append("SELECT top 1 开船日期 from t_code_voyage v left join t_code_vessel l on (l.VS_ID=v.VS_ID) where l.英文船名='"+ VESSEL + "' and v.航次='"+VOYNO+"' ");
// SqlDataAdapter adapter = new SqlDataAdapter(strSql.ToString(), dbcon);
// DataTable table = new DataTable();
// adapter.Fill(table);
// if (table.Rows.Count > 0)
// {
// foreach (DataRow row in table.Rows)
// {
// result = row["开船日期"].ToString();
// }
// }
// return result;
//}
public static List<ServiceCode> GetServiceCodeList(SqlConnection dbcon)
{
var strSql = new StringBuilder();
strSql.Append("Select SERVICE,EDICODE ");
strSql.Append(" from code_service_edi where EDINAME='MHEDI'");
var evList = new List<ServiceCode>();
SqlDataAdapter adapter = new SqlDataAdapter(strSql.ToString(), dbcon);
DataTable table = new DataTable();
adapter.Fill(table);
if (table.Rows.Count > 0)
{
foreach (DataRow row in table.Rows)
{
var evData = new ServiceCode();
evData.SERVICE = Convert.ToString(row["SERVICE"]);
evData.EDICODE = Convert.ToString(row["EDICODE"]);
evList.Add(evData);
}
}
return evList;
}
public static List<FrtCode> GetFrtCodeList(SqlConnection dbcon)
{
var strSql = new StringBuilder();
strSql.Append("Select FRT,MHEDI EDICODE ");
strSql.Append(" from code_frt ");
var evList = new List<FrtCode>();
SqlDataAdapter adapter = new SqlDataAdapter(strSql.ToString(), dbcon);
DataTable table = new DataTable();
adapter.Fill(table);
if (table.Rows.Count > 0)
{
foreach (DataRow row in table.Rows)
{
var evData = new FrtCode();
evData.FRT = Convert.ToString(row["FRT"]);
evData.EDICODE = Convert.ToString(row["EDICODE"]);
evList.Add(evData);
}
}
return evList;
}
static public string GetMHLane(string Bookid,SqlConnection dbcon)
{
var result = "";
var strSql = new StringBuilder();
strSql.Append("select Service from uService where ServiceId in (select ServiceId from uBooking where BookingId ="+ Bookid + ")");
SqlDataAdapter adapter = new SqlDataAdapter(strSql.ToString(), dbcon);
DataTable table = new DataTable();
adapter.Fill(table);
if (table.Rows.Count > 0)
{
foreach (DataRow row in table.Rows)
{
result = row["Service"].ToString();
}
}
return result;
}
static public string GetMHPortid(string port, SqlConnection dbcon)
{
var result = "";
if (string.IsNullOrEmpty(port)) return result;
var strSql = new StringBuilder();
strSql.Append("select top 1 LocationCode from uLocation where Location ='" + port + "'");
SqlDataAdapter adapter = new SqlDataAdapter(strSql.ToString(), dbcon);
DataTable table = new DataTable();
adapter.Fill(table);
if (table.Rows.Count > 0)
{
foreach (DataRow row in table.Rows)
{
result = row["LocationCode"].ToString();
}
}
return result;
}
}
}