Example #1
0
        public ActionResult AlarmEditSaveChange(ALarmEditViewModel model)
        {
            using (ANDONEntities entities = new ANDONEntities())
            {
                bool result = false;
                try
                {
                    Alarm_edit alarm = entities.Alarm_edit.Where(t => t.ID == model.ID).FirstOrDefault();
                    alarm.Start_time         = model.Start_time;
                    alarm.End_time           = model.End_time;
                    alarm.Reason             = model.Reason;
                    alarm.Responsible        = model.Responsible;
                    alarm.Division_of_respon = model.Division_of_respon;
                    UserModel user = GetCurrentUser();
                    alarm.Recorder = user.UName + "(" + user.UID + ")";

                    DateTime startTime, endTime;
                    if (model.Start_time.HasValue && model.End_time.HasValue)
                    {
                        startTime = model.Start_time.Value;
                        endTime   = model.End_time.Value;
                        TimeSpan ts = endTime - startTime;
                        alarm.Duration = ts.TotalSeconds.ToString();
                    }
                    entities.SaveChanges();
                    result = true;
                }
                catch (Exception e)
                {
                }

                return(Json(result));
            }
        }
Example #2
0
        public ActionResult GetAlarmDetailList(FilterForAlarmDetail filter)
        {
            using (ANDONEntities entities = new ANDONEntities())
            {
                var alarm_edits = entities.Alarm_edit.Where(t => t.Delete_flag == false);
                if (filter.Start_time != null && filter.End_time != null)
                {
                    DateTime startTime = Convert.ToDateTime(filter.Start_time);
                    DateTime endTime   = Convert.ToDateTime(filter.End_time);
                    alarm_edits = alarm_edits.Where(t => t.Start_time >= startTime && t.End_time <= endTime);
                }
                if (!String.IsNullOrEmpty(filter.Alarm_area))
                {
                    alarm_edits = alarm_edits.Where(t => t.Alarm_area == filter.Alarm_area);
                }
                if (!String.IsNullOrEmpty(filter.Division_of_respon))
                {
                    alarm_edits = alarm_edits.Where(t => t.Division_of_respon == filter.Division_of_respon);
                }
                if (!String.IsNullOrEmpty(filter.Responsible))
                {
                    alarm_edits = alarm_edits.Where(t => t.Responsible == filter.Responsible);
                }
                if (!String.IsNullOrEmpty(filter.Recorder))
                {
                    alarm_edits = alarm_edits.Where(t => t.Recorder.Contains(filter.Recorder));
                }

                int totalCount = alarm_edits.Count();
                alarm_edits = alarm_edits.OrderBy(t => t.Start_time).Skip(filter.PageSize * (filter.PageIndex - 1)).Take(filter.PageSize);
                var result = from a in alarm_edits
                             select new AlarmDetailViewModel
                {
                    Start_time         = a.Start_time,
                    End_time           = a.End_time,
                    Station            = a.Station,
                    Reason             = a.Reason,
                    Responsible        = a.Responsible,
                    Duration           = a.Duration,
                    Division_of_respon = a.Division_of_respon,
                    Position           = a.Position,
                    Recorder           = a.Recorder,
                    Alarm_class        = a.Alarm_class
                };
                return(Json(new
                {
                    iTotalDisplayRecords = totalCount,
                    aaData = result.ToList()
                }
                            , JsonRequestBehavior.AllowGet));
            }
        }
        public ActionResult GetNotice(FilterForAlarmEdit filter)
        {
            using (ANDONEntities entities = new ANDONEntities())
            {
                var result = entities.Notice.FirstOrDefault();

                return(Json(new
                {
                    aaData = result
                }
                            , JsonRequestBehavior.AllowGet));
            }
        }
