using IStation.CalcModel; using IStation.Common; using IStation.Dto; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Net; using System.Net.Http; using System.Security.Permissions; using System.Text; using System.Threading.Tasks; using System.Web; using System.Web.Http; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; namespace IStation.WebApi.Controllers { /// /// 计算配置 /// [RoutePrefix("AnaPrj")] public class AnaPrjController : ApiController { /// /// /// /// /// [Route("Debug")] [HttpGet] public IStation.Dto.ApiResult Debug(string info) { IStation.LogHelper.Info("debug:"+ info); //IStation.CalcModel.AnaPrj entity = new IStation.CalcModel.AnaPrj(); //entity.ID = "123"; //entity.StartTime = DateTime.Now; //entity.EndTime = DateTime.Now; //entity.Name = "232"; //IStation.CalcModel.AnaRequest ana_request = new AnaRequest(); //ana_request.TotalFlow取水总量 = 102; //var dal = new IStation.DAL.AnaProject(); //dal.Insert(entity, ana_request); var dal = new IStation.DAL.AnaProject(); var aa = dal.GetLastRecord(); return new IStation.Dto.ApiResult("ok"); } /// /// /// /// /// [Route("GetPrjByDay")] [HttpGet] public IStation.Dto.ApiResult GetPrjByDay(string day) { if (day == null) { return new IStation.Dto.ApiResult() { Code = ApiResultCode.Error, Message = "day null" }; } DateTime d; if (!DateTime.TryParse(day, out d)) { return new IStation.Dto.ApiResult() { Code = ApiResultCode.Error, Message = "day 格式不正确" }; } IStation.CalcModel.AnaRequestBase requestBase = null; var prj = Common.HistoryAnaPrjFileHelper.GetByDay(d,out requestBase); return new IStation.Dto.ApiResult(prj); } /// /// /// /// /// [Route("GetExistStatus")] [HttpGet] public IStation.Dto.ApiResult GetExistStatus(int year, int month) { var list = HistoryAnaPrjFileHelper.GetExistStatus(year, month); if (list == null) { list = new List(); } return new IStation.Dto.ApiResult>(list); } /// /// /// /// /// [Route("GetLastTimeOpenPumpCount")] [HttpGet] public IStation.Dto.ApiResult GetLastTimeOpenPumpCount(DateTime day) { var status = HistoryAnaPrjFileHelper.GetLastTime_OpenPumpStatus (day); if(status == null) { return new IStation.Dto.ApiResult(-1); } else { return new IStation.Dto.ApiResult(status.Count); } } /// /// /// /// /// [Route("GetLastTimeOpenPumpStatus")] [HttpGet] public IStation.Dto.ApiResult GetLastTimeOpenPumpStatus(DateTime day) { var status = HistoryAnaPrjFileHelper.GetLastTime_OpenPumpStatus(day); if(status == null) return new IStation.Dto.ApiResult(""); else return new IStation.Dto.ApiResult(string.Join(",",status)); } public class SavePrjRequest { public IStation.CalcModel.AnaSetting settting { get; set; } public IStation.CalcModel.AnaRequestBase requestBase { get; set; } public IStation.CalcModel.AnaPrj prj { get; set; } public bool isSubmit { get; set; } } /// /// /// /// /// [Route("SavePrj")] [HttpPost] public async Task SavePrj([FromBody] SavePrjRequest request) { if (request == null ) { return new IStation.Dto.ApiResult() { Code = ApiResultCode.Error, Message = "day null" }; } if (request.prj == null) { return new IStation.Dto.ApiResult() { Code = ApiResultCode.Error, Message = "prj null" }; } var ret = Common.HistoryAnaPrjFileHelper.SavePrj(request.settting, request.requestBase, request.prj); //插入到数据库 //var dal = new IStation.DAL.AnaProject(); //dal.Insert(request.prj, request.requestBase); if (request.isSubmit) { string error = await ZyProjectHelper.SubmitPrj(request.prj);//, (id) => { IStation.LogHelper.Info("SavePrj success id=" + id); }, (info) => { IStation.LogHelper.Info("SavePrj failse info:" + info); });//.Result; if(!string.IsNullOrEmpty(error)) { IStation.LogHelper.Info("Submit prj finish (fail) day:" + request.requestBase.StartTime + ",error:" + error); return new IStation.Dto.ApiResult(error) { Code = ApiResultCode.Error}; } else { IStation.LogHelper.Info("Submit prj finish (success) day:" + request.requestBase.StartTime); } } return new IStation.Dto.ApiResult(ret) { Code = ApiResultCode.Success }; } } }