< Summary

Information
Class: OzonOrdersWeb.Areas.Studio2.Controllers.Transactions.ToCancellationTransactionController
Assembly: OzonOrdersWeb
File(s): /home/runner/work/Studio2Prod/Studio2Prod/OzonOrdersWeb/Areas/Studio2/Controllers/Transactions/ToCancellationTransactionController.cs
Line coverage
0%
Covered lines: 0
Uncovered lines: 21
Coverable lines: 21
Total lines: 68
Line coverage: 0%
Branch coverage
N/A
Covered branches: 0
Total branches: 0
Branch coverage: N/A
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
.ctor(...)100%210%
GetTransactionConfig()100%210%
CreateToCancellationTransaction(...)100%210%
CreateToCancellationTransaction(...)100%210%

File(s)

/home/runner/work/Studio2Prod/Studio2Prod/OzonOrdersWeb/Areas/Studio2/Controllers/Transactions/ToCancellationTransactionController.cs

#LineLine coverage
 1using Microsoft.AspNetCore.Mvc;
 2using OzonDomains;
 3using OzonDomains.Models;
 4using OzonOrdersWeb.Areas.Studio2.Controllers.Base;
 5using OzonRepositories.Context;
 6using Services.ApiServices.OzonApi;
 7using Services.CacheServices.Cache.OzonOrdersCache;
 8using Services.CacheServices.Cache.UserCacheService;
 9using Services.DataServices;
 10using OzonOrdersWeb.WebServices.Currency;
 11using Services.TransactionUtilsServices;
 12using Services.CacheServices.Cache;
 13
 14namespace OzonOrdersWeb.Areas.Studio2.Controllers.Transactions;
 15
 16/// <summary>
 17/// Контроллер транзакции "К отмене"
 18/// </summary>
 19public class ToCancellationTransactionController : BaseTransactionController
 20{
 21    public ToCancellationTransactionController(
 22        ApplicationDbContext context,
 23        AppStatusDataServices appStatusServices,
 24        OrdersDataServices orderServices,
 25        TransactionManager transactionManager,
 26        TransactionCache transactionCache,
 27        SupplierDataServices supplierDataServices,
 28        IUserCacheService userCacheService,
 29        ICurrencyRatesViewBagService currencyRatesViewBagService,
 30        CacheUpdater<Order> cacheUpdater,
 31        OrderCache orderCache,
 32        WarehouseDataServices warehouseDataServices,
 33        ExpenseTypeDataServices expenseTypeDataServices,
 34        OrderExtraExpenseDataServices orderExtraExpenseDataServices,
 35        StatusTransitionDataServices statusTransitionDataServices,
 36        OzonOrderCancellationService? ozonCancellationService = null)
 037        : base(context, appStatusServices, orderServices, transactionManager, transactionCache,
 038               supplierDataServices, userCacheService, currencyRatesViewBagService, cacheUpdater, orderCache,
 039               warehouseDataServices: warehouseDataServices, expenseTypeDataServices: expenseTypeDataServices,
 040               orderExtraExpenseDataServices: orderExtraExpenseDataServices,
 041               statusTransitionDataServices: statusTransitionDataServices,
 042               ozonCancellationService: ozonCancellationService)
 43    {
 044    }
 45
 046    protected override TransactionConfig GetTransactionConfig() => new()
 047    {
 048        TransactionType = TransactionType.ToCancellation,
 049        PrimaryStatusName = "К отмене",
 050        AdditionalStatusNames = new List<string> { "Отменен" },
 051        ViewName = "CreateToCancellationTransaction",
 052        RequiredSourceStatuses = new List<string> { "Заказан поставщику", "Заказан реализатору" },
 053        IncludeCancelledOrders = true,
 054        SupportsOzonCancelPanel = true,
 055        CreateTransactionMethod = (tm, orders, userName, createAt, comment) =>
 056            tm.CreateToCancellationTransaction(orders, userName, createAt, comment)
 057    };
 58
 59    public Task<IActionResult> CreateToCancellationTransaction(string ids, int page)
 060        => CreateTransactionBase(ids, page);
 61
 62    [HttpPost]
 63    [ValidateAntiForgeryToken]
 64    public Task<IActionResult> CreateToCancellationTransaction(
 65        List<Order> orders, string userName, string? comment,
 66        int page, string? deletedOrders, Dictionary<int, string?>? orderSupplierMap)
 067        => CreateTransactionPostBase(orders, userName, comment, page, deletedOrders, orderSupplierMap);
 68}