using Nirvana.Common; using Nirvana.Common.ApiBase; using Nirvana.Data; using SqlSugar; using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using YBDevice.Entity; namespace YBDevice.Api.DBServices { /// /// 用户测量处理 /// public partial class ResultApp : BaseApp { /// /// 增加测量记录 /// /// /// public async Task MeasureAsync(MeasureSubmitModel model) { if (model.height <= 0) { return new ResultInfo(ResultState.FAIL, "身高不可小于0"); } if (model.weight <= 0) { return new ResultInfo(ResultState.FAIL, "体重不可小于0"); } if (string.IsNullOrEmpty(model.ecode)) { return new ResultInfo(ResultState.FAIL, "设备码不可为空"); } using (var dbClient = ReadDbContext.GetInstance()) { //检查设备是否存在 var equ = await dbClient.Queryable().AnyAsync(x => x.Ecode == model.ecode); if (!equ) { return new ResultInfo(ResultState.FAIL, "设备未找到"); } //增加记录 await dbClient.Ado.UseStoredProcedure().ExecuteCommandAsync("proc_insertresult", new { }); //计算出本次测量结果的值并返回 return new ResultInfo(ResultState.SUCCESS, "success"); } } /// /// 获取历史记录 /// /// 查询参数 /// public async Task> GetHistoryListAsync(ParamQuery param) { using (var dbClient = ReadDbContext.GetInstance()) { int familyid = param.keyword.ToInt(); var tempquery = dbClient.Queryable().Where(x => x.FamilyId == familyid); RefAsync totalnum = 0; var query = await tempquery.OrderBy(x => x.createtime, OrderByType.Desc).ToPageListAsync(param.page, param.pagesize, totalnum); return new PageParms { page = param.page, Items = query, totalnum = totalnum, limit = param.pagesize }; } } } }