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.
236 lines
7.9 KiB
C#
236 lines
7.9 KiB
C#
using DSWeb.Areas.MvcShipping.Models.MsOpSeaeBaoXian;
|
|
using DSWeb.MvcShipping.Helper;
|
|
using Microsoft.Practices.EnterpriseLibrary.Data;
|
|
using qingdaoport;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Data;
|
|
using System.IO;
|
|
using System.Linq;
|
|
using System.Net;
|
|
using System.Text;
|
|
using System.Web;
|
|
|
|
namespace DSWeb.Areas.MvcShipping.DAL.MsOpSeaeBaoXian
|
|
{
|
|
public class MsOpSeaeBaoXianDAL
|
|
{
|
|
public static OpSeaeBaoXianModel_Login loginWX(string userid,string comid)
|
|
{
|
|
try
|
|
{
|
|
string whlURL = "http://service.logsafer.net:8920/auth/user/loginWX?serverkey=180005&serverid=kb11dsrjqd&clientid=" + comid;
|
|
WebRequest request = WebRequest.Create(whlURL);
|
|
request.Method = "GET";
|
|
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
|
|
string url = response.ResponseUri.AbsoluteUri;
|
|
StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8);
|
|
string content = reader.ReadToEnd();
|
|
OpSeaeBaoXianModel_Login data = JsonConvert.Deserialize<OpSeaeBaoXianModel_Login>(content);
|
|
return data;
|
|
}
|
|
catch (Exception)
|
|
{
|
|
return null;
|
|
throw;
|
|
}
|
|
}
|
|
|
|
public static OpSeaeBaoXianModel_Query_Response query(string userid,string type,string comid)
|
|
{
|
|
|
|
string url = "http://service.logsafer.net:8920/interface/queryapply/query";
|
|
string paraData = GetQueryParm(userid, type,comid);
|
|
string header = GetTokenHeader(userid,comid);
|
|
string resp = HttpHelper.HttpPost(url,paraData,"UTF-8",header);
|
|
try
|
|
{
|
|
OpSeaeBaoXianModel_Query_Response data = JsonConvert.Deserialize<OpSeaeBaoXianModel_Query_Response>(resp);
|
|
return data;
|
|
}
|
|
catch (Exception)
|
|
{
|
|
OpSeaeBaoXianModel_Query_Response data = new OpSeaeBaoXianModel_Query_Response();
|
|
data.success = "false";
|
|
data.message = resp;
|
|
return data;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
public static OpSeaeBaoXianModel_Apply_Response apply(OpSeaeBaoXianModel_Apply_Requst model,string userid,string comid)
|
|
{
|
|
|
|
string url = "http://service.logsafer.net:8920/interface/applypolicy/apply";
|
|
string fptt = "";
|
|
string comname = GetComname(userid, out fptt);
|
|
string dianhua = "";
|
|
string name = GetLianXiRenAndDianHuaWithUserid(userid,out dianhua);
|
|
model.serverkey = "180005";
|
|
model.companyname = comname;
|
|
model.invoiceissuing = comname;
|
|
model.holdercontact = name;
|
|
model.holderphone = dianhua;
|
|
|
|
|
|
string paraData = GetApplyParm(userid,model,comid);
|
|
string header = GetTokenHeader(userid,comid);
|
|
string resp = HttpHelper.HttpPost(url, paraData, "UTF-8", header);
|
|
OpSeaeBaoXianModel_Apply_Response data = JsonConvert.Deserialize<OpSeaeBaoXianModel_Apply_Response>(resp);
|
|
return data;
|
|
}
|
|
|
|
private static string GetQueryParm(string userid,string type,string pcomid)
|
|
{
|
|
string comid = getBXIDwithComid(pcomid);
|
|
OpSeaeBaoXianModel_Query_Requst rq = new OpSeaeBaoXianModel_Query_Requst();
|
|
string fptt = "";
|
|
string comname = GetComname(userid,out fptt);
|
|
rq.serverkey = "180005";
|
|
rq.clientid = comid;
|
|
rq.querytype = type;
|
|
rq.companyname = comname;
|
|
rq.invoiceissuing = fptt;
|
|
rq.username = "";
|
|
rq.orgcode = "";
|
|
rq.address = "";
|
|
rq.tel = "";
|
|
rq.mail = "";
|
|
rq.cusqq = "";
|
|
rq.fixedtelephone = "";
|
|
return JsonConvert.Serialize(rq);
|
|
}
|
|
|
|
private static string GetApplyParm(string userid, OpSeaeBaoXianModel_Apply_Requst rq,string pcomid)
|
|
{
|
|
string comid = getBXIDwithComid(pcomid);
|
|
string fptt = "";
|
|
string comname = GetComname(userid, out fptt);
|
|
rq.serverkey = "180005";
|
|
rq.clientid = comid;
|
|
rq.companyname = comname;
|
|
rq.invoiceissuing = fptt;
|
|
return JsonConvert.Serialize(rq);
|
|
}
|
|
|
|
private static string GetComname(string userid,out string FPTT)
|
|
{
|
|
Database db = DatabaseFactory.CreateDatabase();
|
|
string sql = @"select c.FULLNAME,c.BILLRISES from user_company uc
|
|
left join company c on uc.COMPANYID = c.GID
|
|
where uc.USERID = '" + userid+"'";
|
|
string fp = "";
|
|
string name = "";
|
|
try
|
|
{
|
|
using (IDataReader reader = db.ExecuteReader(CommandType.Text, sql))
|
|
{
|
|
while (reader.Read())
|
|
{
|
|
|
|
if (reader["BILLRISES"] != DBNull.Value)
|
|
{
|
|
fp = reader["BILLRISES"].ToString();
|
|
}
|
|
if (reader["FULLNAME"] != DBNull.Value)
|
|
{
|
|
name = reader["FULLNAME"].ToString();
|
|
}
|
|
}
|
|
}
|
|
}
|
|
catch (Exception)
|
|
{
|
|
fp = "";
|
|
name = "";
|
|
}
|
|
finally
|
|
{
|
|
FPTT = fp;
|
|
}
|
|
return name;
|
|
}
|
|
|
|
private static string GetLianXiRenAndDianHuaWithUserid(string userid,out string dianhua) {
|
|
Database db = DatabaseFactory.CreateDatabase();
|
|
string sql = @"select u.SHOWNAME,ub.OFFICEPHONE from [user] u
|
|
left join user_baseinfo ub on u.GID = ub.USERID where u.gid = '"+userid+"'";
|
|
string dh = "";
|
|
string name = "";
|
|
try
|
|
{
|
|
using (IDataReader reader = db.ExecuteReader(CommandType.Text, sql))
|
|
{
|
|
while (reader.Read())
|
|
{
|
|
|
|
if (reader["SHOWNAME"] != DBNull.Value)
|
|
{
|
|
name = reader["SHOWNAME"].ToString();
|
|
}
|
|
if (reader["OFFICEPHONE"] != DBNull.Value)
|
|
{
|
|
dh = reader["OFFICEPHONE"].ToString();
|
|
}
|
|
}
|
|
}
|
|
}
|
|
catch (Exception)
|
|
{
|
|
dh = "";
|
|
name = "";
|
|
}
|
|
finally
|
|
{
|
|
dianhua = dh;
|
|
}
|
|
return name;
|
|
}
|
|
|
|
private static string GetTokenHeader(string userid,string pcomid)
|
|
{
|
|
string comid = getBXIDwithComid(pcomid);
|
|
try
|
|
{
|
|
OpSeaeBaoXianModel_Login model = loginWX(userid,comid);
|
|
|
|
return "token:"+model.result.token;
|
|
}
|
|
catch (Exception)
|
|
{
|
|
return "";
|
|
throw;
|
|
}
|
|
|
|
}
|
|
|
|
private static string getBXIDwithComid(string comid)
|
|
{
|
|
|
|
string bxid = "";
|
|
|
|
Database db = DatabaseFactory.CreateDatabase();
|
|
string sql = @"select top 1 bxid from company where gid = '"+comid+"'";
|
|
try
|
|
{
|
|
var bx = db.ExecuteScalar(CommandType.Text, sql);
|
|
if (bx != null && bx != DBNull.Value)
|
|
{
|
|
bxid = bx.ToString();
|
|
}
|
|
else
|
|
{
|
|
bxid = "";
|
|
}
|
|
}
|
|
catch (Exception)
|
|
{
|
|
bxid= "";
|
|
}
|
|
return bxid;
|
|
|
|
}
|
|
}
|
|
}
|