//创建流程 private void StartFlow() { if (op == "c" || op == "create") { ent = this.GetPostedData <UsrTravelWelfare>(); ent.ApplyTime = DateTime.Now; ent.DoCreate(); id = ent.Id; } else { ent = UsrTravelWelfare.Find(id); } //受理人 string UserId = ent.ApproveUserId; string UserName = ent.ApproveName; string FlowKey = "EmpUsrWelfare"; //工作流key if (!string.IsNullOrEmpty(FlowKey)) { string formUrl = "/EmpWelfare/UsrTravelWelfareEdit.aspx?op=r&id=" + id; Guid guid = Aim.WorkFlow.WorkFlow.StartWorkFlow(id, formUrl, "员工旅游申请", FlowKey, UserInfo.UserID, UserInfo.Name); ent.WorkFlowState = "Start"; ent.WorkFLowCode = guid.ToString(); //InstanceId ent.DoUpdate(); this.PageState.Add("NextInfo", guid.ToString() + "$" + UserId + "|" + UserName); } }
protected void Page_Load(object sender, EventArgs e) { switch (this.RequestAction) { case RequestActionEnum.Delete: ent = this.GetTargetData <UsrTravelWelfare>(); ent.DoDelete(); this.SetMessage("删除成功!"); break; default: if (RequestActionString == "batchdelete") { DoBatchDelete(); } else if (RequestActionString == "CheckApply") { CKSubmit(); } else if (RequestActionString == "Submit") { DoSubmitApply(); } else if (RequestActionString == "AutoExecuteFlow") { AutoExecuteFlow(); } else { DoSelect(); } break; } }
/// <summary> /// 家属信息 /// </summary> private void SaveEveryForm(IList <string> entStrList, UsrTravelWelfare Ent) { if (entStrList != null && entStrList.Count > 0) { UsrTravelInfo.DoBatchDelete(entStrList.ToArray()); IList <UsrTravelInfo> triEnts = entStrList.Select(tent => JsonHelper.GetObject <UsrTravelInfo>(tent) as UsrTravelInfo).ToList(); foreach (UsrTravelInfo triEnt in triEnts) { if (string.IsNullOrEmpty(triEnt.Id)) { triEnt.WelfareTravelId = Ent.Id; triEnt.DoCreate(); } else { triEnt.DoUpdate(); } } if (Ent.NeedMoney > 0) { try { Ent.XLMoney = Ent.NeedMoney * (triEnts.Count + 1); //包括家属在内的旅游费用 Ent.DoUpdate(); } catch { } } } else { string sql = "delete FL_Culture..UsrTravelInfo where WelfareTravelId='" + Ent.Id + "'"; DataHelper.ExecSql(sql); } }
private void DoBatchDelete() { IList <object> idList = RequestData.GetList <object>("IdList"); if (idList != null && idList.Count > 0) { UsrTravelWelfare.DoBatchDelete(idList.ToArray()); } }
/// <summary> /// 审批完成 /// </summary> private void SubmitFinish() { if (!string.IsNullOrEmpty(id)) { UsrTravelWelfare Ent = UsrTravelWelfare.Find(id); Ent.WorkFlowState = "End"; Ent.Result = RequestData.Get <string>("ApproveResult"); //处理结果 Ent.DoUpdate(); } }
private void DoUpdate() { ent = this.GetMergedData <UsrTravelWelfare>(); ent.NoticeId = RequestData.Get <string>("noticeid"); ent.TravelAddr = RequestData.Get("TravelAddr") + ""; ent.TravelTime = RequestData.Get("TravelTime") + ""; ent.Ext1 = RequestData.Get("Ext1") + ""; SaveEveryForm(RequestData.GetList <string>("data"), ent); ent.DoUpdate(); }
//提交申诉 private void DoSubmitApply() { string Id = RequestData.Get("Id") + ""; var Ent = UsrTravelWelfare.TryFind(Id); if (Ent != null) { Ent.WorkFlowState = "1"; //提交申诉 Ent.DoUpdate(); this.PageState.Add("State", "1"); } }
//审批处理 private void doAppSubmit() { string State = RequestData.Get("State") + ""; string Advise = RequestData.Get("Advise") + ""; UsrTravelWelfare Ent = UsrTravelWelfare.TryFind(id); if (Ent != null) { Ent.WorkFlowState = State; Ent.Result = Advise; Ent.DoUpdate(); } }
private void DoBatchDelete() { IList <object> idList = RequestData.GetList <object>("IdList"); if (idList != null && idList.Count > 0) { UsrTravelWelfare.DoBatchDelete(idList.ToArray()); foreach (var v in idList.ToArray()) { string sql = " delete from FL_Culture..UsrTravelInfo where WelfareTravelId='" + v + "'"; DataHelper.ExecSql(sql); } } }
//获取下一节点人 private void GetNextUsers() { // taskName id nextUserName string id = this.RequestData.Get("id") + ""; string taskName = this.RequestData.Get("taskName") + ""; string nextName = this.RequestData.Get("nextName") + ""; if (!string.IsNullOrEmpty(id)) { var Ent = UsrTravelWelfare.Find(id); if (nextName == "审批人") { this.PageState.Add("NextUsers", new { nextUserId = Ent.ApproveUserId, nextUserName = Ent.ApproveName }); } } }
private void DoCreate() { ent = this.GetPostedData <UsrTravelWelfare>(); ent.ApplyTime = DateTime.Now; ent.NoticeId = RequestData.Get <string>("noticeid"); ent.TravelAddr = RequestData.Get("TravelAddr") + ""; ent.TravelTime = RequestData.Get("TravelTime") + ""; ent.Ext1 = RequestData.Get("Ext1") + ""; ent.CreateId = UserInfo.UserID; ent.CreateName = UserInfo.LoginName; ent.CreateTime = DateTime.Now; ent.WorkFlowState = "1"; //标识 0未提交状态 1已申报 ent.DoCreate(); SaveEveryForm(RequestData.GetList <string>("data"), ent); }
/// <summary> /// 查询 /// </summary> private void DoSelect() { string CorpId = string.Empty; string where = string.Empty; var UsrEnt = SysUser.Find(UserInfo.UserID); CommPowerSplit ps = new CommPowerSplit(); if (ps.IsNoticeRole(UserInfo.UserID, UserInfo.LoginName)) { where += " (WorkFlowState='1' or WorkFlowState='2' or WorkFlowState='-1') "; if (!string.IsNullOrEmpty(SearchCriterion.GetSearchValue("Year") + "")) { where += " and year(ApplyTime)= " + SearchCriterion.GetSearchValue("Year") + " "; } SearchCriterion.RemoveSearch("Year"); ents = UsrTravelWelfare.FindAll(SearchCriterion, Expression.Sql(where)); this.PageState.Add("UsrTravelWelfareList", ents); } else { // 判断公司登陆 UserContextInfo UC = new UserContextInfo(); CorpId = UC.GetUserCurrentCorpId(UserInfo.UserID); //SearchCriterion.AddSearch("CompanyId", CorpId); where += " (WorkFlowState='1' or WorkFlowState='2' or WorkFlowState='-1') " + AppealUsrAuth(); if (!string.IsNullOrEmpty(SearchCriterion.GetSearchValue("Year") + "")) { where += " and year(ApplyTime)= " + SearchCriterion.GetSearchValue("Year") + " "; } SearchCriterion.RemoveSearch("Year"); SearchCriterion.SetOrder("CompanyId", true); ents = UsrTravelWelfare.FindAll(SearchCriterion, Expression.Sql(where)); this.PageState.Add("UsrTravelWelfareList", ents); } }
private void StartFlow() { string id = RequestData.Get("Id") + ""; if (!string.IsNullOrEmpty(id)) { ent = UsrTravelWelfare.Find(id); } //受理人 string UserId = ent.ApproveUserId; string UserName = ent.ApproveName; string FlowKey = "EmpUsrWelfare"; //工作流key if (!string.IsNullOrEmpty(FlowKey)) { string formUrl = "/EmpWelfare/UsrTravelWelfareEdit.aspx?op=r&id=" + id; Guid guid = Aim.WorkFlow.WorkFlow.StartWorkFlow(id, formUrl, "员工旅游申请", FlowKey, UserInfo.UserID, UserInfo.Name); ent.WorkFlowState = "Start"; ent.WorkFLowCode = guid.ToString(); //InstanceId WorkFlowCode WorkFLowCode ent.DoUpdate(); this.PageState.Add("NextInfo", guid.ToString() + "$" + UserId + "|" + UserName); } }
private void AnalysUser(DataTable Dt) { //判断文件是否为模板格式 if (Dt.Columns.Count != 11 && Dt.Columns[0].ColumnName != "姓名") { throw new Exception("文件内容格式不符合模板定义的格式!"); } string guid = string.Empty; //guid for (int i = 0; i < Dt.Rows.Count; i++) { SysUser UserEnt = null; // try { if (!string.IsNullOrEmpty(Dt.Rows[i]["姓名"] + "")) { UsrTravelWelfare UW = new UsrTravelWelfare(); UW.DoCreate(); //guid = Guid.NewGuid().ToString(); //guid guid = UW.Id; //guid UserEnt = SysUser.FindFirstByProperties(SysUser.Prop_WorkNo, Dt.Rows[i]["工号"]); UW.Id = guid; UW.UserId = UserEnt.UserID; UW.WorkNo = UserEnt.WorkNo; if (UserEnt.Name != Dt.Rows[i]["姓名"] + "") { UW.UserName = Dt.Rows[i]["姓名"] + "/[" + UserEnt.Name + "]"; } else { UW.UserName = UserEnt.Name; } UW.Sex = UserEnt.Sex; UW.ImpState = "1"; //导入状态 1成功 UW.WorkFlowState = "2"; //标识 同意 UW.Result = "同意"; UW.ApplyTime = DateTime.Now; //申请日期 //公司 SysGroup GroupEnt = SysGroup.TryFind(UserEnt.Pk_corp); if (GroupEnt != null) { UW.CompanyName = Dt.Rows[i]["公司"] + ""; UW.CompanyId = GroupEnt.GroupID; //通过工号 强制关联公司和部门 } //部门 GroupEnt = SysGroup.TryFind(UserEnt.Pk_deptdoc); if (GroupEnt != null) { UW.DeptId = GroupEnt.GroupID; UW.DeptName = Dt.Rows[i]["部门"] + ""; } UW.TravelAddr = Dt.Rows[i]["旅游地点"] + ""; //旅游地点 UW.TravelTime = Dt.Rows[i]["出行时间"] + ""; //出行时间 UW.TravelMoney = (decimal)GetMoney(UserEnt, ""); //旅游金额 //入职日期 if (!string.IsNullOrEmpty(UserEnt.Indutydate)) { UW.IndutyDate = DateTime.Parse(UserEnt.Indutydate); } //员工类型 正式员工,实习生 string WorkerType = DataHelper.QueryValue("select psnclassname from HR_OA_MiddleDB..fld_rylb where pk_fld_rylb='" + UserEnt.Pk_rylb + "'") + ""; UW.WorkerType = WorkerType; //HaveFamily Y if (!string.IsNullOrEmpty(Dt.Rows[i]["家属姓名"] + "")) { UW.HaveFamily = "Y"; UsrTravelInfo UT = new UsrTravelInfo(); //家属姓名 if (!string.IsNullOrEmpty(Dt.Rows[i]["家属姓名"] + "")) { UT.Name = Dt.Rows[i]["家属姓名"] + ""; UT.WelfareTravelId = guid; //* 关联的主键ID UT.CreateTime = DateTime.Now; } //家属年龄 int age = 0; if (int.TryParse(Dt.Rows[i]["家属年龄"] + "", out age)) { UT.Age = age; if (age <= 13) //14 岁为标志 { UT.IsChild = "是"; } } //家属性别 if (!string.IsNullOrEmpty(Dt.Rows[i]["家属性别"] + "")) { UT.Sex = Dt.Rows[i]["家属性别"] + ""; } //家属身高 if (!string.IsNullOrEmpty(Dt.Rows[i]["家属身高"] + "")) { Decimal dlb = 0; if (Decimal.TryParse(Dt.Rows[i]["家属身高"] + "", out dlb)) { UT.Height = dlb; } } UT.DoCreate(); //创建家属记录 } //计算金额 UW.CreateId = UserInfo.UserID; UW.CreateName = UserInfo.Name; UW.CreateTime = DateTime.Now; UW.DoUpdate(); } else { //家属信息 UsrTravelInfo UT = null; if (!string.IsNullOrEmpty(Dt.Rows[i]["家属姓名"] + "")) { UT = new UsrTravelInfo(); //家属姓名 if (!string.IsNullOrEmpty(Dt.Rows[i]["家属姓名"] + "")) { UT.Name = Dt.Rows[i]["家属姓名"] + ""; UT.WelfareTravelId = guid; //* 关联的主键ID UT.CreateTime = DateTime.Now; } //家属年龄 int age = 0; if (int.TryParse(Dt.Rows[i]["家属年龄"] + "", out age)) { UT.Age = age; if (age <= 13) //14 岁为标志 { UT.IsChild = "是"; } } //家属性别 if (!string.IsNullOrEmpty(Dt.Rows[i]["家属性别"] + "")) { UT.Sex = Dt.Rows[i]["家属性别"] + ""; } //家属身高 if (!string.IsNullOrEmpty(Dt.Rows[i]["家属身高"] + "")) { Decimal dlb = 0; if (Decimal.TryParse(Dt.Rows[i]["家属身高"] + "", out dlb)) { UT.Height = dlb; } } UT.DoCreate(); //创建家属记录 } } } catch { UsrTravelWelfare UW = new UsrTravelWelfare(); UW.ImpState = "0"; //无该人员或异常 UW.WorkFlowState = "Exception"; //异常标识 UW.UserName = Dt.Rows[i]["姓名"] + " [异常]"; UW.WorkNo = Dt.Rows[i]["工号"] + ""; UW.CompanyName = Dt.Rows[i]["公司"] + ""; UW.DeptName = Dt.Rows[i]["部门"] + ""; UW.TravelAddr = Dt.Rows[i]["旅游地点"] + ""; UW.TravelTime = Dt.Rows[i]["出行时间"] + ""; UW.OtherName = Dt.Rows[i]["家属姓名"] + " [异常]"; UW.CreateTime = DateTime.Now; UW.DoCreate(); } } }
/// <summary> /// 查询 /// </summary> private void DoSelect() { SearchCriterion.AddSearch("UserId", UserInfo.UserID); ents = UsrTravelWelfare.FindAll(SearchCriterion); this.PageState.Add("UsrTravelWelfareList", ents); }
private void DoSelect() { string CorpId = string.Empty; string DeptId = string.Empty; string ApproveName = string.Empty; string ApproveUserId = string.Empty; if (Session["CompanyId"] != null) { CorpId = Session["CompanyId"] + ""; } else { CorpId = UserEnt.Pk_corp; } DeptId = UserEnt.Pk_deptdoc; GetAddrEnum(CorpId, DeptId); //获取地址枚举 if (op == "c" || op == "create") { //corp SysGroup Gp = SysGroup.TryFind(CorpId); string CompanyName = Gp == null ? "" : Gp.Name; string DeptName = string.Empty; if (UserEnt.Pk_corp != CorpId) { DeptName = ""; } else if (UserEnt.Pk_corp == CorpId) { SysGroup GpEnt = SysGroup.FindFirstByProperties(SysGroup.Prop_GroupID, UserEnt.Pk_deptdoc); DeptName = "/" + GpEnt.Name; } //查找到部门配置 string SQL = @"with GetTree as ( select * from HR_OA_MiddleDB..fld_bmml where pk_deptdoc='{0}' union all select A.* from HR_OA_MiddleDB..fld_bmml As A join GetTree as B on A.pk_deptdoc=B.pk_fathedept ) select deptname+',' as [text()] from getTree FOR XML PATH('') " ; SQL = SQL.Replace("HR_OA_MiddleDB", Global.HR_OA_MiddleDB); SQL = string.Format(SQL, UserEnt.Pk_deptdoc); string DeptPathStr = DataHelper.QueryValue(SQL).ToString(); DeptPathStr = string.IsNullOrEmpty(DeptPathStr) ? "" : DeptPathStr; SQL = @"select top 1 *, case when patindex('%'+DeptName+'%','{1}')=0 then 100 else patindex('%'+DeptName+'%','{1}') end As SortIndex from FL_Culture..SysApproveConfig As A where A.CompanyId='{0}' and TravelWelfareId is not null order by SortIndex"; SQL = string.Format(SQL, CorpId, DeptPathStr); DataTable Dt = DataHelper.QueryDataTable(SQL); if (Dt.Rows.Count > 0) { ApproveName = Dt.Rows[0]["TravelWelfareName"] + ""; ApproveUserId = Dt.Rows[0]["TravelWelfareId"] + ""; } var Obj = new { UserId = UserEnt.UserID, UserName = UserEnt.Name, Sex = UserEnt.Sex, //Age = Ent.Age, WorkNo = UserEnt.WorkNo, //IndutyData = Ent.IndutyData, CompanyName = CompanyName + DeptName, CompanyId = CorpId, DeptId = DeptId, DeptName = DeptName, ApproveName = "", ApproveUserId = "", }; this.SetFormData(Obj); } if (op != "c" && op != "cs") { if (!String.IsNullOrEmpty(id)) { ent = UsrTravelWelfare.Find(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.SetFormData(ent); string sql = "select * from FL_Culture..UsrTravelInfo where WelfareTravelId='{0}' order by CreateTime"; sql = string.Format(sql, id); this.PageState.Add("datalist", DataHelper.QueryDictList(sql)); } }