75 changed files with 2520 additions and 35 deletions
@ -0,0 +1,49 @@ |
|||||
|
using System; |
||||
|
|
||||
|
namespace WinIn.FasterZ.Wms.Z_Business.StoreWorkOrder.Dtos; |
||||
|
|
||||
|
using System.Collections.Generic; |
||||
|
|
||||
|
using WinIn.FasterZ.Wms.Permissions; |
||||
|
using WinIn.FasterZ.Wms.Z_Business.StoreWorkOrderDetail; |
||||
|
using WinIn.FasterZ.Wms.Z_Business.StoreWorkOrderDetail.Dtos; |
||||
|
|
||||
|
[Serializable] |
||||
|
public class CreateUpdateStoreWorkOrderDto |
||||
|
{ |
||||
|
public DateTime ActiveDate { get; set; } |
||||
|
|
||||
|
public DateTime EffectiveDate { get; set; } |
||||
|
|
||||
|
public string ItemCode { get; set; } |
||||
|
|
||||
|
public string? ItemDesc1 { get; set; } |
||||
|
|
||||
|
public string? ItemDesc2 { get; set; } |
||||
|
|
||||
|
public string? ItemName { get; set; } |
||||
|
|
||||
|
public string? LocationCode { get; set; } |
||||
|
|
||||
|
public string Number { get; set; } |
||||
|
|
||||
|
public string? Op { get; set; } |
||||
|
|
||||
|
public decimal Qty { get; set; } |
||||
|
|
||||
|
public string? Remark { get; set; } |
||||
|
|
||||
|
public List<CreateUpdateStoreWorkOrderDetailDto> Details { get; set; } |
||||
|
|
||||
|
public string Type { get; set; } |
||||
|
|
||||
|
public string Uom { get; set; } |
||||
|
|
||||
|
public string? Worker { get; set; } |
||||
|
|
||||
|
public string? WorkOrderId { get; set; } |
||||
|
|
||||
|
public string? WorkStation { get; set; } |
||||
|
|
||||
|
public string WoStatus { get; set; } |
||||
|
} |
@ -0,0 +1,49 @@ |
|||||
|
using System; |
||||
|
using Volo.Abp.Application.Dtos; |
||||
|
|
||||
|
namespace WinIn.FasterZ.Wms.Z_Business.StoreWorkOrder.Dtos; |
||||
|
|
||||
|
using System.Collections.Generic; |
||||
|
|
||||
|
using WinIn.FasterZ.Wms.Permissions; |
||||
|
using WinIn.FasterZ.Wms.Z_Business.StoreWorkOrderDetail; |
||||
|
|
||||
|
[Serializable] |
||||
|
public class StoreWorkOrderDto : AuditedEntityDto<Guid> |
||||
|
{ |
||||
|
public DateTime ActiveDate { get; set; } |
||||
|
|
||||
|
public DateTime EffectiveDate { get; set; } |
||||
|
|
||||
|
public string ItemCode { get; set; } |
||||
|
|
||||
|
public string? ItemDesc1 { get; set; } |
||||
|
|
||||
|
public string? ItemDesc2 { get; set; } |
||||
|
|
||||
|
public string? ItemName { get; set; } |
||||
|
|
||||
|
public string? LocationCode { get; set; } |
||||
|
|
||||
|
public string Number { get; set; } |
||||
|
|
||||
|
public string? Op { get; set; } |
||||
|
|
||||
|
public decimal Qty { get; set; } |
||||
|
|
||||
|
public string? Remark { get; set; } |
||||
|
|
||||
|
public List<StoreWorkOrderDetail> Details { get; set; }=new List<StoreWorkOrderDetail>(); |
||||
|
|
||||
|
public string Type { get; set; } |
||||
|
|
||||
|
public string Uom { get; set; } |
||||
|
|
||||
|
public string? Worker { get; set; } |
||||
|
|
||||
|
public string? WorkOrderId { get; set; } |
||||
|
|
||||
|
public string? WorkStation { get; set; } |
||||
|
|
||||
|
public string WoStatus { get; set; } |
||||
|
} |
@ -0,0 +1,49 @@ |
|||||
|
using System; |
||||
|
using System.ComponentModel; |
||||
|
using Volo.Abp.Application.Dtos; |
||||
|
|
||||
|
namespace WinIn.FasterZ.Wms.Z_Business.StoreWorkOrder.Dtos; |
||||
|
|
||||
|
using System.Collections.Generic; |
||||
|
|
||||
|
using WinIn.FasterZ.Wms.Permissions; |
||||
|
|
||||
|
[Serializable] |
||||
|
public class StoreWorkOrderGetListInput : PagedAndSortedResultRequestDto |
||||
|
{ |
||||
|
public DateTime? ActiveDate { get; set; } |
||||
|
|
||||
|
public DateTime? EffectiveDate { get; set; } |
||||
|
|
||||
|
public string? ItemCode { get; set; } |
||||
|
|
||||
|
public string? ItemDesc1 { get; set; } |
||||
|
|
||||
|
public string? ItemDesc2 { get; set; } |
||||
|
|
||||
|
public string? ItemName { get; set; } |
||||
|
|
||||
|
public string? LocationCode { get; set; } |
||||
|
|
||||
|
public string? Number { get; set; } |
||||
|
|
||||
|
public string? Op { get; set; } |
||||
|
|
||||
|
public decimal? Qty { get; set; } |
||||
|
|
||||
|
public string? Remark { get; set; } |
||||
|
|
||||
|
public ICollection<WmsPermissions.StoreWorkOrderDetail>? Details { get; set; } |
||||
|
|
||||
|
public string? Type { get; set; } |
||||
|
|
||||
|
public string? Uom { get; set; } |
||||
|
|
||||
|
public string? Worker { get; set; } |
||||
|
|
||||
|
public string? WorkOrderId { get; set; } |
||||
|
|
||||
|
public string? WorkStation { get; set; } |
||||
|
|
||||
|
public string? WoStatus { get; set; } |
||||
|
} |
@ -0,0 +1,17 @@ |
|||||
|
using System; |
||||
|
using WinIn.FasterZ.Wms.Z_Business.StoreWorkOrder.Dtos; |
||||
|
using Volo.Abp.Application.Services; |
||||
|
|
||||
|
namespace WinIn.FasterZ.Wms.Z_Business.StoreWorkOrder; |
||||
|
|
||||
|
|
||||
|
public interface IStoreWorkOrderAppService : |
||||
|
ICrudAppService< |
||||
|
StoreWorkOrderDto, |
||||
|
Guid, |
||||
|
StoreWorkOrderGetListInput, |
||||
|
CreateUpdateStoreWorkOrderDto, |
||||
|
CreateUpdateStoreWorkOrderDto> |
||||
|
{ |
||||
|
|
||||
|
} |
@ -0,0 +1,35 @@ |
|||||
|
using System; |
||||
|
|
||||
|
namespace WinIn.FasterZ.Wms.Z_Business.StoreWorkOrderDetail.Dtos; |
||||
|
|
||||
|
using WinIn.FasterZ.Wms.Permissions; |
||||
|
|
||||
|
[Serializable] |
||||
|
public class CreateUpdateStoreWorkOrderDetailDto |
||||
|
{ |
||||
|
public DateTime EffectiveDate { get; set; } |
||||
|
|
||||
|
public string ItemCode { get; set; } |
||||
|
|
||||
|
public string? ItemDesc1 { get; set; } |
||||
|
|
||||
|
public string? ItemDesc2 { get; set; } |
||||
|
|
||||
|
public string? ItemName { get; set; } |
||||
|
|
||||
|
public WmsPermissions.StoreWorkOrder Master { get; set; } |
||||
|
|
||||
|
public Guid MasterId { get; set; } |
||||
|
|
||||
|
public string Number { get; set; } |
||||
|
|
||||
|
public string? Op { get; set; } |
||||
|
|
||||
|
public string? RawLocationCode { get; set; } |
||||
|
|
||||
|
public decimal RawQty { get; set; } |
||||
|
|
||||
|
public string? RawUom { get; set; } |
||||
|
|
||||
|
public string? Remark { get; set; } |
||||
|
} |
@ -0,0 +1,37 @@ |
|||||
|
using System; |
||||
|
using Volo.Abp.Application.Dtos; |
||||
|
|
||||
|
namespace WinIn.FasterZ.Wms.Z_Business.StoreWorkOrderDetail.Dtos; |
||||
|
|
||||
|
using WinIn.FasterZ.Wms.Permissions; |
||||
|
using WinIn.FasterZ.Wms.Z_Business.StoreWorkOrder; |
||||
|
|
||||
|
[Serializable] |
||||
|
public class StoreWorkOrderDetailDto : AuditedEntityDto<Guid> |
||||
|
{ |
||||
|
public DateTime EffectiveDate { get; set; } |
||||
|
|
||||
|
public string ItemCode { get; set; } |
||||
|
|
||||
|
public string? ItemDesc1 { get; set; } |
||||
|
|
||||
|
public string? ItemDesc2 { get; set; } |
||||
|
|
||||
|
public string? ItemName { get; set; } |
||||
|
|
||||
|
public StoreWorkOrder Master { get; set; } |
||||
|
|
||||
|
public Guid MasterId { get; set; } |
||||
|
|
||||
|
public string Number { get; set; } |
||||
|
|
||||
|
public string? Op { get; set; } |
||||
|
|
||||
|
public string? RawLocationCode { get; set; } |
||||
|
|
||||
|
public decimal RawQty { get; set; } |
||||
|
|
||||
|
public string? RawUom { get; set; } |
||||
|
|
||||
|
public string? Remark { get; set; } |
||||
|
} |
@ -0,0 +1,37 @@ |
|||||
|
using System; |
||||
|
using System.ComponentModel; |
||||
|
using Volo.Abp.Application.Dtos; |
||||
|
|
||||
|
namespace WinIn.FasterZ.Wms.Z_Business.StoreWorkOrderDetail.Dtos; |
||||
|
|
||||
|
using WinIn.FasterZ.Wms.Z_Business.StoreWorkOrder; |
||||
|
|
||||
|
[Serializable] |
||||
|
public class StoreWorkOrderDetailGetListInput : PagedAndSortedResultRequestDto |
||||
|
{ |
||||
|
public DateTime? EffectiveDate { get; set; } |
||||
|
|
||||
|
public string? ItemCode { get; set; } |
||||
|
|
||||
|
public string? ItemDesc1 { get; set; } |
||||
|
|
||||
|
public string? ItemDesc2 { get; set; } |
||||
|
|
||||
|
public string? ItemName { get; set; } |
||||
|
|
||||
|
public StoreWorkOrder? Master { get; set; } |
||||
|
|
||||
|
public Guid? MasterId { get; set; } |
||||
|
|
||||
|
public string? Number { get; set; } |
||||
|
|
||||
|
public string? Op { get; set; } |
||||
|
|
||||
|
public string? RawLocationCode { get; set; } |
||||
|
|
||||
|
public decimal? RawQty { get; set; } |
||||
|
|
||||
|
public string? RawUom { get; set; } |
||||
|
|
||||
|
public string? Remark { get; set; } |
||||
|
} |
@ -0,0 +1,17 @@ |
|||||
|
using System; |
||||
|
using WinIn.FasterZ.Wms.Z_Business.StoreWorkOrderDetail.Dtos; |
||||
|
using Volo.Abp.Application.Services; |
||||
|
|
||||
|
namespace WinIn.FasterZ.Wms.Z_Business.StoreWorkOrderDetail; |
||||
|
|
||||
|
|
||||
|
public interface IStoreWorkOrderDetailAppService : |
||||
|
ICrudAppService< |
||||
|
StoreWorkOrderDetailDto, |
||||
|
Guid, |
||||
|
StoreWorkOrderDetailGetListInput, |
||||
|
CreateUpdateStoreWorkOrderDetailDto, |
||||
|
CreateUpdateStoreWorkOrderDetailDto> |
||||
|
{ |
||||
|
|
||||
|
} |
@ -0,0 +1,52 @@ |
|||||
|
using System; |
||||
|
using System.Linq; |
||||
|
using System.Threading.Tasks; |
||||
|
using WinIn.FasterZ.Wms.Permissions; |
||||
|
using WinIn.FasterZ.Wms.Z_Business.StoreWorkOrder.Dtos; |
||||
|
using Volo.Abp.Application.Services; |
||||
|
|
||||
|
namespace WinIn.FasterZ.Wms.Z_Business.StoreWorkOrder; |
||||
|
|
||||
|
using WinIn.FasterZ.Wms.AppBase; |
||||
|
|
||||
|
public class StoreWorkOrderAppService : ZbxBase<StoreWorkOrder, StoreWorkOrderDto, Guid, StoreWorkOrderGetListInput, CreateUpdateStoreWorkOrderDto, CreateUpdateStoreWorkOrderDto>, |
||||
|
IStoreWorkOrderAppService |
||||
|
{ |
||||
|
protected override string GetPolicyName { get; set; } = WmsPermissions.StoreWorkOrder.Default; |
||||
|
protected override string GetListPolicyName { get; set; } = WmsPermissions.StoreWorkOrder.Default; |
||||
|
protected override string CreatePolicyName { get; set; } = WmsPermissions.StoreWorkOrder.Create; |
||||
|
protected override string UpdatePolicyName { get; set; } = WmsPermissions.StoreWorkOrder.Update; |
||||
|
protected override string DeletePolicyName { get; set; } = WmsPermissions.StoreWorkOrder.Delete; |
||||
|
|
||||
|
private readonly IStoreWorkOrderRepository _repository; |
||||
|
|
||||
|
public StoreWorkOrderAppService(IStoreWorkOrderRepository repository) : base(repository) |
||||
|
{ |
||||
|
_repository = repository; |
||||
|
} |
||||
|
|
||||
|
protected override async Task<IQueryable<StoreWorkOrder>> CreateFilteredQueryAsync(StoreWorkOrderGetListInput input) |
||||
|
{ |
||||
|
// TODO: AbpHelper generated
|
||||
|
return (await base.CreateFilteredQueryAsync(input)) |
||||
|
.WhereIf(input.ActiveDate != null, x => x.ActiveDate == input.ActiveDate) |
||||
|
.WhereIf(input.EffectiveDate != null, x => x.EffectiveDate == input.EffectiveDate) |
||||
|
.WhereIf(!input.ItemCode.IsNullOrWhiteSpace(), x => x.ItemCode.Contains(input.ItemCode)) |
||||
|
.WhereIf(input.ItemDesc1 != null, x => x.ItemDesc1 == input.ItemDesc1) |
||||
|
.WhereIf(input.ItemDesc2 != null, x => x.ItemDesc2 == input.ItemDesc2) |
||||
|
.WhereIf(input.ItemName != null, x => x.ItemName == input.ItemName) |
||||
|
.WhereIf(input.LocationCode != null, x => x.LocationCode == input.LocationCode) |
||||
|
.WhereIf(!input.Number.IsNullOrWhiteSpace(), x => x.Number.Contains(input.Number)) |
||||
|
.WhereIf(input.Op != null, x => x.Op == input.Op) |
||||
|
.WhereIf(input.Qty != null, x => x.Qty == input.Qty) |
||||
|
.WhereIf(input.Remark != null, x => x.Remark == input.Remark) |
||||
|
.WhereIf(input.Details != null, x => x.Details == input.Details) |
||||
|
.WhereIf(!input.Type.IsNullOrWhiteSpace(), x => x.Type.Contains(input.Type)) |
||||
|
.WhereIf(!input.Uom.IsNullOrWhiteSpace(), x => x.Uom.Contains(input.Uom)) |
||||
|
.WhereIf(input.Worker != null, x => x.Worker == input.Worker) |
||||
|
.WhereIf(input.WorkOrderId != null, x => x.WorkOrderId == input.WorkOrderId) |
||||
|
.WhereIf(input.WorkStation != null, x => x.WorkStation == input.WorkStation) |
||||
|
.WhereIf(!input.WoStatus.IsNullOrWhiteSpace(), x => x.WoStatus.Contains(input.WoStatus)) |
||||
|
; |
||||
|
} |
||||
|
} |
@ -0,0 +1,47 @@ |
|||||
|
using System; |
||||
|
using System.Linq; |
||||
|
using System.Threading.Tasks; |
||||
|
using WinIn.FasterZ.Wms.Permissions; |
||||
|
using WinIn.FasterZ.Wms.Z_Business.StoreWorkOrderDetail.Dtos; |
||||
|
using Volo.Abp.Application.Services; |
||||
|
|
||||
|
namespace WinIn.FasterZ.Wms.Z_Business.StoreWorkOrderDetail; |
||||
|
|
||||
|
using WinIn.FasterZ.Wms.AppBase; |
||||
|
|
||||
|
public class StoreWorkOrderDetailAppService : ZbxBase<StoreWorkOrderDetail, StoreWorkOrderDetailDto, Guid, StoreWorkOrderDetailGetListInput, CreateUpdateStoreWorkOrderDetailDto, CreateUpdateStoreWorkOrderDetailDto>, |
||||
|
IStoreWorkOrderDetailAppService |
||||
|
{ |
||||
|
protected override string GetPolicyName { get; set; } = WmsPermissions.StoreWorkOrderDetail.Default; |
||||
|
protected override string GetListPolicyName { get; set; } = WmsPermissions.StoreWorkOrderDetail.Default; |
||||
|
protected override string CreatePolicyName { get; set; } = WmsPermissions.StoreWorkOrderDetail.Create; |
||||
|
protected override string UpdatePolicyName { get; set; } = WmsPermissions.StoreWorkOrderDetail.Update; |
||||
|
protected override string DeletePolicyName { get; set; } = WmsPermissions.StoreWorkOrderDetail.Delete; |
||||
|
|
||||
|
private readonly IStoreWorkOrderDetailRepository _repository; |
||||
|
|
||||
|
public StoreWorkOrderDetailAppService(IStoreWorkOrderDetailRepository repository) : base(repository) |
||||
|
{ |
||||
|
_repository = repository; |
||||
|
} |
||||
|
|
||||
|
protected override async Task<IQueryable<StoreWorkOrderDetail>> CreateFilteredQueryAsync(StoreWorkOrderDetailGetListInput input) |
||||
|
{ |
||||
|
// TODO: AbpHelper generated
|
||||
|
return (await base.CreateFilteredQueryAsync(input)) |
||||
|
.WhereIf(input.EffectiveDate != null, x => x.EffectiveDate == input.EffectiveDate) |
||||
|
.WhereIf(!input.ItemCode.IsNullOrWhiteSpace(), x => x.ItemCode.Contains(input.ItemCode)) |
||||
|
.WhereIf(input.ItemDesc1 != null, x => x.ItemDesc1 == input.ItemDesc1) |
||||
|
.WhereIf(input.ItemDesc2 != null, x => x.ItemDesc2 == input.ItemDesc2) |
||||
|
.WhereIf(input.ItemName != null, x => x.ItemName == input.ItemName) |
||||
|
.WhereIf(input.Master != null, x => x.Master == input.Master) |
||||
|
.WhereIf(input.MasterId != null, x => x.MasterId == input.MasterId) |
||||
|
.WhereIf(!input.Number.IsNullOrWhiteSpace(), x => x.Number.Contains(input.Number)) |
||||
|
.WhereIf(input.Op != null, x => x.Op == input.Op) |
||||
|
.WhereIf(input.RawLocationCode != null, x => x.RawLocationCode == input.RawLocationCode) |
||||
|
.WhereIf(input.RawQty != null, x => x.RawQty == input.RawQty) |
||||
|
.WhereIf(input.RawUom != null, x => x.RawUom == input.RawUom) |
||||
|
.WhereIf(input.Remark != null, x => x.Remark == input.Remark) |
||||
|
; |
||||
|
} |
||||
|
} |
@ -0,0 +1,8 @@ |
|||||
|
using System; |
||||
|
using Volo.Abp.Domain.Repositories; |
||||
|
|
||||
|
namespace WinIn.FasterZ.Wms.Z_Business.StoreWorkOrder; |
||||
|
|
||||
|
public interface IStoreWorkOrderRepository : IRepository<StoreWorkOrder, Guid> |
||||
|
{ |
||||
|
} |
@ -0,0 +1,8 @@ |
|||||
|
using System; |
||||
|
using Volo.Abp.Domain.Repositories; |
||||
|
|
||||
|
namespace WinIn.FasterZ.Wms.Z_Business.StoreWorkOrderDetail; |
||||
|
|
||||
|
public interface IStoreWorkOrderDetailRepository : IRepository<StoreWorkOrderDetail, Guid> |
||||
|
{ |
||||
|
} |
@ -0,0 +1,19 @@ |
|||||
|
using System.Linq; |
||||
|
using Microsoft.EntityFrameworkCore; |
||||
|
|
||||
|
namespace WinIn.FasterZ.Wms.Z_Business.StoreWorkOrder; |
||||
|
|
||||
|
public static class StoreWorkOrderEfCoreQueryableExtensions |
||||
|
{ |
||||
|
public static IQueryable<StoreWorkOrder> IncludeDetails(this IQueryable<StoreWorkOrder> queryable, bool include = true) |
||||
|
{ |
||||
|
if (!include) |
||||
|
{ |
||||
|
return queryable; |
||||
|
} |
||||
|
|
||||
|
return queryable |
||||
|
// .Include(x => x.xxx) // TODO: AbpHelper generated
|
||||
|
; |
||||
|
} |
||||
|
} |
@ -0,0 +1,20 @@ |
|||||
|
using System; |
||||
|
using System.Linq; |
||||
|
using System.Threading.Tasks; |
||||
|
using WinIn.FasterZ.Wms.EntityFrameworkCore; |
||||
|
using Volo.Abp.Domain.Repositories.EntityFrameworkCore; |
||||
|
using Volo.Abp.EntityFrameworkCore; |
||||
|
|
||||
|
namespace WinIn.FasterZ.Wms.Z_Business.StoreWorkOrder; |
||||
|
|
||||
|
public class StoreWorkOrderRepository : EfCoreRepository<WmsDbContext, StoreWorkOrder, Guid>, IStoreWorkOrderRepository |
||||
|
{ |
||||
|
public StoreWorkOrderRepository(IDbContextProvider<WmsDbContext> dbContextProvider) : base(dbContextProvider) |
||||
|
{ |
||||
|
} |
||||
|
|
||||
|
public override async Task<IQueryable<StoreWorkOrder>> WithDetailsAsync() |
||||
|
{ |
||||
|
return (await GetQueryableAsync()).IncludeDetails(); |
||||
|
} |
||||
|
} |
@ -0,0 +1,19 @@ |
|||||
|
using System.Linq; |
||||
|
using Microsoft.EntityFrameworkCore; |
||||
|
|
||||
|
namespace WinIn.FasterZ.Wms.Z_Business.StoreWorkOrderDetail; |
||||
|
|
||||
|
public static class StoreWorkOrderDetailEfCoreQueryableExtensions |
||||
|
{ |
||||
|
public static IQueryable<StoreWorkOrderDetail> IncludeDetails(this IQueryable<StoreWorkOrderDetail> queryable, bool include = true) |
||||
|
{ |
||||
|
if (!include) |
||||
|
{ |
||||
|
return queryable; |
||||
|
} |
||||
|
|
||||
|
return queryable |
||||
|
// .Include(x => x.xxx) // TODO: AbpHelper generated
|
||||
|
; |
||||
|
} |
||||
|
} |
@ -0,0 +1,20 @@ |
|||||
|
using System; |
||||
|
using System.Linq; |
||||
|
using System.Threading.Tasks; |
||||
|
using WinIn.FasterZ.Wms.EntityFrameworkCore; |
||||
|
using Volo.Abp.Domain.Repositories.EntityFrameworkCore; |
||||
|
using Volo.Abp.EntityFrameworkCore; |
||||
|
|
||||
|
namespace WinIn.FasterZ.Wms.Z_Business.StoreWorkOrderDetail; |
||||
|
|
||||
|
public class StoreWorkOrderDetailRepository : EfCoreRepository<WmsDbContext, StoreWorkOrderDetail, Guid>, IStoreWorkOrderDetailRepository |
||||
|
{ |
||||
|
public StoreWorkOrderDetailRepository(IDbContextProvider<WmsDbContext> dbContextProvider) : base(dbContextProvider) |
||||
|
{ |
||||
|
} |
||||
|
|
||||
|
public override async Task<IQueryable<StoreWorkOrderDetail>> WithDetailsAsync() |
||||
|
{ |
||||
|
return (await GetQueryableAsync()).IncludeDetails(); |
||||
|
} |
||||
|
} |
@ -0,0 +1,18 @@ |
|||||
|
@page |
||||
|
@using Microsoft.AspNetCore.Mvc.Localization |
||||
|
@using Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Modal; |
||||
|
@using WinIn.FasterZ.Wms.Localization |
||||
|
@inject IHtmlLocalizer<WmsResource> L |
||||
|
@model WinIn.FasterZ.Wms.Web.Pages.Z_Business.StoreWorkOrder.StoreWorkOrder.CreateModalModel |
||||
|
@{ |
||||
|
Layout = null; |
||||
|
} |
||||
|
<abp-dynamic-form abp-model="ViewModel" data-ajaxForm="true" asp-page="CreateModal"> |
||||
|
<abp-modal> |
||||
|
<abp-modal-header title="@L["CreateStoreWorkOrder"].Value"></abp-modal-header> |
||||
|
<abp-modal-body> |
||||
|
<abp-form-content /> |
||||
|
</abp-modal-body> |
||||
|
<abp-modal-footer buttons="@(AbpModalButtons.Cancel|AbpModalButtons.Save)"></abp-modal-footer> |
||||
|
</abp-modal> |
||||
|
</abp-dynamic-form> |
@ -0,0 +1,27 @@ |
|||||
|
using System.Threading.Tasks; |
||||
|
using Microsoft.AspNetCore.Mvc; |
||||
|
using WinIn.FasterZ.Wms.Z_Business.StoreWorkOrder; |
||||
|
using WinIn.FasterZ.Wms.Z_Business.StoreWorkOrder.Dtos; |
||||
|
using WinIn.FasterZ.Wms.Web.Pages.Z_Business.StoreWorkOrder.StoreWorkOrder.ViewModels; |
||||
|
|
||||
|
namespace WinIn.FasterZ.Wms.Web.Pages.Z_Business.StoreWorkOrder.StoreWorkOrder; |
||||
|
|
||||
|
public class CreateModalModel : WmsPageModel |
||||
|
{ |
||||
|
[BindProperty] |
||||
|
public CreateEditStoreWorkOrderViewModel ViewModel { get; set; } |
||||
|
|
||||
|
private readonly IStoreWorkOrderAppService _service; |
||||
|
|
||||
|
public CreateModalModel(IStoreWorkOrderAppService service) |
||||
|
{ |
||||
|
_service = service; |
||||
|
} |
||||
|
|
||||
|
public virtual async Task<IActionResult> OnPostAsync() |
||||
|
{ |
||||
|
var dto = ObjectMapper.Map<CreateEditStoreWorkOrderViewModel, CreateUpdateStoreWorkOrderDto>(ViewModel); |
||||
|
await _service.CreateAsync(dto); |
||||
|
return NoContent(); |
||||
|
} |
||||
|
} |
@ -0,0 +1,19 @@ |
|||||
|
@page |
||||
|
@using WinIn.FasterZ.Wms.Localization |
||||
|
@using Microsoft.AspNetCore.Mvc.Localization |
||||
|
@using Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Modal; |
||||
|
@inject IHtmlLocalizer<WmsResource> L |
||||
|
@model WinIn.FasterZ.Wms.Web.Pages.Z_Business.StoreWorkOrder.StoreWorkOrder.EditModalModel |
||||
|
@{ |
||||
|
Layout = null; |
||||
|
} |
||||
|
<abp-dynamic-form abp-model="ViewModel" data-ajaxForm="true" asp-page="EditModal"> |
||||
|
<abp-modal> |
||||
|
<abp-modal-header title="@L["EditStoreWorkOrder"].Value"></abp-modal-header> |
||||
|
<abp-modal-body> |
||||
|
<abp-input asp-for="Id" /> |
||||
|
<abp-form-content /> |
||||
|
</abp-modal-body> |
||||
|
<abp-modal-footer buttons="@(AbpModalButtons.Cancel|AbpModalButtons.Save)"></abp-modal-footer> |
||||
|
</abp-modal> |
||||
|
</abp-dynamic-form> |
@ -0,0 +1,38 @@ |
|||||
|
using System; |
||||
|
using System.Threading.Tasks; |
||||
|
using Microsoft.AspNetCore.Mvc; |
||||
|
using WinIn.FasterZ.Wms.Z_Business.StoreWorkOrder; |
||||
|
using WinIn.FasterZ.Wms.Z_Business.StoreWorkOrder.Dtos; |
||||
|
using WinIn.FasterZ.Wms.Web.Pages.Z_Business.StoreWorkOrder.StoreWorkOrder.ViewModels; |
||||
|
|
||||
|
namespace WinIn.FasterZ.Wms.Web.Pages.Z_Business.StoreWorkOrder.StoreWorkOrder; |
||||
|
|
||||
|
public class EditModalModel : WmsPageModel |
||||
|
{ |
||||
|
[HiddenInput] |
||||
|
[BindProperty(SupportsGet = true)] |
||||
|
public Guid Id { get; set; } |
||||
|
|
||||
|
[BindProperty] |
||||
|
public CreateEditStoreWorkOrderViewModel ViewModel { get; set; } |
||||
|
|
||||
|
private readonly IStoreWorkOrderAppService _service; |
||||
|
|
||||
|
public EditModalModel(IStoreWorkOrderAppService service) |
||||
|
{ |
||||
|
_service = service; |
||||
|
} |
||||
|
|
||||
|
public virtual async Task OnGetAsync() |
||||
|
{ |
||||
|
var dto = await _service.GetAsync(Id); |
||||
|
ViewModel = ObjectMapper.Map<StoreWorkOrderDto, CreateEditStoreWorkOrderViewModel>(dto); |
||||
|
} |
||||
|
|
||||
|
public virtual async Task<IActionResult> OnPostAsync() |
||||
|
{ |
||||
|
var dto = ObjectMapper.Map<CreateEditStoreWorkOrderViewModel, CreateUpdateStoreWorkOrderDto>(ViewModel); |
||||
|
await _service.UpdateAsync(Id, dto); |
||||
|
return NoContent(); |
||||
|
} |
||||
|
} |
@ -0,0 +1,57 @@ |
|||||
|
@page |
||||
|
@using WinIn.FasterZ.Wms.Permissions |
||||
|
@using Microsoft.AspNetCore.Authorization |
||||
|
@using Microsoft.AspNetCore.Mvc.Localization |
||||
|
@using Volo.Abp.AspNetCore.Mvc.UI.Layout |
||||
|
@using WinIn.FasterZ.Wms.Web.Pages.Z_Business.StoreWorkOrder.StoreWorkOrder |
||||
|
@using WinIn.FasterZ.Wms.Localization |
||||
|
@using WinIn.FasterZ.Wms.Web.Menus |
||||
|
@model IndexModel |
||||
|
@inject IPageLayout PageLayout |
||||
|
@inject IHtmlLocalizer<WmsResource> L |
||||
|
@inject IAuthorizationService Authorization |
||||
|
@{ |
||||
|
PageLayout.Content.Title = L["StoreWorkOrder"].Value; |
||||
|
PageLayout.Content.BreadCrumb.Add(L["Menu:StoreWorkOrder"].Value); |
||||
|
PageLayout.Content.MenuItemName = WmsMenus.StoreWorkOrder; |
||||
|
} |
||||
|
|
||||
|
@section scripts |
||||
|
{ |
||||
|
<abp-script src="/Pages/Z_Business/StoreWorkOrder/StoreWorkOrder/index.js" /> |
||||
|
} |
||||
|
@section styles |
||||
|
{ |
||||
|
<abp-style src="/Pages/Z_Business/StoreWorkOrder/StoreWorkOrder/index.css"/> |
||||
|
} |
||||
|
|
||||
|
<abp-card> |
||||
|
<abp-card-header> |
||||
|
<abp-row> |
||||
|
<abp-column size-md="_6"> |
||||
|
<abp-card-title>@L["StoreWorkOrder"]</abp-card-title> |
||||
|
</abp-column> |
||||
|
<abp-column size-md="_6" class="text-end"> |
||||
|
@if (await Authorization.IsGrantedAsync(WmsPermissions.StoreWorkOrder.Create)) |
||||
|
{ |
||||
|
<abp-button id="NewStoreWorkOrderButton" |
||||
|
text="@L["CreateStoreWorkOrder"].Value" |
||||
|
icon="plus" |
||||
|
button-type="Primary" /> |
||||
|
} |
||||
|
</abp-column> |
||||
|
</abp-row> |
||||
|
</abp-card-header> |
||||
|
<abp-card-body> |
||||
|
<abp-row class="mb-3"> |
||||
|
<a abp-collapse-id="StoreWorkOrderCollapse" class="text-secondary">@L["TableFilter"] </a> |
||||
|
</abp-row> |
||||
|
<abp-dynamic-form abp-model="StoreWorkOrderFilter" id="StoreWorkOrderFilter" required-symbols="false" column-size="_3"> |
||||
|
<abp-collapse-body id="StoreWorkOrderCollapse"> |
||||
|
<abp-form-content /> |
||||
|
</abp-collapse-body> |
||||
|
</abp-dynamic-form> |
||||
|
<hr /> |
||||
|
<abp-table striped-rows="true" id="StoreWorkOrderTable" class="nowrap"/> |
||||
|
</abp-card-body> |
||||
|
</abp-card> |
@ -0,0 +1,95 @@ |
|||||
|
using System; |
||||
|
using System.Threading.Tasks; |
||||
|
using System.ComponentModel.DataAnnotations; |
||||
|
using Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Form; |
||||
|
|
||||
|
namespace WinIn.FasterZ.Wms.Web.Pages.Z_Business.StoreWorkOrder.StoreWorkOrder; |
||||
|
|
||||
|
using System.Collections.Generic; |
||||
|
|
||||
|
using WinIn.FasterZ.Wms.Permissions; |
||||
|
|
||||
|
public class IndexModel : WmsPageModel |
||||
|
{ |
||||
|
public StoreWorkOrderFilterInput StoreWorkOrderFilter { get; set; } |
||||
|
|
||||
|
public virtual async Task OnGetAsync() |
||||
|
{ |
||||
|
await Task.CompletedTask; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
public class StoreWorkOrderFilterInput |
||||
|
{ |
||||
|
[FormControlSize(AbpFormControlSize.Small)] |
||||
|
[Display(Name = "StoreWorkOrderActiveDate")] |
||||
|
public DateTime? ActiveDate { get; set; } |
||||
|
|
||||
|
[FormControlSize(AbpFormControlSize.Small)] |
||||
|
[Display(Name = "StoreWorkOrderEffectiveDate")] |
||||
|
public DateTime? EffectiveDate { get; set; } |
||||
|
|
||||
|
[FormControlSize(AbpFormControlSize.Small)] |
||||
|
[Display(Name = "StoreWorkOrderItemCode")] |
||||
|
public string? ItemCode { get; set; } |
||||
|
|
||||
|
[FormControlSize(AbpFormControlSize.Small)] |
||||
|
[Display(Name = "StoreWorkOrderItemDesc1")] |
||||
|
public string? ItemDesc1 { get; set; } |
||||
|
|
||||
|
[FormControlSize(AbpFormControlSize.Small)] |
||||
|
[Display(Name = "StoreWorkOrderItemDesc2")] |
||||
|
public string? ItemDesc2 { get; set; } |
||||
|
|
||||
|
[FormControlSize(AbpFormControlSize.Small)] |
||||
|
[Display(Name = "StoreWorkOrderItemName")] |
||||
|
public string? ItemName { get; set; } |
||||
|
|
||||
|
[FormControlSize(AbpFormControlSize.Small)] |
||||
|
[Display(Name = "StoreWorkOrderLocationCode")] |
||||
|
public string? LocationCode { get; set; } |
||||
|
|
||||
|
[FormControlSize(AbpFormControlSize.Small)] |
||||
|
[Display(Name = "StoreWorkOrderNumber")] |
||||
|
public string? Number { get; set; } |
||||
|
|
||||
|
[FormControlSize(AbpFormControlSize.Small)] |
||||
|
[Display(Name = "StoreWorkOrderOp")] |
||||
|
public string? Op { get; set; } |
||||
|
|
||||
|
[FormControlSize(AbpFormControlSize.Small)] |
||||
|
[Display(Name = "StoreWorkOrderQty")] |
||||
|
public decimal? Qty { get; set; } |
||||
|
|
||||
|
[FormControlSize(AbpFormControlSize.Small)] |
||||
|
[Display(Name = "StoreWorkOrderRemark")] |
||||
|
public string? Remark { get; set; } |
||||
|
|
||||
|
[FormControlSize(AbpFormControlSize.Small)] |
||||
|
[Display(Name = "StoreWorkOrderStoreWorkOrderDetails")] |
||||
|
public ICollection<WmsPermissions.StoreWorkOrderDetail>? StoreWorkOrderDetails { get; set; } |
||||
|
|
||||
|
[FormControlSize(AbpFormControlSize.Small)] |
||||
|
[Display(Name = "StoreWorkOrderType")] |
||||
|
public string? Type { get; set; } |
||||
|
|
||||
|
[FormControlSize(AbpFormControlSize.Small)] |
||||
|
[Display(Name = "StoreWorkOrderUom")] |
||||
|
public string? Uom { get; set; } |
||||
|
|
||||
|
[FormControlSize(AbpFormControlSize.Small)] |
||||
|
[Display(Name = "StoreWorkOrderWorker")] |
||||
|
public string? Worker { get; set; } |
||||
|
|
||||
|
[FormControlSize(AbpFormControlSize.Small)] |
||||
|
[Display(Name = "StoreWorkOrderWorkOrderId")] |
||||
|
public string? WorkOrderId { get; set; } |
||||
|
|
||||
|
[FormControlSize(AbpFormControlSize.Small)] |
||||
|
[Display(Name = "StoreWorkOrderWorkStation")] |
||||
|
public string? WorkStation { get; set; } |
||||
|
|
||||
|
[FormControlSize(AbpFormControlSize.Small)] |
||||
|
[Display(Name = "StoreWorkOrderWoStatus")] |
||||
|
public string? WoStatus { get; set; } |
||||
|
} |
@ -0,0 +1,65 @@ |
|||||
|
using System; |
||||
|
using System.ComponentModel.DataAnnotations; |
||||
|
|
||||
|
namespace WinIn.FasterZ.Wms.Web.Pages.Z_Business.StoreWorkOrder.StoreWorkOrder.ViewModels; |
||||
|
|
||||
|
using System.Collections.Generic; |
||||
|
|
||||
|
using WinIn.FasterZ.Wms.Permissions; |
||||
|
|
||||
|
public class CreateEditStoreWorkOrderViewModel |
||||
|
{ |
||||
|
[Display(Name = "StoreWorkOrderActiveDate")] |
||||
|
public DateTime ActiveDate { get; set; } |
||||
|
|
||||
|
[Display(Name = "StoreWorkOrderEffectiveDate")] |
||||
|
public DateTime EffectiveDate { get; set; } |
||||
|
|
||||
|
[Display(Name = "StoreWorkOrderItemCode")] |
||||
|
public string ItemCode { get; set; } |
||||
|
|
||||
|
[Display(Name = "StoreWorkOrderItemDesc1")] |
||||
|
public string? ItemDesc1 { get; set; } |
||||
|
|
||||
|
[Display(Name = "StoreWorkOrderItemDesc2")] |
||||
|
public string? ItemDesc2 { get; set; } |
||||
|
|
||||
|
[Display(Name = "StoreWorkOrderItemName")] |
||||
|
public string? ItemName { get; set; } |
||||
|
|
||||
|
[Display(Name = "StoreWorkOrderLocationCode")] |
||||
|
public string? LocationCode { get; set; } |
||||
|
|
||||
|
[Display(Name = "StoreWorkOrderNumber")] |
||||
|
public string Number { get; set; } |
||||
|
|
||||
|
[Display(Name = "StoreWorkOrderOp")] |
||||
|
public string? Op { get; set; } |
||||
|
|
||||
|
[Display(Name = "StoreWorkOrderQty")] |
||||
|
public decimal Qty { get; set; } |
||||
|
|
||||
|
[Display(Name = "StoreWorkOrderRemark")] |
||||
|
public string? Remark { get; set; } |
||||
|
|
||||
|
[Display(Name = "StoreWorkOrderStoreWorkOrderDetails")] |
||||
|
public ICollection<WmsPermissions.StoreWorkOrderDetail> StoreWorkOrderDetails { get; set; } |
||||
|
|
||||
|
[Display(Name = "StoreWorkOrderType")] |
||||
|
public string Type { get; set; } |
||||
|
|
||||
|
[Display(Name = "StoreWorkOrderUom")] |
||||
|
public string Uom { get; set; } |
||||
|
|
||||
|
[Display(Name = "StoreWorkOrderWorker")] |
||||
|
public string? Worker { get; set; } |
||||
|
|
||||
|
[Display(Name = "StoreWorkOrderWorkOrderId")] |
||||
|
public string? WorkOrderId { get; set; } |
||||
|
|
||||
|
[Display(Name = "StoreWorkOrderWorkStation")] |
||||
|
public string? WorkStation { get; set; } |
||||
|
|
||||
|
[Display(Name = "StoreWorkOrderWoStatus")] |
||||
|
public string WoStatus { get; set; } |
||||
|
} |
@ -0,0 +1,153 @@ |
|||||
|
$(function () { |
||||
|
|
||||
|
$("#StoreWorkOrderFilter :input").on('input', function () { |
||||
|
dataTable.ajax.reload(); |
||||
|
}); |
||||
|
|
||||
|
//After abp v7.2 use dynamicForm 'column-size' instead of the following settings
|
||||
|
//$('#StoreWorkOrderCollapse div').addClass('col-sm-3').parent().addClass('row');
|
||||
|
|
||||
|
var getFilter = function () { |
||||
|
var input = {}; |
||||
|
$("#StoreWorkOrderFilter") |
||||
|
.serializeArray() |
||||
|
.forEach(function (data) { |
||||
|
if (data.value != '') { |
||||
|
input[abp.utils.toCamelCase(data.name.replace(/StoreWorkOrderFilter./g, ''))] = data.value; |
||||
|
} |
||||
|
}) |
||||
|
return input; |
||||
|
}; |
||||
|
|
||||
|
var l = abp.localization.getResource('Wms'); |
||||
|
|
||||
|
var service = winIn.fasterZ.wms.z_Business.storeWorkOrder.storeWorkOrder; |
||||
|
var createModal = new abp.ModalManager(abp.appPath + 'Z_Business/StoreWorkOrder/StoreWorkOrder/CreateModal'); |
||||
|
var editModal = new abp.ModalManager(abp.appPath + 'Z_Business/StoreWorkOrder/StoreWorkOrder/EditModal'); |
||||
|
|
||||
|
var dataTable = $('#StoreWorkOrderTable').DataTable(abp.libs.datatables.normalizeConfiguration({ |
||||
|
processing: true, |
||||
|
serverSide: true, |
||||
|
paging: true, |
||||
|
searching: false,//disable default searchbox
|
||||
|
autoWidth: false, |
||||
|
scrollCollapse: true, |
||||
|
order: [[0, "asc"]], |
||||
|
ajax: abp.libs.datatables.createAjax(service.getList,getFilter), |
||||
|
columnDefs: [ |
||||
|
{ |
||||
|
rowAction: { |
||||
|
items: |
||||
|
[ |
||||
|
{ |
||||
|
text: l('Edit'), |
||||
|
visible: abp.auth.isGranted('Wms.StoreWorkOrder.Update'), |
||||
|
action: function (data) { |
||||
|
editModal.open({ id: data.record.id }); |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
text: l('Delete'), |
||||
|
visible: abp.auth.isGranted('Wms.StoreWorkOrder.Delete'), |
||||
|
confirmMessage: function (data) { |
||||
|
return l('StoreWorkOrderDeletionConfirmationMessage', data.record.id); |
||||
|
}, |
||||
|
action: function (data) { |
||||
|
service.delete(data.record.id) |
||||
|
.then(function () { |
||||
|
abp.notify.info(l('SuccessfullyDeleted')); |
||||
|
dataTable.ajax.reload(); |
||||
|
}); |
||||
|
} |
||||
|
} |
||||
|
] |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
title: l('StoreWorkOrderActiveDate'), |
||||
|
data: "activeDate" |
||||
|
}, |
||||
|
{ |
||||
|
title: l('StoreWorkOrderEffectiveDate'), |
||||
|
data: "effectiveDate" |
||||
|
}, |
||||
|
{ |
||||
|
title: l('StoreWorkOrderItemCode'), |
||||
|
data: "itemCode" |
||||
|
}, |
||||
|
{ |
||||
|
title: l('StoreWorkOrderItemDesc1'), |
||||
|
data: "itemDesc1" |
||||
|
}, |
||||
|
{ |
||||
|
title: l('StoreWorkOrderItemDesc2'), |
||||
|
data: "itemDesc2" |
||||
|
}, |
||||
|
{ |
||||
|
title: l('StoreWorkOrderItemName'), |
||||
|
data: "itemName" |
||||
|
}, |
||||
|
{ |
||||
|
title: l('StoreWorkOrderLocationCode'), |
||||
|
data: "locationCode" |
||||
|
}, |
||||
|
{ |
||||
|
title: l('StoreWorkOrderNumber'), |
||||
|
data: "number" |
||||
|
}, |
||||
|
{ |
||||
|
title: l('StoreWorkOrderOp'), |
||||
|
data: "op" |
||||
|
}, |
||||
|
{ |
||||
|
title: l('StoreWorkOrderQty'), |
||||
|
data: "qty" |
||||
|
}, |
||||
|
{ |
||||
|
title: l('StoreWorkOrderRemark'), |
||||
|
data: "remark" |
||||
|
}, |
||||
|
{ |
||||
|
title: l('StoreWorkOrderStoreWorkOrderDetails'), |
||||
|
data: "storeWorkOrderDetails" |
||||
|
}, |
||||
|
{ |
||||
|
title: l('StoreWorkOrderType'), |
||||
|
data: "type" |
||||
|
}, |
||||
|
{ |
||||
|
title: l('StoreWorkOrderUom'), |
||||
|
data: "uom" |
||||
|
}, |
||||
|
{ |
||||
|
title: l('StoreWorkOrderWorker'), |
||||
|
data: "worker" |
||||
|
}, |
||||
|
{ |
||||
|
title: l('StoreWorkOrderWorkOrderId'), |
||||
|
data: "workOrderId" |
||||
|
}, |
||||
|
{ |
||||
|
title: l('StoreWorkOrderWorkStation'), |
||||
|
data: "workStation" |
||||
|
}, |
||||
|
{ |
||||
|
title: l('StoreWorkOrderWoStatus'), |
||||
|
data: "woStatus" |
||||
|
}, |
||||
|
] |
||||
|
})); |
||||
|
|
||||
|
createModal.onResult(function () { |
||||
|
dataTable.ajax.reload(); |
||||
|
}); |
||||
|
|
||||
|
editModal.onResult(function () { |
||||
|
dataTable.ajax.reload(); |
||||
|
}); |
||||
|
|
||||
|
$('#NewStoreWorkOrderButton').click(function (e) { |
||||
|
e.preventDefault(); |
||||
|
createModal.open(); |
||||
|
}); |
||||
|
}); |
@ -0,0 +1,18 @@ |
|||||
|
@page |
||||
|
@using Microsoft.AspNetCore.Mvc.Localization |
||||
|
@using Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Modal; |
||||
|
@using WinIn.FasterZ.Wms.Localization |
||||
|
@inject IHtmlLocalizer<WmsResource> L |
||||
|
@model WinIn.FasterZ.Wms.Web.Pages.Z_Business.StoreWorkOrderDetail.StoreWorkOrderDetail.CreateModalModel |
||||
|
@{ |
||||
|
Layout = null; |
||||
|
} |
||||
|
<abp-dynamic-form abp-model="ViewModel" data-ajaxForm="true" asp-page="CreateModal"> |
||||
|
<abp-modal> |
||||
|
<abp-modal-header title="@L["CreateStoreWorkOrderDetail"].Value"></abp-modal-header> |
||||
|
<abp-modal-body> |
||||
|
<abp-form-content /> |
||||
|
</abp-modal-body> |
||||
|
<abp-modal-footer buttons="@(AbpModalButtons.Cancel|AbpModalButtons.Save)"></abp-modal-footer> |
||||
|
</abp-modal> |
||||
|
</abp-dynamic-form> |
@ -0,0 +1,27 @@ |
|||||
|
using System.Threading.Tasks; |
||||
|
using Microsoft.AspNetCore.Mvc; |
||||
|
using WinIn.FasterZ.Wms.Z_Business.StoreWorkOrderDetail; |
||||
|
using WinIn.FasterZ.Wms.Z_Business.StoreWorkOrderDetail.Dtos; |
||||
|
using WinIn.FasterZ.Wms.Web.Pages.Z_Business.StoreWorkOrderDetail.StoreWorkOrderDetail.ViewModels; |
||||
|
|
||||
|
namespace WinIn.FasterZ.Wms.Web.Pages.Z_Business.StoreWorkOrderDetail.StoreWorkOrderDetail; |
||||
|
|
||||
|
public class CreateModalModel : WmsPageModel |
||||
|
{ |
||||
|
[BindProperty] |
||||
|
public CreateEditStoreWorkOrderDetailViewModel ViewModel { get; set; } |
||||
|
|
||||
|
private readonly IStoreWorkOrderDetailAppService _service; |
||||
|
|
||||
|
public CreateModalModel(IStoreWorkOrderDetailAppService service) |
||||
|
{ |
||||
|
_service = service; |
||||
|
} |
||||
|
|
||||
|
public virtual async Task<IActionResult> OnPostAsync() |
||||
|
{ |
||||
|
var dto = ObjectMapper.Map<CreateEditStoreWorkOrderDetailViewModel, CreateUpdateStoreWorkOrderDetailDto>(ViewModel); |
||||
|
await _service.CreateAsync(dto); |
||||
|
return NoContent(); |
||||
|
} |
||||
|
} |
@ -0,0 +1,19 @@ |
|||||
|
@page |
||||
|
@using WinIn.FasterZ.Wms.Localization |
||||
|
@using Microsoft.AspNetCore.Mvc.Localization |
||||
|
@using Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Modal; |
||||
|
@inject IHtmlLocalizer<WmsResource> L |
||||
|
@model WinIn.FasterZ.Wms.Web.Pages.Z_Business.StoreWorkOrderDetail.StoreWorkOrderDetail.EditModalModel |
||||
|
@{ |
||||
|
Layout = null; |
||||
|
} |
||||
|
<abp-dynamic-form abp-model="ViewModel" data-ajaxForm="true" asp-page="EditModal"> |
||||
|
<abp-modal> |
||||
|
<abp-modal-header title="@L["EditStoreWorkOrderDetail"].Value"></abp-modal-header> |
||||
|
<abp-modal-body> |
||||
|
<abp-input asp-for="Id" /> |
||||
|
<abp-form-content /> |
||||
|
</abp-modal-body> |
||||
|
<abp-modal-footer buttons="@(AbpModalButtons.Cancel|AbpModalButtons.Save)"></abp-modal-footer> |
||||
|
</abp-modal> |
||||
|
</abp-dynamic-form> |
@ -0,0 +1,38 @@ |
|||||
|
using System; |
||||
|
using System.Threading.Tasks; |
||||
|
using Microsoft.AspNetCore.Mvc; |
||||
|
using WinIn.FasterZ.Wms.Z_Business.StoreWorkOrderDetail; |
||||
|
using WinIn.FasterZ.Wms.Z_Business.StoreWorkOrderDetail.Dtos; |
||||
|
using WinIn.FasterZ.Wms.Web.Pages.Z_Business.StoreWorkOrderDetail.StoreWorkOrderDetail.ViewModels; |
||||
|
|
||||
|
namespace WinIn.FasterZ.Wms.Web.Pages.Z_Business.StoreWorkOrderDetail.StoreWorkOrderDetail; |
||||
|
|
||||
|
public class EditModalModel : WmsPageModel |
||||
|
{ |
||||
|
[HiddenInput] |
||||
|
[BindProperty(SupportsGet = true)] |
||||
|
public Guid Id { get; set; } |
||||
|
|
||||
|
[BindProperty] |
||||
|
public CreateEditStoreWorkOrderDetailViewModel ViewModel { get; set; } |
||||
|
|
||||
|
private readonly IStoreWorkOrderDetailAppService _service; |
||||
|
|
||||
|
public EditModalModel(IStoreWorkOrderDetailAppService service) |
||||
|
{ |
||||
|
_service = service; |
||||
|
} |
||||
|
|
||||
|
public virtual async Task OnGetAsync() |
||||
|
{ |
||||
|
var dto = await _service.GetAsync(Id); |
||||
|
ViewModel = ObjectMapper.Map<StoreWorkOrderDetailDto, CreateEditStoreWorkOrderDetailViewModel>(dto); |
||||
|
} |
||||
|
|
||||
|
public virtual async Task<IActionResult> OnPostAsync() |
||||
|
{ |
||||
|
var dto = ObjectMapper.Map<CreateEditStoreWorkOrderDetailViewModel, CreateUpdateStoreWorkOrderDetailDto>(ViewModel); |
||||
|
await _service.UpdateAsync(Id, dto); |
||||
|
return NoContent(); |
||||
|
} |
||||
|
} |
@ -0,0 +1,57 @@ |
|||||
|
@page |
||||
|
@using WinIn.FasterZ.Wms.Permissions |
||||
|
@using Microsoft.AspNetCore.Authorization |
||||
|
@using Microsoft.AspNetCore.Mvc.Localization |
||||
|
@using Volo.Abp.AspNetCore.Mvc.UI.Layout |
||||
|
@using WinIn.FasterZ.Wms.Web.Pages.Z_Business.StoreWorkOrderDetail.StoreWorkOrderDetail |
||||
|
@using WinIn.FasterZ.Wms.Localization |
||||
|
@using WinIn.FasterZ.Wms.Web.Menus |
||||
|
@model IndexModel |
||||
|
@inject IPageLayout PageLayout |
||||
|
@inject IHtmlLocalizer<WmsResource> L |
||||
|
@inject IAuthorizationService Authorization |
||||
|
@{ |
||||
|
PageLayout.Content.Title = L["StoreWorkOrderDetail"].Value; |
||||
|
PageLayout.Content.BreadCrumb.Add(L["Menu:StoreWorkOrderDetail"].Value); |
||||
|
PageLayout.Content.MenuItemName = WmsMenus.StoreWorkOrderDetail; |
||||
|
} |
||||
|
|
||||
|
@section scripts |
||||
|
{ |
||||
|
<abp-script src="/Pages/Z_Business/StoreWorkOrderDetail/StoreWorkOrderDetail/index.js" /> |
||||
|
} |
||||
|
@section styles |
||||
|
{ |
||||
|
<abp-style src="/Pages/Z_Business/StoreWorkOrderDetail/StoreWorkOrderDetail/index.css"/> |
||||
|
} |
||||
|
|
||||
|
<abp-card> |
||||
|
<abp-card-header> |
||||
|
<abp-row> |
||||
|
<abp-column size-md="_6"> |
||||
|
<abp-card-title>@L["StoreWorkOrderDetail"]</abp-card-title> |
||||
|
</abp-column> |
||||
|
<abp-column size-md="_6" class="text-end"> |
||||
|
@if (await Authorization.IsGrantedAsync(WmsPermissions.StoreWorkOrderDetail.Create)) |
||||
|
{ |
||||
|
<abp-button id="NewStoreWorkOrderDetailButton" |
||||
|
text="@L["CreateStoreWorkOrderDetail"].Value" |
||||
|
icon="plus" |
||||
|
button-type="Primary" /> |
||||
|
} |
||||
|
</abp-column> |
||||
|
</abp-row> |
||||
|
</abp-card-header> |
||||
|
<abp-card-body> |
||||
|
<abp-row class="mb-3"> |
||||
|
<a abp-collapse-id="StoreWorkOrderDetailCollapse" class="text-secondary">@L["TableFilter"] </a> |
||||
|
</abp-row> |
||||
|
<abp-dynamic-form abp-model="StoreWorkOrderDetailFilter" id="StoreWorkOrderDetailFilter" required-symbols="false" column-size="_3"> |
||||
|
<abp-collapse-body id="StoreWorkOrderDetailCollapse"> |
||||
|
<abp-form-content /> |
||||
|
</abp-collapse-body> |
||||
|
</abp-dynamic-form> |
||||
|
<hr /> |
||||
|
<abp-table striped-rows="true" id="StoreWorkOrderDetailTable" class="nowrap"/> |
||||
|
</abp-card-body> |
||||
|
</abp-card> |
@ -0,0 +1,73 @@ |
|||||
|
using System; |
||||
|
using System.Threading.Tasks; |
||||
|
using System.ComponentModel.DataAnnotations; |
||||
|
using Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Form; |
||||
|
|
||||
|
namespace WinIn.FasterZ.Wms.Web.Pages.Z_Business.StoreWorkOrderDetail.StoreWorkOrderDetail; |
||||
|
|
||||
|
using WinIn.FasterZ.Wms.Permissions; |
||||
|
|
||||
|
public class IndexModel : WmsPageModel |
||||
|
{ |
||||
|
public StoreWorkOrderDetailFilterInput StoreWorkOrderDetailFilter { get; set; } |
||||
|
|
||||
|
public virtual async Task OnGetAsync() |
||||
|
{ |
||||
|
await Task.CompletedTask; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
public class StoreWorkOrderDetailFilterInput |
||||
|
{ |
||||
|
[FormControlSize(AbpFormControlSize.Small)] |
||||
|
[Display(Name = "StoreWorkOrderDetailEffectiveDate")] |
||||
|
public DateTime? EffectiveDate { get; set; } |
||||
|
|
||||
|
[FormControlSize(AbpFormControlSize.Small)] |
||||
|
[Display(Name = "StoreWorkOrderDetailItemCode")] |
||||
|
public string? ItemCode { get; set; } |
||||
|
|
||||
|
[FormControlSize(AbpFormControlSize.Small)] |
||||
|
[Display(Name = "StoreWorkOrderDetailItemDesc1")] |
||||
|
public string? ItemDesc1 { get; set; } |
||||
|
|
||||
|
[FormControlSize(AbpFormControlSize.Small)] |
||||
|
[Display(Name = "StoreWorkOrderDetailItemDesc2")] |
||||
|
public string? ItemDesc2 { get; set; } |
||||
|
|
||||
|
[FormControlSize(AbpFormControlSize.Small)] |
||||
|
[Display(Name = "StoreWorkOrderDetailItemName")] |
||||
|
public string? ItemName { get; set; } |
||||
|
|
||||
|
[FormControlSize(AbpFormControlSize.Small)] |
||||
|
[Display(Name = "StoreWorkOrderDetailMaster")] |
||||
|
public WmsPermissions.StoreWorkOrder? Master { get; set; } |
||||
|
|
||||
|
[FormControlSize(AbpFormControlSize.Small)] |
||||
|
[Display(Name = "StoreWorkOrderDetailMasterId")] |
||||
|
public Guid? MasterId { get; set; } |
||||
|
|
||||
|
[FormControlSize(AbpFormControlSize.Small)] |
||||
|
[Display(Name = "StoreWorkOrderDetailNumber")] |
||||
|
public string? Number { get; set; } |
||||
|
|
||||
|
[FormControlSize(AbpFormControlSize.Small)] |
||||
|
[Display(Name = "StoreWorkOrderDetailOp")] |
||||
|
public string? Op { get; set; } |
||||
|
|
||||
|
[FormControlSize(AbpFormControlSize.Small)] |
||||
|
[Display(Name = "StoreWorkOrderDetailRawLocationCode")] |
||||
|
public string? RawLocationCode { get; set; } |
||||
|
|
||||
|
[FormControlSize(AbpFormControlSize.Small)] |
||||
|
[Display(Name = "StoreWorkOrderDetailRawQty")] |
||||
|
public decimal? RawQty { get; set; } |
||||
|
|
||||
|
[FormControlSize(AbpFormControlSize.Small)] |
||||
|
[Display(Name = "StoreWorkOrderDetailRawUom")] |
||||
|
public string? RawUom { get; set; } |
||||
|
|
||||
|
[FormControlSize(AbpFormControlSize.Small)] |
||||
|
[Display(Name = "StoreWorkOrderDetailRemark")] |
||||
|
public string? Remark { get; set; } |
||||
|
} |
@ -0,0 +1,48 @@ |
|||||
|
using System; |
||||
|
using System.ComponentModel.DataAnnotations; |
||||
|
|
||||
|
namespace WinIn.FasterZ.Wms.Web.Pages.Z_Business.StoreWorkOrderDetail.StoreWorkOrderDetail.ViewModels; |
||||
|
|
||||
|
using WinIn.FasterZ.Wms.Permissions; |
||||
|
|
||||
|
public class CreateEditStoreWorkOrderDetailViewModel |
||||
|
{ |
||||
|
[Display(Name = "StoreWorkOrderDetailEffectiveDate")] |
||||
|
public DateTime EffectiveDate { get; set; } |
||||
|
|
||||
|
[Display(Name = "StoreWorkOrderDetailItemCode")] |
||||
|
public string ItemCode { get; set; } |
||||
|
|
||||
|
[Display(Name = "StoreWorkOrderDetailItemDesc1")] |
||||
|
public string? ItemDesc1 { get; set; } |
||||
|
|
||||
|
[Display(Name = "StoreWorkOrderDetailItemDesc2")] |
||||
|
public string? ItemDesc2 { get; set; } |
||||
|
|
||||
|
[Display(Name = "StoreWorkOrderDetailItemName")] |
||||
|
public string? ItemName { get; set; } |
||||
|
|
||||
|
[Display(Name = "StoreWorkOrderDetailMaster")] |
||||
|
public WmsPermissions.StoreWorkOrder Master { get; set; } |
||||
|
|
||||
|
[Display(Name = "StoreWorkOrderDetailMasterId")] |
||||
|
public Guid MasterId { get; set; } |
||||
|
|
||||
|
[Display(Name = "StoreWorkOrderDetailNumber")] |
||||
|
public string Number { get; set; } |
||||
|
|
||||
|
[Display(Name = "StoreWorkOrderDetailOp")] |
||||
|
public string? Op { get; set; } |
||||
|
|
||||
|
[Display(Name = "StoreWorkOrderDetailRawLocationCode")] |
||||
|
public string? RawLocationCode { get; set; } |
||||
|
|
||||
|
[Display(Name = "StoreWorkOrderDetailRawQty")] |
||||
|
public decimal RawQty { get; set; } |
||||
|
|
||||
|
[Display(Name = "StoreWorkOrderDetailRawUom")] |
||||
|
public string? RawUom { get; set; } |
||||
|
|
||||
|
[Display(Name = "StoreWorkOrderDetailRemark")] |
||||
|
public string? Remark { get; set; } |
||||
|
} |
@ -0,0 +1,133 @@ |
|||||
|
$(function () { |
||||
|
|
||||
|
$("#StoreWorkOrderDetailFilter :input").on('input', function () { |
||||
|
dataTable.ajax.reload(); |
||||
|
}); |
||||
|
|
||||
|
//After abp v7.2 use dynamicForm 'column-size' instead of the following settings
|
||||
|
//$('#StoreWorkOrderDetailCollapse div').addClass('col-sm-3').parent().addClass('row');
|
||||
|
|
||||
|
var getFilter = function () { |
||||
|
var input = {}; |
||||
|
$("#StoreWorkOrderDetailFilter") |
||||
|
.serializeArray() |
||||
|
.forEach(function (data) { |
||||
|
if (data.value != '') { |
||||
|
input[abp.utils.toCamelCase(data.name.replace(/StoreWorkOrderDetailFilter./g, ''))] = data.value; |
||||
|
} |
||||
|
}) |
||||
|
return input; |
||||
|
}; |
||||
|
|
||||
|
var l = abp.localization.getResource('Wms'); |
||||
|
|
||||
|
var service = winIn.fasterZ.wms.z_Business.storeWorkOrderDetail.storeWorkOrderDetail; |
||||
|
var createModal = new abp.ModalManager(abp.appPath + 'Z_Business/StoreWorkOrderDetail/StoreWorkOrderDetail/CreateModal'); |
||||
|
var editModal = new abp.ModalManager(abp.appPath + 'Z_Business/StoreWorkOrderDetail/StoreWorkOrderDetail/EditModal'); |
||||
|
|
||||
|
var dataTable = $('#StoreWorkOrderDetailTable').DataTable(abp.libs.datatables.normalizeConfiguration({ |
||||
|
processing: true, |
||||
|
serverSide: true, |
||||
|
paging: true, |
||||
|
searching: false,//disable default searchbox
|
||||
|
autoWidth: false, |
||||
|
scrollCollapse: true, |
||||
|
order: [[0, "asc"]], |
||||
|
ajax: abp.libs.datatables.createAjax(service.getList,getFilter), |
||||
|
columnDefs: [ |
||||
|
{ |
||||
|
rowAction: { |
||||
|
items: |
||||
|
[ |
||||
|
{ |
||||
|
text: l('Edit'), |
||||
|
visible: abp.auth.isGranted('Wms.StoreWorkOrderDetail.Update'), |
||||
|
action: function (data) { |
||||
|
editModal.open({ id: data.record.id }); |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
text: l('Delete'), |
||||
|
visible: abp.auth.isGranted('Wms.StoreWorkOrderDetail.Delete'), |
||||
|
confirmMessage: function (data) { |
||||
|
return l('StoreWorkOrderDetailDeletionConfirmationMessage', data.record.id); |
||||
|
}, |
||||
|
action: function (data) { |
||||
|
service.delete(data.record.id) |
||||
|
.then(function () { |
||||
|
abp.notify.info(l('SuccessfullyDeleted')); |
||||
|
dataTable.ajax.reload(); |
||||
|
}); |
||||
|
} |
||||
|
} |
||||
|
] |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
title: l('StoreWorkOrderDetailEffectiveDate'), |
||||
|
data: "effectiveDate" |
||||
|
}, |
||||
|
{ |
||||
|
title: l('StoreWorkOrderDetailItemCode'), |
||||
|
data: "itemCode" |
||||
|
}, |
||||
|
{ |
||||
|
title: l('StoreWorkOrderDetailItemDesc1'), |
||||
|
data: "itemDesc1" |
||||
|
}, |
||||
|
{ |
||||
|
title: l('StoreWorkOrderDetailItemDesc2'), |
||||
|
data: "itemDesc2" |
||||
|
}, |
||||
|
{ |
||||
|
title: l('StoreWorkOrderDetailItemName'), |
||||
|
data: "itemName" |
||||
|
}, |
||||
|
{ |
||||
|
title: l('StoreWorkOrderDetailMaster'), |
||||
|
data: "master" |
||||
|
}, |
||||
|
{ |
||||
|
title: l('StoreWorkOrderDetailMasterId'), |
||||
|
data: "masterId" |
||||
|
}, |
||||
|
{ |
||||
|
title: l('StoreWorkOrderDetailNumber'), |
||||
|
data: "number" |
||||
|
}, |
||||
|
{ |
||||
|
title: l('StoreWorkOrderDetailOp'), |
||||
|
data: "op" |
||||
|
}, |
||||
|
{ |
||||
|
title: l('StoreWorkOrderDetailRawLocationCode'), |
||||
|
data: "rawLocationCode" |
||||
|
}, |
||||
|
{ |
||||
|
title: l('StoreWorkOrderDetailRawQty'), |
||||
|
data: "rawQty" |
||||
|
}, |
||||
|
{ |
||||
|
title: l('StoreWorkOrderDetailRawUom'), |
||||
|
data: "rawUom" |
||||
|
}, |
||||
|
{ |
||||
|
title: l('StoreWorkOrderDetailRemark'), |
||||
|
data: "remark" |
||||
|
}, |
||||
|
] |
||||
|
})); |
||||
|
|
||||
|
createModal.onResult(function () { |
||||
|
dataTable.ajax.reload(); |
||||
|
}); |
||||
|
|
||||
|
editModal.onResult(function () { |
||||
|
dataTable.ajax.reload(); |
||||
|
}); |
||||
|
|
||||
|
$('#NewStoreWorkOrderDetailButton').click(function (e) { |
||||
|
e.preventDefault(); |
||||
|
createModal.open(); |
||||
|
}); |
||||
|
}); |
Loading…
Reference in new issue