/// <summary> /// 删除银行卡 /// </summary> /// <param name="view"></param> /// <returns></returns> public ServiceResult RomoveBankCard(ApiBankCardInput view) { var model = Resolve <IBankCardService>().GetSingle(u => u.Number == view.BankCardId); Delete(model); return(ServiceResult.Success); }
public ApiResult Delete([FromQuery] ApiBankCardInput parameter) { if (!this.IsFormValid()) { return(ApiResult.Failure(this.FormInvalidReason(), MessageCodes.ParameterValidationFailure)); } var result = Resolve <IBankCardService>().RomoveBankCard(parameter); return(ToResult(result)); }
/// <summary> /// 增加或修改银行卡 /// </summary> /// <param name="view"></param> /// <returns></returns> public ServiceResult AddOrUpdateBankCard(ApiBankCardInput view) { //银行卡必须为数字不能以0开头 var r = new Regex("^([1-9][0-9]*)$"); if (!r.IsMatch(view.BankCardId)) { return(ServiceResult.FailedWithMessage("请正确输入银行卡号")); } if (view.BankCardId.Length < 10) { return(ServiceResult.FailedWithMessage("请正确输入银行卡号")); } if (view.Type == 0) { return(ServiceResult.FailedWithMessage("请选择银行类型")); } #region 使用阿里接口判断银行卡是否正确 var checkUrl = $"https://ccdcapi.alipay.com/validateAndCacheCardInfo.json?_input_charset=utf-8&cardNo={view.BankCardId}&cardBinCheck=true"; var httpRequest = (HttpWebRequest)WebRequest.CreateDefault(new Uri(checkUrl)); HttpWebResponse httpResponse = null; try { httpResponse = (HttpWebResponse)httpRequest.GetResponse(); } catch (WebException ex) { httpResponse = (HttpWebResponse)ex.Response; } var st = httpResponse.GetResponseStream(); var reader = new StreamReader(st, Encoding.GetEncoding("utf-8")); var readResult = reader.ReadToEnd(); try { var aliResult = readResult.DeserializeJson <AliResult>(); if (aliResult.Validated != "true") { return(ServiceResult.FailedWithMessage("请正确输入银行卡号")); } } catch (Exception e) { return(ServiceResult.FailedWithMessage("请正确输入银行卡号")); } #endregion 使用阿里接口判断银行卡是否正确 var bankCardList = Resolve <IBankCardService>().GetList(u => u.UserId == view.LoginUserId); if (bankCardList.Count >= 10) { return(ServiceResult.FailedWithMessage("银行卡最多只可绑定十张")); } var model = Resolve <IBankCardService>().GetSingle(u => u.Number == view.BankCardId); var bankCard = new BankCard { Number = view.BankCardId, Address = view.Address, Name = view.Name, Type = view.Type, UserId = view.LoginUserId, Id = view.Id.ToObjectId() }; if (model == null) { var result = Add(bankCard); if (!result) { return(ServiceResult.Failed); } return(ServiceResult.Success); } return(ServiceResult.FailedWithMessage("该银行卡已经绑定")); }