public static NoticeModel GetNoticeModel(long noticeID)
        {
            var model = new NoticeModel();

            using (var utility = DbUtility.GetInstance())
            {
                var sql = new StringBuilder();
                sql.Append(@"
                    SELECT `t_notice`.`NoticeID`,
                        `t_notice`.`OrganizationID`,
                        `t_notice`.`Title`,
                        `t_notice`.`NoticeDateTime`,
                        `t_notice`.`AttachmentFile1` as AttachmentFileID1,
                        `t_notice`.`ContentType`,
                        `t_notice`.`ContentDesc`,
                        `t_notice`.`ContentTxt`,
                        `t_notice`.`StartDate`,
                        `t_notice`.`EndDate`,
                        `t_notice`.`CreateUserID`,
                        `t_notice`.`CreateDateTime`,
                        `t_notice`.`LastUserID`,
                        `t_notice`.`LastUpdatetime`,
                        `t_notice`.`Sticky`,
                        createUser.UserName as CreateUserName,
                        updateUser.UserName as UpdateUserName,
                        files.FileName as AttachmentFileFileName1
                    FROM `t_notice` 
                    left join m_user createUser on createUser.Guid=`t_notice`.`CreateUserID`
                    left join m_user updateUser on updateUser.Guid=`t_notice`.`LastUserID`
                    left join t_files files     on files.FilesID=`t_notice`.`AttachmentFile1`
                    where `t_notice`.`NoticeID`=@NoticeID;
                ");

                utility.AddParameter("NoticeID", noticeID);
                utility.ExecuteReaderModel(sql.ToString(), model);
                return(model);
            }
        }
        public static bool Save(NoticeModel model, SystemRollEnum roll)
        {
            var noticeID  = model.NoticeID;
            var displayNo = 0;

            using (var utility = DbUtility.GetInstance())
            {
                var sql = new StringBuilder();
                if (model.NoticeID == 0)
                {
                    sql.Append(@"
                    INSERT INTO `t_notice`
                        (`NoticeID`, ");
                    if (roll != SystemRollEnum.SysAdmin)
                    {
                        sql.Append(@"
                        `OrganizationID`,");
                    }
                    sql.Append(@"
                        `Sticky`,
                        `DisplayNo`,
                        `Title`,
                        `NoticeDateTime`,
                        `AttachmentFile1`,
                        `ContentType`,
                        `ContentDesc`,
                        `ContentTxt`,
                        `StartDate`,
                        `EndDate`,
                        `CreateUserID`,
                        `CreateDateTime`,
                        `LastUserID`,
                        `LastUpdatetime`)
                        VALUES
                        (@NoticeID,");
                    if (roll != SystemRollEnum.SysAdmin)
                    {
                        sql.Append(@"
                        @OrganizationID,");
                    }
                    sql.Append(@"
                        @Sticky,
                        @DisplayNo,
                        @Title,
                        @NoticeDateTime,
                        @AttachmentFile1,
                        @ContentType,
                        @ContentDesc,
                        @ContentTxt,
                        @StartDate,
                        @EndDate,
                        @CreateUserID,
                        @CreateDateTime,
                        @LastUserID,
                        @LastUpdatetime);");

                    noticeID = GetUUID();
                }
                else
                {
                    sql.Append(@"
                        UPDATE `t_notice`
                        SET
                        `Sticky` = @Sticky,
                        `DisplayNo` = @DisplayNo,
                        `Title` = @Title,
                        `NoticeDateTime` = @NoticeDateTime,");
                    if (model.AttachmentFileID1 > 0)
                    {
                        sql.Append(@"
                        `AttachmentFile1` = @AttachmentFile1,");
                    }
                    else if (model.AttachmentFileID1 == -1)
                    {
                        sql.Append(@"
                        `AttachmentFile1` = 0,");
                    }
                    if (roll == SystemRollEnum.SysAdmin)
                    {
                        sql.Append(@"
                        OrganizationID=null,");
                    }
                    sql.Append(@"
                        `ContentType` = @ContentType,
                        `ContentDesc` = @ContentDesc,
                        `ContentTxt` = @ContentTxt,
                        `LastUserID` = @LastUserID,
                        `LastUpdatetime` = @LastUpdatetime
                        WHERE `NoticeID` = @NoticeID and CreateUserID=@CreateUserID;");
                    if (model.Sticky)
                    {
                        displayNo = model.DisplayNo;
                    }
                }

                utility.AddParameter("NoticeID", noticeID);

                utility.AddParameter("OrganizationID", model.OrganizationID);
                utility.AddParameter("Sticky", model.Sticky);
                utility.AddParameter("DisplayNo", displayNo);
                utility.AddParameter("Title", model.Title);
                utility.AddParameter("NoticeDateTime", model.NoticeDateTime);
                utility.AddParameter("AttachmentFile1", model.AttachmentFileID1);
                utility.AddParameter("ContentType", model.ContentType);
                utility.AddParameter("ContentDesc", model.ContentDesc);
                utility.AddParameter("ContentTxt", model.ContentTxt);
                utility.AddParameter("StartDate", model.StartDate);
                utility.AddParameter("EndDate", model.EndDate);
                utility.AddParameter("CreateUserID", model.CreateUserID);
                utility.AddParameter("CreateDateTime", model.CreateDateTime);
                utility.AddParameter("LastUserID", model.LastUserID);
                utility.AddParameter("LastUpdatetime", model.LastUpdatetime);
                var effRow = utility.ExecuteNonQuery(sql.ToString());
                if (effRow == 1 && model.NoticeID == 0)
                {
                    model.NoticeID = noticeID;
                }
                return(effRow == 1);
            }
        }