private void UpdateWorkEntity(NosaworksEntity wEntity, NosaworkitemEntity iEntity) { if (wEntity != null && iEntity != null) { //完成进度 var total = wEntity.DutyUserId.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries).Count(); var num = nosaworkitembll.GetList(string.Format(" and workid='{0}' and state='通过'", iEntity.WorkId)).Count(); wEntity.Pct = (decimal)Math.Round((num * 1.0) / total * 100, 2); //责任人、责任部门标签 string oldName = iEntity.DutyUserName; string newName = string.Format("<span style='color:#00CC99;' title='已完成本次任务'>{0},</span>", oldName); string oldDepartName = iEntity.DutyDepartName; string newDepartName = string.Format("<span style='color:#00CC99;' title='已完成本次任务'>{0},</span>", oldDepartName); var list = nosaworkitembll.GetList(string.Format(" and workid='{0}' and dutydepartid='{1}'", iEntity.WorkId, iEntity.DutyDepartId)).ToList(); if (iEntity.State == "通过") { Regex regTrm = new Regex(",</span>$"); Regex regUser = new Regex(oldName + ",?"); Regex regDept = new Regex(oldDepartName + ",?"); wEntity.DutyUserHtml = regUser.Replace(wEntity.DutyUserHtml, newName); wEntity.DutyUserHtml = regTrm.Replace(wEntity.DutyUserHtml, "</span>"); if (list.Count == list.Count(x => x.State == "通过")) { wEntity.DutyDepartHtml = regDept.Replace(wEntity.DutyDepartHtml, newDepartName); wEntity.DutyDepartHtml = regTrm.Replace(wEntity.DutyDepartHtml, "</span>"); } } } }
private void SaveWorkItem(NosaworksEntity entity) { nosaworkitembll.RemoveForm(entity.ID); UserBLL userbll = new UserBLL(); var listUserId = entity.DutyUserId.Split(new char[] { ',' }); foreach (var userId in listUserId) { var user = userbll.GetUserInfoEntity(userId); var iEntity = new NosaworkitemEntity() { ID = Guid.NewGuid().ToString(), DutyUserId = userId, DutyUserName = user.RealName, DutyDepartId = user.DepartmentId, DutyDepartName = user.DeptName, WorkId = entity.ID, IsSubmitted = "否", State = "待上传", CheckUserId = entity.EleDutyUserId, CheckUserName = entity.EleDutyUserName }; nosaworkitembll.SaveForm("", iEntity); } }
private void SendMessage(NosaworksEntity entity) { var dList = entity.DutyUserId.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries); var sList = new string[] {}; if (!entity.SubmitUserId.IsNullOrWhiteSpace()) { sList = entity.SubmitUserId.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries); } if (dList.Length > sList.Length) { var user = ERCHTMS.Code.OperatorProvider.Provider.Current(); var eList = dList.Except(sList); var aList = new UserBLL().GetListForCon(x => eList.Contains(x.UserId)); MessageEntity msg = new MessageEntity() { Id = Guid.NewGuid().ToString(), UserId = string.Join(",", aList.Select(x => x.Account)), UserName = string.Join(",", aList.Select(x => x.RealName)), SendTime = DateTime.Now, SendUser = user.Account, SendUserName = entity.CREATEUSERNAME, Title = "NOSA工作成果上传提醒", Content = string.Format("您有一项“{0}”的NOSA工作成果未上传,请即时上传。", entity.Name), Category = "其它" }; if (new MessageBLL().SaveForm("", msg)) { JPushApi.PublicMessage(msg); } } }
public ActionResult SaveForm(string keyValue, NosaworksEntity entity) { entity.DutyUserHtml = entity.DutyUserName; entity.DutyDepartHtml = entity.DutyDepartName; nosaworksbll.SaveForm(keyValue, entity); SaveWorkItem(entity); return(Success("操作成功。")); }
/// <summary> /// 保存表单(新增、修改) /// </summary> /// <param name="keyValue">主键值</param> /// <param name="entity">实体对象</param> /// <returns></returns> public void SaveForm(string keyValue, NosaworksEntity entity) { try { service.SaveForm(keyValue, entity); } catch (Exception) { throw; } }