public ActionResult Login(string loginName, string password) { ApiStatusCode apiCode = ApiStatusCode.OK; UserModel userData = AppServiceLogic.Instance.Login(loginName, password, ref apiCode); return(Json(new ResultModel(apiCode, userData))); }
private static IActionResult GetActionResult(Exception exception, out ApiStatusCode apiStatusCode) { Type exceptionType = exception.GetType(); if (exceptionType == typeof(BadRequestException)) { apiStatusCode = ApiStatusCode.BadRequest; var badRequestException = (BadRequestException)exception; return(new BadRequestObjectResult( new ApiServerResult(badRequestException.StatusCode, badRequestException.Message))); } if (exceptionType == typeof(UnauthorizedAccessException)) { apiStatusCode = ApiStatusCode.Forbidden; return(new ForbidResult()); } if (exceptionType == typeof(TimeoutException) && exception.Source.StartsWith("MongoDB", StringComparison.OrdinalIgnoreCase)) { apiStatusCode = ApiStatusCode.ServiceUnavailable; return(new JsonResult( new ApiServerResult(apiStatusCode, "Server is unavailable."))); } apiStatusCode = ApiStatusCode.InternalServerError; return(new JsonResult( new ApiServerResult(apiStatusCode, "An unhandled error occurred."))); }
public static string GetSuggestionHint(this ApiStatusCode code) { var type = code.GetType(); var field = type.GetField(Enum.GetName(type, code)); return(field.GetCustomAttribute <StatusCodeDescriptionAttribute>(false)?.SuggestionHint ?? "未说明"); }
/// <summary> /// Returns simple API status code. /// </summary> /// <param name="code">API code to return.</param> /// <returns>Action result which represent specific API code.</returns> protected IActionResult StatusCode(ApiStatusCode code) { return(this.Ok(new ApiStatusResponse() { Code = code })); }
/// <summary> /// 编辑用户信息 /// </summary> private void EditUser() { ApiStatusCode apiCode = ApiStatusCode.OK; //方便测试,此处门店ID写死,真实逻辑是,根据当前登录的门店账户,获取门店ID bool flag = UserLogic.EditUserInfo(new UserRegisterModel() { loginName = GetFormValue("userloginname", ""), username = GetFormValue("username", ""), nickname = GetFormValue("usernickname", ""), loginPassword = EncryptHelper.MD5(GetFormValue("password", "")), mobile = GetFormValue("usermobile", ""), storeId = ConstConfig.storeId, ShopId = user.ID, UserIdentity = user.UserIndentity, UserId = UserId }, ref apiCode); if (flag) { json = JsonHelper.JsonSerializer(new ResultModel(ApiStatusCode.OK)); } else { json = JsonHelper.JsonSerializer(new ResultModel(apiCode)); } }
public ResultApiException(string message, Exception innerException, ApiStatusCode statuscode, string statusmessage, bool iserror = false) : base (message, innerException) { IsError = iserror; StatusCode = statuscode; StatusMessage = statusmessage; }
/// <summary> /// 编辑门店信息 /// </summary> /// <param name="model">The model.</param> /// <param name="apiCode">The API code.</param> /// <returns>true if XXXX, false otherwise.</returns> public bool EditShopInfo(ShopModel model, out ApiStatusCode apiCode) { apiCode = ApiStatusCode.OK; if (model.ShopID > 0) { if (dal.UpdateShopInfo(model)) { apiCode = ApiStatusCode.OK; return(true); } else { apiCode = ApiStatusCode.更新失败; } } else { int flag = dal.AddShopInfo(model); if (flag > 0) { return(true); } else { apiCode = ApiStatusCode.添加失败; } } return(false); }
/// <summary> /// 登录 /// </summary> /// <param name="loginName">Name of the login.</param> /// <param name="password">The password.</param> /// <param name="apiCode">The API code.</param> /// <returns>UserModel.</returns> public UserModel Login(string loginName, string password, ref ApiStatusCode apiCode) { using (var dal = FactoryDispatcher.UserFactory()) { UserModel model = dal.Login(loginName, password); if (model != null) { if (model.IsActive == 1) { apiCode = ApiStatusCode.OK; string token = EncryptHelper.MD5(StringHelper.CreateCheckCode(20)); if (dal.IsAuthTokenExist(model.UserId) ? dal.UpdateUserAuthToken(model.UserId, token) : dal.AddUserAuthToken(model.UserId, token)) { model.token = token; } return(model); } else { apiCode = ApiStatusCode.账户已禁用; return(null); } } else { apiCode = ApiStatusCode.账户不存在; return(null); } } }
/// <summary> /// 编辑门店信息 /// </summary> /// <param name="model">The model.</param> /// <param name="apiCode">The API code.</param> /// <returns>true if XXXX, false otherwise.</returns> public bool EditGoodsInfo(GoodsModel model, out ApiStatusCode apiCode) { apiCode = ApiStatusCode.OK; if (model.GoodsId > 0) { if (dal.UpdateGoodsInfo(model)) { apiCode = ApiStatusCode.OK; return(true); } else { apiCode = ApiStatusCode.更新失败; } } else { int flag = dal.AddGoodsInfo(model); if (flag > 0) { return(true); } else { apiCode = ApiStatusCode.添加失败; } } return(false); }
public ApiResponse CreateResponse(object body, string message, ApiStatusCode code) { Validation validation = new Validation(); validation.Add(message); return(CreateResponse(body, validation, code)); }
/// <summary> /// 返回程序错误 /// </summary> /// <param name="code">自定义状态码</param> /// <returns></returns> public static JsonResult Error(ApiStatusCode status, string exception) { int code = (int)status; ApiResult result = new ApiResult(false, code, exception); return(new JsonResult(result)); }
/// <summary> /// 成功,包含状态消息、业务数据、扩展数据 /// </summary> /// <param name="code">自定义状态码</param> /// <param name="data">业务数据</param> /// <param name="exted">扩展数据</param> /// <returns></returns> public static JsonResult Success(ApiStatusCode status, object data, object exted) { int code = (int)status; ApiResult result = new ApiResult(true, code, code.GetEnumDescription(typeof(ApiStatusCode)), data, exted); return(new JsonResult(result)); }
/// <summary> /// 返回自定义错误 /// </summary> /// <param name="code">自定义状态码</param> /// <returns></returns> public static JsonResult Error(ApiStatusCode status) { int code = (int)status; ApiResult result = new ApiResult(false, code, code.GetEnumDescription(typeof(ApiStatusCode))); return(new JsonResult(result)); }
{/// <summary> /// 检查登录 /// </summary> /// <param name="appCode"></param> /// <returns></returns> public static bool CheckLogin(ref ApiStatusCode appCode) { AdminLoginModel data = GetCurrentUser(); if (data != null) { data = UserLogic.Instance.Login(data.LoginName, data.LoginPassword); if (data != null) { if (data.UserStatus == 1) { WriteCookies(data); appCode = ApiStatusCode.OK; return(true); } else { appCode = ApiStatusCode.账户已禁用; } } else { appCode = ApiStatusCode.账户密码不正确; } } else { appCode = ApiStatusCode.没有登录; } return(false); }
/// <summary> /// 盟友注册申请 /// </summary> private void AllyApply() { int uid = GetFormValue("userid", 0); int mid = GetFormValue("mid", 0); string nickName = GetFormValue("nickname", ""); string pwd = GetFormValue("pwd", ""); string username = GetFormValue("username", ""); string usermobile = GetFormValue("usermobile", ""); int sex = GetFormValue("sex", 0); if (mid > 0) { uid = mid; uid = uid - 2000; } if (uid > 0) { ApiStatusCode code = ApiStatusCode.OK; if (UserLogic.IsExist(uid)) { bool flag = UserLogic.AllyApply(uid, usermobile, pwd, nickName, username, sex, ref code); json = JsonHelper.JsonSerializer(new ResultModel(code)); } else { json = JsonHelper.JsonSerializer(new ResultModel(ApiStatusCode.无效的盟主ID)); } } else { json = JsonHelper.JsonSerializer(new ResultModel(ApiStatusCode.无效的盟主ID)); } }
/// <summary> /// 盟豆兑换 /// </summary> /// <param name="userId">The user identifier.</param> /// <param name="amount">The amount.</param> /// <param name="code">The code.</param> /// <returns>true if XXXX, false otherwise.</returns> public static bool ConvertToBean(int userId, int amount, ref ApiStatusCode code) { if (amount < 100) { code = ApiStatusCode.兑换的盟豆数量不能少于100; return(false); } UserModel userModel = null; using (var dal = FactoryDispatcher.UserFactory()) { userModel = dal.GetUserModel(userId); } decimal userAmount = userModel.MengBeans - userModel.MengBeansLocked; if (userAmount < amount) { code = ApiStatusCode.你的盟豆不够; return(false); } using (var dal = FactoryDispatcher.UserFactory()) { dal.addMengBeansLocked(userId, amount); dal.insertBeansConvert(userId, userModel.BelongOne, amount); code = ApiStatusCode.OK; } return(true); }
public static bool AllyApply(int userId, string mobile, string password , string nickname, string userName , int sex, ref ApiStatusCode apiCode) { using (var dal = FactoryDispatcher.UserFactory()) { if (!RegexHelper.IsValidMobileNo(mobile)) { apiCode = ApiStatusCode.无效手机号; } else if (dal.ExistApplyFriend(mobile)) { apiCode = ApiStatusCode.你已申请请耐心等到审核; } else if (dal.UserExist(mobile, ConstConfig.storeId)) { apiCode = ApiStatusCode.手机用户已存在; } else { dal.SaveApplyFriend(userId, mobile, EncryptHelper.MD5(password), nickname, userName, sex); apiCode = ApiStatusCode.OK; } return(true); } }
/// <summary> /// 领取优惠券 /// </summary> private void onCouponGet() { int couponid = GetFormValue("couponid", 0); int userid = GetFormValue("userid", 0); int currentuserid = GetFormValue("currentuserid", 0); string name = GetFormValue("name", ""); string mobile = GetFormValue("mobile", ""); string from = GetFormValue("from", ""); string shops = GetFormValue("shops", ""); //var couponInfo = UserLogic.Instance.GetMyCouponModel(currentuserid, couponid); //if (couponInfo == null) //{ ApiStatusCode apiCode = ApiStatusCode.OK; bool flag = UserLogic.Instance.onCouponGet(couponid, userid, currentuserid, name, mobile, from, shops, ref apiCode); if (flag) { json = JsonConvert.SerializeObject(new ResultModel(ApiStatusCode.OK)); } else { json = JsonConvert.SerializeObject(new ResultModel(apiCode)); } //} //else // json = JsonConvert.SerializeObject(new ResultModel(ApiStatusCode.优惠券已领完, "您已领取过了,无需重复领取")); }
/// <summary> /// 编辑用户信息 /// </summary> /// <param name="model"></param> /// <returns></returns> public static bool EditUserInfo(UserRegisterModel model, ref ApiStatusCode apiCode) { apiCode = ApiStatusCode.OK; using (var dal = FactoryDispatcher.UserFactory()) { if (model.UserId > 0) { bool b = dal.UpdateUserInfo(model); if (!b) { apiCode = ApiStatusCode.更新失败; } return(b); } else { int flag = dal.AddUserInfo(model); if (flag == -1) { apiCode = ApiStatusCode.账户已存在; } else if (flag == 0) { apiCode = ApiStatusCode.添加失败; } return(flag > 0); } } }
/// <summary> /// Returns API status code which contains information about errors. /// </summary> /// <param name="code">API code to return.</param> /// <param name="errors">Sequence of errors.</param> /// <returns>Action result which represent specific API code.</returns> protected IActionResult ErrorCode(ApiStatusCode code, IEnumerable <string> errors) { return(this.Ok(new ApiErrorStatusResponse() { Code = code, Errors = errors.ToArray() })); }
public ApiResponse CreateResponse(object data, ApiStatusCode code) { return(new ApiResponse() { Body = data, Code = code }); }
/// <summary> /// Returns API status code which contains information about errors. /// </summary> /// <param name="code">API code to return.</param> /// <param name="errors">Sequence of errors.</param> /// <returns>Action result which represent specific API code.</returns> protected IActionResult ErrorCode(ApiStatusCode code, IEnumerable <IdentityError> errors) { return(this.Ok(new ApiErrorStatusResponse() { Code = code, Errors = errors.Select(_ => _.Description).ToArray() })); }
public ApiException(ApiStatusCode statusCode, IApiStatusMessageDictionary statusMessageDictionary, string message = null, string details = null) : base(statusCode, statusMessageDictionary, message) { Details = details; }
/// <summary> /// 盟友申请审核 /// </summary> /// <param name="userId"></param> /// <param name="id"></param> /// <param name="status">1成功2拒绝</param> /// <returns></returns> public static bool AllyApplyAudit(int userId, int id, int status, ref ApiStatusCode code) { using (var dal = FactoryDispatcher.UserFactory()) { ApplyFriendModel model = dal.getApplyFriendModel(id); if (model == null || model.UserId != userId) { code = ApiStatusCode.操作失败; return(false); } if (status == 1) { //using (TransactionScope scope = new TransactionScope()) //{ dal.updateApplyFriendStatus(id, 1); UserRegisterModel register = new UserRegisterModel(); register.belongOne = userId; register.loginName = model.Mobile; register.loginPassword = model.Password; register.mobile = model.Mobile; register.nickname = model.NickName; register.ShopId = dal.getUserShopId(userId); register.BelongShopId = ShopLogic.GetBelongShopId(register.ShopId); register.storeId = ConstConfig.storeId; register.UserIdentity = 0; register.username = model.UserName; register.userGender = model.Sex == 1 ? "M" : "F"; if (dal.AddUserInfo(register) > 0) { masterUpdate(userId); //获取积分奖励配置 ScoreConfigModel scoreCfg = ConfigLogic.GetScoreConfig(); //添加盟主创建订单,奖励积分 if (scoreCfg.CreateOrderScore > 0 && dal.addUserIntegral(userId, scoreCfg.CreateOrderScore) > 0) { BeansRecordsModel model2 = new BeansRecordsModel(); model2.Amount = scoreCfg.CreateOrderScore; model2.UserId = userId; model2.LogType = 1; model2.Income = 1; model2.Remark = "邀请盟友奖励"; model2.OrderId = ""; model2.CreateTime = DateTime.Now; dal.AddBeansRecords(model2); } } // scope.Complete(); //} } else if (status == 2) { dal.updateApplyFriendStatus(id, 2); } } return(true); }
public ApiResponse(ApiStatusCode apiStatusCode, string message) { StatusCode = apiStatusCode; if (string.IsNullOrEmpty(message)) message = Enum.GetName(typeof(ApiStatusCode), apiStatusCode); Message = message; }
public IVPNRestRequestApiException(System.Net.HttpStatusCode httpRetCode, ApiStatusCode apiStatusCode, string apiMessage, ResponseWithStatus responseWithStatus = null) : base($"{(string.IsNullOrEmpty(apiMessage) ? $"{(int)apiStatusCode} - {apiStatusCode}" : (apiMessage + $" {(int)apiStatusCode}"))}") { HttpRetCode = httpRetCode; ResponseWithStatus = responseWithStatus; ApiStatusCode = apiStatusCode; ApiMessage = apiMessage; }
public void PutTest(int statusCode, int expectedStatusCode) { //Arrange var api = new ApiStatusCode(); //Act var result = api.Put(statusCode); //Assert Assert.Equal((int)result.StatusCode, expectedStatusCode); }
/// <summary> /// 获取菜单 /// </summary> private void GetMenuList() { ApiStatusCode appCode = ApiStatusCode.OK; SystemLeftModel resultData = new SystemLeftModel(); if (CheckLogin(ref appCode)) { resultData.menuData = SystemLogic.GetMenuList(user.UserIndentity); resultData.userData = user; resultData.authority = ""; } json = JsonHelper.JsonSerializer(new ResultModel(appCode, resultData)); }
/// <summary> /// 获取枚举的描述 /// </summary> /// <param name="enumValue"></param> /// <returns></returns> public static string GetEnumDesc(this ApiStatusCode enumValue) { string str = enumValue.ToString(); System.Reflection.FieldInfo field = enumValue.GetType().GetField(str); object[] objs = field.GetCustomAttributes(typeof(System.ComponentModel.DescriptionAttribute), false); if (objs == null || objs.Length == 0) { return(string.Empty); } System.ComponentModel.DescriptionAttribute da = (System.ComponentModel.DescriptionAttribute)objs[0]; return(da.Description); }
public ActionResult Login(string loginName, string password) { try { ApiStatusCode apiCode = ApiStatusCode.OK; UserModel userData = AppServiceLogic.Instance.Login(loginName, password, OS, ref apiCode); return(Json(new ResultModel(apiCode, userData))); } catch (Exception ex) { LogHelper.Log(string.Format("Login user:message:{0},StackTrace:{1}", ex.Message, ex.StackTrace), LogHelperTag.ERROR); return(Json(new ResultModel(ApiStatusCode.SERVICEERROR))); } }
private ApiResponse CreateResponse(object body, Validation validation, ApiStatusCode code) { var responseApi = new ApiResponse() { Body = body, Code = code }; if (validation != null) { responseApi.Validations.AddRange(validation.Items.Select(i => i.Message).ToList()); } return(responseApi); }
public ActionResult AllyApplyAudit(int id, int status) { try { ApiStatusCode code = ApiStatusCode.OK; int userId = GetAuthUserId(); UserLogic.AllyApplyAudit(userId, id, status, ref code); return(Json(new ResultModel(ApiStatusCode.OK, code))); } catch (Exception ex) { LogHelper.Log(string.Format("AllyApplyAudit user:message:{0},StackTrace:{1}", ex.Message, ex.StackTrace), LogHelperTag.ERROR); return(Json(new ResultModel(ApiStatusCode.SERVICEERROR))); } }
public ProtocolException(ApiStatusCode statusCode, string message) : base(message) { this.StatusCode = statusCode; }
public ProtocolException(ApiStatusCode statusCode) : base() { this.StatusCode = statusCode; }
/// <summary> /// Constructor for BpApiException.s /// </summary> /// <param name="code">The HTTP status code to re-throw in the web layer.</param> public BpApiException(ApiStatusCode code) { this.RethrowableStatusCode = code; }