示例#1
0
        protected void Page_Load(object sender, EventArgs e)
        {
            UseWelfareNote ent = null;

            switch (this.RequestAction)
            {
            case RequestActionEnum.Delete:
                ent = this.GetTargetData <UseWelfareNote>();
                ent.DoDelete();
                break;

            default:
                if (RequestActionString == "batchdelete")
                {
                    DoBatchDelete();
                }
                else if (RequestActionString == "Publish")
                {
                    DoPublish();
                }
                else if (RequestActionString == "Undo")
                {
                    Undo();
                }
                else if (RequestActionString == "GetApprove")
                {
                    GetApproveUser();
                }
                else
                {
                    DoSelect();
                }
                break;
            }
        }
示例#2
0
        private void DoBatchDelete()
        {
            IList <object> idList = RequestData.GetList <object>("IdList");

            if (idList != null && idList.Count > 0)
            {
                UseWelfareNote.DoBatchDelete(idList.ToArray());
            }
        }
 /// <summary>
 /// 审批完成
 /// </summary>
 private void SubmitFinish()
 {
     if (!string.IsNullOrEmpty(id))
     {
         UseWelfareNote Ent = UseWelfareNote.Find(id);
         Ent.WorkFlowState  = "End";
         Ent.WorlFlowResult = RequestData.Get <string>("ApproveResult");
         Ent.DoUpdate();
     }
 }
示例#4
0
        /// <summary>
        /// 撤销通知
        /// </summary>
        private void Undo()
        {
            string Id = RequestData.Get("Id") + "";

            if (!String.IsNullOrEmpty(Id))
            {
                UseWelfareNote Ent = UseWelfareNote.Find(Id);
                Ent.State = "2";   //2 撤销
                Ent.DoUpdate();
            }
        }
示例#5
0
        //创建流程
        private void StartFlow(string SurveyId)
        {
            string state    = RequestData.Get <string>("state");
            string formtype = RequestData.Get("formtype") + "";

            UseWelfareNote Ent     = UseWelfareNote.Find(SurveyId);
            string         FlowKey = "questionnaire_";         //工作流key
            string         NextUsr = string.Empty;             //下一个审批人

            SysWFUserSet UsrEnt = SysWFUserSet.FindFirstByProperties("SurveyId", SurveyId);
            int          lg     = UsrEnt.UserId1.Split(',').Length;

            FlowKey = FlowKey + lg;

            NextUsr += UsrEnt.UserId1.Split(',')[0] + "|" + UsrEnt.UserName1.Split(',')[0];

            //指定流程Key
            //if (!string.IsNullOrEmpty(Ent.WorkFlowCode))
            //{
            //    FlowKey = Ent.WorkFlowCode;
            //}
            //else
            //{
            // 根据人员 获取工作流key
            //SQL = @"select  Code  from WorkflowTemplate where TemplateName like '调查问卷%' ";
            //DataTable FlDt = DataHelper.QueryDataTable(SQL);
            //if (!string.IsNullOrEmpty(FlDt.Rows[0][0] + ""))
            //{
            //    FlowKey = (FlDt.Rows[0][0] + "").Substring(0, (FlDt.Rows[0][0] + "").Length - 1) + UserCount.Length;
            //}


            if (!string.IsNullOrEmpty(FlowKey))
            {
                string formUrl = string.Empty;
                //if (formtype.Contains("onlyView"))  //onlyView 表示固定问卷
                //{
                //formUrl = "/SurveyManage/InternetSurvey.aspx?flow=y&op=v&type=read&Id=" + SurveyId;
                //}
                //else
                //{
                formUrl = "/EmpWelfare/UseWelfareNoteEdit.aspx?op=r&id=" + SurveyId;
                //}

                Guid guid = Aim.WorkFlow.WorkFlow.StartWorkFlow(SurveyId, formUrl, "福利申报通知", FlowKey, UserInfo.UserID, UserInfo.Name);
                Ent.WorkFlowState = "Start";
                Ent.WorkFlowCode  = guid.ToString(); //InstanceId
                Ent.DoUpdate();
                this.PageState.Add("NextInfo", guid.ToString() + "$" + NextUsr);
            }
        }
        string type = String.Empty; // 对象类型

        #endregion


        protected void Page_Load(object sender, EventArgs e)
        {
            op   = RequestData.Get <string>("op");
            id   = RequestData.Get <string>("id");
            type = RequestData.Get <string>("type");
            string NoticeWay = RequestData.Get("NoticeWay") + "";

            UseWelfareNote ent = null;

            switch (this.RequestAction)
            {
            case RequestActionEnum.Update:
                ent           = this.GetMergedData <UseWelfareNote>();
                ent.NoticeWay = NoticeWay;
                ent.DoUpdate();
                break;

            case RequestActionEnum.Insert:
            case RequestActionEnum.Create:
                ent            = this.GetPostedData <UseWelfareNote>();
                ent.NoticeWay  = NoticeWay;
                ent.State      = "0";  //0  创建 1 发起 2 撤销
                ent.CreateTime = DateTime.Now;

                // 判断公司登陆
                string          CorpIds = string.Empty;
                UserContextInfo UC      = new UserContextInfo();
                CorpIds = UC.GetUserCurrentCorpId(UserInfo.UserID);

                ent.CreateCorp = CorpIds;
                ent.DoCreate();
                break;

            default:
                if (RequestActionString == "GetNextUsers")
                {
                    GetNextUsers();
                }
                else if (RequestActionString == "submitfinish")
                {
                    SubmitFinish();
                }
                else
                {
                    Doselect();
                }
                break;
            }
        }
