Beispiel #1
0
 public ActionResult Excute(KPI_EXCUTE_VIEWMODEL vm)
 {
     try
     {
         var msg = string.Empty;
         _procStateService.KPIDoExecute(ProjectProvider.Instance.Current.SD_ID, vm.primaryKey);
         _procLogService.Log(_procLogService.KPICatCode(), vm?.startDate, vm?.endDate, vm.primaryKey);
         //消息队列执行方式
         //_kpiService.MQExcute(vm);
         //多线程执行模式
         _kpiService.TaskExcute(new List <KPI_EXCUTE_VIEWMODEL>()
         {
             vm
         });
         _procLogService.Insert(new PDP_PROC_LOG()
         {
             PROC_CONTENT_ID = vm.primaryKey,
             SD_ID           = ProjectProvider.Instance.Current.SD_ID,
             PROC_CAT_CODE   = "3",
             PROC_STAT_CODE  = 2,
         });
         return(Success("执行进行中,可以关闭页面,在首页查看进度!!!"));
     }
     catch (Exception e)
     {
         _errorLogService.LogErr(e.ToString(), ConvertExeFlag(vm.flag));
         return(Error("执行进行中,可以关闭页面,在首页查看进度!!!"));
     }
 }
Beispiel #2
0
 public ActionResult Lock(KPI_EXCUTE_VIEWMODEL vm)
 {
     try
     {
         return(Success(_kpiService.LockKPI(vm)));
     }
     catch (Exception e)
     {
         _errorLogService.LogErr(e.ToString(), ConvertExeFlag(vm.flag));
         return(Error(e.Message));
     }
 }
Beispiel #3
0
        public ActionResult Test(KPI_EXCUTE_VIEWMODEL vm)
        {
            try
            {
                var msg = string.Empty;
                _procLogService.Log(_procLogService.KPICatCode(), vm?.startDate, vm?.endDate, vm.primaryKey);
                var pageData = _kpiService.Test(vm);

                var result = new LayPadding <TC_SD_EPKI_VALUE_VIEWMODEL>()
                {
                    result = true,
                    msg    = msg,
                    list   = pageData.Items,
                    count  = pageData.TotalItems
                };
                return(Content(result.ToJson()));
            }
            catch (Exception e)
            {
                _errorLogService.LogErr(e.ToString(), ConvertExeFlag(vm.flag));
                return(NoPage());
            }
        }
Beispiel #4
0
 public ActionResult ExportResult(KPI_EXCUTE_VIEWMODEL vm)
 {
     try
     {
         var id      = int.Parse(vm.primaryKey);
         var kpiname = _kpiService.Get(r => r.SD_EKPI_ID == id).SD_EKPI_NAME;
         //表头
         var title = new KPI_RESULT_VIEWMODEL()
         {
             PATIENT_ID = "PATIENT_ID",
             SD_CPAT_NO = "入组样本ID",
             VALUE      = "结果值"
         };
         //数据体
         var pageData = _kpiService.GetKpiResult(vm);
         //百分比
         var fenzi   = pageData.Where(r => r.VALUE != "0.0000").ToList().Count * 100;
         var percent = Math.Round((double)fenzi / (double)pageData.Count, 2);
         pageData.Add(new KPI_RESULT_VIEWMODEL()
         {
             PATIENT_ID = "百分比",
             SD_CPAT_NO = "******",
             VALUE      = $"{percent}%"
         });
         var data = new Dictionary <string, List <KPI_RESULT_VIEWMODEL> >();
         data.Add("title", new List <KPI_RESULT_VIEWMODEL>()
         {
             title
         });
         data.Add("data", pageData);
         return(Content(new { title = kpiname, data = data }.ToJson()));
     }
     catch (Exception e)
     {
         return(Error(e.ToString()));
     }
 }