public ServiceIssueTotal GetTotal(DateTime? periodStart, DateTime? periodEnd, string engeneerSid = null)
        {
            if (!periodStart.HasValue) periodStart = DateTime.Now;
            if (!periodEnd.HasValue) periodEnd = DateTime.Now;
            var list = ServiceIssuePlan.GetListUnitProg(periodStart.Value, periodEnd.Value, engeneerSid: engeneerSid);
            int totalCount = list.Count();
            int doneCount = list.Count(x => x.DateCame.HasValue);
            int undoneCount = list.Count(x => !x.DateCame.HasValue);

            var total = new ServiceIssueTotal() {TotalCount = totalCount, DoneCount = doneCount, UndoneCount = undoneCount};

            return total;
        }
        public ServiceIssueTotal GetTotal(DateTime? month, string serviceEngeneerSid = null, bool? planed = null, bool? seted = null)
        {
            //if (!idCity.HasValue) throw new ArgumentException("Не указан город");
            if (!month.HasValue) month = DateTime.Now;

            var curUser = GetCurUser();
            string serviceAdminSid = null;
            if (curUser.Is(AdGroup.ServiceAdmin)) serviceAdminSid = curUser.Sid;

            var planList = PlanServiceIssue.GetClaimList(month.Value, serviceAdminSid: serviceAdminSid, serviceEngeneerSid: serviceEngeneerSid, planed: planed, seted: seted);

            int totalCount = planList.Count();
            int setedCount = planList.Count(x=>x.Seted);
            int noSetedCount = planList.Count(x => !x.Seted);
            int planedCount = planList.Count(x => x.Planed);
            int noPlanedCount = planList.Count(x => !x.Planed);

            var total = new ServiceIssueTotal() {TotalCount = totalCount , SetedCount = setedCount, NoSetedCount = noSetedCount, PlanedCount = planedCount, NoPlanedCount = noPlanedCount };
            return total;
        }