public ActionResult Save(int?id) { //支付方式 List <TradersPayChannel> TradersPayChannelList = new List <TradersPayChannel>(); //商户资料 Traders traders = new Traders(); var obj = new TradersPaySecretKey { SecretKey = CommonService.GUID.ToUpper() }; if (id.HasValue) { obj = tradersPaySecretKeyService.GetEntityById(id.Value); TradersPayChannelList = tradersPaySecretKeyService.GetTradersPayChannel(Convert.ToInt32(id)); traders = tradersService.GetEntityByWhere(o => o.CID == obj.CID); } //指派人 ViewBag.user = ListToSelect(tradersService.getUserList().Select(o => new SelectListItem() { Value = o.UserId, Text = o.FullName }), emptyTitle: "请选择"); //支付通道 ViewBag.ClNo = ListToSelect(tradersPaySecretKeyService.GetPayChannelManage().Select(o => new SelectListItem() { Value = o.ChannelNo.ToString(), Text = o.ChannelCode }), emptyTitle: "请选择"); //支付方式 ViewBag.Channel = TradersPayChannelList; //商户资料 ViewBag.Tra = traders; return(View(obj.IsNullThrow())); }
public ActionResult Save(int?id) { var obj = new Realm { }; if (id.HasValue) { obj = realmService.GetEntityById(Convert.ToInt32(id)); if (obj.CID > 0) { Traders traders = tradersService.GetEntityByWhere(o => o.CID == obj.CID && o.Status == 1); if (traders != null) { obj.TradersFullTitle = traders.FullTitle; } } } //一级域名 ViewBag.d1 = ListToSelect(tradersService.getDataList(600).Select(o => new SelectListItem() { Value = o.DicSN.ToString(), Text = o.Title }), emptyTitle: "请选择"); return(View(obj.IsNullThrow())); }
public ActionResult AddTrader(Traders obj) { string msg = ""; if (!UserService.CheckUserByCode(obj.Assigner, obj.AssignerUID, ref msg)) { return(new OpActionResult(Utility.OpResult.Fail(msg))); } if (TraderService.ExistsTitle(obj.Title, obj.FullTitle)) { return(new OpActionResult(Utility.OpResult.Fail("客户简称或全称已存在!"))); } obj.TraderTypeId = ""; obj.Pay = Request["Pay"]; obj.BusinessScopeId = Request["BusinessScopeId"]; var citys = obj.Cities; if (!citys.IsNullOrEmpty()) { var cs = citys.Split(',').Select(o => short.Parse(o)).ToList(); if (cs.Count == 3) { obj.CurrentProvinceId = cs[0]; obj.CurrentCityId = cs[1]; obj.CurrentCounty = cs[2]; } } Session["traders"] = obj; return(new OpActionResult(Utility.OpResult.Success())); }
public Trader GetCurrentTraderInfo() { var userId = GetUserIdForContext(OperationContext.Current); return(userId.HasValue ? Traders.GetOrAdd(userId.Value, new Trader(userId.Value)) : Trader.Empty); }
public int Register([FromBody] Traders trader, string orderList, short way, short openVersionId, string storeProper, string posMinorDisp, string appProper, string machine) { //throw new Exception("test"); //trader.Source = 2; trader.TrackStautsId = 206; var op = TradersService.Save(trader, orderList, way, openVersionId, storeProper, posMinorDisp, appProper, machine); return(Convert.ToInt32(op.Successed)); }
/// <summary> /// 获取商户资料 /// </summary> /// <param name="CID"></param> /// <returns></returns> public string GetEntityTraders(int CID = 0) { Traders traders = tradersService.GetTraderByCID(CID); if (traders == null) { traders = new Traders(); } return(traders.ToJson()); }
/// <summary> /// 获取商户资料 /// </summary> /// <param name="CID"></param> /// <returns></returns> public string GetEntityTraders(int CID = 0) { Traders traders = new Traders(); PayLicense payLicense = payLicenseService.GetEntityByWhere(o => o.CID == CID); if (payLicense != null) { traders = tradersService.GetTraderByCID(CID); } return(traders.ToJson()); }
public Dictionary <Guid, string> GetTraderNames(IEnumerable <Guid> traderIds) { var currentUser = GetCurrentTraderInfo(); var ret = new Dictionary <Guid, string>(); foreach (var traderId in traderIds.Distinct()) { if (Traders.TryGetValue(traderId, out Trader trader)) { ret.Add(traderId, trader.Name); } } Log.Information("Retrieved {count} trader names for user {UserId}", ret.Count, currentUser.Id); return(ret); }
/// <summary> /// 创建委托 /// </summary> /// <param name="who"></param> /// <param name="contract"></param> /// <param name="dir"></param> /// <param name="pos"></param> /// <param name="orderType"></param> /// <param name="policy"></param> /// <param name="count"></param> /// <param name="price"></param> /// <returns></returns> public Order CreateOrder(int who, int contract, TradeDirectType dir, OrderType orderType, OrderPolicy policy, int count, decimal price) { var w = Traders.Where(a => a.Id == who).FirstOrDefault(); if (w == null) { return(null); } var c = Contracts.Where(a => a.Id == contract).FirstOrDefault(); if (c == null) { return(null); } return(EntityFactory.CreateOrder(w, c, dir, orderType, policy, count, price)); }
/// <summary> /// 获取商户全称 /// </summary> /// <param name="CID"></param> /// <returns></returns> public string getTradersFullTitle(int CID) { string TradersFullTitle = ""; bool isCID = tradersStoreService.isExistByWhere(o => o.CID == CID && o.State == 1); if (isCID) { Traders traders = tradersService.GetEntityByWhere(o => o.CID == CID); if (traders != null) { TradersFullTitle = traders.FullTitle; } else { TradersFullTitle = new Traders().FullTitle; } } return(TradersFullTitle); }
public ActionResult OutRegister(Traders traders, string h_OrderList, string way, string openVersionId, string storeProper, string posMinorDisp, string appProper) { traders.BusinessScopeId = Request["BusinessScopeId"]; storeProper = storeProper == "Y" ? "Y" : "N"; posMinorDisp = posMinorDisp == "Y" ? "Y" : "N"; appProper = appProper == "Y" ? "Y" : "N"; var omsurl = Authorize.OmsUrl + "api/outerapi/Register"; omsurl += string.Format("?orderList={0}&way={1}&storeProper={2}&posMinorDisp={3}&appProper={4}&openVersionId={5}&machine={6}", h_OrderList, way, storeProper, posMinorDisp, appProper, openVersionId, Machine.GetMAC); var rt = Pharos.Utility.HttpClient.HttpPost(omsurl, traders.ToJson()); var op = new OpResult(); op.Successed = rt == "1";//todo:异常时处理 op.Message = ""; if (op.Successed) { Authorize.RemoveCurrentAuth(); } return(Content(op.ToJson())); }
public Task SaveTraderAsync(Trader trader) { var items = Traders.Where(x => x.Identifier == trader.Identifier).ToList(); if (items.Count > 0) { foreach (var item in items) { Traders.Remove(item); } Traders.Add(trader); } else { Traders.Add(trader); } return(Task.FromResult(true)); }
/// <summary> /// 获取商户全称 /// </summary> /// <param name="CID"></param> /// <returns></returns> public string getTradersFullTitle(int CID) { var query = CompanyAuthorizeRepository.GetQuery(o => o.CID == CID && o.Status == 1); if (!query.Any()) { return(""); } if (!tradersService.isExistByWhere(o => o.CID == CID && o.Status == 1)) { return(""); } Traders traders = tradersService.GetEntityByWhere(o => o.CID == CID); if (traders != null) { return(traders.FullTitle); } else { return(""); } }
public Task <List <Trader> > GetBusyTradersAsync() { return(Task.FromResult(Traders.Where(x => x.IsBusy).ToList())); }
public void Add(Trader trader) => Traders.Add(trader);
public ActionResult Save(int?id, int BankState = 0) { //省市名称 string ProCitName = ""; //一二级类目名称 string BusName = ""; //商户资料 Traders traders = new Traders(); //商家结算账户 BankAccount bankAccount = new BankAccount(); //审核日志 List <ViewApproveLog> logList = new List <ViewApproveLog>(); //资质或证件 string url1 = ""; //企业证件 string url2 = ""; //身份证正面 string url3 = ""; //身份证反面 string url4 = ""; var obj = new PayLicense { }; if (id.HasValue) { obj = payLicenseService.GetEntityById(id.Value); ProCitName = areaService.GetOne(obj.ProvinceId).Title + "/" + areaService.GetOne(obj.CityId).Title; Business business1 = businessService.GetOneByWhere(o => o.ById == obj.BusinessId1); Business business2 = businessService.GetOneByWhere(o => o.ById == obj.BusinessId2); if (business1 != null) { BusName = business1.Title; if (business2 != null) { BusName = BusName + "/" + business2.Title; } } traders = tradersService.GetEntityByWhere(o => o.CID == obj.CID); bankAccount = bankAccountService.GetEntityByWhere(o => o.LicenseId == obj.LicenseId); bankAccount.BankCityName = payLicenseService.getCityTitle(bankAccount.BankCityId); short moduleNum = Convert.ToInt16(ApproveLogNum.支付许可); logList = approveLogService.getList(obj.LicenseId); url1 = Tool.getPLicensePicPath(obj.LicenseId, 1) + obj.ECertificateUrl1; url2 = Tool.getPLicensePicPath(obj.LicenseId, 2) + obj.ECertificateUrl2; url3 = Tool.getPLicensePicPath(obj.LicenseId, 3) + obj.IDCardUrl1; url4 = Tool.getPLicensePicPath(obj.LicenseId, 4) + obj.IDCardUrl2; } //指派人 ViewBag.user = ListToSelect(tradersService.getUserList().Select(o => new SelectListItem() { Value = o.UserId, Text = o.FullName }), emptyTitle: "请选择"); //经营类目 ViewBag.BusinessScopeId = tradersService.getBusinessList(); //所属体系 ViewBag.SourceT = EnumToSelect(typeof(PaySourceType), emptyTitle: "请选择"); //省市名称 ViewBag.ProvinceCityName = ProCitName; //企业性质 ViewBag.Nature = ListToSelect(tradersService.getDataList(500).Select(o => new SelectListItem() { Value = o.DicSN.ToString(), Text = o.Title }), emptyTitle: "请选择"); //一二级类目名称 ViewBag.Bus1Bus2Name = BusName; //商户资料 ViewBag.Tra = traders; //商家结算账户 ViewBag.bank = bankAccount; //审核日志 ViewBag.logList = logList; //资质或证件 ViewBag.url1 = url1; //企业证件 ViewBag.url2 = url2; //身份证正面 ViewBag.url3 = url3; //身份证反面 ViewBag.url4 = url4; //结算账户状态 ViewBag.BankState = BankState; return(View(obj.IsNullThrow())); }
//[SysPermissionValidate(67)] public ActionResult Save(int?id, int all = 0) { //0是全部显示,1是部分显示 ViewBag.all = all; //商户分类 ViewBag.TraderType = ListToSelect(tradersService.getTraderTypeList().Select(o => new SelectListItem() { Value = o.TraderTypeId.ToString(), Text = o.Title }), emptyTitle: "请选择"); //经营模式 ViewBag.ModeId = ListToSelect(tradersService.getDataList().Select(o => new SelectListItem() { Value = o.DicSN.ToString(), Text = o.Title }), emptyTitle: "请选择"); //经营类目 ViewBag.BusinessScopeId = tradersService.getBusinessList(); //跟踪状态 ViewBag.StautsId = ListToSelect(tradersService.getDataList(205).Select(o => new SelectListItem() { Value = o.DicSN.ToString(), Text = o.Title }), emptyTitle: "请选择"); var obj = new Traders { BusinessScopeId = "", Pay = "", CurrentProvinceId = 15 }; if (id.HasValue) { obj = tradersService.GetOne(id.Value); obj.BusinessScopeId = obj.BusinessScopeId.IsNullOrEmpty() ? "" : obj.BusinessScopeId; obj.Pay = obj.Pay.IsNullOrEmpty() ? "" : obj.Pay; } //登记人ID obj.CreateUID = obj.CreateUID.IsNullOrEmpty() ? CurrentUser.UID : obj.CreateUID; //登记人 ViewBag.Create = tradersService.getFullName(obj.CreateUID); //采购意向清单 ViewBag.OrderList = tradersService.getOrderList(obj.CID); //测试 List <ViewOrderList> llwefe = tradersService.getOrderList(obj.CID); //回访小结 ViewBag.VisitTrack = visitTrackService.getVisitTrackList(obj.CID); //设备分类 ViewBag.DeviceClass = ListToSelect(tradersService.getDataList(197).Select(o => new SelectListItem() { Value = o.DicSN.ToString(), Text = o.Title }), emptyTitle: "请选择"); //业务员 ViewBag.user = ListToSelect(tradersService.getUserList().Select(o => new SelectListItem() { Value = o.UserId, Text = o.FullName, Selected = (o.UserId == CurrentUser.UID && all > 0) }), emptyTitle: "请选择"); //支付方式 ViewBag.pay = tradersService.getDataList(300); //现有门店数量 ViewBag.storeNum = ListToSelect(tradersService.getDataList(320).Select(o => new SelectListItem() { Value = o.DicSN.ToString(), Text = o.Title }), emptyTitle: "请选择"); //每门店人均数 ViewBag.averageNum = ListToSelect(tradersService.getDataList(340).Select(o => new SelectListItem() { Value = o.DicSN.ToString(), Text = o.Title }), emptyTitle: "请选择"); //采购意向清单单位 ViewBag.OrderUnit = ListToSelect(tradersService.getDataList(360).Select(o => new SelectListItem() { Value = o.DicSN.ToString(), Text = o.Title }), emptyTitle: "请选择"); return(View(obj.IsNullThrow())); }
public ActionResult Save(Traders traders, string h_OrderList, string h_VisitTrack, string[] BusinessScopeId, string[] Pay) { var op = tradersService.Save(traders, h_OrderList, h_VisitTrack, BusinessScopeId, Pay); return(new OpActionResult(op)); }
public bool AcceptTrade(Guid offerId) { var buyer = GetCurrentTraderInfo(); if (buyer == null) { Log.Warning("Failed to accept trade offer {TradeOfferId} for session {SessionId} because no user is logged on", offerId, OperationContext.Current.SessionId); } if (!TradeOffers.TryGetValue(offerId, out TradeOffer tradeOffer)) { Log.Information("Trader {UserId} attempted to accept trade offer {TradeOfferId} but it was not available", buyer.Id, offerId); return(false); } if (!Traders.TryGetValue(tradeOffer.SellerId, out Trader seller)) { Log.Information("Trader {UserId} attempted to accept trade offer {TradeOfferId} but seller ({UserId}) was not found.", buyer.Id, offerId, tradeOffer.SellerId); return(false); } // Lock the buyer to make sure that they don't make multiple transactions at once, potentially overspending lock (buyer) { if (!TraderHasFunds(buyer, tradeOffer.Asking)) { Log.Information("Trader {UserId} attempted to accept trade offer {TradeOfferId} but had insufficient funds", buyer.Id, offerId); return(false); } // If all else checks out (buyer funds, seller presence, etc.), attempt to grab the trade offer and remove // it from availabilty if (!TradeOffers.TryRemove(offerId, out tradeOffer)) { Log.Information("Trader {UserId} attempted to accept trade offer {TradeOfferId} but it was not available (2)", buyer.Id, offerId); return(false); } // Transfer beans RemoveBeans(buyer, tradeOffer.Asking); } // Beans can be added without locking. Nested locks for the buyer and seller would cause deadlocks. AddBeans(buyer, tradeOffer.Offering); AddBeans(seller, tradeOffer.Asking); Log.Information("Trader {UserId} has accepted trade offer {TradeOfferId} from seller {UserId}", buyer.Id, offerId, tradeOffer.SellerId); // Alert traders that the trade has been accepted and is no longer available var invalidCallbacks = new List <string>(); foreach (var callback in Callbacks) { try { callback.Value?.TradeAccepted(tradeOffer, buyer.Id); callback.Value?.RemoveTradeOffer(offerId); } catch (CommunicationException) { Log.Warning("Session {SessionId}'s channel closed unexpectedly; will remove from callback list", callback.Key); invalidCallbacks.Add(callback.Key); } } foreach (var id in invalidCallbacks) { Callbacks.TryRemove(id, out _); } return(true); }