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/DSWeb/Areas/MvcShipping/DAL/DJYORDER/DJYORDERDAL.cs

449 lines
15 KiB
C#

using System;
using System.Data;
using System.Collections.Generic;
using System.Text;
using DSWeb.MvcShipping.Models.MsOp_InternalTrade;
using Microsoft.Practices.EnterpriseLibrary.Data;
using DSWeb.Areas.CommMng.Models;
using HcUtility.Comm;
using System.Web.Mvc;//ContentResult
using DSWeb.TruckMng.Helper.Repository;//ModelObjectRepository
using DSWeb.MvcShipping.Helper;
using DSWeb.Areas.CommMng.DAL;//使用获取权限子句
using DSWeb.Areas.SysMng.DAL.SysTask;
using DSWeb.Common.DB;
using System.Linq;
namespace DSWeb.Areas.MvcShipping.DAL.DJYORDER_CONTRACTNO
{
public class DJYORDER_CONTRACTNODAL
{
#region 大简云订舱 船公司合约 头表 查询
const string HeadSql = " SELECT * FROM DJYORDER_CONTRACTNO where 1=1 ";
public static List<DJYORDER_CONTRACTNO_md> GetDataList(int start, int limit, string sort, string condition, VW_user_md userinfo, ref int count)
{
//range
var rangestr = GetRangDAStr(userinfo);
//condition
var strCondition = condition;
var sortstring = DatasetSort.Getsortstring(sort); ;
var param = new BasicDataRefDAL.PagedQuaryParam();
param.strSql = HeadSql;
param.strCondition = strCondition;
param.rangestr = rangestr;
param.sortstring = sortstring;
param.defaultsortstr = "CREATETIME desc";
param.start = start;
param.limit = limit;
var strSql = BasicDataRefDAL.PagedQuaryStr(param);
count = BasicDataRefDAL.PagedCount(param);
return SetData(strSql);
}
public static string GetDataListStr(string condition, VW_user_md userinfo)
{
//range
var rangestr = GetRangDAStr(userinfo);
//condition
var strCondition = "";
var sortstring = "";
var param = new BasicDataRefDAL.PagedQuaryParam();
param.strSql = HeadSql;
param.strCondition = strCondition;
param.rangestr = rangestr;
param.sortstring = sortstring;
param.defaultsortstr = "ETA desc";
param.start = 0;
param.limit = 9999;
var strSql = BasicDataRefDAL.PagedQuaryStr(param);
return strSql.ToString();
}
private static List<DJYORDER_CONTRACTNO_md> SetData(System.Text.StringBuilder strSql)
{
var bodyList = new List<DJYORDER_CONTRACTNO_md>();
Database db = DatabaseFactory.CreateDatabase();
using (IDataReader reader = db.ExecuteReader(CommandType.Text, strSql.ToString()))
{
while (reader.Read())
{
DJYORDER_CONTRACTNO_md data = new DJYORDER_CONTRACTNO_md();
#region Set DB data to Object
data.GID = Convert.ToString(reader["GID"]);
data.CORPID = Convert.ToString(reader["CORPID"]);
data.CARRIER = Convert.ToString(reader["CARRIER"]);
data.CONTRACTNO = Convert.ToString(reader["CONTRACTNO"]);
data.ShipperName = Convert.ToString(reader["ShipperName"]);
data.ShipperAddress = Convert.ToString(reader["ShipperAddress"]);
data.ShipperCountry = Convert.ToString(reader["ShipperCountry"]);
data.ShipperProvince = Convert.ToString(reader["ShipperProvince"]);
data.ShipperCity = Convert.ToString(reader["ShipperCity"]);
data.ShipperCounty = Convert.ToString(reader["ShipperCounty"]);
data.ShipperPostCode = Convert.ToString(reader["ShipperPostCode"]);
data.ShipperFirstName = Convert.ToString(reader["ShipperFirstName"]);
data.ShipperLastName = Convert.ToString(reader["ShipperLastName"]);
data.ShipperPhoneCountryCode = Convert.ToString(reader["ShipperPhoneCountryCode"]);
data.ShipperPhoneCode = Convert.ToString(reader["ShipperPhoneCode"]);
data.ShipperPhone = Convert.ToString(reader["ShipperPhone"]);
data.REMARK = Convert.ToString(reader["REMARK"]);
#endregion
bodyList.Add(data);
}
reader.Close();
}
return bodyList;
}
public static string GetRangDAStr(VW_user_md userinfo)
{
string str = "";
var strSql = new StringBuilder();
strSql.Append("SELECT ");
strSql.Append(" VISIBLERANGE,OPERATERANGE,AUTHORITYID,VSSQL ");
strSql.Append(" from VW_User_Authority ");
strSql.Append(" where [NAME]='modDJYORDER_CONTRACTNO' and USERID='" + userinfo.USERID + "' and ISDELETE=0");
string visiblerange = "4";
string operaterange = "4";
string AUTHORITYID = "";
string VSSQL = "";
Database db = DatabaseFactory.CreateDatabase();
using (IDataReader reader = db.ExecuteReader(CommandType.Text, strSql.ToString()))
{
while (reader.Read())
{
visiblerange = Convert.ToString(reader["VISIBLERANGE"]);
operaterange = Convert.ToString(reader["OPERATERANGE"]);
AUTHORITYID = Convert.ToString(reader["AUTHORITYID"]);
VSSQL = Convert.ToString(reader["VSSQL"]);
break;
}
reader.Close();
}
if (visiblerange == "3" || visiblerange == "2"|| visiblerange == "5"|| visiblerange == "6") {
visiblerange = "1";
}
if (visiblerange == "4")
{
str = "1=2";
}
//else if (visiblerange == "3")
//{
// str = " (INPUTBY='" + userinfo.SHOWNAME + "' OR SALE='" + userinfo.SHOWNAME + "' )";
//}
//else if (visiblerange == "2")
//{
// str = $" (DEPT='{userinfo.deptgid}' or SALEDEPT='{userinfo.deptgid}') ";
//}
else if (visiblerange == "1")
{
str = $" UPPER(CORPID)='{userinfo.COMPANYID}' ";
}
else if (visiblerange == "5")
{
var userstr = new StringBuilder();
userstr.Append(" select COMPANYID from user_authority_range_company where userid='" + userinfo.USERID + "' and AUTHORITYID='" + AUTHORITYID + "' and VISIBLERANGE=1");
Database userdb = DatabaseFactory.CreateDatabase();
using (IDataReader reader = userdb.ExecuteReader(CommandType.Text, userstr.ToString()))
{
str = "";
while (reader.Read())
{
if (str == "")
{
str = $" (Corpid='{userinfo.COMPANYID}' ";
}
else
{
str = str + $" or Corpid='{userinfo.COMPANYID}' ";
};
}
str = str + ")";
reader.Close();
}
}
return str;
}
#endregion
public static List<VW_DJYORDER_LASTConsignee_md> GetLASTConsignee(string ConsigneeName)
{
var result = new List<VW_DJYORDER_LASTConsignee_md>();
var cdc = new CommonDataContext();
result = cdc.VW_DJYORDER_LASTConsignee.Where(x=>x.ConsigneeName.Contains(ConsigneeName)).ToList();
return result;
}
public static List<VW_DJYORDER_LASTNotifypart_md> GetLASTNotifypart(string NotifypartName)
{
var result = new List<VW_DJYORDER_LASTNotifypart_md>();
var cdc = new CommonDataContext();
result = cdc.VW_DJYORDER_LASTNotifypart.Where(x => x.NotifypartName.Contains(NotifypartName)).ToList();
return result;
}
public static List<VW_DJYORDER_LASTShipper_md> GetLASTShipper(string ShipperName)
{
var result = new List<VW_DJYORDER_LASTShipper_md>();
var cdc = new CommonDataContext();
result = cdc.VW_DJYORDER_LASTShipper.Where(x => x.ShipperName.Contains(ShipperName)).ToList();
return result;
}
}
public class DJYORDER_ACCOUNTINFODAL
{
#region 大简云订舱 船公司账号密码 头表 查询
const string HeadSql = " SELECT * FROM DJYORDER_ACCOUNTINFO where 1=1 ";
public static List<DJYORDER_ACCOUNTINFO_md> GetDataList(int start, int limit, string sort, string condition, VW_user_md userinfo, ref int count)
{
//range
var rangestr = GetRangDAStr(userinfo);
//condition
var strCondition = condition;
var sortstring = DatasetSort.Getsortstring(sort); ;
var param = new BasicDataRefDAL.PagedQuaryParam();
param.strSql = HeadSql;
param.strCondition = strCondition;
param.rangestr = rangestr;
param.sortstring = sortstring;
param.defaultsortstr = "CREATETIME desc";
param.start = start;
param.limit = limit;
var strSql = BasicDataRefDAL.PagedQuaryStr(param);
count = BasicDataRefDAL.PagedCount(param);
return SetData(strSql);
}
public static string GetDataListStr(string condition, VW_user_md userinfo)
{
//range
var rangestr = GetRangDAStr(userinfo);
//condition
var strCondition = "";
var sortstring = "";
var param = new BasicDataRefDAL.PagedQuaryParam();
param.strSql = HeadSql;
param.strCondition = strCondition;
param.rangestr = rangestr;
param.sortstring = sortstring;
param.defaultsortstr = "CREATETIME desc";
param.start = 0;
param.limit = 9999;
var strSql = BasicDataRefDAL.PagedQuaryStr(param);
return strSql.ToString();
}
private static List<DJYORDER_ACCOUNTINFO_md> SetData(System.Text.StringBuilder strSql)
{
var bodyList = new List<DJYORDER_ACCOUNTINFO_md>();
Database db = DatabaseFactory.CreateDatabase();
using (IDataReader reader = db.ExecuteReader(CommandType.Text, strSql.ToString()))
{
while (reader.Read())
{
DJYORDER_ACCOUNTINFO_md data = new DJYORDER_ACCOUNTINFO_md();
#region Set DB data to Object
data.GID = Convert.ToString(reader["GID"]);
data.CORPID = Convert.ToString(reader["CORPID"]);
data.CARRIER = Convert.ToString(reader["CARRIER"]);
data.ACCOUNT = Convert.ToString(reader["ACCOUNT"]);
data.ACCOUNTPSW = Convert.ToString(reader["ACCOUNTPSW"]);
data.BookingName = Convert.ToString(reader["BookingName"]);
data.BookingAddress = Convert.ToString(reader["BookingAddress"]);
data.BookingCountry = Convert.ToString(reader["BookingCountry"]);
data.BookingProvince = Convert.ToString(reader["BookingProvince"]);
data.BookingCity = Convert.ToString(reader["BookingCity"]);
data.BookingCounty = Convert.ToString(reader["BookingCounty"]);
data.BookingPostCode = Convert.ToString(reader["BookingPostCode"]);
data.BookingFirstName = Convert.ToString(reader["BookingFirstName"]);
data.BookingLastName = Convert.ToString(reader["BookingLastName"]);
data.BookingPhoneCountryCode = Convert.ToString(reader["BookingPhoneCountryCode"]);
data.BookingPhoneCode = Convert.ToString(reader["BookingPhoneCode"]);
data.BookingPhone = Convert.ToString(reader["BookingPhone"]);
data.REMARK = Convert.ToString(reader["REMARK"]);
#endregion
bodyList.Add(data);
}
reader.Close();
}
return bodyList;
}
public static string GetRangDAStr(VW_user_md userinfo)
{
string str = "";
var strSql = new StringBuilder();
strSql.Append("SELECT ");
strSql.Append(" VISIBLERANGE,OPERATERANGE,AUTHORITYID,VSSQL ");
strSql.Append(" from VW_User_Authority ");
strSql.Append(" where [NAME]='modDJYORDER_ACCOUNTINFO' and USERID='" + userinfo.USERID + "' and ISDELETE=0");
string visiblerange = "4";
string operaterange = "4";
string AUTHORITYID = "";
string VSSQL = "";
Database db = DatabaseFactory.CreateDatabase();
using (IDataReader reader = db.ExecuteReader(CommandType.Text, strSql.ToString()))
{
while (reader.Read())
{
visiblerange = Convert.ToString(reader["VISIBLERANGE"]);
operaterange = Convert.ToString(reader["OPERATERANGE"]);
AUTHORITYID = Convert.ToString(reader["AUTHORITYID"]);
VSSQL = Convert.ToString(reader["VSSQL"]);
break;
}
reader.Close();
}
if (visiblerange == "3" || visiblerange == "2" || visiblerange == "5" || visiblerange == "6")
{
visiblerange = "1";
}
if (visiblerange == "4")
{
str = "1=2";
}
//else if (visiblerange == "3")
//{
// str = " (INPUTBY='" + userinfo.SHOWNAME + "' OR SALE='" + userinfo.SHOWNAME + "' )";
//}
//else if (visiblerange == "2")
//{
// str = $" (DEPT='{userinfo.deptgid}' or SALEDEPT='{userinfo.deptgid}') ";
//}
else if (visiblerange == "1")
{
str = $" UPPER(CORPID)='{userinfo.COMPANYID}' ";
}
else if (visiblerange == "5")
{
var userstr = new StringBuilder();
userstr.Append(" select COMPANYID from user_authority_range_company where userid='" + userinfo.USERID + "' and AUTHORITYID='" + AUTHORITYID + "' and VISIBLERANGE=1");
Database userdb = DatabaseFactory.CreateDatabase();
using (IDataReader reader = userdb.ExecuteReader(CommandType.Text, userstr.ToString()))
{
str = "";
while (reader.Read())
{
if (str == "")
{
str = $" (Corpid='{userinfo.COMPANYID}' ";
}
else
{
str = str + $" or Corpid='{userinfo.COMPANYID}' ";
};
}
str = str + ")";
reader.Close();
}
}
return str;
}
#endregion
}
}