示例#7
0
        /// <summary>
        /// 发起通知
        /// </summary>
        private void DoPublish()
        {
            string Id = RequestData.Get("Id") + "";

            if (!String.IsNullOrEmpty(Id))
            {
                UseWelfareNote Ent = UseWelfareNote.Find(Id);
                Ent.State = "1";   //1 发起
                if (!string.IsNullOrEmpty(Ent.DeptId))
                {
                    SendNotices(Ent);
                }
                Ent.DoUpdate();
            }
        }
        /// <summary>
        /// 默认查询
        /// </summary>
        private void Doselect()
        {
            UseWelfareNote ent = null;

            if (op != "c" && op != "cs")
            {
                if (!String.IsNullOrEmpty(id))
                {
                    ent = UseWelfareNote.Find(id);
                }
                this.SetFormData(ent);
            }
            if (op == "c")
            {   //生成编号 日期HR
                Random rd     = new Random();
                string DateFt = "HR_TZ" + DateTime.Now.ToString("yyyyMMdd") + rd.Next(0, 10);
                this.SetFormData(new { Code = DateFt });
            }
            //审批意见
            if (!string.IsNullOrEmpty(id))
            {
                string sql = @"select * from Task where PatIndex('%{0}%',EFormName)>0  and Status='4' order by FinishTime asc";
                sql = string.Format(sql, id);
                IList <EasyDictionary> taskDics = DataHelper.QueryDictList(sql);
                PageState.Add("Opinion", taskDics);
                string taskId = RequestData.Get <string>("TaskId");//取审批暂存时所填写的意见
                if (!string.IsNullOrEmpty(taskId))
                {
                    Task tEnt = Task.Find(taskId);
                    if (tEnt.Status != 4 && !string.IsNullOrEmpty(tEnt.Description))
                    {
                        PageState.Add("UnSubmitOpinion", tEnt.Description);
                    }
                }
            }

            //福利申报类型
            //this.PageState.Add("ThingsType", SysEnumeration.GetEnumDict("EmpUsrWelfare"));

            ////获取系统枚举流程
            //string WFSQL = "select Code,TemplateName from  FL_Culture_AimPortal..WorkflowTemplate";
            //this.PageState.Add("WFEnum", DataHelper.QueryDict(WFSQL));
        }