Example #4
0
        public ActionResult DeleteAlarmEidt(int ID)
        {
            bool result = false;

            using (ANDONEntities entities = new ANDONEntities())
            {
                Alarm_edit a = entities.Alarm_edit.Find(ID);
                a.Delete_flag = true;
                entities.SaveChanges();
                result = true;
            }
            return(Json(result));
        }
        public ActionResult IntFilter()
        {
            using (ANDONEntities entities = new ANDONEntities())
            {
                //AlarmClass
                List <AlarmClassView> alarmClassList = entities.AlarmClassView.ToList();
                List <string>         alarmClasses   = new List <string>();
                alarmClasses.Add("全部");
                foreach (AlarmClassView alarmClass in alarmClassList)
                {
                    alarmClasses.Add(alarmClass.value);
                }
                alarmClasses.Add("非拉动停线");

                //AlarmArea
                string        areasStr   = ConfigurationManager.AppSettings["AlarmArea"];
                List <string> alarmAreas = new List <string>();
                foreach (string area in areasStr.Split(','))
                {
                    alarmAreas.Add(area);
                }

                //Division_of_respon
                string        Division_of_respon_str = ConfigurationManager.AppSettings["Division_of_respon"];
                List <string> Division_of_respons    = new List <string>();
                foreach (string d in Division_of_respon_str.Split(','))
                {
                    Division_of_respons.Add(d);
                }

                //Responsible
                string        ResponsibleStr = ConfigurationManager.AppSettings["Responsible"];
                List <string> Responsibles   = new List <string>();
                foreach (string r in ResponsibleStr.Split(','))
                {
                    Responsibles.Add(r);
                }


                return(Json(new
                {
                    alarmClasses = alarmClasses,
                    alarmAreas = alarmAreas,
                    Division_of_respons = Division_of_respons,
                    Responsibles = Responsibles
                }
                            , JsonRequestBehavior.AllowGet));
            }
        }
Example #6
0
 public ActionResult Login(UserModel model)
 {
     using (ANDONEntities entities = new ANDONEntities())
     {
         string   pwd  = Untils.MD5Encrypt(model.PWD);
         user_log user = entities.user_log.Where(t => t.UID == model.UID && t.PWD == pwd).FirstOrDefault();
         if (user != null)
         {
             user.LogInTime = DateTime.Now;
             entities.SaveChanges();
             Mapper.CreateMap <user_log, UserModel>();       // 配置
             model = Mapper.Map <user_log, UserModel>(user); // 使用AutoMapper自动映射
             SessionHelper.Add("adminInfo", model, 120);
             return(Json(true));
         }
         else
         {
             return(Json(false));
         }
     }
 }
 public ActionResult ModifyNotice(Notice model)
 {
     using (ANDONEntities entities = new ANDONEntities())
     {
         bool result = false;
         try
         {
             var entity = entities.Notice.Find(model.ID);
             entity.Message = model.Message;
             entities.SaveChanges();
             result = true;
         }
         catch
         {
             result = false;
         }
         return(Json(new
         {
             result
         }
                     , JsonRequestBehavior.AllowGet));
     }
 }
