public List <List <C_Company> > GetCompanyLists(string SysID)
        {
            List <List <C_Company> > NewCompanyList = new List <List <C_Company> >();
            IList <C_Target>         TargetList     = C_TargetOperator.Instance.GetTargetList(Guid.Parse(SysID), DateTime.Now).ToList();

            foreach (C_Target item in TargetList)
            {
                if (item.HaveDetail == true)
                {
                    NewCompanyList.Add(C_CompanyOperator.Instance.GetCompanyTargetList(item.ID, item.SystemID));
                }
                else
                {
                    List <XElement>  listHaveNotDetailCompany = item.Configuration.Elements("HavenotDetail").Elements("Company").ToList();
                    List <C_Company> listCom = new List <C_Company>();
                    foreach (XElement xml in listHaveNotDetailCompany)
                    {
                        C_Company TempCompany = StaticResource.Instance.GetCompanyModel(xml.GetAttributeValue("CompanyID", "").ToGuid());
                        if (TempCompany != null)
                        {
                            listCom.Add(TempCompany);
                        }
                    }
                    NewCompanyList.Add(listCom);
                }
            }
            return(NewCompanyList);
        }
        public int GetCompanyExceptionTarget(C_Company company)
        {
            DateTime CurrentDate = DateTime.Now;
            C_System SysModel    = StaticResource.Instance[company.SystemID, CurrentDate];

            int result = 0;

            //代表是在项目系统里
            if (SysModel.Category == 2)
            {
                if (company.CompanyProperty1 == "尾盘")
                {
                    result = 1;
                }
                else
                {
                    result = 0;
                }
            }
            else
            {
                //上报不考核
                if (company.CompanyProperty1 == "筹备门店")
                {
                    result = 1;
                }
                else
                {
                    result = 0;
                }
            }

            return(result);
        }
예제 #3
0
 public DictionaryVmodel(string Names, object Values, C_Company Company, string Marks)
 {
     this.Name     = Names;
     this.ObjValue = Values;
     this._Company = Company;
     this.Mark     = Marks;
 }
예제 #4
0
        /// <summary>
        /// 获取公司
        /// </summary>
        /// <param name="CompanyID"></param>
        /// <returns></returns>
        public C_Company GetCompanyModel(Guid CompanyID)
        {
            C_Company _Model = ALLCompanyList.Where(X => X.ID == CompanyID).First();

            // C_Company _Model = C_CompanyOperator.Instance.GetCompany(CompanyID);
            if (_Model != null || !string.IsNullOrEmpty(_Model.CompanyName))
            {
                return(_Model);
            }
            return(null);
        }
        Guid SysDescriptionID = WebConfigurationManager.AppSettings["MonthDescription"].ToGuid();//百货系统ID
        /// <summary>
        /// 新的方法
        /// </summary>
        /// <param name="c"></param>
        /// <param name="LastMonthReportDetails"></param>
        /// <param name="CurrentMonthReportDetails"></param>
        /// <param name="itemt"></param>
        /// <param name="IsCurrentMonth"></param>
        /// <returns></returns>
        public MonthlyReportDetail GetMonthlyReportDetail(C_Company c, List <MonthlyReportDetail> LastMonthReportDetails, List <MonthlyReportDetail> CurrentMonthReportDetails, C_Target itemt, bool IsCurrentMonth)
        {
            MonthlyReportDetail ReportDetailModel = new MonthlyReportDetail();

            if (IsCurrentMonth)
            {
                ReportDetailModel = CurrentMonthReportDetails.SingleOrDefault(t => t.TargetID == itemt.ID && t.CompanyID == c.ID);
            }
            else
            {
                ReportDetailModel = LastMonthReportDetails.SingleOrDefault(t => t.TargetID == itemt.ID && t.CompanyID == c.ID);
            }

            return(ReportDetailModel);
        }
