Example #1
0
        private string GetMoveSysTaskSql(SysAccomplishedTask taskCompleted, Dictionary <string, object> context)
        {
            ORMappingItemCollection mappings          = GetMappingInfo(context);
            ORMappingItemCollection mappingsCompleted = ORMapping.GetMappingInfo <SysAccomplishedTask>();

            InsertSqlClauseBuilder insertBuilder = ORMapping.GetInsertSqlClauseBuilder(taskCompleted, "EndTime", "Status", "StatusText");

            string[] fields = insertBuilder.GetAllDataFields();

            string affectedFields = string.Join(",", fields);

            string sql = string.Format("INSERT INTO {0}({1}, END_TIME, STATUS, STATUS_TEXT) SELECT {2}, GETDATE() AS END_TIME, {3} AS STATUS, {4} AS STATUS_TEXT FROM {5} WHERE TASK_GUID = {6}",
                                       mappingsCompleted.TableName,
                                       affectedFields,
                                       affectedFields,
                                       TSqlBuilder.Instance.CheckUnicodeQuotationMark(taskCompleted.Status.ToString()),
                                       TSqlBuilder.Instance.CheckUnicodeQuotationMark(taskCompleted.StatusText),
                                       mappings.TableName,
                                       TSqlBuilder.Instance.CheckUnicodeQuotationMark(taskCompleted.TaskID));

            return(sql);
        }