示例#9
0
        /// <summary>
        /// 查询
        /// </summary>
        private void DoSelect()
        {
            var    UserEnt = SysUser.Find(UserInfo.UserID);
            string CorpIds = string.Empty;

            CommPowerSplit ps = new CommPowerSplit();

            if (ps.IsNoticeRole(UserInfo.UserID, UserInfo.LoginName))
            {
                ents = UseWelfareNote.FindAll(SearchCriterion);
            }
            else
            {
                // 判断公司登陆
                UserContextInfo UC = new UserContextInfo();
                CorpIds = UC.GetUserCurrentCorpId(UserInfo.UserID);

                SearchCriterion.SetSearch("CreateCorp", CorpIds);
                ents = UseWelfareNote.FindAll(SearchCriterion);
            }
            this.PageState.Add("UseWelfareNoteList", ents);
        }
示例#10
0
        private void SendNotices(UseWelfareNote Ent)
        {
            string IP      = HostUrl;
            string wherPat = "";
            string content = @"您好!
                                    <br/> 此邮件来自江苏飞力达[企业文化系统]的友情提醒 。
                                    <br/> 请根据 您有一份 [{0}] 福利申报通知,开始时间:{3}, 截止时间:{1}。 
                                    <br/> {4}
                                    <br/> 请点击链接或登陆系统及时填写,谢谢配合! 
                                    <br/> 打开此链接可填写: {2} ";

            string MsgContent = @"{3},您好!
                                    <br/> 此短信来自江苏飞力达[企业文化系统]的友情提醒 。
                                    <br/> 请根据 您有一份 [{0}] 福利申报通知,开始时间:{1}, 截止时间:{2}。
                                    <br/> 请查看邮件或登陆系统及时处理,谢谢配合! ";

            string content1 = @"您好!
                                    <br/> 此邮件来自江苏飞力达[企业文化系统]的友情提醒 。
                                    <br/> 请根据 您有一份 [{0}] 福利申报通知,开始时间:{1}, 截止时间:{2}。 
                                        <br/> 请登陆系统及时填写,谢谢配合! ";

            string MsgContent1 = @"{3},您好!
                                    <br/> 此短信来自江苏飞力达[企业文化系统]的友情提醒 。
                                    <br/> 请根据 您有一份 [{0}] 福利申报通知,开始时间:{1}, 截止时间:{2}。
                                    <br/> 请查看登陆系统及时处理,谢谢配合! ";

            string[] Patid = Ent.DeptId.Split(',');
            for (int i = 0; i < Patid.Length; i++)
            {
                if (i == (Patid.Length - 1))
                {
                    wherPat += " Path like '%" + Patid[i] + "%'";
                }
                else
                {
                    wherPat += " Path like '%" + Patid[i] + "%' or";
                }
            }

            string sql = @" select * from  SysUser where  UserID IN 
                            (SELECT UserID FROM FL_PortalHR..SysUserGroup 
                                WHERE GroupID in (select GroupID from FL_PortalHR..SysGroup where {0})
                            )  and Status=1 and len(Outdutydate)=0 ";

            sql = sql.Replace("FL_PortalHR", Global.AimPortalDB);
            sql = string.Format(sql, wherPat);
            DataTable dt = DataHelper.QueryDataTable(sql);


            int index = 0;

            foreach (DataRow dr in dt.Rows)
            {
                string NoticeTxt = string.Empty;
                string msgtxt    = string.Empty;

                if (Ent.TypeName == "员工旅游")
                {
                    string url = "http://" + IP + "/EmpWelfare/UsrTravelWelfareEdit.aspx?op=c&userid=" + dr["UserId"] + "&noticeid=" + Ent.Id;
                    NoticeTxt = string.Format(content, Ent.Title, Ent.EndTime, url, Ent.StartTime, Ent.Condition);
                    //短信内容
                    msgtxt = string.Format(MsgContent, Ent.Title, Ent.StartTime, Ent.EndTime, dr["Name"].ToString());
                }
                else if (Ent.TypeName.Contains("保险"))
                {
                    NoticeTxt = string.Format(content1, Ent.Title, Ent.StartTime, Ent.EndTime);
                    //短信内容
                    msgtxt = string.Format(MsgContent1, Ent.Title, Ent.StartTime, Ent.EndTime, dr["Name"].ToString());
                }

                string email = string.Empty, phone = string.Empty;
                if (Ent.NoticeWay.IndexOf("Email") != -1)
                {
                    email = "0";
                }
                if (Ent.NoticeWay.IndexOf("Message") != -1)
                {
                    phone = "0";
                }

                //提醒时间
                string RemindDte = string.Empty;
                if (DateTime.Now.ToString("yyyy-MM-dd").Trim() == Ent.StartTime.GetValueOrDefault().ToString("yyyy-MM-dd")) //当天
                {
                    RemindDte = DateTime.Now.AddSeconds(1).ToString("yyyy-MM-dd HH:mm:ss");                                 //发送提醒时间 1s
                }
                else  //提前情况
                {
                    RemindDte = DateTime.Parse(Ent.StartTime.GetValueOrDefault().ToString("yyyy-MM-dd") + " 09:30").AddSeconds(index).ToString("yyyy-MM-dd HH:mm:ss");
                }


                string tempSql = @"insert into FL_Recruitment..Remind (ID,UserId,Name,Phone,EmailAddress,RemindContent,State,PhoneState,EXT1,Title,attachment,RemindTime,createTime,MessageContent)
                                 values('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}','{10}','{11}','{12}','{13}')";
                tempSql = string.Format(tempSql, Guid.NewGuid().ToString(), dr["UserId"].ToString(), dr["Name"].ToString(), dr["Phone"].ToString(), dr["Email"].ToString(), NoticeTxt, email, phone, "N|" + dr["UserId"].ToString(), Ent.Title, Ent.AddFiles, RemindDte, DateTime.Now, msgtxt);

                try
                {
                    DataHelper.ExecSql(tempSql);
                }
                catch (Exception ex)
                {
                    throw new Exception(ex.Message + "|" + ex.StackTrace + "|" + tempSql);
                }
                index++;
            }
        }
        private void GetNextUsers()
        {
            UseWelfareNote SEnt = UseWelfareNote.Find(id);

            string CurrentNode  = RequestData.Get <string>("taskName");
            string nextName     = RequestData.Get <string>("nextName");
            string nextUserId   = "";
            string nextUserName = "";

            if (CurrentNode == "申请人")
            {
                string[] User = UserChoice()[0].Split('|');
                if (User.Length > 0)
                {
                    nextUserId   = User[0];
                    nextUserName = User[1];
                }
            }
            else if (CurrentNode == "第一步" && nextName == "不同意")
            {
                if (SEnt != null)
                {
                    nextUserId   = SEnt.CreateId;
                    nextUserName = SEnt.CreateName;
                }
            }

            else if (CurrentNode == "第一步" && nextName != "不同意")
            {
                string[] User = UserChoice()[1].Split('|');
                if (User.Length > 0)
                {
                    nextUserId   = User[0];
                    nextUserName = User[1];
                }
            }

            else if (CurrentNode == "第二步" && nextName != "退回上一步")
            {
                string[] User = UserChoice()[2].Split('|');
                if (User.Length > 0)
                {
                    nextUserId   = User[0];
                    nextUserName = User[1];
                }
            }
            else if (CurrentNode == "第三步" && nextName != "退回上一步")
            {
                string[] User = UserChoice()[3].Split('|');
                if (User.Length > 0)
                {
                    nextUserId   = User[0];
                    nextUserName = User[1];
                }
            }
            else if (CurrentNode == "第四步" && nextName != "退回上一步")
            {
                string[] User = UserChoice()[4].Split('|');
                if (User.Length > 0)
                {
                    nextUserId   = User[0];
                    nextUserName = User[1];
                }
            }
            else if (CurrentNode == "第五步" && nextName != "退回上一步")
            {
                string[] User = UserChoice()[5].Split('|');
                if (User.Length > 0)
                {
                    nextUserId   = User[0];
                    nextUserName = User[1];
                }
            }
            PageState.Add("NextUsers", new { nextUserId = nextUserId, nextUserName = nextUserName });
        }