예제 #6
0
        /// <summary>
        /// 项目公司的指标
        /// </summary>
        /// <param name="companyModel"></param>
        /// <param name="_isPlan">是获取计划指标分解表</param>
        /// <param name="_ReportDetail">明细数据</param>
        /// <param name="_TargetPlanList">指标分解表</param>
        /// <returns></returns>
        private List <V_ProjectTarget> ProTargetLists(C_Company companyModel, string _isPlan, List <MonthlyReportDetail> _ReportDetail, List <A_TargetPlanDetail> _TargetPlanList)
        {
            List <V_ProjectTarget> _ProTargetLists = new List <V_ProjectTarget>();

            List <C_Target> targetList = StaticResource.Instance.TargetList[_SystemID].ToList();

            //获取当前的系统指标
            List <A_TargetPlanDetail> TargetPlanListByYear = StaticResource.Instance.GetTargetPlanList(_System.ID, FinYear);

            //循环指标

            if (_isPlan == "ProPlan") //计划指标分解表
            {
                foreach (C_Target itemTarget in targetList.OrderBy(o => o.Sequence))
                {
                    V_ProjectTarget VModel = new V_ProjectTarget();

                    A_TargetPlanDetail targetModel = null;
                    if (_TargetPlanList.Count > 0)
                    {
                        targetModel = _TargetPlanList.Find(f => f.TargetID == itemTarget.ID);
                    }
                    else
                    {
                        continue;
                    }

                    if (targetModel != null && targetModel.ID != Guid.Empty)
                    {
                        VModel.ProTargetID         = itemTarget.ID;
                        VModel.ProTargetName       = itemTarget.TargetName;
                        VModel.ProTargetSequence   = itemTarget.Sequence;
                        VModel.ProCompayID         = companyModel.ID;
                        VModel.IsMissTarget        = false;
                        VModel.IsMissTargetCurrent = false;
                        VModel.Counter             = 0;

                        VModel.NPlanAmmount   = targetModel.Target;
                        VModel.NActualAmmount = 0;

                        VModel.NAccumulativePlanAmmount   = TargetPlanListByYear.Where(p => p.FinMonth <= FinMonth && p.TargetID == itemTarget.ID && p.CompanyID == companyModel.ID).Sum(s => s.Target); // ?累计的指标怎么算?
                        VModel.NAccumulativeActualAmmount = 0;

                        _ProTargetLists.Add(VModel);
                    }
                }
            }
            else //上报过,在明细表中了
            {
                foreach (C_Target itemTarget in targetList.OrderBy(o => o.Sequence))
                {
                    V_ProjectTarget VModel = new V_ProjectTarget();

                    MonthlyReportDetail tempModel = null;
                    if (_ReportDetail.Count > 0)
                    {
                        tempModel = _ReportDetail.Find(f => f.TargetID == itemTarget.ID);
                    }
                    else
                    {
                        continue;
                    }
                    if (tempModel != null && tempModel.ID != Guid.Empty)
                    {
                        VModel.ProMonthlyReportDetailID = tempModel.ID;
                        VModel.ProTargetID         = itemTarget.ID;
                        VModel.ProTargetName       = tempModel.TargetName;
                        VModel.ProTargetSequence   = itemTarget.Sequence;
                        VModel.ProCompayID         = companyModel.ID;
                        VModel.IsMissTarget        = tempModel.IsMissTarget;
                        VModel.IsMissTargetCurrent = tempModel.IsMissTargetCurrent;
                        VModel.Counter             = tempModel.Counter;
                        VModel.FirstMissTargetDate = tempModel.FirstMissTargetDate;

                        VModel.NPlanAmmount   = tempModel.NPlanAmmount;
                        VModel.NActualAmmount = tempModel.NActualAmmount;
                        VModel.NActualRate    = tempModel.NActualRate;
                        VModel.NDisplayRate   = tempModel.NDisplayRate;

                        VModel.NAccumulativePlanAmmount   = tempModel.NAccumulativePlanAmmount;
                        VModel.NAccumulativeActualAmmount = tempModel.NAccumulativeActualAmmount;
                        VModel.NAccumulativeActualRate    = tempModel.NAccumulativeActualRate;
                        VModel.NAccumulativeDisplayRate   = tempModel.NAccumulativeDisplayRate;

                        VModel.NActualAmmountByYear = 0;

                        //年度计划值
                        VModel.NPlanAmmountByYear = TargetPlanListByYear.Where(t => t.CompanyID == companyModel.ID && t.TargetID == itemTarget.ID).Sum(s => s.Target);
                        if (VModel.NPlanAmmountByYear != 0)
                        {
                            VModel.NDisplayRateByYear = Math.Round((VModel.NAccumulativeActualAmmount / VModel.NPlanAmmountByYear), 5, MidpointRounding.AwayFromZero).ToString("P1");
                        }
                        else
                        {
                            VModel.NPlanAmmountByYear = 0;
                            VModel.NDisplayRateByYear = "/";
                        }
                        VModel.NActualRateByYear = "";

                        _ProTargetLists.Add(VModel);
                    }
                }
            }
            return(_ProTargetLists);
        }
        public List <Guid> SaveExceptionReplace(string IDlist, string Type, string SelectType, string TargetID)
        {
            List <Guid> result = new List <Guid>();

            string[] arr = IDlist.Split('|');
            if (Type == "C")           //数据本身是不存在于异常表中
            {
                if (SelectType == "A") //在异常表中添加数据,类型给1
                {
                    for (int i = 0; i < arr.Length; i++)
                    {
                        C_Company         Company = C_CompanyOperator.Instance.GetCompany(Guid.Parse(arr[i]));
                        C_ExceptionTarget model   = new C_ExceptionTarget();
                        model.CompanyID     = Company.ID;
                        model.TargetID      = Guid.Parse(TargetID);
                        model.ExceptionType = (int)ExceptionTargetType.HaveDeTailNONeedEvaluation;
                        Guid ID = C_ExceptiontargetOperator.Instance.AddExceptiontarget(model);
                        result.Add(ID);
                    }
                }
                else
                {
                    for (int i = 0; i < arr.Length; i++)
                    {
                        C_Company         Company = C_CompanyOperator.Instance.GetCompany(Guid.Parse(arr[i]));
                        C_ExceptionTarget model   = new C_ExceptionTarget();
                        model.CompanyID     = Company.ID;
                        model.TargetID      = Guid.Parse(TargetID);
                        model.ExceptionType = (int)ExceptionTargetType.HaveDetailNONeedReport;
                        Guid ID = C_ExceptiontargetOperator.Instance.AddExceptiontarget(model);
                        result.Add(ID);
                    }
                }
            }
            else//数据本身存在于异常表中
            {
                if (SelectType == "C")//用户选择了上报审批,即从异常表中删除
                {
                    for (int i = 0; i < arr.Length; i++)
                    {
                        //取到异常数据
                        //C_ExceptionTarget model = C_ExceptiontargetOperator.Instance.GetExceptiontarget(Guid.Parse(arr[i]));
                        //取到该公司数据  加版本暂时不用
                        //C_Company Commodel = C_CompanyOperator.Instance.GetCompany(model.CompanyID);
                        //C_CompanyOperator.Instance.RemoveCompany(model.CompanyID);
                        //C_Company NewModel = Commodel;
                        //NewModel.VersionStart = DateTime.Now;
                        //NewModel.VersionEnd = Commodel.VersionStart;
                        //C_CompanyOperator.Instance.AddCompany(NewModel);
                        Guid ID = C_ExceptiontargetOperator.Instance.RemoveExceptiontarget(Guid.Parse(arr[i]));
                        result.Add(ID);
                    }
                }
                else
                {
                    if (SelectType == "B")
                    {
                        for (int i = 0; i < arr.Length; i++)
                        {
                            C_ExceptionTarget model = C_ExceptiontargetOperator.Instance.GetExceptiontarget(Guid.Parse(arr[i]));
                            model.ExceptionType = EnumHelper.GetEnumValue(typeof(ExceptionTargetType), "不上报不考核");
                            Guid ID = C_ExceptiontargetOperator.Instance.UpdateExceptiontarget(model);
                            result.Add(ID);
                        }
                    }
                    else
                    {
                        for (int i = 0; i < arr.Length; i++)
                        {
                            C_ExceptionTarget model = C_ExceptiontargetOperator.Instance.GetExceptiontarget(Guid.Parse(arr[i]));
                            model.ExceptionType = EnumHelper.GetEnumValue(typeof(ExceptionTargetType), "上报不考核");
                            Guid ID = C_ExceptiontargetOperator.Instance.UpdateExceptiontarget(model);
                            result.Add(ID);
                        }
                    }
                }
            }
            return(result);
        }
        public int UpdateCompany(string info, string TargetIDList, string SelTargetIDList)
        {
            int result = 0;

            C_Company detail = JsonHelper.Deserialize <C_Company>(info);
            //取出该公司异常type=1的指标名称
            List <ExceptionTargetVModel> list = C_ExceptiontargetOperator.Instance.GetExctargetListByComList(detail.ID).ToList();

            C_CompanyOperator.Instance.UpdateCompany(detail);



            if (TargetIDList != null)
            {
                //取出页面传来的所有没有勾中的指标
                string[] arr = TargetIDList.Split('|');

                //获取页面选中的指标
                string[] selArr = SelTargetIDList.Split('|');


                //位选中的值中循环
                for (int i = 0; i < arr.Length; i++)
                {
                    //循环所有传过来的ID
                    int arrl = 0;
                    for (int j = 0; j < list.Count; j++)
                    {
                        if (arr[i] == list[j].TargetID.ToString())
                        {
                            arrl++;
                        }
                    }
                    if (arrl == 0)
                    {
                        //若arrl==0,说明该指标在原本的异常表里不存在,添加操作
                        C_ExceptionTarget model = new C_ExceptionTarget();
                        model.CompanyID     = detail.ID;
                        model.TargetID      = Guid.Parse(arr[i]);
                        model.ExceptionType = 2;
                        C_ExceptiontargetOperator.Instance.AddExceptiontarget(model);
                    }
                }

                //选中值里循环异常表的数据
                for (int i = 0; i < list.Count; i++)
                {
                    //int arrl = 0;
                    for (int j = 0; j < selArr.Length; j++)
                    {
                        if (list[i].TargetID.ToString() != selArr[j])
                        {
                            #region 对于存在异常指标里的数据

                            int flag = CompanyExceptionTargetEngine.CompanyExceptionTargetEngineService.GetCompanyExceptionTarget(detail);

                            if (flag == 1) //flag: 0 的时候表示正常的数据,不用像异常表里添加数据, 而 flag: 1的时候需要像异常表中添加数据
                            {
                                C_ExceptionTarget newModel = new C_ExceptionTarget();
                                newModel.CompanyID     = detail.ID;
                                newModel.TargetID      = Guid.Parse(selArr[j]);
                                newModel.ExceptionType = (int)ExceptionTargetType.HaveDeTailNONeedEvaluation;;
                                C_ExceptiontargetOperator.Instance.AddExceptiontarget(newModel);
                            }
                            else if (flag == 0)
                            {
                                List <C_ExceptionTarget> ExcList = C_ExceptiontargetOperator.Instance.GetExceptiontargetList(detail.ID, selArr[j].ToGuid()).ToList();

                                if (ExcList != null && ExcList.Count() > 0)
                                {
                                    ExcList.ForEach(p =>
                                    {
                                        p.IsDeleted = true;
                                        C_ExceptiontargetOperator.Instance.UpdateExceptiontarget(p);
                                    });
                                }
                            }

                            #endregion
                        }
                    }
                }
            }
            else
            {
                //若TargetIDList为空 说明页面全部勾中

                //获取页面选中的指标
                string[] selArr = SelTargetIDList.Split('|');

                for (int j = 0; j < selArr.Length; j++)
                {
                    #region 对于存在异常指标里的数据

                    int flag = CompanyExceptionTargetEngine.CompanyExceptionTargetEngineService.GetCompanyExceptionTarget(detail);

                    if (flag == 1) //flag: 0 的时候表示正常的数据,不用像异常表里添加数据, 而 flag: 1的时候需要像异常表中添加数据
                    {
                        C_ExceptionTarget newModel = new C_ExceptionTarget();
                        newModel.CompanyID     = detail.ID;
                        newModel.TargetID      = Guid.Parse(selArr[j]);
                        newModel.ExceptionType = (int)ExceptionTargetType.HaveDeTailNONeedEvaluation;;
                        C_ExceptiontargetOperator.Instance.AddExceptiontarget(newModel);
                    }
                    else if (flag == 0)
                    {
                        List <C_ExceptionTarget> ExcList = C_ExceptiontargetOperator.Instance.GetExceptiontargetList(detail.ID, selArr[j].ToGuid()).ToList();

                        if (ExcList != null && ExcList.Count() > 0)
                        {
                            ExcList.ForEach(p =>
                            {
                                p.IsDeleted = true;
                                C_ExceptiontargetOperator.Instance.UpdateExceptiontarget(p);
                            });
                        }
                    }

                    #endregion
                }
            }

            return(result);
        }
        public int AddCompany(string info, string SysID, string SelTargetIDList)
        {
            int a = 0;

            string[] brr;
            C_System model = new C_System();

            model = StaticResource.Instance[Guid.Parse(SysID), DateTime.Now];
            List <string> TargetList = new List <string>();
            C_Company     detail     = new C_Company();

            string[] arr = info.Split('|');
            for (int i = 0; i < arr.Length; i++)
            {
                brr = arr[i].Split(':');
                #region//解析info
                if (brr[0] == "CompanyProperty1")
                {
                    detail.CompanyProperty1 = brr[1];
                }
                else if (brr[0] == "CompanyProperty2")
                {
                    detail.CompanyProperty2 = brr[1];
                }
                else if (brr[0] == "CompanyProperty3")
                {
                    detail.CompanyProperty3 = brr[1];
                }
                else if (brr[0] == "CompanyProperty4")
                {
                    detail.CompanyProperty4 = brr[1];
                }
                else if (brr[0] == "CompanyProperty5")
                {
                    detail.CompanyProperty5 = brr[1];
                }
                else if (brr[0] == "CompanyProperty6")
                {
                    detail.CompanyProperty6 = brr[1];
                }
                else if (brr[0] == "CompanyProperty7")
                {
                    detail.CompanyProperty7 = brr[1];
                }
                else if (brr[0] == "CompanyProperty8")
                {
                    detail.CompanyProperty8 = brr[1];
                }
                else if (brr[0] == "CompanyProperty9")
                {
                    detail.CompanyProperty9 = brr[1];
                }
                else if (brr[0] == "Sequence")
                {
                    detail.Sequence = int.Parse(brr[1]);
                }
                else if (brr[0] == "CompanyName")
                {
                    detail.CompanyName = brr[1];
                }
                else if (brr[0] == "SystemID")
                {
                    detail.SystemID = Guid.Parse(brr[1]);
                }
                else if (brr[0] == "OpeningTime")
                {
                    detail.OpeningTime = DateTime.Parse(brr[1]);
                }
                else if (brr[0] == "ExTargetList")
                {
                    if (brr[1] != "")
                    {
                        TargetList = new List <string>(brr[1].Split(','));
                    }
                }

                #endregion
            }

            Guid Id = C_CompanyOperator.Instance.AddCompany(detail);

            #region  对筹备门店和尾盘做处理操作

            if (SelTargetIDList != null)
            {
                string[] selArr = SelTargetIDList.Split('|'); //选中的指标

                for (int j = 0; j < selArr.Length; j++)
                {
                    int flag = CompanyExceptionTargetEngine.CompanyExceptionTargetEngineService.GetCompanyExceptionTarget(detail);

                    if (flag == 1) //flag: 0 的时候表示正常的数据,不用像异常表里添加数据, 而 flag: 1的时候需要像异常表中添加数据
                    {
                        C_ExceptionTarget newModel = new C_ExceptionTarget();
                        newModel.CompanyID     = Id;
                        newModel.TargetID      = Guid.Parse(selArr[j]);
                        newModel.ExceptionType = (int)ExceptionTargetType.HaveDeTailNONeedEvaluation;;
                        C_ExceptiontargetOperator.Instance.AddExceptiontarget(newModel);
                    }
                }
            }

            #endregion

            if (TargetList.Count > 0)
            {
                C_ExceptiontargetOperator.Instance.AddExceptiontargetList(TargetList, Id);
            }
            return(a);
        }
        public int GetCompanyExceptionTarget(C_Company Model)
        {
            string InterfaceName = "*";

            return(this[InterfaceName].GetCompanyExceptionTarget(Model));
        }
        public List <DictionaryVmodel> GetTargetPlanDetail(Guid SystemID, int FinYear, Guid TargetPlanID, bool IsLatestVersion)
        {
            List <DictionaryVmodel> lstDictionaryVmodel = new List <DictionaryVmodel>();

            List <C_Company> listCompany = StaticResource.Instance.CompanyList[SystemID];
            List <C_Target>  lstTarget   = StaticResource.Instance.GetTargetList(SystemID, DateTime.Now).ToList();
            C_System         _cSystem    = StaticResource.Instance[SystemID, DateTime.Now];

            object listBTargetPlanDetail = FormatData(SystemID, FinYear, TargetPlanID, IsLatestVersion);
            List <DictionaryVmodel> lstCompanyVmodel;

            foreach (C_Target _cTarget in lstTarget.OrderBy(p => p.Sequence))
            {
                lstCompanyVmodel = new List <DictionaryVmodel>();
                if (_cTarget.HaveDetail == true)
                {
                    foreach (C_Company company in listCompany)
                    {
                        if (ExceptionTargetEvaluationEngine.ExceptionTargetEvaluationService.Calculation(SystemID, _cTarget.ID, company.ID, ""))
                        {
                            continue;
                        }
                        else
                        {
                            if (listBTargetPlanDetail != null)
                            {
                                if (listBTargetPlanDetail is List <B_TargetPlanDetail> )
                                {
                                    List <B_TargetPlanDetail> list = ((List <B_TargetPlanDetail>)listBTargetPlanDetail).Where(p => p.TargetID == _cTarget.ID && p.CompanyID == company.ID).OrderBy(p => p.FinMonth).ToList();
                                    lstCompanyVmodel.Add(new DictionaryVmodel(company.CompanyName, list, company, list.Sum(p => p.Target).ToString()));
                                }
                                else
                                {
                                    List <A_TargetPlanDetail> list = ((List <A_TargetPlanDetail>)listBTargetPlanDetail).Where(p => p.TargetID == _cTarget.ID && p.CompanyID == company.ID).OrderBy(p => p.FinMonth).ToList();
                                    lstCompanyVmodel.Add(new DictionaryVmodel(company.CompanyName, list, company, list.Sum(p => p.Target).ToString()));
                                }
                            }
                            else
                            {
                                lstCompanyVmodel.Add(new DictionaryVmodel(company.CompanyName, null, company, "0"));
                            }
                        }
                    }
                }
                else
                {
                    List <XElement>  listHaveNotDetailCompany = _cTarget.Configuration.Elements("HavenotDetail").Elements("Company").ToList();
                    List <C_Company> listCom = new List <C_Company>();
                    foreach (XElement xml in listHaveNotDetailCompany)
                    {
                        C_Company TempCompany = StaticResource.Instance.GetCompanyModel(xml.GetAttributeValue("CompanyID", "").ToGuid());
                        if (TempCompany != null)
                        {
                            listCom.Add(TempCompany);
                        }
                    }
                    if (listHaveNotDetailCompany.Count() > 0)
                    {
                        if (ConfigurationManager.AppSettings["HavenotDetailTargetCompanyName"] != null)
                        {
                        }
                    }
                    if (listCom.Count() > 0)
                    {
                        foreach (C_Company company in listCom)
                        {
                            if (listBTargetPlanDetail != null)
                            {
                                if (listBTargetPlanDetail is List <B_TargetPlanDetail> )
                                {
                                    List <B_TargetPlanDetail> list = ((List <B_TargetPlanDetail>)listBTargetPlanDetail).Where(p => p.TargetID == _cTarget.ID && p.CompanyID == company.ID).OrderBy(p => p.FinMonth).ToList();
                                    lstCompanyVmodel.Add(new DictionaryVmodel(company.CompanyName, list, company, list.Sum(p => p.Target).ToString()));
                                }
                                else
                                {
                                    List <A_TargetPlanDetail> list = ((List <A_TargetPlanDetail>)listBTargetPlanDetail).Where(p => p.TargetID == _cTarget.ID && p.CompanyID == company.ID).OrderBy(p => p.FinMonth).ToList();
                                    lstCompanyVmodel.Add(new DictionaryVmodel(company.CompanyName, list, company, list.Sum(p => p.Target).ToString()));
                                }
                            }
                            else
                            {
                                lstCompanyVmodel.Add(new DictionaryVmodel(company.CompanyName, null, company, "0"));
                            }
                        }
                    }
                }
                string strTmpl = string.Empty;
                if (_cTarget.Configuration.Elements("TargetPlanDetailReported").Elements("TableTemplate").ToList().Count > 0)
                {
                    strTmpl = GetTargetPlanDetailReportedTemplate(_cTarget.Configuration);
                }
                else
                {
                    strTmpl = GetTargetPlanDetailReportedTemplate(_cSystem.Configuration);
                }

                lstDictionaryVmodel.Add(new DictionaryVmodel(_cTarget.TargetName, lstCompanyVmodel, "", strTmpl));
            }

            return(lstDictionaryVmodel);
        }
