duheng
2024-03-27 dc97e187c607119bbd2945b9a277db8da15f8dc0
WebApi/Controllers/AnaPrjController.cs
@@ -1,4 +1,5 @@
using IStation.Common;
using IStation.CalcModel;
using IStation.Common;
using IStation.Dto;
using System;
using System.Collections.Generic;
@@ -6,7 +7,9 @@
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;
@@ -20,6 +23,21 @@
    [RoutePrefix("AnaPrj")]
    public class AnaPrjController : ApiController
    {
        /// <summary>
        ///
        /// </summary>
        /// <param name="day"></param>
        /// <returns></returns>
        [Route("Debug")]
        [HttpGet]
        public IStation.Dto.ApiResult Debug(string info)
        {
            IStation.LogHelper.Info("debug:"+ info);
            return new IStation.Dto.ApiResult<string >("ok");
        }
        /// <summary>
        ///  
@@ -83,10 +101,9 @@
        public class SavePrjRequest
        {
            public string day { get; set; }
            public Model.AnaSetting settting { get; set; }
            public Model.AnaRequestBase requestBase { get; set; }
        {
            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; }
        }
@@ -97,9 +114,9 @@
        /// <returns></returns>
        [Route("SavePrj")]
        [HttpPost]
        public IStation.Dto.ApiResult SavePrj([FromBody] SavePrjRequest request)
        public async Task<IStation.Dto.ApiResult> SavePrj([FromBody] SavePrjRequest request)
        {
            if (request == null || request.day == null)
            if (request == null  )
            {
                return new IStation.Dto.ApiResult() { Code = ApiResultCode.Error, Message = "day null" };
            }
@@ -107,28 +124,74 @@
            {
                return new IStation.Dto.ApiResult() { Code = ApiResultCode.Error, Message = "prj null" };
            }
            DateTime d;
            if (!DateTime.TryParse(request.day, out d))
            {
                return new IStation.Dto.ApiResult() { Code = ApiResultCode.Error, Message = "day 格式不正确" };
            }
            var ret = Common.HistoryAnaPrjFileHelper.SavePrj(d, request.settting, request.requestBase, request.prj);
            var ret = Common.HistoryAnaPrjFileHelper.SavePrj(  request.settting, request.requestBase, request.prj);
            if (request.isSubmit)
            {
                ret = ZyConnectHelper.SubmitPrj(request.prj, () => { }, (f) => { }).Result;
                string error = await ZyConnectHelper.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<string>(error) {  Code = ApiResultCode.Error};
                }
                else
                {
                    IStation.LogHelper.Info("Submit prj finish (success) day:" + request.requestBase.StartTime);
                }
            }
            return new IStation.Dto.ApiResult<bool>(ret);
            return new IStation.Dto.ApiResult<bool>(ret) { Code = ApiResultCode.Success };
        }
        /// <summary>
        ///
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        [Route("CalcPrj")]
        [HttpPost]
        public async Task<IStation.Dto.ApiResult> CalcPrj([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);
            if (request.isSubmit)
            {
                string error = await ZyConnectHelper.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<string>(error) { Code = ApiResultCode.Error };
                }
                else
                {
                    IStation.LogHelper.Info("Submit prj finish (success) day:" + request.requestBase.StartTime);
                }
            }
            return new IStation.Dto.ApiResult<bool>(ret) { Code = ApiResultCode.Success };
        }