コード例 #1
0
        private void CreateCustomIndicator(string beUserId, string beUserName, ExamineStage esEnt, ExamineStageDetail esdEnt)
        {
            ExamineIndicator       eiEnt  = ExamineIndicator.Find(esdEnt.ExamineIndicatorId);
            IList <IndicatorFirst> ifEnts = IndicatorFirst.FindAllByProperties(IndicatorFirst.Prop_ExamineIndicatorId, eiEnt.Id, IndicatorFirst.Prop_CustomColumn, "T");

            if (ifEnts.Count > 0)//只有当考核指标下指定了需要自定义的指标后,才有必要创建自定义指标 如果没有直接生成考核任务即可
            {
                IList <IndicatorSecond> isEnts = IndicatorSecond.FindAllByProperty(IndicatorSecond.Prop_IndicatorFirstId, ifEnts[0].Id);
                if (isEnts.Count > 0)
                {
                    CustomIndicator ciEnt = new CustomIndicator();
                    ciEnt.ExamineStageId      = esEnt.Id;
                    ciEnt.CreateId            = beUserId;
                    ciEnt.CreateName          = beUserName;
                    ciEnt.CreateTime          = DateTime.Now;
                    ciEnt.DeptId              = esEnt.LaunchDeptId;
                    ciEnt.DeptName            = esEnt.LaunchDeptName;
                    ciEnt.IndicatorNo         = DataHelper.QueryValue <string>("select BJKY_Examine.dbo.fun_getIndicatorNo()");
                    ciEnt.DeptIndicatorName   = eiEnt.IndicatorName;
                    ciEnt.DeptIndicatorId     = eiEnt.Id;
                    ciEnt.IndicatorSecondId   = isEnts[0].Id;
                    ciEnt.IndicatorSecondName = ifEnts[0].IndicatorFirstName;
                    ciEnt.Weight              = ifEnts[0].MaxScore;
                    ciEnt.Year      = esEnt.Year;
                    ciEnt.StageType = esEnt.StageType;
                    ciEnt.State     = "0";
                    ciEnt.DoCreate();
                }
            }
        }
コード例 #2
0
        protected void Page_Load(object sender, EventArgs e)
        {
            IList <string> entStrList = RequestData.GetList <string>("data");

            id = RequestData.Get <string>("id");
            if (!string.IsNullOrEmpty(id))
            {
                ciEnt = CustomIndicator.Find(id);
            }
            switch (RequestActionString)
            {
            case "create":
                ciEnt                     = new CustomIndicator();
                ciEnt.IndicatorNo         = DataHelper.QueryValue <string>("select BJKY_Examine.dbo.fun_getIndicatorNo()");
                ciEnt.DeptId              = RequestData.Get <string>("DeptId");
                ciEnt.DeptName            = RequestData.Get <string>("DeptName");
                ciEnt.IndicatorSecondId   = RequestData.Get <string>("IndicatorSecondId");
                ciEnt.IndicatorSecondName = RequestData.Get <string>("IndicatorSecondName");
                ciEnt.DeptIndicatorName   = RequestData.Get <string>("DeptIndicatorName");
                ciEnt.Weight              = RequestData.Get <int>("Weight");
                PersonConfig pcEnt = PersonConfig.Find(ciEnt.DeptId);
                if (pcEnt != null)
                {
                    ciEnt.Remark = pcEnt.GroupID;    //备注字段用来存储足够机构的ID  方便选人
                }
                ciEnt.State = "0";
                ciEnt.DoCreate();
                if (!string.IsNullOrEmpty(RequestData.Get <string>("originalId")))   //如果改字段不为空  说明是复制操作
                {
                    IList <PersonFirstIndicator> pfiEnts = PersonFirstIndicator.FindAllByProperty(PersonFirstIndicator.Prop_CustomIndicatorId, RequestData.Get <string>("originalId"));
                    foreach (PersonFirstIndicator pfiEnt in pfiEnts)
                    {
                        PersonFirstIndicator nEnt1 = new PersonFirstIndicator();
                        nEnt1.CustomIndicatorId        = ciEnt.Id;
                        nEnt1.PersonFirstIndicatorName = pfiEnt.PersonFirstIndicatorName;
                        nEnt1.TotalWeight   = pfiEnt.TotalWeight;
                        nEnt1.Weight        = pfiEnt.Weight;
                        nEnt1.SortIndex     = pfiEnt.SortIndex;
                        nEnt1.IndicatorType = pfiEnt.IndicatorType;
                        nEnt1.CreateId      = UserInfo.UserID;
                        nEnt1.CreateName    = UserInfo.Name;
                        nEnt1.CreateTime    = DateTime.Now;
                        nEnt1.DoCreate();
                        IList <PersonSecondIndicator> psiEnts = PersonSecondIndicator.FindAllByProperty(PersonSecondIndicator.Prop_PersonFirstIndicatorId, pfiEnt.Id);
                        foreach (PersonSecondIndicator psiEnt in psiEnts)
                        {
                            PersonSecondIndicator NEnt2 = new PersonSecondIndicator();
                            NEnt2.PersonFirstIndicatorId    = nEnt1.Id;
                            NEnt2.PersonFirstIndicatorName  = nEnt1.PersonFirstIndicatorName;
                            NEnt2.PersonSecondIndicatorName = psiEnt.PersonSecondIndicatorName;
                            NEnt2.Weight     = psiEnt.Weight;
                            NEnt2.SortIndex  = psiEnt.SortIndex;
                            NEnt2.ToolTip    = psiEnt.ToolTip;
                            NEnt2.SelfRemark = psiEnt.SelfRemark;
                            NEnt2.CreateId   = UserInfo.UserID;
                            NEnt2.CreateName = UserInfo.Name;
                            NEnt2.CreateTime = DateTime.Now;
                            NEnt2.DoCreate();
                        }
                    }
                }
                PageState.Add("Entity", ciEnt);
                break;

            case "AutoUpdate":
                string ApproveUserId   = RequestData.Get <string>("ApproveUserId");
                string ApproveUserName = RequestData.Get <string>("ApproveUserName");
                if (!string.IsNullOrEmpty(ApproveUserId))
                {
                    ciEnt.ApproveUserId   = ApproveUserId;
                    ciEnt.ApproveUserName = ApproveUserName;
                }
                ciEnt.DoUpdate();
                break;

            case "submit":
                sql = @"select isnull(sum(A.Weight),0) from BJKY_Examine..PersonSecondIndicator as A 
                    left join BJKY_Examine..PersonFirstIndicator as B on A.PersonFirstIndicatorId=B.Id where B.CustomIndicatorId='" + id + "'";
                int useWeight = DataHelper.QueryValue <int>(sql);
                if (ciEnt.Weight == useWeight)
                {
                    ciEnt.State  = "1";
                    ciEnt.Result = "审批中";
                    ciEnt.DoUpdate();
                    PageState.Add("Result", "T");
                }
                else
                {
                    PageState.Add("Result", "F");
                }
                break;

            case "delete":
                DoBatchDelete();
                break;

            case "UpLoadSummary":
                ciEnt.Summary = RequestData.Get <string>("Summary");
                ciEnt.DoUpdate();
                PageState.Add("Result", ciEnt.Summary);
                break;

            default:
                DoSelect();
                break;
            }
        }