예제 #12
0
        public static MonthlyReportDetail ToVModel(this A_MonthlyReportDetail value)
        {
            //这是为了前台显示,美观强制去掉“\n”
            string tempMIssTargetReason = value.MIssTargetReason.TrimStart('\n').TrimStart('\r').TrimEnd('\n').TrimEnd('\r');

            if (string.IsNullOrEmpty(tempMIssTargetReason))
            {
                tempMIssTargetReason = "";
            }
            else
            {
                tempMIssTargetReason = "\n" + tempMIssTargetReason;
            }

            string tempMIssTargetDescription = value.MIssTargetDescription.TrimStart('\n').TrimStart('\r').TrimEnd('\n').TrimEnd('\r');

            if (string.IsNullOrEmpty(tempMIssTargetDescription))
            {
                tempMIssTargetDescription = "";
            }
            else
            {
                tempMIssTargetDescription = "\n" + tempMIssTargetDescription;
            }


            string tempCurrentMIssTargetReason = value.CurrentMIssTargetReason.TrimStart('\n').TrimStart('\r').TrimEnd('\n').TrimEnd('\r');

            if (string.IsNullOrEmpty(tempCurrentMIssTargetReason))
            {
                tempCurrentMIssTargetReason = "";
            }
            else
            {
                tempCurrentMIssTargetReason = "\n" + tempCurrentMIssTargetReason;
            }

            string tempCurrentMIssTargetDescription = value.CurrentMIssTargetDescription.TrimStart('\n').TrimStart('\r').TrimEnd('\n').TrimEnd('\r');

            if (string.IsNullOrEmpty(tempCurrentMIssTargetDescription))
            {
                tempCurrentMIssTargetDescription = "";
            }
            else
            {
                tempCurrentMIssTargetDescription = "\n" + tempCurrentMIssTargetDescription;
            }



            string tempReturnDescription = value.ReturnDescription.TrimStart('\n').TrimStart('\r').TrimEnd('\n').TrimEnd('\r');

            if (string.IsNullOrEmpty(tempReturnDescription))
            {
                tempReturnDescription = "";
            }

            string tempCommitReason = value.CommitReason.TrimStart('\n').TrimStart('\r').TrimEnd('\n').TrimEnd('\r');

            if (string.IsNullOrEmpty(tempCommitReason))
            {
                tempCommitReason = "";
            }
            string   strSystemName = string.Empty;
            C_System _cSystem      = StaticResource.Instance[value.SystemID, DateTime.Now];

            if (_cSystem != null)
            {
                strSystemName = _cSystem.SystemName;
            }

            string    strCompanyName = string.Empty;
            C_Company _cCompany      = StaticResource.Instance.GetCompanyModel(value.CompanyID);

            if (_cCompany != null)
            {
                strCompanyName = _cCompany.CompanyName;
            }
            string   strTargetName = string.Empty;
            C_Target _cTarget      = StaticResource.Instance.TargetList[value.SystemID].Where(p => p.ID == value.TargetID).FirstOrDefault();

            if (_cTarget != null)
            {
                strTargetName = _cTarget.TargetName;
            }


            MonthlyReportDetail result = new MonthlyReportDetail
            {
                ID                           = value.ID,
                SystemID                     = value.SystemID,
                IsDeleted                    = value.IsDeleted,
                FinMonth                     = value.FinMonth,
                FinYear                      = value.FinYear,
                CreateTime                   = value.CreateTime,
                CreatorName                  = value.CreatorName,
                ModifierName                 = value.ModifierName,
                ModifyTime                   = value.ModifyTime,
                TargetID                     = value.TargetID,
                CompanyID                    = value.CompanyID,
                TargetPlanID                 = value.TargetPlanID,
                OPlanAmmount                 = value.OPlanAmmount,
                OActualAmmount               = value.OActualAmmount,
                OActualRate                  = value.OActualRate,
                ODisplayRate                 = value.ODisplayRate,
                NPlanAmmount                 = value.NPlanAmmount,
                NActualAmmount               = value.NActualAmmount,
                NActualRate                  = value.NActualRate,
                NDisplayRate                 = value.NDisplayRate,
                OAccumulativePlanAmmount     = value.OAccumulativePlanAmmount,
                OAccumulativeActualAmmount   = value.OAccumulativeActualAmmount,
                OAccumulativeActualRate      = value.OAccumulativeActualRate,
                OAcccumulativeDisplayRate    = value.OAcccumulativeDisplayRate,
                NAccumulativePlanAmmount     = value.NAccumulativePlanAmmount,
                NAccumulativeActualAmmount   = value.NAccumulativeActualAmmount,
                NAccumulativeActualRate      = value.NAccumulativeActualRate,
                NAccumulativeDisplayRate     = value.NAccumulativeDisplayRate,
                IsMissTarget                 = value.IsMissTarget,
                IsMissTargetCurrent          = value.IsMissTargetCurrent,
                Counter                      = value.Counter,
                FirstMissTargetDate          = value.FirstMissTargetDate,
                PromissDate                  = value.PromissDate,
                CommitDate                   = value.CommitDate,
                MIssTargetReason             = tempMIssTargetReason,
                MIssTargetDescription        = tempMIssTargetDescription,
                CurrentMIssTargetDescription = tempCurrentMIssTargetDescription,
                CurrentMIssTargetReason      = tempCurrentMIssTargetReason,
                ReturnType                   = value.ReturnType,
                NAccumulativeDifference      = value.NAccumulativeDifference,
                NDifference                  = value.NDifference,
                OAccumulativeDifference      = value.OAccumulativeDifference,
                ODifference                  = value.ODifference,
                Title                        = value.Title,
                GroupTile                    = value.GroupTile,
                MonthlyReportID              = value.MonthlyReportID,
                MeasureRate                  = value.MeasureRate,
                ReturnDescription            = tempReturnDescription,
                SystemName                   = strSystemName,
                Company                      = _cCompany,
                CompanyName                  = strCompanyName,
                TargetName                   = strTargetName,
                Display                      = value.Display,
                CompanyProperty1             = value.CompanyProperty1,
                IsCommitDate                 = value.IsCommitDate,
                CommitReason                 = tempCommitReason,
                IsDelayComplete              = value.IsDelayComplete,
                CurrentMonthCommitDate       = value.CurrentMonthCommitDate,
                CurrentMonthCommitReason     = value.CurrentMonthCommitReason,
                ReturnType_Sub               = value.ReturnType_Sub,
                NewCounter                   = value.NewCounter,
                CompanyProperty              = value.CompanyProperty
            };

            return(result);
        }
