using Common.DJYModel; using Common.Extensions; using Common.Tools; using Common.Utilities; using djy.IService.Isf; using djy.Model.Ams; using djy.Model.Isf; using djy.Model.IsfDto; using djy.Service.DjyService; using Microsoft.AspNetCore.Hosting; using Microsoft.Extensions.Hosting; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; namespace djy.Service.Isf { public class IsfService : ServBase, IIsfService { private readonly IWebHostEnvironment env; public IsfService(IWebHostEnvironment env) { this.env = env; } #region 查询接口 public TableData Load(ISFQuery req, User user, UserAuthorityDto aut) { var result = new TableData(); string[] ReportStates = null; if (req.ReportState != null) { ReportStates = req.ReportState.Split(','); } var dto = DbBus.Get(DbList.AMSCenter).Select(). Where(x => x.IsDel != true). WhereIf(aut.CompayId != null, x => x.CompID == aut.CompayId.ToString()). WhereIf(aut.UserId != null, x => x.UserID == aut.UserId.ToString()). WhereIf(req.MBLNO != null, x => x.MBLNO.Contains(req.MBLNO)). WhereIf(req.InFoType != null, x => x.InFoType == req.InFoType). WhereIf(req.ReportState != null && req.ReportState != "0" && req.ReportState != "1", x => ReportStates.Contains(x.ReportState)). WhereIf(req.ReportState == "0", x => x.ReportState == "未申报"). WhereIf(req.ReportState == "1", x => x.ReportState != "未申报"). WhereIf(req.UserName != null, x => x.UserName.Contains(req.UserName.Trim())). WhereIf(req.BDate != null, x => x.CreateTime >= req.BDate). WhereIf(req.EDate != null, x => x.CreateTime <= req.EDate).OrderByDescending(x => x.CreateTime); result.count = dto.ToList().Count(); var list = dto.Page(req.Page, req.Limit).ToList(); if (list != null) { foreach (var item in list) { var historyDto = DbBus.Get(DbList.AMSCenter).Select().Where(x => x.ISF_ID == item.GID).OrderByDescending(x => x.SendTime).ToList(); item.HistoryDto = historyDto; var companylist = DbBus.Get(DbList.AMSCenter).Select().Where(x => (x.IsDel == false || x.IsDel == null) && x.PID == item.GID).ToList(); item.companyList = companylist; } } result.data = list; return result; } /// /// 获取计费规则 /// /// 业务类型 /// 登录人信息 /// 计费规则 public async Task> GetPrice(string bstype, User user) { try { if (!int.TryParse(bstype, out int _bstype)) { return CreateResponse(400, "参数[bstype:业务类型]为空或格式错误"); } CustPrice custPrice = await DbBus.Get(DbList.djydb).Select().Where(w => w.BSTYPE == _bstype && w.SENDTYPE == 0 && w.COMNAME == user.COMNAME).ToOneAsync(); if (custPrice == null) { return CreateResponse(201, "没有找到此业务的计费规则"); } CustPriceDto custPriceDto = custPrice.MapTo(); return new Response() { Code = 200, Message = "查询成功", Result = custPriceDto }; } catch (Exception ex) { _LogsAdd("GetPrice", "post", $"ISF_GetPrice接口:{ex.Message}"); return CreateResponse(500, ex.Message); } } #endregion #region 新增编辑 public string SaveInfo(ISFDto dto, User user) { string guid = ""; var mlist = DbBus.Get(DbList.AMSCenter).Select().Where(x => x.IsDel != true && x.MBLNO == dto.MBLNO && x.GID != dto.GID && x.MBLNO != "").ToOne(); if (mlist != null) { return "-1"; } if (dto.GID.IsNull()) { DbBus.Get(DbList.AMSCenter).Transaction(() => { ISF_Master master = dto.MapTo(); master.CreateTime = DateTime.Now; master.LastUpdate = DateTime.Now; master.GID = Guid.NewGuid().ToString("N"); master.UserID = user.GID; master.UserName = user.SHOWNAME; master.CompID = user.CompId; master.CompName = user.COMNAME; master.IsDel = false; master.ReportState = "未申报"; master.NewNotice = "新增"; DbBus.Get(DbList.AMSCenter).Insert(master).ExecuteAffrows(); ISF_MasterHistory history = new ISF_MasterHistory(); history.GID = Guid.NewGuid().ToString("N"); history.ISF_ID = master.GID; history.SendTime = DateTime.Now;/// history.State = "新增"; history.Type = "0"; history.Operator = user.SHOWNAME; history.Remark = user.SHOWNAME + "于" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "创建了单据"; DbBus.Get(DbList.AMSCenter).Insert(history).ExecuteAffrows(); if (dto.companyList != null && dto.companyList.Count() > 0) { foreach (var item in dto.companyList) { ISF_Company company = item.MapTo(); company.GID = Guid.NewGuid().ToString("N"); company.PID = master.GID; company.IsDel = false; company.State = "0"; DbBus.Get(DbList.AMSCenter).Insert(company).ExecuteAffrows(); } } guid = master.GID; }); return guid; } else { DbBus.Get(DbList.AMSCenter).Transaction(() => { ISF_Master master = DbBus.Get(DbList.AMSCenter).Select().Where(x => x.GID == dto.GID).ToOne(); master.MBLNO = dto.MBLNO; master.ShipMasterBillNo = dto.ShipMasterBillNo; master.InFoType = dto.InFoType; master.DischargeHarbourCode = dto.DischargeHarbourCode; master.DischargeHarbourName = dto.DischargeHarbourName; master.DeliveryHarbourCode = dto.DeliveryHarbourCode; master.DeliveryHarbourName = dto.DeliveryHarbourName; master.ShipmentTypeCode = dto.ShipmentTypeCode; master.ShipmentTypeName = dto.ShipmentTypeName; master.HstCode = dto.HstCode; master.BlTypeCode = dto.BlTypeCode; master.BlTypeName = dto.BlTypeName; master.NewNotice = "修改"; master.LastUpdate = DateTime.Now; master.BondOwnCode = dto.BondOwnCode; DbBus.Get(DbList.AMSCenter).Update().SetSource(master).ExecuteAffrows(); DbBus.Get(DbList.AMSCenter).Delete().Where(w => w.PID == master.GID).ExecuteAffrows(); //ISF_MasterHistory history = new ISF_MasterHistory(); //history.GID = Guid.NewGuid().ToString("N"); //history.ISF_ID = master.GID; //history.SendTime = DateTime.Now; //history.State = "修改"; //history.Type = "0"; //history.Operator = user.SHOWNAME; //history.Remark = user.SHOWNAME + "于" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "修改了单据"; //DbBus.Get(DbList.AMSCenter).Insert(history).ExecuteAffrows(); if (dto.companyList != null && dto.companyList.Count() > 0) { foreach (var item in dto.companyList) { ISF_Company companylist = item.MapTo(); companylist.GID = Guid.NewGuid().ToString("N"); companylist.PID = master.GID; companylist.IsDel = false; companylist.State = "0"; DbBus.Get(DbList.AMSCenter).Insert(companylist).ExecuteAffrows(); } } guid = master.GID; }); return guid; } } #endregion #region 删除 public void Delete(string ids, User user) { string[] id = ids.Split(','); DbBus.Get(DbList.AMSCenter).Transaction(() => { foreach (string oid in id) { if (oid != "") { DbBus.Get(DbList.AMSCenter).Transaction(() => { ISF_MasterHistory history = new ISF_MasterHistory(); history.GID = Guid.NewGuid().ToString("N"); history.ISF_ID = oid; history.SendTime = DateTime.Now;///此处为删除时间 history.State = "删除"; history.Type = "0"; history.Operator = user.SHOWNAME; history.Remark = user.SHOWNAME + "于" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "删除了单据"; DbBus.Get(DbList.AMSCenter).Insert(history).ExecuteAffrows(); DbBus.Get(DbList.AMSCenter).Update().Set(w => w.IsDel, true).Where(w => w.GID == oid).ExecuteAffrows(); DbBus.Get(DbList.AMSCenter).Update().Set(w => w.IsDel, true).Where(w => w.PID == oid).ExecuteAffrows(); }); } } }); } #endregion #region 获取模板 public List GetTemplate(User user, string CompanyType, string InFoType, string TemPlateName) { try { var List = DbBus.Get(DbList.AMSCenter).Select(). Where(x => x.IsDel == false || x.IsDel == null). Where(x => x.UserID == user.GID). WhereIf(CompanyType != null, x => x.CompanyType == CompanyType). WhereIf(InFoType != null, x => x.InFoType == InFoType). WhereIf(TemPlateName != null, x => x.TemPlateName.Contains(TemPlateName)). ToList(); return List; } catch (Exception e) { throw; } } #endregion #region 保存模板 public string SaveTemplate(ISF_CompanyTemplate dto, User user) { string guid = ""; var list = DbBus.Get(DbList.AMSCenter).Select().Where(w => w.UserID == user.GID && w.TemPlateName == dto.TemPlateName && w.CompanyType == dto.CompanyType && w.InFoType == dto.InFoType && w.GID != dto.GID).ToOne(); if (list != null) { return "-1"; } if (dto.GID.IsNull()) { ISF_CompanyTemplate template = dto.MapTo(); template.CreateTime = DateTime.Now; template.LastUpdate = DateTime.Now; template.GID = Guid.NewGuid().ToString("N"); template.UserID = user.GID; template.UserName = user.SHOWNAME; template.CompID = user.CompId; template.CompName = user.COMNAME; template.IsDel = false; DbBus.Get(DbList.AMSCenter).Insert(template).ExecuteAffrows(); guid = template.GID; return guid; } else { ISF_CompanyTemplate template = dto.MapTo(); var i = DbBus.Get(DbList.AMSCenter).Update().SetSource(template).ExecuteAffrows(); return i.ToString(); } } #endregion #region 删除模板 public void DeleteTemplate(string ids) { string[] id = ids.Split(','); DbBus.Get(DbList.AMSCenter).Transaction(() => { foreach (string oid in id) { if (oid != "") { DbBus.Get(DbList.AMSCenter).Transaction(() => { DbBus.Get(DbList.AMSCenter).Delete().Where(w => w.GID == oid).ExecuteAffrows(); }); } } }); } #endregion #region 第三方接口 /// 类型(1.原始 2.修改 3.删除 4.重发) public async Task SendDE(string Gid, User user, string msgType) { Response req = new Response(); try { string[] id = Gid.Split(','); foreach (string oid in id) { if (oid != "") { var fin = new FinanceService(); var master = DbBus.Get(DbList.AMSCenter).Select().Where(x => (x.IsDel == false || x.IsDel == null) && x.CompID == user.CompId && x.GID == oid).ToOne(); var comlist = DbBus.Get(DbList.AMSCenter).Select().Where(x => (x.IsDel == false || x.IsDel == null) && x.PID == oid).ToList(); if (msgType == "4" && (master.MateState == "海关删除" || master.MateState != "S1" || master.MateState != "02")) { req.Code = 200; req.Message = "当前状态不能重发!如有疑问,请联系相关客服!"; return req; } if (master.ReportState == "删单成功" && msgType == "3") { req.Code = 201; req.Message = "已删除单据不可以再次删除"; return req; } var gethtml = ""; if (msgType != "3") { if (msgType == "1" && master.NewNotice == "新增发送") { req.Code = 200; req.Message = "当前单据已经发送,不能再次发送!如有疑问,请联系相关客服!"; return req; } BondOwnTypeEnum? bondOwnType = master.BondOwnCode switch { "1" => BondOwnTypeEnum.OWN, "2" => BondOwnTypeEnum.CargoEDI, _ => null }; if (msgType == "1" || msgType == "4") { ///扣费接口 var getfinrs = fin.Expend(new CustFee { SENDUSERID = user.GID, LURURENID = user.GID, CtnrCount = 1, CtnrInfo = string.Empty, BSTYPE = 16, SENDTYPE = 0, BSNO = oid.ToString(), MBLNO = master.MBLNO.ToString(), } , 0, bondOwnType); if (!getfinrs.Status) { req.Code = 201; req.Message = getfinrs.Message; return req; } } var portList = DbBus.Get(DbList.Common).Select().ToList(); var CodePortLoadList = DbBus.Get(DbList.Common).Select().ToList(); Info info = new Info(); info.masterBillNo = master.MBLNO; info.shipMasterBillNo = master.ShipMasterBillNo; info.infoType = master.InFoType; info.dischargeHarbourCode = portList.Where(x => x.Code == master.DischargeHarbourCode).Select(x => x.EdiCode).FirstOrDefault(); info.deliveryHarbourCode = portList.Where(x => x.Code == master.DeliveryHarbourCode).Select(x => x.EdiCode).FirstOrDefault(); info.shipmentTypeCode = master.ShipmentTypeCode; info.hstCode = master.HstCode; info.blTypeCode = master.BlTypeCode; info.refId = master.GID; // 只在ISF-10,且使用CargoEDI的BOND时,才传bondOwnCode、bondTypeCode if (master.InFoType == "2" && bondOwnType == BondOwnTypeEnum.CargoEDI) { info.bondOwnCode = "2"; info.bondTypeCode = "03"; } List companyList = new List(); foreach (var item in comlist) { companyList.Add(new CompanyList { companyType = item.CompanyType, companyName = item.CompanyName, idTypeCode = item.IdTypeCode, companyId = item.CompanyId, address = item.Address, city = item.City.Trim(), province = item.Province, provinceCode = item.ProvinceCode, countryCode = item.CountryCode, postcode = item.PostCode, hstCode = item.CompanyType != "MF" ? item.HstCode : master.HstCode, }); } var timestamp = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); var Account = DbBus.Get(DbList.djydb).Select().Where(x => x.PARAMNAME == "ISFAccount").ToOne(); var method = DbBus.Get(DbList.djydb).Select().Where(x => x.PARAMNAME == "ISFMethod").ToOne(); var key = DbBus.Get(DbList.djydb).Select().Where(x => x.PARAMNAME == "ISFKEY").ToOne(); var url = DbBus.Get(DbList.djydb).Select().Where(x => x.PARAMNAME == "AMSURL").ToOne(); /////MD5加密 string stringSign = string.Format("{0}{1}{2}", Account.PARAMVALUE, key.PARAMVALUE, timestamp); string sign = stringSign.ToMd5(); ///post参数 IsfInfo isfinfo = new IsfInfo(); isfinfo.companyList = companyList; isfinfo.format = "json"; isfinfo.info = info; isfinfo.method = method.PARAMVALUE; isfinfo.msgType = Convert.ToInt32(msgType); isfinfo.user_id = Account.PARAMVALUE; isfinfo.sign = sign; isfinfo.timestamp = timestamp; isfinfo.version = "1.0"; string json = JsonConvert.SerializeObject(isfinfo); _LogsAdd("SendDE", "post", $"ISF接口调用发送{oid}:{json}"); Dictionary dic = new Dictionary(); dic.Add("user_id", Account.PARAMVALUE); dic.Add("method", method.PARAMVALUE); dic.Add("format", "json"); dic.Add("sign", sign); dic.Add("timestamp", timestamp); dic.Add("version", "1.0"); dic.Add("data", json.ToUrlEncodeString()); //测试用 //if (env.IsDevelopment() || env.IsStaging()) //{ // var gethtmlTestObj = new { code = "T", msg = "成功", data = new { code = "1", msg = "成功" } }; // gethtml = JsonConvert.SerializeObject(gethtmlTestObj); // _LogsAdd("SendDE", "post", $"ISF接口调用返回{oid}:{gethtml}(当前所处环境为开发或测试环境,直接返回成功)"); //} //else //{ // gethtml = await HttpHelp.Post(dic, url.PARAMVALUE, PsotType.Urlencoded); // _LogsAdd("SendDE", "post", $"ISF接口调用返回{oid}:{gethtml}"); //} gethtml = await HttpHelp.Post(dic, url.PARAMVALUE, PsotType.Urlencoded); _LogsAdd("SendDE", "post", $"ISF接口调用返回{oid}:{gethtml}"); } else { var timestamp = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); var Account = DbBus.Get(DbList.djydb).Select().Where(x => x.PARAMNAME == "ISFAccount").ToOne(); var method = DbBus.Get(DbList.djydb).Select().Where(x => x.PARAMNAME == "ISFDeleteMethod").ToOne(); var key = DbBus.Get(DbList.djydb).Select().Where(x => x.PARAMNAME == "ISFKEY").ToOne(); var url = DbBus.Get(DbList.djydb).Select().Where(x => x.PARAMNAME == "AMSURL").ToOne(); /////MD5加密 string stringSign = string.Format("{0}{1}{2}", Account.PARAMVALUE, key.PARAMVALUE, timestamp); string sign = stringSign.ToMd5(); Dictionary dic = new Dictionary(); dic.Add("user_id", Account.PARAMVALUE); dic.Add("method", method.PARAMVALUE); dic.Add("format", "json"); dic.Add("sign", sign); dic.Add("timestamp", timestamp); dic.Add("version", "1.0"); dic.Add("refId", oid); //测试用 //if (env.IsDevelopment() || env.IsStaging()) //{ // var gethtmlTestObj = new { code = "T", msg = "成功", data = new { code = "1", msg = "成功" } }; // gethtml = JsonConvert.SerializeObject(gethtmlTestObj); // _LogsAdd("SendDE", "post", $"ISF接口调用返回{oid}:{gethtml}(当前所处环境为开发或测试环境,直接返回成功)"); //} //else //{ // gethtml = await HttpHelp.Post(dic, url.PARAMVALUE, PsotType.Urlencoded); // _LogsAdd("SendDE", "post", $"ISF接口调用返回{oid}:{gethtml}"); //} gethtml = await HttpHelp.Post(dic, url.PARAMVALUE, PsotType.Urlencoded); _LogsAdd("SendDE", "post", $"ISF接口调用返回{oid}:{gethtml}"); } if (gethtml != null) { JObject rlt = JObject.Parse(gethtml); var code = rlt.GetValue("code").ToString(); var msg = rlt.GetValue("msg").ToString(); if (code == "F") { ISF_MasterHistory history = new ISF_MasterHistory(); history.GID = Guid.NewGuid().ToString("N"); history.ISF_ID = oid; history.SendTime = DateTime.Now; history.Type = "0"; if (msgType == "1") { history.State = "新增发送失败"; } else if (msgType == "4") { history.State = "重发失败"; } else if (msgType == "2") { history.State = "修改发送失败"; } else { history.State = "删除发送失败"; } history.Operator = user.SHOWNAME; history.Remark = user.SHOWNAME + "于" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "发送单据失败,失败原因:" + msg + " "; DbBus.Get(DbList.AMSCenter).Insert(history).ExecuteAffrows(); req.Code = 201; req.Message = "操作失败," + msg; return req; } if (code == "T") { ISF_MasterHistory history = new ISF_MasterHistory(); var data = rlt.GetValue("data").ToString(); JObject drlt = JObject.Parse(data); var result = drlt.GetValue("code").ToString(); if (result != "1") { var errorInfo = drlt.GetValue("msg").ToString(); history.GID = Guid.NewGuid().ToString("N"); history.ISF_ID = oid; history.SendTime = DateTime.Now; history.Type = "0"; if (msgType == "1") { history.State = "新增发送失败"; } else if (msgType == "4") { history.State = "重发失败"; } else if (msgType == "2") { history.State = "修改发送失败"; } else { history.State = "删除发送失败"; } history.Operator = user.SHOWNAME; history.Remark = user.SHOWNAME + "于" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "发送单据失败,失败原因:" + errorInfo + " "; DbBus.Get(DbList.AMSCenter).Insert(history).ExecuteAffrows(); req.Code = 201; req.Message = "操作失败," + msg + errorInfo; return req; } history.GID = Guid.NewGuid().ToString("N"); history.ISF_ID = oid; history.SendTime = DateTime.Now; history.Type = "0"; if (msgType == "1") { history.State = "新增发送成功"; } else if (msgType == "4") { history.State = "重发成功"; } else if (msgType == "2") { history.State = "修改发送成功"; } else { history.State = "删除发送成功"; } history.Operator = user.SHOWNAME; history.Remark = user.SHOWNAME + "于" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "发送了单据"; DbBus.Get(DbList.AMSCenter).Insert(history).ExecuteAffrows(); if (msgType == "1") { BondOwnTypeEnum? bondOwnType = master.BondOwnCode switch { "1" => BondOwnTypeEnum.OWN, "2" => BondOwnTypeEnum.CargoEDI, _ => null }; var getfinrs = fin.Expend(new CustFee { SENDUSERID = user.GID, LURURENID = user.GID, CtnrCount = 1, CtnrInfo = string.Empty, BSTYPE = 16, SENDTYPE = 0, BSNO = oid.ToString(), MBLNO = master.MBLNO.ToString(), } , 1, bondOwnType); DbBus.Get(DbList.AMSCenter).Update().Set(w => new ISF_Master { ReportState = "已提交", NewNotice = "新增发送" }).Where(w => w.GID == oid).ExecuteAffrows(); } else if (msgType == "4") { var getfinrs = fin.Expend(new CustFee { SENDUSERID = user.GID, LURURENID = user.GID, CtnrCount = 1, CtnrInfo = string.Empty, BSTYPE = 16, SENDTYPE = 0, BSNO = oid.ToString(), MBLNO = master.MBLNO.ToString(), } , 1); DbBus.Get(DbList.AMSCenter).Update().Set(w => new ISF_Master { ReportState = "已提交", NewNotice = "重发发送" }).Where(w => w.GID == oid).ExecuteAffrows(); } else if (msgType == "2") { DbBus.Get(DbList.AMSCenter).Update().Set(w => new ISF_Master { ReportState = "已提交", NewNotice = "修改发送" }).Where(w => w.GID == oid).ExecuteAffrows(); } else { DbBus.Get(DbList.AMSCenter).Update().Set(w => new ISF_Master { ReportState = "已提交", NewNotice = "删除发送" }).Where(w => w.GID == oid).ExecuteAffrows(); } } } } } return req; } catch (Exception ex) { req.Code = 500; req.Message = ex.InnerException?.Message ?? ex.Message; _LogsAdd("SendDE", "post", $"ISF_SendDE接口:{req.Message}"); return req; } } public Response SaveReceipt(string msg) { _LogsAdd("ISFReceipt", "post", $"ISF接口推送{msg}"); Response req = new Response(); try { if (msg != null) { ISFReceipt retdto = Json.JsonToObject(msg); var master = DbBus.Get(DbList.AMSCenter).Select().Where(x => x.GID == retdto.businessId).ToOne(); if (retdto.status == "S1") { ISF_MasterHistory history = new ISF_MasterHistory(); history.GID = Guid.NewGuid().ToString("N"); history.ISF_ID = master.GID; history.SendTime = DateTime.Now; history.State = "ISF和AMS匹配"; history.Type = "1"; history.Operator = "系统管理员"; history.Remark = "您的明细单据" + retdto.businessId + "于" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "ISF和AMS匹配"; DbBus.Get(DbList.AMSCenter).Insert(history).ExecuteAffrows(); DbBus.Get(DbList.AMSCenter).Update().Set(w => new ISF_Master { MateState = retdto.status }).Where(w => w.GID == master.GID).ExecuteAffrows(); } else if (retdto.status == "02") { ISF_MasterHistory history = new ISF_MasterHistory(); history.GID = Guid.NewGuid().ToString("N"); history.ISF_ID = master.GID; history.SendTime = DateTime.Now; history.State = "海关已接受"; history.Type = "1"; history.Operator = "系统管理员"; history.Remark = "您的单据于" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "海关已接受"; DbBus.Get(DbList.AMSCenter).Insert(history).ExecuteAffrows(); if (retdto.content.IndexOf("DELETED") != -1) { DbBus.Get(DbList.AMSCenter).Update().Set(w => new ISF_Master { MateState = "海关删除" }).Where(w => w.GID == master.GID).ExecuteAffrows(); } else { DbBus.Get(DbList.AMSCenter).Update().Set(w => new ISF_Master { MateState = retdto.status }).Where(w => w.GID == master.GID).ExecuteAffrows(); } } else if (retdto.status == "01") { ISF_MasterHistory history = new ISF_MasterHistory(); history.GID = Guid.NewGuid().ToString("N"); history.ISF_ID = master.GID; history.SendTime = DateTime.Now; history.State = "海关拒绝"; history.Type = "1"; history.Operator = "系统管理员"; history.Remark = "您的单据于" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "海关拒绝"; DbBus.Get(DbList.AMSCenter).Insert(history).ExecuteAffrows(); DbBus.Get(DbList.AMSCenter).Update().Set(w => new ISF_Master { MateState = retdto.status }).Where(w => w.GID == master.GID).ExecuteAffrows(); } else if (retdto.status == "SB" || retdto.status == "S2" || retdto.status == "S3" || retdto.status == "S4" || retdto.status == "S5" || retdto.status == "S6") { ISF_MasterHistory history = new ISF_MasterHistory(); history.GID = Guid.NewGuid().ToString("N"); history.ISF_ID = master.GID; history.SendTime = DateTime.Now; history.State = "未匹配AMS"; history.Type = "1"; history.Operator = "系统管理员"; history.Remark = "您的单据于" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "未匹配AMS"; DbBus.Get(DbList.AMSCenter).Insert(history).ExecuteAffrows(); DbBus.Get(DbList.AMSCenter).Update().Set(w => new ISF_Master { MateState = retdto.status }).Where(w => w.GID == master.GID).ExecuteAffrows(); } } else { req.Code = 200; req.Message = "未收到参数"; return req; } } catch (Exception ex) { req.Code = 500; req.Message = ex.InnerException?.Message ?? ex.Message; _LogsAdd("SendDE", "post", $"AMS_SaveReceipt接口:{req.Message}"); return req; } req.Code = 200; req.Message = "请求成功"; return req; } #endregion } }