Ejemplo n.º 1
0
        public virtual List <Query> GetInsertQuery(params T[] models)
        {
            var insertQuery = new Query(tableSchema.TableName);

            insertQuery.AsInsert(
                tableSchema.InsertColumns,
                models.Select(model => tableSchema.InsertPart(model)));

            return(new List <Query> {
                insertQuery
            });
        }
Ejemplo n.º 2
0
        public override List <Query> GetInsertQuery(Guid tenantId, params VoucherEntry[] entities)
        {
            var voucherEntryQuery  = new Query(tableSchema.TableName);
            var voucherDetailQuery = new Query(voucherDetailSchema.TableName);

            var voucherEntryDestructuredObjects = entities.Select(model => tableSchema.InsertPart(model)).ToList();

            voucherEntryDestructuredObjects.ForEach(objectArr => objectArr.Insert(0, tenantId));
            voucherEntryQuery.AsInsert(
                tableSchema.InsertColumns,
                voucherEntryDestructuredObjects
                );

            var voucherDetailDestructuredObjects = entities
                                                   .SelectMany(voucherEntry => voucherEntry
                                                               .VoucherDetails
                                                               .Select(voucherDetail => voucherDetailSchema.InsertPart(voucherDetail)))
                                                   .ToList();

            voucherDetailDestructuredObjects.ForEach(objectArr => objectArr.Insert(0, tenantId));
            voucherDetailQuery.AsInsert(
                voucherDetailSchema.InsertColumns,
                voucherDetailDestructuredObjects
                );

            return(new List <Query> {
                voucherEntryQuery, voucherDetailQuery
            });
        }