예제 #13
0
        /// <summary>
        /// 获取累计指标汇总数据(移动端)
        /// </summary>
        /// <param name="FinYear"></param>
        /// <param name="SystemID"></param>
        /// <returns></returns>
        public List <TargetDetail> GetSumMonthTargetDetail(int FinYear, Guid SystemID, B_TargetPlan Tp)
        {
            List <TargetDetail> result = new List <TargetDetail>();

            DateTime t = DateTime.Now;

            t = Tp.CreateTime;

            C_System Sys = StaticResource.Instance[SystemID, t];

            for (int Month = 1; Month <= 12; Month++)
            {
                TargetDetail            model            = new TargetDetail();
                List <TargetDetailList> TargetDetailList = new List <TargetDetailList>();
                model.FinMonth = Month;
                DataTable ds = new DataTable();
                if (Sys.Category != 2)
                {
                    ds = _bTargetplandetailAdapter.GetSumMonthTargetDetailJY(FinYear, Month, SystemID, Tp.ID, t);
                }
                else
                {
                    C_Company com = C_CompanyOperator.Instance.ProCompanyAll(SystemID);
                    ds = _bTargetplandetailAdapter.GetSumMonthTargetDetailPro(FinYear, Month, com.ID, Tp.ID, t);
                }
                if (ds != null && ds.Rows.Count > 0)
                {
                    for (int i = 0; i < ds.Rows.Count; i++)
                    {
                        TargetDetailList view = new TargetDetailList()
                        {
                            Target = 0, SumTarget = 0
                        };
                        view.TargetName = ds.Rows[i]["TargetName"].ToString();
                        view.TargetID   = ds.Rows[i]["TargetID"].ToString().ToGuid();
                        if (!string.IsNullOrEmpty(ds.Rows[i]["target"].ToString()))
                        {
                            view.Target = decimal.Parse(ds.Rows[i]["target"].ToString());
                        }
                        if (!string.IsNullOrEmpty(ds.Rows[i]["SumTarget"].ToString()))
                        {
                            view.SumTarget = decimal.Parse(ds.Rows[i]["SumTarget"].ToString());
                        }

                        TargetDetailList.Add(view);
                    }
                }
                else
                {
                    List <C_Target> TargetList = C_TargetOperator.Instance.GetTargetList(SystemID, DateTime.Now).ToList();

                    foreach (C_Target item in TargetList)
                    {
                        TargetDetailList view = new TargetDetailList()
                        {
                            Target = null, SumTarget = null
                        };
                        view.TargetName = item.TargetName;
                        view.TargetID   = item.ID;
                        TargetDetailList.Add(view);
                    }
                }
                model.TargetDetailList = TargetDetailList;
                result.Add(model);
            }
            return(result);
        }
        public void UpLoadExcel(out string error, HttpContext context, string filePathName)
        {
            string templetePath = filePathName;

            error = "保存成功";
            ExcelEngine excel = new ExcelEngine();
            Workbook    book  = new Workbook(templetePath);

            CompanyList = C_CompanyOperator.Instance.GetCompanyList(SysId).ToList();

            //获取该系统中公司的所有属性
            List <XElement> xelement = C_SystemOperator.Instance.GetSystem(SysId).Configuration.Elements("ListCompanyProperty").Elements("CompanyProperty").ToList();

            if (xelement.Count > 0)
            {
                foreach (XElement item in xelement)
                {
                    string ColumnName = (string)item.Attribute("ColumnName");
                    if (ColumnName == "CompanyProperty1")
                    {
                        List <XElement> CompanyPropertyList = item.Elements("ItemProperty").ToList();
                        foreach (XElement itom in CompanyPropertyList)
                        {
                            CompanyProperty1.Add((string)itom.Attribute("ItemPropertyValue"));
                        }
                    }
                    else if (ColumnName == "CompanyProperty2")
                    {
                        List <XElement> CompanyPropertyList = item.Elements("ItemProperty").ToList();
                        foreach (XElement itom in CompanyPropertyList)
                        {
                            CompanyProperty2.Add((string)itom.Attribute("ItemPropertyValue"));
                        }
                    }
                    else if (ColumnName == "CompanyProperty3")
                    {
                        List <XElement> CompanyPropertyList = item.Elements("ItemProperty").ToList();
                        foreach (XElement itom in CompanyPropertyList)
                        {
                            CompanyProperty3.Add((string)itom.Attribute("ItemPropertyValue"));
                        }
                    }
                    else if (ColumnName == "CompanyProperty4")
                    {
                        List <XElement> CompanyPropertyList = item.Elements("ItemProperty").ToList();
                        foreach (XElement itom in CompanyPropertyList)
                        {
                            CompanyProperty4.Add((string)itom.Attribute("ItemPropertyValue"));
                        }
                    }
                    else if (ColumnName == "CompanyProperty5")
                    {
                        List <XElement> CompanyPropertyList = item.Elements("ItemProperty").ToList();
                        foreach (XElement itom in CompanyPropertyList)
                        {
                            CompanyProperty5.Add((string)itom.Attribute("ItemPropertyValue"));
                        }
                    }
                    else if (ColumnName == "CompanyProperty6")
                    {
                        List <XElement> CompanyPropertyList = item.Elements("ItemProperty").ToList();
                        foreach (XElement itom in CompanyPropertyList)
                        {
                            CompanyProperty6.Add((string)itom.Attribute("ItemPropertyValue"));
                        }
                    }
                    else if (ColumnName == "CompanyProperty7")
                    {
                        List <XElement> CompanyPropertyList = item.Elements("ItemProperty").ToList();
                        foreach (XElement itom in CompanyPropertyList)
                        {
                            CompanyProperty7.Add((string)itom.Attribute("ItemPropertyValue"));
                        }
                    }
                    else if (ColumnName == "CompanyProperty8")
                    {
                        List <XElement> CompanyPropertyList = item.Elements("ItemProperty").ToList();
                        foreach (XElement itom in CompanyPropertyList)
                        {
                            CompanyProperty8.Add((string)itom.Attribute("ItemPropertyValue"));
                        }
                    }
                    else if (ColumnName == "CompanyProperty9")
                    {
                        List <XElement> CompanyPropertyList = item.Elements("ItemProperty").ToList();
                        foreach (XElement itom in CompanyPropertyList)
                        {
                            CompanyProperty9.Add((string)itom.Attribute("ItemPropertyValue"));
                        }
                    }
                }
            }

            int count = book.Worksheets.Count;

            for (int i = 0; i < count; i++)
            {
                if (excel.GetStringCustomProperty(book.Worksheets[i], "SystemID") != SysId.ToString())
                {
                    error = "请上传当前系统的公司列表!";
                    return;
                }
                Worksheet workSheet = book.Worksheets[i];
                Cells     cells     = workSheet.Cells;

                if (cells.MaxDataRow - 2 > 0 && cells.MaxDataColumn == 14)
                {
                    DataTable dt = cells.ExportDataTableAsString(3, 1, cells.MaxDataRow - 2, cells.MaxDataColumn);
                    {
                        foreach (DataRow item in dt.Rows)
                        {
                            if (item[13].ToString() != "" && item[13].ToString() != null)
                            {
                                CompanyModel = C_CompanyOperator.Instance.GetCompany(item[13].ToString().ToGuid());
                                try//获取时间
                                {
                                    if (item[11].ToString().Replace(" ", "") == "--" || item[11].ToString().Replace(" ", "") == "")
                                    {
                                        CompanyModel.OpeningTime = DateTime.MinValue;
                                    }
                                    else
                                    {
                                        DateTime time = DateTime.Parse(item[11].ToString().Replace(" ", ""));
                                        CompanyModel.OpeningTime = time;
                                    }
                                }
                                catch (Exception)
                                {
                                    error = CompanyModel.CompanyName + "的开店时间格式填写错误!";
                                    return;
                                }
                                if (item[1].ToString().Replace(" ", "") == null || item[1].ToString().Replace(" ", "") == "")
                                {
                                    error = "公司名称不能为空!";
                                    return;
                                }
                                else
                                {
                                    CompanyModel.CompanyName = item[1].ToString().Replace(" ", "");
                                }
                                if (CompanyProperty1.Count == 0)
                                {
                                    CompanyModel.CompanyProperty1 = null;
                                }
                                else
                                {
                                    if (item[2].ToString().Replace(" ", "") != null && item[2].ToString().Replace(" ", "") != "")
                                    {
                                        if (SystemModel.Category != 2)
                                        {
                                            if (CompanyProperty1.Contains(item[2].ToString().Replace(" ", "")))
                                            {
                                                CompanyModel.CompanyProperty1 = item[2].ToString().Replace(" ", "");
                                            }
                                            else
                                            {
                                                error = "公司属性填写错误,请重新填写";
                                                return;
                                            }
                                        }
                                        else
                                        {
                                            if (item[2].ToString().Replace(" ", "") == "尾盘")
                                            {
                                                CompanyModel.CompanyProperty1 = "尾盘";
                                            }
                                            else
                                            {
                                                CompanyModel.CompanyProperty1 = null;
                                            }
                                        }
                                    }
                                    else
                                    {
                                        CompanyModel.CompanyProperty1 = null;
                                    }
                                }
                                //CompanyProperty2
                                if (SystemModel.Category != 2)
                                {
                                    if (CompanyProperty2.Count == 0)
                                    {
                                        CompanyModel.CompanyProperty2 = null;
                                    }
                                    else
                                    {
                                        if (item[3].ToString().Replace(" ", "") != null && item[3].ToString().Replace(" ", "") != "")
                                        {
                                            if (CompanyProperty2.Contains(item[3].ToString().Replace(" ", "")))
                                            {
                                                CompanyModel.CompanyProperty2 = item[3].ToString().Replace(" ", "");
                                            }
                                            else
                                            {
                                                error = "公司属性填写错误,请重新填写";
                                                return;
                                            }
                                        }
                                        else
                                        {
                                            CompanyModel.CompanyProperty2 = null;
                                        }
                                    }
                                }
                                else
                                {
                                    if (item[3].ToString().Replace(" ", "") != null && item[3].ToString().Replace(" ", "") != "")
                                    {
                                        CompanyModel.CompanyProperty2 = item[3].ToString().Replace(" ", "");
                                    }
                                    else
                                    {
                                        CompanyModel.CompanyProperty2 = null;
                                    }
                                }


                                //CompanyProperty3
                                if (CompanyProperty3.Count == 0)
                                {
                                    CompanyModel.CompanyProperty3 = null;
                                }
                                else
                                {
                                    if (item[4].ToString().Replace(" ", "") != null && item[4].ToString().Replace(" ", "") != "")
                                    {
                                        if (CompanyProperty3.Contains(item[4].ToString().Replace(" ", "")))
                                        {
                                            CompanyModel.CompanyProperty3 = item[4].ToString().Replace(" ", "");
                                        }
                                        else
                                        {
                                            error = "公司属性填写错误,请重新填写";
                                            return;
                                        }
                                    }
                                    else
                                    {
                                        CompanyModel.CompanyProperty3 = null;
                                    }
                                }
                                //CompanyProperty4
                                if (CompanyProperty4.Count == 0)
                                {
                                    CompanyModel.CompanyProperty4 = null;
                                }
                                else
                                {
                                    if (item[5].ToString().Replace(" ", "") != null && item[5].ToString().Replace(" ", "") != "")
                                    {
                                        if (CompanyProperty4.Contains(item[5].ToString().Replace(" ", "")))
                                        {
                                            CompanyModel.CompanyProperty4 = item[5].ToString().Replace(" ", "");
                                        }
                                        else
                                        {
                                            error = "公司属性填写错误,请重新填写";
                                            return;
                                        }
                                    }
                                    else
                                    {
                                        CompanyModel.CompanyProperty4 = null;
                                    }
                                }
                                //CompanyProperty5
                                if (CompanyProperty5.Count == 0)
                                {
                                    CompanyModel.CompanyProperty5 = null;
                                }
                                else
                                {
                                    if (item[6].ToString().Replace(" ", "") != null && item[6].ToString().Replace(" ", "") != "")
                                    {
                                        if (CompanyProperty5.Contains(item[6].ToString().Replace(" ", "")))
                                        {
                                            CompanyModel.CompanyProperty5 = item[6].ToString().Replace(" ", "");
                                        }
                                        else
                                        {
                                            error = "公司属性填写错误,请重新填写";
                                            return;
                                        }
                                    }
                                    else
                                    {
                                        CompanyModel.CompanyProperty5 = null;
                                    }
                                }
                                //CompanyProperty6
                                if (CompanyProperty6.Count == 0)
                                {
                                    CompanyModel.CompanyProperty6 = null;
                                }
                                else
                                {
                                    if (item[7].ToString().Replace(" ", "") != null && item[7].ToString().Replace(" ", "") != "")
                                    {
                                        if (CompanyProperty6.Contains(item[7].ToString().Replace(" ", "")))
                                        {
                                            CompanyModel.CompanyProperty6 = item[7].ToString().Replace(" ", "");
                                        }
                                        else
                                        {
                                            error = "公司属性填写错误,请重新填写";
                                            return;
                                        }
                                    }
                                    else
                                    {
                                        CompanyModel.CompanyProperty6 = null;
                                    }
                                }
                                //CompanyProperty7
                                if (CompanyProperty7.Count == 0)
                                {
                                    CompanyModel.CompanyProperty7 = null;
                                }
                                else
                                {
                                    if (item[8].ToString().Replace(" ", "") != null && item[8].ToString().Replace(" ", "") != "")
                                    {
                                        if (CompanyProperty7.Contains(item[8].ToString().Replace(" ", "")))
                                        {
                                            CompanyModel.CompanyProperty7 = item[8].ToString().Replace(" ", "");
                                        }
                                        else
                                        {
                                            error = "公司属性填写错误,请重新填写";
                                            return;
                                        }
                                    }
                                    else
                                    {
                                        CompanyModel.CompanyProperty7 = null;
                                    }
                                }
                                //CompanyProperty8
                                if (CompanyProperty8.Count == 0)
                                {
                                    CompanyModel.CompanyProperty8 = null;
                                }
                                else
                                {
                                    if (item[9].ToString().Replace(" ", "") != null && item[9].ToString().Replace(" ", "") != "")
                                    {
                                        if (CompanyProperty8.Contains(item[9].ToString().Replace(" ", "")))
                                        {
                                            CompanyModel.CompanyProperty8 = item[9].ToString().Replace(" ", "");
                                        }
                                        else
                                        {
                                            error = "公司属性填写错误,请重新填写";
                                            return;
                                        }
                                    }
                                    else
                                    {
                                        CompanyModel.CompanyProperty8 = null;
                                    }
                                }
                                //CompanyProperty9
                                if (CompanyProperty9.Count == 0)
                                {
                                    CompanyModel.CompanyProperty9 = null;
                                }
                                else
                                {
                                    if (item[10].ToString().Replace(" ", "") != null && item[10].ToString().Replace(" ", "") != "")
                                    {
                                        if (CompanyProperty9.Contains(item[10].ToString().Replace(" ", "")))
                                        {
                                            CompanyModel.CompanyProperty9 = item[10].ToString().Replace(" ", "");
                                        }
                                        else
                                        {
                                            error = "公司属性填写错误,请重新填写";
                                            return;
                                        }
                                    }
                                    else
                                    {
                                        CompanyModel.CompanyProperty9 = null;
                                    }
                                }
                                if (item[12].ToString().Replace(" ", "") == null || item[12].ToString().Replace(" ", "") == "")
                                {
                                    error = CompanyModel.CompanyName + "的排序值不能为空!";
                                }
                                else
                                {
                                    CompanyModel.Sequence = int.Parse(item[12].ToString().Replace(" ", ""));
                                }
                                CompanyList.Add(CompanyModel);
                            }
                            else
                            {
                                CompanyModel          = new C_Company();
                                CompanyModel.SystemID = SysId;
                                try//获取时间
                                {
                                    if (item[11].ToString().Replace(" ", "") == "--" || item[11].ToString().Replace(" ", "") == "")
                                    {
                                        CompanyModel.OpeningTime = DateTime.MinValue;
                                    }
                                    else
                                    {
                                        DateTime time = DateTime.Parse(item[11].ToString().Replace(" ", ""));
                                        CompanyModel.OpeningTime = time;
                                    }
                                    ;
                                }
                                catch (Exception)
                                {
                                    error = CompanyModel.CompanyName + "的开店时间格式填写错误!";
                                    return;
                                }
                                if (item[1].ToString().Replace(" ", "") == null || item[1].ToString().Replace(" ", "") == "")
                                {
                                    error = "公司名称不能为空!";
                                    return;
                                }
                                else
                                {
                                    CompanyModel.CompanyName = item[1].ToString().Replace(" ", "");
                                }
                                //CompanyProperty1
                                if (CompanyProperty1.Count == 0)
                                {
                                    CompanyModel.CompanyProperty1 = null;
                                }
                                else
                                {
                                    if (item[2].ToString().Replace(" ", "") != null && item[2].ToString().Replace(" ", "") != "")
                                    {
                                        if (SystemModel.Category != 2)
                                        {
                                            if (CompanyProperty1.Contains(item[2].ToString().Replace(" ", "")))
                                            {
                                                CompanyModel.CompanyProperty1 = item[2].ToString().Replace(" ", "");
                                            }
                                            else
                                            {
                                                error = "公司属性填写错误,请重新填写";
                                                return;
                                            }
                                        }
                                        else
                                        {
                                            if (item[2].ToString().Replace(" ", "") == "尾盘")
                                            {
                                                CompanyModel.CompanyProperty1 = "尾盘";
                                            }
                                            else
                                            {
                                                CompanyModel.CompanyProperty1 = null;
                                            }
                                        }
                                    }
                                    else
                                    {
                                        CompanyModel.CompanyProperty1 = null;
                                    }
                                }

                                //CompanyProperty2
                                if (SystemModel.Category != 2)
                                {
                                    if (CompanyProperty2.Count == 0)
                                    {
                                        CompanyModel.CompanyProperty2 = null;
                                    }
                                    else
                                    {
                                        if (item[3].ToString().Replace(" ", "") != null && item[3].ToString().Replace(" ", "") != "")
                                        {
                                            if (CompanyProperty2.Contains(item[3].ToString().Replace(" ", "")))
                                            {
                                                CompanyModel.CompanyProperty2 = item[3].ToString().Replace(" ", "");
                                            }
                                            else
                                            {
                                                error = "公司属性填写错误,请重新填写";
                                                return;
                                            }
                                        }
                                        else
                                        {
                                            CompanyModel.CompanyProperty2 = null;
                                        }
                                    }
                                }
                                else
                                {
                                    if (item[3].ToString().Replace(" ", "") != null && item[3].ToString().Replace(" ", "") != "")
                                    {
                                        CompanyModel.CompanyProperty2 = item[3].ToString().Replace(" ", "");
                                    }
                                    else
                                    {
                                        CompanyModel.CompanyProperty2 = null;
                                    }
                                }


                                //CompanyProperty3
                                if (CompanyProperty3.Count == 0)
                                {
                                    CompanyModel.CompanyProperty3 = null;
                                }
                                else
                                {
                                    if (item[4].ToString().Replace(" ", "") != null && item[4].ToString().Replace(" ", "") != "")
                                    {
                                        if (CompanyProperty3.Contains(item[4].ToString().Replace(" ", "")))
                                        {
                                            CompanyModel.CompanyProperty3 = item[4].ToString().Replace(" ", "");
                                        }
                                        else
                                        {
                                            error = "公司属性填写错误,请重新填写";
                                            return;
                                        }
                                    }
                                    else
                                    {
                                        CompanyModel.CompanyProperty3 = null;
                                    }
                                }
                                //CompanyProperty4
                                if (CompanyProperty4.Count == 0)
                                {
                                    CompanyModel.CompanyProperty4 = null;
                                }
                                else
                                {
                                    if (item[5].ToString().Replace(" ", "") != null && item[5].ToString().Replace(" ", "") != "")
                                    {
                                        if (CompanyProperty4.Contains(item[5].ToString().Replace(" ", "")))
                                        {
                                            CompanyModel.CompanyProperty4 = item[5].ToString().Replace(" ", "");
                                        }
                                        else
                                        {
                                            error = "公司属性填写错误,请重新填写";
                                            return;
                                        }
                                    }
                                    else
                                    {
                                        CompanyModel.CompanyProperty4 = null;
                                    }
                                }
                                //CompanyProperty5
                                if (CompanyProperty5.Count == 0)
                                {
                                    CompanyModel.CompanyProperty5 = null;
                                }
                                else
                                {
                                    if (item[6].ToString().Replace(" ", "") != null && item[6].ToString().Replace(" ", "") != "")
                                    {
                                        if (CompanyProperty5.Contains(item[6].ToString().Replace(" ", "")))
                                        {
                                            CompanyModel.CompanyProperty5 = item[6].ToString().Replace(" ", "");
                                        }
                                        else
                                        {
                                            error = "公司属性填写错误,请重新填写";
                                            return;
                                        }
                                    }
                                    else
                                    {
                                        CompanyModel.CompanyProperty5 = null;
                                    }
                                }
                                //CompanyProperty6
                                if (CompanyProperty6.Count == 0)
                                {
                                    CompanyModel.CompanyProperty6 = null;
                                }
                                else
                                {
                                    if (item[7].ToString().Replace(" ", "") != null && item[7].ToString().Replace(" ", "") != "")
                                    {
                                        if (CompanyProperty6.Contains(item[7].ToString().Replace(" ", "")))
                                        {
                                            CompanyModel.CompanyProperty6 = item[7].ToString().Replace(" ", "");
                                        }
                                        else
                                        {
                                            error = "公司属性填写错误,请重新填写";
                                            return;
                                        }
                                    }
                                    else
                                    {
                                        CompanyModel.CompanyProperty6 = null;
                                    }
                                }
                                //CompanyProperty7
                                if (CompanyProperty7.Count == 0)
                                {
                                    CompanyModel.CompanyProperty7 = null;
                                }
                                else
                                {
                                    if (item[8].ToString().Replace(" ", "") != null && item[8].ToString().Replace(" ", "") != "")
                                    {
                                        if (CompanyProperty7.Contains(item[8].ToString().Replace(" ", "")))
                                        {
                                            CompanyModel.CompanyProperty7 = item[8].ToString().Replace(" ", "");
                                        }
                                        else
                                        {
                                            error = "公司属性填写错误,请重新填写";
                                            return;
                                        }
                                    }
                                    else
                                    {
                                        CompanyModel.CompanyProperty7 = null;
                                    }
                                }
                                //CompanyProperty8
                                if (CompanyProperty8.Count == 0)
                                {
                                    CompanyModel.CompanyProperty8 = null;
                                }
                                else
                                {
                                    if (item[9].ToString().Replace(" ", "") != null && item[9].ToString().Replace(" ", "") != "")
                                    {
                                        if (CompanyProperty8.Contains(item[9].ToString().Replace(" ", "")))
                                        {
                                            CompanyModel.CompanyProperty8 = item[9].ToString().Replace(" ", "");
                                        }
                                        else
                                        {
                                            error = "公司属性填写错误,请重新填写";
                                            return;
                                        }
                                    }
                                    else
                                    {
                                        CompanyModel.CompanyProperty8 = null;
                                    }
                                }
                                //CompanyProperty9
                                if (CompanyProperty9.Count == 0)
                                {
                                    CompanyModel.CompanyProperty9 = null;
                                }
                                else
                                {
                                    if (item[10].ToString().Replace(" ", "") != null && item[10].ToString().Replace(" ", "") != "")
                                    {
                                        if (CompanyProperty9.Contains(item[10].ToString().Replace(" ", "")))
                                        {
                                            CompanyModel.CompanyProperty9 = item[10].ToString().Replace(" ", "");
                                        }
                                        else
                                        {
                                            error = "公司属性填写错误,请重新填写";
                                            return;
                                        }
                                    }
                                    else
                                    {
                                        CompanyModel.CompanyProperty9 = null;
                                    }
                                }
                                if (item[12].ToString().Replace(" ", "") == null || item[12].ToString().Replace(" ", "") == "")
                                {
                                    error = CompanyModel.CompanyName + "的排序值不能为空!";
                                }
                                else
                                {
                                    CompanyModel.Sequence = int.Parse(item[12].ToString().Replace(" ", ""));
                                }
                                AddCompanyList.Add(CompanyModel);
                            }
                        }
                    }
                }
            }
            C_CompanyOperator.Instance.UpdateCompanyList(CompanyList);
            if (AddCompanyList.Count > 0)
            {
                C_CompanyOperator.Instance.AddCompanyList(AddCompanyList);
            }
        }
