public JsonResult Delete(int id) { var bll = new AppUpdateBll(); var success = bll.DeleteSoftly(id); return(Json(success ? ErrorModel.OperateSuccess : ErrorModel.OperateFailed)); }
public JsonResult Add(AppUpdate model, int level) { if (model != null) { model.Version = GenerateVersion(level); model.Token = $"guoli.app.upgradedat:{model.AddTime.ToString("yyyyMMddHHmmss")}".GetMd5(); var bll = new AppUpdateBll(); var success = bll.Insert(model).Id > 0; return(Json(success ? ErrorModel.OperateSuccess : ErrorModel.OperateFailed)); } return(Json(ErrorModel.InputError)); }
public JsonResult Upgrade(string version) { var latest = new AppUpdateBll().QueryAll().LastOrDefault(); if (latest == null) { return(Json(ErrorModel.AppNotUpgraded)); } if (string.IsNullOrEmpty(version)) { // 版本号为空且数据库不为空,则返回最新版本信息 return(Json(ErrorModel.AppUpgraded(latest))); } // 验证版本号格式 if (!Regex.IsMatch(version, @"^\d+\.\d+\.\d+\.\d+$")) { return(Json(ErrorModel.InputError)); } try { if (version != latest.Version) { // 版本号与最新发布的版本号不一致 // 说明发布了最新版本 return(Json(ErrorModel.AppUpgraded(latest))); } return(Json(ErrorModel.AppNotUpgraded)); } catch (Exception ex) { ExceptionLogBll.ExceptionPersistence(nameof(AppController), nameof(AppController), ex); return(Json(ErrorModel.InputError)); } }
/// <summary> /// 根据app更新级别,在最近发布的app版本号的基础上生成新的版本号 /// 若是第一次发布,则返回1.0.0.xxxx /// </summary> /// <param name="level">app更新级别(1.重大版本更新;2.模块局部更新;3.BUG修复;)</param> /// <returns>带有发布日期的版本号</returns> private string GenerateVersion(int level) { if (level < 1 || level > 3) { return(""); } var bll = new AppUpdateBll(); var latest = bll.QueryAll().LastOrDefault(); var pubTime = DateTime.Now.ToString("yyyyMMddHHmmss"); if (latest == null) { return("1.0.0." + pubTime); } var versionNums = latest.Version.Split('.').Select(s => Convert.ToInt64(s)).ToList(); var mainVersion = versionNums[0]; var subVersion = versionNums[1]; var reviseVersion = versionNums[2]; if (level == 1) { // 重大版本更新,将主版本号+1 return($"{mainVersion + 1}.0.0.{pubTime}"); } else if (level == 2) { // 模块局部更新,将次版本号+1 return($"{mainVersion}.{subVersion + 1}.0.{pubTime}"); } else { // BUG修复,将修订版本号+1 return($"{mainVersion}.{subVersion}.{reviseVersion + 1}.{pubTime}"); } }