public ActionResult DisplayTemplate(int template) { IEnumerable <Staff> staff = request.Staffs; IEnumerable <TaskList> taskList = request.TaskLists.Where(t => t.TemplateID == template).OrderBy(t => t.orderNum); List <TaskAssignment> taskAssignment = new List <TaskAssignment>(); Template myTemplate = request.Templates.FirstOrDefault(t => t.templateID == template); int templateID = template; foreach (var task in taskList) { var currentTasks = request.TaskAssignments.Where(t => t.taskID == task.taskID); foreach (var item in currentTasks) { taskAssignment.Add(item); } } Models.TemplateInfo templateInfo = new Models.TemplateInfo() { taskList = taskList, taskStatus = request.TaskStatus1, taskAssignments = taskAssignment, template = myTemplate, staff = staff }; return(View(templateInfo)); }
/// <summary> /// 根据公司ID找发放模版 /// </summary> /// <param name="id">公司ID</param> /// <returns></returns> public Models.TemplateInfo GetTemplateByCompanyId(int id) { EntityContext context = BlueFramework.Blood.Session.CreateContext(); Models.TemplateInfo temp = context.Selete <Models.TemplateInfo>("hr.template.findTemplateByCompanyId", id); return(temp); }
public ActionResult SaveTemplateMsg(int id, string temps) { string msg = string.Empty; //查询公司模版是否已经存在 Models.TemplateInfo ti = new Models.TemplateInfo(); ti = new Manager.PayManager().GetTemplateByCompanyId(id); if (ti.TemplateId != 0) { msg = "该公司已有模版"; return(Json(msg)); } int[] tempArr = null; if (!string.IsNullOrEmpty(temps)) { string strTemp = temps; string[] strArr = strTemp.Split(','); tempArr = new int[strArr.Length]; for (int i = 0; i < strArr.Length; i++) { tempArr[i] = Convert.ToInt32(strArr[i]); } } if (new Manager.PayManager().SaveTemplateMsg(id, tempArr)) { msg = "保存成功"; } else { msg = "保存失败"; } return(Json(msg)); }
public bool SavePayDetail(List <PayDetailInfo> list, int cmpid, string tname, string time, string count, int status, ref string msg) { using (EntityContext context = BlueFramework.Blood.Session.CreateContext()) { try { context.BeginTransaction(); Models.TemplateInfo temp = context.Selete <Models.TemplateInfo>("hr.template.findTemplateIdByCompanyId", cmpid); Payment pl = new Payment(); pl.CompanyId = cmpid; pl.TemplateId = temp.TemplateId; pl.PayTitle = tname; pl.PayMonth = time; pl.CreatorId = UserContext.CurrentUser.UserId; pl.CreateTime = DateTime.Now; pl.Status = status; if (status == 0)//新建发放表重复校验 { Payment payinfo = context.SelectListByTemplate <Payment>("hr.pay.findPay", pl)[0]; if (payinfo.PayId != 0) { msg += "该公司该月份已创建发放表!<br />"; context.Rollback(); return(false); } context.Save <Payment>("hr.pay.insertPayTable", pl); } Dictionary <string, int> dic = GetIdConfigDic(); foreach (PayDetailInfo info in list) { foreach (System.Reflection.PropertyInfo p in info.GetType().GetProperties()) { if (dic.ContainsKey(p.Name)) { PayValueInfo pvi = new PayValueInfo(); pvi.PayId = pl.PayId; pvi.ItemId = dic[p.Name]; pvi.PersonId = info.PersonId; pvi.PayValue = decimal.Parse(p.GetValue(info).ToString()); context.Save <PayValueInfo>("hr.pay.insertPayTableDetail", pvi); } } } if (status == 2)//归档 { CompanyAccountInfo cai = new CompanyAccountInfo(); cai.AccountBalance = decimal.Parse(count); cai.CompanyId = cmpid; context.Save <CompanyAccountInfo>("hr.company.updateCompanyBalance", cai); } context.Commit(); return(true); } catch (Exception ex) { msg += "服务器内部错误,请联系管理员!<br />"; context.Rollback(); return(false); } } }