public bool EditTicketTmpl(sys_form_tmpl tmpl, sys_form_tmpl_ticket tmplTicket, List <UserDefinedFieldValue> udfValue, List <CheckListDto> checkList, long userId) { var user = UserInfoBLL.GetUserInfo(userId); sys_form_tmpl_ticket_dal sfttDal = new sys_form_tmpl_ticket_dal(); var oldtmplTicket = sfttDal.FindNoDeleteById(tmplTicket.id); if (oldtmplTicket == null || user == null) { return(false); } if (!EditFormTmpl(tmpl, userId)) { return(false); } tmplTicket.update_time = Tools.Date.DateHelper.ToUniversalTimeStamp(DateTime.Now); tmplTicket.update_user_id = userId; sfttDal.Update(tmplTicket); OperLogBLL.OperLogUpdate <sys_form_tmpl_ticket>(tmplTicket, oldtmplTicket, tmplTicket.id, userId, OPER_LOG_OBJ_CATE.SYS_FORM_TMPL_TICKET, ""); var udf_ticket_list = new UserDefinedFieldsBLL().GetUdf(DicEnum.UDF_CATE.TICKETS); if (udf_ticket_list != null && udf_ticket_list.Count > 0) { new UserDefinedFieldsBLL().UpdateUdfValue(DicEnum.UDF_CATE.FORM_TICKET, udf_ticket_list, tmplTicket.id, udfValue, user, DicEnum.OPER_LOG_OBJ_CATE.SYS_FORM_TMPL_TICKET_EXT); } CheckManage(checkList, tmplTicket.id, userId); return(true); }
public void CheckManage(List <CheckListDto> ckList, long ticketId, long userId) { sys_form_tmpl_ticket_checklist_dal stcDal = new sys_form_tmpl_ticket_checklist_dal(); var thisTicket = new sys_form_tmpl_ticket_dal().FindNoDeleteById(ticketId); if (thisTicket == null) { return; } var oldCheckList = stcDal.GetCheckByTicket(ticketId); var timeNow = Tools.Date.DateHelper.ToUniversalTimeStamp(DateTime.Now); if (oldCheckList != null && oldCheckList.Count > 0) { if (ckList != null && ckList.Count > 0) { var editList = ckList.Where(_ => _.ckId > 0).ToList(); var addList = ckList.Where(_ => _.ckId < 0).ToList(); if (editList != null && editList.Count > 0) { foreach (var thisEnt in editList) { var oldThisEdit = oldCheckList.FirstOrDefault(_ => _.id == thisEnt.ckId); var thisEdit = stcDal.FindNoDeleteById(thisEnt.ckId); if (oldThisEdit != null && thisEdit != null) { oldCheckList.Remove(oldThisEdit); thisEdit.is_competed = (sbyte)(thisEnt.isComplete ? 1 : 0); thisEdit.is_important = (sbyte)(thisEnt.isImport ? 1 : 0); thisEdit.item_name = thisEnt.itemName; thisEdit.kb_article_id = thisEnt.realKnowId; thisEdit.sort_order = thisEnt.sortOrder; thisEdit.update_user_id = userId; thisEdit.update_time = timeNow; stcDal.Update(thisEdit); OperLogBLL.OperLogUpdate <sys_form_tmpl_ticket_checklist>(thisEdit, oldThisEdit, thisEdit.id, userId, OPER_LOG_OBJ_CATE.SYS_FORM_TMPL_TICKET_CHECKLIST, ""); } } } if (addList != null && addList.Count > 0) { foreach (var thisEnt in addList) { var thisCheck = new sys_form_tmpl_ticket_checklist() { id = stcDal.GetNextIdCom(), is_competed = (sbyte)(thisEnt.isComplete ? 1 : 0), is_important = (sbyte)(thisEnt.isImport ? 1 : 0), item_name = thisEnt.itemName, kb_article_id = thisEnt.realKnowId, update_user_id = userId, update_time = timeNow, create_time = timeNow, create_user_id = userId, form_tmpl_ticket_id = ticketId, sort_order = thisEnt.sortOrder, }; stcDal.Insert(thisCheck); OperLogBLL.OperLogAdd <sys_form_tmpl_ticket_checklist>(thisCheck, thisCheck.id, userId, OPER_LOG_OBJ_CATE.SYS_FORM_TMPL_TICKET_CHECKLIST, ""); } } } if (oldCheckList.Count > 0) { oldCheckList.ForEach(_ => { stcDal.SoftDelete(_, userId); OperLogBLL.OperLogDelete <sys_form_tmpl_ticket_checklist>(_, _.id, userId, OPER_LOG_OBJ_CATE.SYS_FORM_TMPL_TICKET_CHECKLIST, ""); }); } } else { if (ckList != null && ckList.Count > 0) { foreach (var thisEnt in ckList) { var thisCheck = new sys_form_tmpl_ticket_checklist() { id = stcDal.GetNextIdCom(), is_competed = (sbyte)(thisEnt.isComplete ? 1 : 0), is_important = (sbyte)(thisEnt.isImport ? 1 : 0), item_name = thisEnt.itemName, kb_article_id = thisEnt.realKnowId, update_user_id = userId, update_time = timeNow, create_time = timeNow, create_user_id = userId, form_tmpl_ticket_id = ticketId, sort_order = thisEnt.sortOrder, }; stcDal.Insert(thisCheck); OperLogBLL.OperLogAdd <sys_form_tmpl_ticket_checklist>(thisCheck, thisCheck.id, userId, OPER_LOG_OBJ_CATE.SYS_FORM_TMPL_TICKET_CHECKLIST, ""); } } } }