Example #8
0
        public ActionResult UpdateSchedule(List <DateScheduleViewModel> list)
        {
            bool result = false;

            using (ANDONEntities entities = new ANDONEntities())
            {
                ShiftSet s1 = new ShiftSet
                {
                    shift = "1",
                    _1    = list[0].Day.StartTime.Split(':')[0],
                    _2    = list[0].Day.StartTime.Split(':')[1],
                    _3    = list[0].Day.EndTime.Split(':')[0],
                    _4    = list[0].Day.EndTime.Split(':')[1],
                    _5    = list[1].Day.StartTime.Split(':')[0],
                    _6    = list[1].Day.StartTime.Split(':')[1],
                    _7    = list[1].Day.EndTime.Split(':')[0],
                    _8    = list[1].Day.EndTime.Split(':')[1],
                    _9    = list[2].Day.StartTime.Split(':')[0],
                    _10   = list[2].Day.StartTime.Split(':')[1],
                    _11   = list[2].Day.EndTime.Split(':')[0],
                    _12   = list[2].Day.EndTime.Split(':')[1],
                    _13   = list[3].Day.StartTime.Split(':')[0],
                    _14   = list[3].Day.StartTime.Split(':')[1],
                    _15   = list[3].Day.EndTime.Split(':')[0],
                    _16   = list[3].Day.EndTime.Split(':')[1],
                    _17   = list[4].Day.StartTime.Split(':')[0],
                    _18   = list[4].Day.StartTime.Split(':')[1],
                    _19   = list[4].Day.EndTime.Split(':')[0],
                    _20   = list[4].Day.EndTime.Split(':')[1],
                };
                ShiftSet s2 = new ShiftSet
                {
                    shift = "2",
                    _1    = list[0].Night.StartTime.Split(':')[0],
                    _2    = list[0].Night.StartTime.Split(':')[1],
                    _3    = list[0].Night.EndTime.Split(':')[0],
                    _4    = list[0].Night.EndTime.Split(':')[1],
                    _5    = list[1].Night.StartTime.Split(':')[0],
                    _6    = list[1].Night.StartTime.Split(':')[1],
                    _7    = list[1].Night.EndTime.Split(':')[0],
                    _8    = list[1].Night.EndTime.Split(':')[1],
                    _9    = list[2].Night.StartTime.Split(':')[0],
                    _10   = list[2].Night.StartTime.Split(':')[1],
                    _11   = list[2].Night.EndTime.Split(':')[0],
                    _12   = list[2].Night.EndTime.Split(':')[1],
                    _13   = list[3].Night.StartTime.Split(':')[0],
                    _14   = list[3].Night.StartTime.Split(':')[1],
                    _15   = list[3].Night.EndTime.Split(':')[0],
                    _16   = list[3].Night.EndTime.Split(':')[1],
                    _17   = list[4].Night.StartTime.Split(':')[0],
                    _18   = list[4].Night.StartTime.Split(':')[1],
                    _19   = list[4].Night.EndTime.Split(':')[0],
                    _20   = list[4].Night.EndTime.Split(':')[1],
                };

                List <ShiftSet> sets = new List <ShiftSet> {
                    s1, s2
                };
                foreach (ShiftSet set in sets)
                {
                    string sql = string.Format(@"UPDATE [dbo].[shift_set]
   SET [1] = '{0}'
      ,[2] = '{1}'
      ,[3] = '{2}'
      ,[4] = '{3}'
      ,[5] = '{4}'
      ,[6] = '{5}'
      ,[7] = '{6}'
      ,[8] = '{7}'
      ,[9] = '{8}'
      ,[10] = '{9}'
      ,[11] = '{10}'
      ,[12] = '{11}'
      ,[13] = '{12}'
      ,[14] = '{13}'
      ,[15] = '{14}'
      ,[16] = '{15}'
      ,[17] = '{16}'
      ,[18] = '{17}'
      ,[19] = '{18}'
      ,[20] = '{19}'
 WHERE [shift]='{20}'", set._1, set._2, set._3, set._4, set._5, set._6, set._7, set._8, set._9, set._10, set._11, set._12, set._13, set._14, set._15, set._16, set._17, set._18, set._19, set._20, set.shift);
                    entities.Database.ExecuteSqlCommand(sql);
                }
                entities.SaveChanges();
                result = true;
            }
            return(Json(result));
        }
Example #9
0
        public ActionResult GetShcedule()
        {
            List <DateScheduleViewModel> result = new List <DateScheduleViewModel>();

            using (ANDONEntities entities = new ANDONEntities())
            {
                List <ShiftSet> list = entities.Database.SqlQuery <ShiftSet>(@"SELECT [1] _1,[2] _2,[3] _3,[4] _4,[5] _5,[6] _6,[7] _7,[8] _8,[9] _9,[10] _10,[11] _11,[12] _12,[13] _13,[14] _14,[15] _15,[16] _16,[17] _17,[18] _18,[19] _19,[20] _20,shift FROM shift_set").ToList();

                ShiftSet dayS   = list.Where(t => t.shift.Trim() == "1").FirstOrDefault();
                ShiftSet nightS = list.Where(t => t.shift.Trim() == "2").FirstOrDefault();


                //1
                DaySchedule day = new DaySchedule {
                    StartTime = dayS._1.Trim() + ":" + dayS._2.Trim(), EndTime = dayS._3.Trim() + ":" + dayS._4.Trim()
                };
                NightSchedule night = new NightSchedule {
                    StartTime = nightS._1.Trim() + ":" + nightS._2.Trim(), EndTime = nightS._3.Trim() + ":" + nightS._4.Trim()
                };
                DateScheduleViewModel model = new DateScheduleViewModel {
                    Day = day, Night = night, Name = "开停线"
                };
                result.Add(model);
                //2
                day = new DaySchedule {
                    StartTime = dayS._5.Trim() + ":" + dayS._6.Trim(), EndTime = dayS._7.Trim() + ":" + dayS._8.Trim()
                };
                night = new NightSchedule {
                    StartTime = nightS._5.Trim() + ":" + nightS._6.Trim(), EndTime = nightS._7.Trim() + ":" + nightS._8.Trim()
                };
                model = new DateScheduleViewModel {
                    Day = day, Night = night, Name = "休息一"
                };
                result.Add(model);
                //3
                day = new DaySchedule {
                    StartTime = dayS._9.Trim() + ":" + dayS._10.Trim(), EndTime = dayS._11.Trim() + ":" + dayS._12.Trim()
                };
                night = new NightSchedule {
                    StartTime = nightS._9.Trim() + ":" + nightS._10.Trim(), EndTime = nightS._11.Trim() + ":" + nightS._12.Trim()
                };
                model = new DateScheduleViewModel {
                    Day = day, Night = night, Name = "休息二"
                };
                result.Add(model);
                //4
                day = new DaySchedule {
                    StartTime = dayS._13.Trim() + ":" + dayS._14.Trim(), EndTime = dayS._15.Trim() + ":" + dayS._16.Trim()
                };
                night = new NightSchedule {
                    StartTime = nightS._13.Trim() + ":" + nightS._14.Trim(), EndTime = nightS._15.Trim() + ":" + nightS._16.Trim()
                };
                model = new DateScheduleViewModel {
                    Day = day, Night = night, Name = "休息三"
                };
                result.Add(model);
                //5
                day = new DaySchedule {
                    StartTime = dayS._17.Trim() + ":" + dayS._18.Trim(), EndTime = dayS._19.Trim() + ":" + dayS._20.Trim()
                };
                night = new NightSchedule {
                    StartTime = nightS._17.Trim() + ":" + nightS._18.Trim(), EndTime = nightS._19.Trim() + ":" + nightS._20.Trim()
                };
                model = new DateScheduleViewModel {
                    Day = day, Night = night, Name = "休息四"
                };
                result.Add(model);
                //entities
            }
            return(Json(result, JsonRequestBehavior.AllowGet));
        }
Example #10
0
 public FileResult AlarmEditExoprt(FilterForAlarmEdit filter)
 {
     using (ANDONEntities entities = new ANDONEntities())
     {
         var alarm_edits = entities.Alarm_edit.Where(t => t.Delete_flag == false);;
         if (filter.Start_time != null && filter.End_time != null)
         {
             DateTime startTime = Convert.ToDateTime(filter.Start_time);
             DateTime endTime   = Convert.ToDateTime(filter.End_time);
             alarm_edits = alarm_edits.Where(t => t.Start_time >= startTime && t.Start_time <= endTime);
         }
         //var s = alarm_edits.ToList();
         if (!String.IsNullOrEmpty(filter.Alarm_class) && !(filter.Alarm_class == "全部"))
         {
             alarm_edits = alarm_edits.Where(t => t.Alarm_class == filter.Alarm_class);
         }
         if (!String.IsNullOrEmpty(filter.Alarm_area) && !(filter.Alarm_area == "全部"))
         {
             alarm_edits = alarm_edits.Where(t => t.Alarm_area == filter.Alarm_area);
         }
         alarm_edits = alarm_edits.OrderByDescending(t => t.Start_time);
         var result = (from a in alarm_edits
                       select new ALarmEditViewModel
         {
             ID = a.ID,
             Start_time = a.Start_time,
             End_time = a.End_time,
             Station = a.Station,
             Alarm_area = a.Alarm_area,
             Alarm_class = a.Alarm_class,
             Division_of_respon = a.Division_of_respon,
             Position = a.Position,
             Reason = a.Reason,
             Responsible = a.Responsible,
             Duration = a.Duration
         }).ToList();
         List <AlarmEidtExport> exportList = (from r in result
                                              select new AlarmEidtExport
         {
             开始时间 = r.Start_time,
             结束时间 = r.End_time,
             持续时间 = r.DurationStr,
             呼叫类型 = r.Alarm_class,
             停线工位 = r.Station,
             停线区域 = r.Alarm_area,
             停线原因 = r.Reason,
             位置信息 = r.Position,
             责任部门 = r.Responsible,
             责任类型 = r.Division_of_respon
         }).ToList();
         DataTable dt = Untils.ToDataTable <AlarmEidtExport>(exportList);
         NPOI.HSSF.UserModel.HSSFWorkbook book = new NPOI.HSSF.UserModel.HSSFWorkbook();
         //添加一个sheet
         NPOI.SS.UserModel.ISheet sheet1 = book.CreateSheet("Sheet1");
         //给sheet1添加第一行的头部标题
         NPOI.SS.UserModel.IRow row1 = sheet1.CreateRow(0);
         //row1.RowStyle.FillBackgroundColor = "";
         for (int i = 0; i < dt.Columns.Count; i++)
         {
             row1.CreateCell(i).SetCellValue(dt.Columns[i].ColumnName);
         }
         //将数据逐步写入sheet1各个行
         for (int i = 0; i < dt.Rows.Count; i++)
         {
             NPOI.SS.UserModel.IRow rowtemp = sheet1.CreateRow(i + 1);
             for (int j = 0; j < dt.Columns.Count; j++)
             {
                 rowtemp.CreateCell(j).SetCellValue(dt.Rows[i][j].ToString().Trim());
             }
         }
         string strdate = DateTime.Now.ToString("yyyyMMddhhmmss");//获取当前时间
         // 写入到客户端
         System.IO.MemoryStream ms = new System.IO.MemoryStream();
         book.Write(ms);
         ms.Seek(0, SeekOrigin.Begin);
         return(File(ms, "application/vnd.ms-excel", "AlarmDetail" + strdate + "Excel.xls"));
     }
 }
Example #11
0
        public ActionResult GetAlarmTimeData(FilterForAlarmDetail filter)
        {
            List <string> BarLabels  = new List <string>();
            List <double> BarData    = new List <double>();
            int           totalCount = 0;

            using (ANDONEntities entities = new ANDONEntities())
            {
                var alarm_edits = entities.Alarm_edit.Where(t => t.Delete_flag == false);
                if (filter.Start_time != null && filter.End_time != null)
                {
                    DateTime startTime = Convert.ToDateTime(filter.Start_time);
                    DateTime endTime   = Convert.ToDateTime(filter.End_time);
                    alarm_edits = alarm_edits.Where(t => t.Start_time >= startTime && t.End_time <= endTime);
                }
                if (!String.IsNullOrEmpty(filter.Alarm_area) && !(filter.Alarm_area == "全部"))
                {
                    alarm_edits = alarm_edits.Where(t => t.Alarm_area == filter.Alarm_area);
                }
                if (!String.IsNullOrEmpty(filter.Division_of_respon) && !(filter.Division_of_respon == "全部"))
                {
                    alarm_edits = alarm_edits.Where(t => t.Division_of_respon == filter.Division_of_respon);
                }
                if (!String.IsNullOrEmpty(filter.Responsible) && !(filter.Responsible == "全部"))
                {
                    alarm_edits = alarm_edits.Where(t => t.Responsible == filter.Responsible);
                }
                if (!String.IsNullOrEmpty(filter.Recorder))
                {
                    alarm_edits = alarm_edits.Where(t => t.Recorder.Contains(filter.Recorder));
                }

                //totalCount = alarm_edits.Count();


                var Group = alarm_edits.GroupBy(t => t.Reason);
                List <TimeReportReuslt> timeList = new List <TimeReportReuslt>();
                //double totalRatio = 0;
                foreach (IGrouping <string, Alarm_edit> item in Group)
                {
                    TimeReportReuslt model = new TimeReportReuslt();
                    if (string.IsNullOrEmpty(item.Key))
                    {
                        model.Name = "空";
                        //BarLabels.Add("空");
                    }
                    else
                    {
                        model.Name = item.Key;
                        //BarLabels.Add(item.Key);
                    }
                    int timeCount = 0;
                    foreach (Alarm_edit e in item)
                    {
                        int seconds = string.IsNullOrEmpty(e.Duration) ? 0 : Convert.ToInt32(e.Duration);
                        timeCount += seconds;
                    }
                    totalCount    += timeCount;
                    model.Secondes = timeCount;
                    //BarData.Add(timeCount);
                    timeList.Add(model);
                }
                foreach (var item in timeList.OrderByDescending(t => t.Secondes).Take(10))
                {
                    BarLabels.Add(item.Name);
                    BarData.Add(item.Secondes);
                }
                //BarLabels.Add("其他");
                //BarData.Add(Math.Round(100 - totalRatio, 2));
            }
            return(Json(new
            {
                totalCount = totalCount,
                BarLabels = BarLabels,
                BarData = BarData,
            }
                        , JsonRequestBehavior.AllowGet));
        }
Example #12
0
        public ActionResult GetAlarmClassData(FilterForAlarmDetail filter)
        {
            List <string>        BarLabels = new List <string>();
            List <double>        BarData   = new List <double>();
            List <PieChartModel> PieData   = new List <PieChartModel>();

            using (ANDONEntities entities = new ANDONEntities())
            {
                var alarm_edits = entities.Alarm_edit.Where(t => t.Delete_flag == false);
                if (filter.Start_time != null && filter.End_time != null)
                {
                    DateTime startTime = Convert.ToDateTime(filter.Start_time);
                    DateTime endTime   = Convert.ToDateTime(filter.End_time);
                    alarm_edits = alarm_edits.Where(t => t.Start_time >= startTime && t.End_time <= endTime);
                }
                if (!String.IsNullOrEmpty(filter.Alarm_area) && !(filter.Alarm_area == "全部"))
                {
                    alarm_edits = alarm_edits.Where(t => t.Alarm_area == filter.Alarm_area);
                }
                if (!String.IsNullOrEmpty(filter.Division_of_respon) && !(filter.Division_of_respon == "全部"))
                {
                    alarm_edits = alarm_edits.Where(t => t.Division_of_respon == filter.Division_of_respon);
                }
                if (!String.IsNullOrEmpty(filter.Responsible) && !(filter.Responsible == "全部"))
                {
                    alarm_edits = alarm_edits.Where(t => t.Responsible == filter.Responsible);
                }
                if (!String.IsNullOrEmpty(filter.Recorder))
                {
                    alarm_edits = alarm_edits.Where(t => t.Recorder.Contains(filter.Recorder));
                }

                int totalCount = alarm_edits.Count();

                var responsibleGroup = alarm_edits.GroupBy(t => t.Responsible).OrderByDescending(t => t.Count());
                int counter          = 0;
                //double totalRatio = 0;
                int barOtherCount = 0;
                foreach (IGrouping <string, Alarm_edit> item in responsibleGroup)
                {
                    if (counter == 9)
                    {
                        break;
                    }
                    int count = item.Count();
                    if (string.IsNullOrEmpty(item.Key))
                    {
                        BarLabels.Add("空");
                    }
                    else
                    {
                        BarLabels.Add(item.Key);
                    }
                    //double ratio = ((double)a / (double)totalCount) * 100;
                    //totalRatio += ratio;
                    //ratio=Math.Round(ratio, 2);
                    barOtherCount = totalCount - barOtherCount;
                    BarData.Add(count);
                    counter++;
                }
                BarLabels.Add("其他");
                //BarData.Add(Math.Round(100 - totalRatio, 2));
                BarData.Add(totalCount - barOtherCount);

                counter = 0;
                int otherCount = 0;
                var DGroup     = alarm_edits.GroupBy(t => t.Division_of_respon).Select(t => (new { name = t.Key, count = t.Count() })).OrderByDescending(t => t.count);
                foreach (var item in DGroup)
                {
                    if (counter == 9)
                    {
                        break;
                    }
                    string name = "";
                    if (string.IsNullOrEmpty(item.name))
                    {
                        name = "空";
                    }
                    else
                    {
                        name = item.name;
                    }
                    PieChartModel model = new PieChartModel {
                        name = name, value = item.count
                    };
                    PieData.Add(model);
                    otherCount += item.count;
                    counter++;
                }
                PieChartModel pModel = new PieChartModel {
                    name = "其他", value = totalCount - otherCount
                };
                PieData.Add(pModel);
            }

            return(Json(new
            {
                BarLabels = BarLabels,
                BarData = BarData,
                PieData = PieData
            }
                        , JsonRequestBehavior.AllowGet));
        }