/// <summary>
        /// Insert to database
        /// </summary>
        /// <param name="objUI"></param>
        /// <returns></returns>
        public Message Update(WFRole_WFResolution objUI, WFRole_WFResolution objOldDb)
        {
            Message msg = null;
            try
            {
                if (objUI != null)
                {

                    if (!IsDuplicated(objUI))
                    {
                        WFRole_WFResolution objDb = GetObjectByRsolutionAndRoleAndHold(objOldDb.WFResolutionID, objOldDb.WFRoleID, objOldDb.IsHold);
                        dbContext.WFRole_WFResolutions.DeleteOnSubmit(objDb);
                        dbContext.WFRole_WFResolutions.InsertOnSubmit(objUI);
                        dbContext.SubmitChanges();
                        msg = new Message(MessageConstants.I0001, MessageType.Info, "Resolution " + new ResolutionDao().GetByID(objUI.WFResolutionID).Name + " of WorkFlow " + new RoleDao().GetWorkFlowByRoleID(objUI.WFRoleID), "assigned to role " + new RoleDao().GetByID(objUI.WFRoleID).Name, "updated");
                    }
                    else
                    {
                        msg = new Message(MessageConstants.E0033, MessageType.Error, "Cannot assigned resolution" + new ResolutionDao().GetByID(objUI.WFResolutionID).Name
                            + "of WorkFlow " + new RoleDao().GetWorkFlowByRoleID(objUI.WFRoleID) +
                          "to role" + new RoleDao().GetByID(objUI.WFRoleID).Name + " because it has been used");
                    }
                }
            }
            catch (Exception)
            {
                // Show system error
                msg = new Message(MessageConstants.E0007, MessageType.Error);
            }
            return msg;
        }
 private bool IsDuplicated(WFRole_WFResolution objUI)
 {
     bool isDuplicated = false;
     WFRole_WFResolution obj = dbContext.WFRole_WFResolutions.Where(q => q.WFResolutionID == objUI.WFResolutionID &&
             q.WFRoleID == objUI.WFRoleID && q.IsHold == objUI.IsHold).FirstOrDefault();
     if (obj != null)
     {
         isDuplicated = true;
     }
     return isDuplicated;
 }
 /// <summary>
 /// Insert to database
 /// </summary>
 /// <param name="objUI"></param>
 /// <returns></returns>
 public Message Insert(WFRole_WFResolution objUI)
 {
     Message msg = null;
     try
     {
         if (objUI != null)
         {
             if (!IsDuplicated(objUI))
             {
                 // Set more info
                 dbContext.WFRole_WFResolutions.InsertOnSubmit(objUI);
                 dbContext.SubmitChanges();
                 msg = new Message(MessageConstants.I0001, MessageType.Info, "Resolution " + objUI.WFResolution.Name + " of WorkFlow " + new RoleDao().GetWorkFlowByRoleID(objUI.WFRoleID), "assigned to role " + objUI.WFRole.Name);
             }
             else
             {
                 msg = new Message(MessageConstants.E0033, MessageType.Error, "Cannot assigned resolution" + new ResolutionDao().GetByID(objUI.WFResolutionID).Name
                     + "of WorkFlow " + new RoleDao().GetWorkFlowByRoleID(objUI.WFRoleID) +
                   "to role" + new RoleDao().GetByID(objUI.WFRoleID).Name + " because it has been used");
             }
         }
     }
     catch (Exception)
     {
         // Show system error
         msg = new Message(MessageConstants.E0007, MessageType.Error);
     }
     return msg;
 }