예제 #15
0
        /// <summary>
        /// 获取区域公司总计的实体(第一步)
        /// </summary>
        /// <param name="ProCounter"></param>
        /// <returns></returns>
        private List <V_ProjectCompany> GetProjectModel(ProjectCounter ProCounter)
        {
            Guid SysId = Guid.Empty; //从XML中获取的系统ID

            Guid _CompanyId = Guid.Empty;

            if (!string.IsNullOrEmpty(ProCounter.CompanyID))
            {
                _CompanyId = Guid.Parse(ProCounter.CompanyID);
            }

            //公司,区域小计的ID,从XML中获取的
            C_Company itemCompany = C_CompanyOperator.Instance.GetCompany(_CompanyId);

            SysId = itemCompany.SystemID;

            //指标List
            List <C_Target> targetList = StaticResource.Instance.TargetList[SysId].ToList();

            //项目公司
            List <V_ProjectCompany> ProCompanyList = new List <V_ProjectCompany>();

            ReportInstance rpt = null;

            //获取批次ID,如果_MonthReportID 不是为Guid.Empty ,表示:是从上报页面过来的
            //反之,则代表是从查询页面传递过来的
            if (currRptModel._MonthReportID != Guid.Empty)
            {
                //上报页面
                ExceptionHelper.TrueThrow(currRptModel.LastestMonthlyReport == null, "B_MonthlyReport表为Null");

                if (currRptModel.LastestMonthlyReport.SystemBatchID != Guid.Empty)
                {
                    B_SystemBatch _BatchModel = B_SystemBatchOperator.Instance.GetSystemBatch(currRptModel.LastestMonthlyReport.SystemBatchID);

                    List <V_SubReport> subRptList = JsonHelper.Deserialize <List <V_SubReport> >(_BatchModel.SubReport);
                    subRptList.ForEach(p =>
                    {
                        if (p.SystemID == SysId)
                        {
                            rpt = new ReportInstance(p.ReportID, true);// 从B表中获取根据ReportID获取
                        }
                    });
                }
                else
                {
                    rpt = currRptModel;
                }
            }
            else
            {
                //查询页面, 通过系统倒序查找相应的项目系统
                rpt = new ReportInstance(SysId, FinYear, FinMonth, IsLatestVersion);
            }


            ProjectCompanyDetails = rpt.ReportDetails;

            //计划指标,包含了 区域小计的指标
            List <A_TargetPlanDetail> TargetPlanList = new List <A_TargetPlanDetail>();

            if (currRptModel._MonthReportID != Guid.Empty)
            {
                //上报的时候总是获取最新的指标。
                TargetPlanList = StaticResource.Instance.GetTargetPlanList(SysId, FinYear, FinMonth);
            }
            else
            {
                //查询的时候按照版本查询,从B表中查出后转换成A表的数据
                List <B_TargetPlanDetail> _bTargetPlanList = new List <B_TargetPlanDetail>();

                _bTargetPlanList = B_TargetplandetailOperator.Instance.GetTargetplandetailList(rpt.ReportDetails[0].TargetPlanID).ToList();

                //将B 表数据添加到 A表中
                _bTargetPlanList.ForEach(tp => TargetPlanList.Add(tp.ToAModel()));
            }

            List <V_ProjectTarget> ProTargetList  = new List <V_ProjectTarget>();
            V_ProjectCompany       tempProCompany = new V_ProjectCompany();

            tempProCompany.ProCompanySequence  = itemCompany.Sequence;
            tempProCompany.SystemID            = itemCompany.SystemID;
            tempProCompany.ProCompayName       = itemCompany.CompanyName;
            tempProCompany.ProCompayID         = itemCompany.ID;
            tempProCompany.ProCompanyProperty1 = itemCompany.CompanyProperty1;
            tempProCompany.FinYear             = FinYear;
            tempProCompany.FinMonth            = FinMonth;
            tempProCompany.CompayModel         = itemCompany;
            tempProCompany.ProRowSpan          = 0;
            tempProCompany.ProCompanyNumber    = 0;

            //获取批次ID,如果_MonthReportID 不是为Guid.Empty ,表示:是从上报页面过来的
            //反之,则代表是从查询页面传递过来的
            if (currRptModel._MonthReportID != Guid.Empty)
            {
                tempProCompany.ProjectTargets = SingleProTargetLists(targetList, rpt.ReportDetails, TargetPlanList, itemCompany, false);
            }
            else
            {
                tempProCompany.ProjectTargets = SingleProTargetLists(targetList, rpt.ReportDetails, TargetPlanList, itemCompany, true);
            }

            tempProCompany.ProDataType = "XML";
            ProCompanyList.Add(tempProCompany);

            return(ProCompanyList);
        }
예제 #16
0
        /// <summary>
        /// 项目公司的总数(第一步:1)
        /// </summary>
        /// <param name="_TargetList">指标基础表</param>
        /// <param name="_ReportDetail">明细数据</param>
        /// <param name="_TargetPlanList">计划指标表</param>
        /// <param name="companyModel">公司实体</param>
        /// <param name="IsQuery">上报:false ,查询:true (因有历史版本,所以需要区分)</param>
        /// <returns></returns>
        private List <V_ProjectTarget> SingleProTargetLists(List <C_Target> _TargetList, List <MonthlyReportDetail> _ReportDetail, List <A_TargetPlanDetail> _TargetPlanList, C_Company companyModel, bool IsQuery)
        {
            /* 此段代码的解释:
             * 这里计算项目系统的合计数据,因计划数都是从指标计划表中获取,而实际数都是从人员上报得到的,导致不同的数据源
             * 这里考虑到以后计算方便,只在基础表C_Company表中添加了每个系统的“南区合计”的公司,但是在B_MonthlyReportDetail表中不存储数据
             * 同时在指标计划表中,也做了“南区合计”的指标按月分解数据,这样便于取数和计算。
             * 本方法主要就是将这些数据拼装成一条新的List,追加到现有的明细表上,好用于前台的展示
             */

            List <V_ProjectTarget> _ProTargetLists = new List <V_ProjectTarget>();


            List <A_TargetPlanDetail> TargetPlanListByYear = new List <A_TargetPlanDetail>();

            //如果从查询页面进入
            if (IsQuery)
            {
                //查询的时候按照版本查询,从B表中查出后转换成A表的数据
                List <B_TargetPlanDetail> _bTargetPlanList = new List <B_TargetPlanDetail>();

                _bTargetPlanList = B_TargetplandetailOperator.Instance.GetTargetplandetailList(_ReportDetail[0].TargetPlanID).ToList();

                _bTargetPlanList.ForEach(tp => TargetPlanListByYear.Add(tp.ToAModel()));
            }
            else
            {
                //获取当前的系统指标
                TargetPlanListByYear = StaticResource.Instance.GetTargetPlanList(companyModel.SystemID, FinYear);
            }


            foreach (C_Target itemTarget in _TargetList.OrderBy(g => g.Sequence))
            {
                V_ProjectTarget VModel = new V_ProjectTarget();

                //从明细表中获取数据
                MonthlyReportDetail tempModel = null;
                if (_ReportDetail.Count > 0)
                {
                    tempModel = _ReportDetail.Find(f => f.TargetID == itemTarget.ID);
                }


                if (tempModel == null)
                {
                    tempModel = new MonthlyReportDetail();

                    VModel.ProMonthlyReportDetailID = Guid.Empty;
                }
                VModel.ProMonthlyReportDetailID = tempModel.ID;
                VModel.ProTargetID         = itemTarget.ID;
                VModel.ProTargetName       = itemTarget.TargetName;
                VModel.ProTargetSequence   = itemTarget.Sequence;
                VModel.ProCompayID         = companyModel.ID;
                VModel.IsMissTarget        = false;
                VModel.IsMissTargetCurrent = false;
                VModel.Counter             = 0;
                //VModel.FirstMissTargetDate = tempModel.FirstMissTargetDate;

                //去指标分解表中找到 区域合计的指标
                A_TargetPlanDetail targetModel = null;
                if (_TargetPlanList.Count > 0)
                {
                    targetModel = _TargetPlanList.Find(f => f.TargetID == itemTarget.ID && f.FinMonth == FinMonth && f.FinYear == FinYear && f.CompanyID == companyModel.ID);

                    if (targetModel != null)
                    {
                        //区域:当月计划数 ,这个从指标计划中获取
                        VModel.NPlanAmmount = targetModel.Target;                                                                                                                                      //区域:当月计划数 ,这个从指标计划中获取
                        //区域:当月累计计划数
                        VModel.NAccumulativePlanAmmount = TargetPlanListByYear.Where(p => p.FinMonth <= FinMonth && p.TargetID == itemTarget.ID && p.CompanyID == companyModel.ID).Sum(s => s.Target); // ?累计的指标怎么算?

                        //年度计划值
                        VModel.NPlanAmmountByYear = TargetPlanListByYear.Where(t => t.CompanyID == companyModel.ID && t.TargetID == itemTarget.ID).Sum(s => s.Target);
                    }
                    else
                    {
                        VModel.NPlanAmmount = 0;                                                                                                                                                       //区域:当月计划数 ,这个从指标计划中获取
                        //区域:当月累计计划数
                        VModel.NAccumulativePlanAmmount = TargetPlanListByYear.Where(p => p.FinMonth <= FinMonth && p.TargetID == itemTarget.ID && p.CompanyID == companyModel.ID).Sum(s => s.Target); // ?累计的指标怎么算?

                        //年度计划值
                        VModel.NPlanAmmountByYear = TargetPlanListByYear.Where(t => t.CompanyID == companyModel.ID && t.TargetID == itemTarget.ID).Sum(s => s.Target);
                    }
                }
                else
                {
                    //没有给计划指标
                    VModel.NPlanAmmount             = 0;
                    VModel.NAccumulativePlanAmmount = 0;
                    VModel.NPlanAmmountByYear       = 0;
                    //   continue;
                }


                if (_ReportDetail.Count > 0)
                {
                    VModel.NActualAmmount = _ReportDetail.Where(p => p.FinMonth <= FinMonth && p.TargetID == itemTarget.ID).Sum(p => p.NActualAmmount);  //区域:从B表明细数据中汇总当月的实际数
                }
                else
                {
                    VModel.NActualAmmount = 0;
                }

                if (VModel.NPlanAmmount == 0)
                {
                    VModel.NActualRate  = "";
                    VModel.NDisplayRate = "/";
                }
                else
                {
                    VModel.NActualRate  = "";
                    VModel.NDisplayRate = Math.Round((VModel.NActualAmmount / VModel.NPlanAmmount), 5, MidpointRounding.AwayFromZero).ToString("P1");;
                }

                //区域:当月累计计划数
                // VModel.NAccumulativePlanAmmount = TargetPlanListByYear.Where(p => p.FinMonth <= FinMonth && p.TargetID == itemTarget.ID && p.CompanyID == companyModel.ID).Sum(s => s.Target);  // ?累计的指标怎么算?

                if (_ReportDetail.Count > 0)
                {
                    VModel.NAccumulativeActualAmmount = _ReportDetail.Where(p => p.FinMonth <= FinMonth && p.TargetID == itemTarget.ID).Sum(p => p.NAccumulativeActualAmmount);
                }
                else
                {
                    VModel.NAccumulativeActualAmmount = 0;
                }

                if (VModel.NAccumulativePlanAmmount == 0)
                {
                    VModel.NAccumulativeActualRate  = "";
                    VModel.NAccumulativeDisplayRate = "/";
                }
                else
                {
                    VModel.NAccumulativeActualRate  = "";
                    VModel.NAccumulativeDisplayRate = Math.Round((VModel.NAccumulativeActualAmmount / VModel.NAccumulativePlanAmmount), 5, MidpointRounding.AwayFromZero).ToString("P1");;
                }

                VModel.NActualAmmountByYear = 0;

                ////年度计划值
                //VModel.NPlanAmmountByYear = TargetPlanListByYear.Where(t => t.CompanyID == companyModel.ID && t.TargetID == itemTarget.ID).Sum(s => s.Target);

                //年度指标完成比例
                if (VModel.NPlanAmmountByYear != 0)
                {
                    VModel.NDisplayRateByYear = Math.Round((VModel.NAccumulativeActualAmmount / VModel.NPlanAmmountByYear), 5, MidpointRounding.AwayFromZero).ToString("P1");
                }
                else
                {
                    VModel.NPlanAmmountByYear = 0;
                    VModel.NDisplayRateByYear = "/";
                }
                VModel.NActualRateByYear = "";

                _ProTargetLists.Add(VModel);
            }

            return(_ProTargetLists);
        }
        public List <DSTargetReturnDataCompany> GetDSTargetAddMissDataList(int Year, int Month, bool IsLatestVersion)
        {
            List <DSTargetReturnDataCompany> Showlist = new List <DSTargetReturnDataCompany>();
            C_System SystemModel = C_SystemOperator.Instance.GetSystem(SysDescriptionID);

            if (SystemModel != null)
            {
                List <C_Target> TargetList = C_TargetOperator.Instance.GetTargetList(SystemModel.ID, DateTime.Now).Where(t => t.NeedReport == true && t.TargetName != "总部管理费用").ToList();
                //上一个月以及当前月的信息
                ReportInstance             LastMonthReport        = new ReportInstance();
                List <MonthlyReportDetail> LastMonthReportDetails = null;

                if (Month > 1)
                {
                    LastMonthReport        = new ReportInstance(SystemModel.ID, Year, Month - 1, IsLatestVersion);
                    LastMonthReportDetails = LastMonthReport.ReportDetails;
                }

                ReportInstance             CurrentMonthReport        = new ReportInstance(SystemModel.ID, Year, Month, IsLatestVersion);
                List <MonthlyReportDetail> CurrentMonthReportDetails = CurrentMonthReport.ReportDetails;

                //新建百货系统新增经营指标未完成情况的集合
                int i = 1;
                foreach (C_Target titem in TargetList.OrderBy(t => t.Sequence))
                {
                    List <C_Company> CompanyList = new List <C_Company>();
                    if (Month == 1)
                    {
                        CompanyList = C_CompanyOperator.Instance.GetCompanyListBySystemIDAndTargetID(Year, Month, SystemModel.ID, 1, titem.ID, IsLatestVersion).ToList();
                    }
                    else
                    {
                        List <C_Company> LastCompanyList    = C_CompanyOperator.Instance.GetCompanyListBySystemIDAndTargetID(Year, Month - 1, SystemModel.ID, 0, titem.ID, IsLatestVersion).ToList();
                        List <C_Company> CurrentCompanyList = C_CompanyOperator.Instance.GetCompanyListBySystemIDAndTargetID(Year, Month, SystemModel.ID, 1, titem.ID, IsLatestVersion).ToList();
                        foreach (C_Company cc in LastCompanyList)
                        {
                            C_Company cModel = CurrentCompanyList.SingleOrDefault(t => t.ID == cc.ID);
                            if (cModel != null && cModel.ID != Guid.Empty)
                            {
                                CompanyList.Add(cModel);
                            }
                        }
                    }

                    #region 添加公司

                    if (CompanyList != null && CompanyList.Count > 0)
                    {
                        foreach (C_Company c in CompanyList)
                        {
                            DSTargetReturnDataCompany DSCompany = new DSTargetReturnDataCompany();
                            DSCompany.ID            = i;
                            DSCompany.CompanyName   = c.CompanyName;
                            DSCompany.AddTargetName = titem.TargetName;
                            List <DSTargetReturnData> dataList = new List <DSTargetReturnData>();

                            #region 根据指标


                            foreach (C_Target ct in TargetList.OrderBy(t => t.Sequence))
                            {
                                DSTargetReturnData DSReturnData = new DSTargetReturnData();
                                DSReturnData.CompanyID        = i;
                                DSReturnData.ReturnTargetName = ct.TargetName;
                                MonthlyReportDetail LastDetail = null;
                                if (Month == 1)
                                {
                                    LastDetail = GetMonthlyReportDetail(c, LastMonthReportDetails, CurrentMonthReportDetails, ct, true);
                                }
                                else
                                {
                                    LastDetail = GetMonthlyReportDetail(c, LastMonthReportDetails, CurrentMonthReportDetails, ct, false);
                                }

                                if (LastDetail != null && LastDetail.ID != Guid.Empty)
                                {
                                    DSReturnData.LastAccumulativePlan       = Convert.ToDecimal(LastDetail.NAccumulativePlanAmmount.ToString("N2"));
                                    DSReturnData.LastAccumulativeActual     = Convert.ToDecimal(LastDetail.NAccumulativeActualAmmount.ToString("N2"));
                                    DSReturnData.LastAccumulativeDifference = Convert.ToDecimal((LastDetail.NAccumulativeDifference).ToString("N2"));
                                }
                                MonthlyReportDetail CurrentDetail = GetMonthlyReportDetail(c, LastMonthReportDetails, CurrentMonthReportDetails, ct, true);

                                if (CurrentDetail != null && CurrentDetail.ID != Guid.Empty)
                                {
                                    DSReturnData.CurrentReturnAmount           = Convert.ToDecimal((CurrentDetail.NAccumulativeDifference - LastDetail.NAccumulativeDifference).ToString("N2"));
                                    DSReturnData.CurrentAccumulativePlan       = Convert.ToDecimal(CurrentDetail.NAccumulativePlanAmmount.ToString("N2"));
                                    DSReturnData.CurrentAccumulativeActual     = Convert.ToDecimal(CurrentDetail.NAccumulativeActualAmmount.ToString("N2"));
                                    DSReturnData.CurrentAccumulativeDifference = Convert.ToDecimal((CurrentDetail.NAccumulativeDifference).ToString("N2"));
                                    DSReturnData.CurrentAccumulativeRate       = CurrentDetail.NAccumulativeDisplayRate.ToString();
                                    DSReturnData.CommitDate = string.Format("{0:yyyy-MM-dd}", CurrentDetail.CommitDate);
                                    DSReturnData.ReturnType = CurrentDetail.ReturnType;

                                    if (!string.IsNullOrEmpty(CurrentDetail.ReturnType.ToString()) && CurrentDetail.ReturnType > 0)
                                    {
                                        DSReturnData.ReturnTypeDescrible = EnumUtil.GetEnumDescription(typeof(EnumReturnType), CurrentDetail.ReturnType);
                                    }
                                    else
                                    {
                                        DSReturnData.ReturnTypeDescrible = "--";
                                    }
                                    DSReturnData.Counter = CurrentDetail.Counter;
                                }
                                else
                                {
                                    DSReturnData.CurrentAccumulativeRate = "--";
                                    DSReturnData.ReturnTypeDescrible     = "--";
                                    DSReturnData.CommitDate = "--";
                                    DSReturnData.Counter    = 0;
                                }


                                dataList.Add(DSReturnData);
                            }

                            #endregion

                            if (dataList.Where(p => p.ReturnType == (int)EnumReturnType.New).ToList().Count > 0)
                            {
                                DSCompany.ReturnDataList = dataList;
                                Showlist.Add(DSCompany);
                            }
                            i++;
                        }
                    }

                    #endregion
                }
            }
            return(Showlist);
        }