新增进出库策略,修改起禁用状态函数

This commit is contained in:
alex
2023-07-06 08:54:50 +08:00
parent 2dc3f4d3e5
commit c54274301c
9 changed files with 273 additions and 2 deletions

View File

@@ -0,0 +1,28 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Tnb.WarehouseMgr.Entities.Enums;
namespace Tnb.WarehouseMgr.Entities.Dto
{
/// <summary>
/// 进出库策略状态修改输入参数s
/// </summary>
public class ModifyPoliciesStatusInput
{
/// <summary>
/// 1、入库 2我、出库
/// </summary>
public EnumInOutStockType strategyType { get; set; }
/// <summary>
/// 选中的策略ID列表
/// </summary>
public List<string> ids { get; set; }
/// <summary>
/// 状态 0:禁用 1启用
/// </summary>
public int status { get; set; }
}
}

View File

@@ -0,0 +1,16 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Tnb.WarehouseMgr.Entities.Entity
{
/// <summary>
/// 出入库策略状态契约接口
/// </summary>
public interface IUpdatePoliciesStatus
{
int status { get; set; }
}
}

View File

@@ -0,0 +1,77 @@
using JNPF.Common.Contracts;
using JNPF.Common.Security;
using SqlSugar;
namespace Tnb.WarehouseMgr.Entities;
/// <summary>
/// WMS入库策略
/// </summary>
[SugarTable("wms_instock_policies")]
public partial class WmsInstockPolicies : BaseEntity<string>
{
public WmsInstockPolicies()
{
id = SnowflakeIdHelper.NextId();
}
/// <summary>
/// 所属组织
/// </summary>
public string? org_id { get; set; }
/// <summary>
/// 策略编号
/// </summary>
public string bill_code { get; set; } = string.Empty;
/// <summary>
/// 策略名称
/// </summary>
public string bill_name { get; set; } = string.Empty;
/// <summary>
/// 是否启用
/// </summary>
public int status { get; set; }
/// <summary>
/// 策略内容
/// </summary>
public string policy { get; set; } = string.Empty;
/// <summary>
/// 创建用户
/// </summary>
public string create_id { get; set; } = string.Empty;
/// <summary>
/// 创建时间
/// </summary>
public DateTime create_time { get; set; } = DateTime.Now;
/// <summary>
/// 最后修改人员
/// </summary>
public string? modify_id { get; set; }
/// <summary>
/// 最后修改时间
/// </summary>
public DateTime? modify_time { get; set; }
/// <summary>
/// 扩展字段
/// </summary>
public string? extras { get; set; }
/// <summary>
/// 流程任务Id
/// </summary>
public string? f_flowtaskid { get; set; }
/// <summary>
/// 流程引擎Id
/// </summary>
public string? f_flowid { get; set; }
}

View File

@@ -0,0 +1,13 @@
using JNPF.Common.Contracts;
using JNPF.Common.Security;
using SqlSugar;
using Tnb.WarehouseMgr.Entities.Entity;
namespace Tnb.WarehouseMgr.Entities;
/// <summary>
/// WMS入库策略
/// </summary>
public partial class WmsInstockPolicies : IUpdatePoliciesStatus
{
}

View File

@@ -0,0 +1,77 @@
using JNPF.Common.Contracts;
using JNPF.Common.Security;
using SqlSugar;
namespace Tnb.WarehouseMgr.Entities;
/// <summary>
/// WMS出库策略
/// </summary>
[SugarTable("wms_outstock_policies")]
public partial class WmsOutstockPolicies : BaseEntity<string>
{
public WmsOutstockPolicies()
{
id = SnowflakeIdHelper.NextId();
}
/// <summary>
/// 所属组织
/// </summary>
public string? org_id { get; set; }
/// <summary>
/// 策略编号
/// </summary>
public string bill_code { get; set; } = string.Empty;
/// <summary>
/// 策略名称
/// </summary>
public string bill_name { get; set; } = string.Empty;
/// <summary>
/// 是否启用
/// </summary>
public int status { get; set; }
/// <summary>
/// 策略内容
/// </summary>
public string policy { get; set; } = string.Empty;
/// <summary>
/// 创建用户
/// </summary>
public string create_id { get; set; } = string.Empty;
/// <summary>
/// 创建时间
/// </summary>
public DateTime create_time { get; set; } = DateTime.Now;
/// <summary>
/// 最后修改人员
/// </summary>
public string? modify_id { get; set; }
/// <summary>
/// 最后修改时间
/// </summary>
public DateTime? modify_time { get; set; }
/// <summary>
/// 扩展字段
/// </summary>
public string? extras { get; set; }
/// <summary>
/// 流程任务Id
/// </summary>
public string? f_flowtaskid { get; set; }
/// <summary>
/// 流程引擎Id
/// </summary>
public string? f_flowid { get; set; }
}

View File

@@ -0,0 +1,13 @@
using JNPF.Common.Contracts;
using JNPF.Common.Security;
using SqlSugar;
using Tnb.WarehouseMgr.Entities.Entity;
namespace Tnb.WarehouseMgr.Entities;
/// <summary>
/// WMS出库策略
/// </summary>
public partial class WmsOutstockPolicies : IUpdatePoliciesStatus
{
}

View File

@@ -1,11 +1,13 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using System.Reflection;
using System.Text;
using System.Threading.Tasks;
using Aspose.Cells.Drawing;
using JNPF;
using JNPF.Common.Contracts;
using JNPF.Common.Extension;
using JNPF.DependencyInjection;
using JNPF.DynamicApiController;
@@ -13,6 +15,7 @@ using JNPF.VisualDev;
using Microsoft.AspNetCore.Mvc;
using Tnb.WarehouseMgr.Entities.Attributes;
using Tnb.WarehouseMgr.Entities.Dto;
using Tnb.WarehouseMgr.Entities.Entity;
using Tnb.WarehouseMgr.Interfaces;
namespace Tnb.WarehouseMgr
@@ -49,5 +52,6 @@ namespace Tnb.WarehouseMgr
{
return Task.CompletedTask;
}
}
}

View File

@@ -37,6 +37,7 @@ using Tnb.WarehouseMgr.Entities;
using Tnb.WarehouseMgr.Entities.Consts;
using Tnb.WarehouseMgr.Entities.Dto;
using Tnb.WarehouseMgr.Entities.Dto.Inputs;
using Tnb.WarehouseMgr.Entities.Entity;
using Tnb.WarehouseMgr.Entities.Enums;
using Tnb.WarehouseMgr.Interfaces;
@@ -58,6 +59,7 @@ namespace Tnb.WarehouseMgr
_billRullService = billRullService;
_userManager = userManager;
}
/// <summary>
/// 根据载具Id带出库位、仓库信息
/// </summary>
@@ -493,8 +495,32 @@ namespace Tnb.WarehouseMgr
await _db.Ado.RollbackTranAsync();
}
}
/// <summary>
/// 出入库策略启用、禁用状态修改
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
[HttpPost]
public async Task ModifyPoliciesStatus(ModifyPoliciesStatusInput input)
{
async Task _updateStatus<T>(ModifyPoliciesStatusInput input) where T : BaseEntity<string>, IUpdatePoliciesStatus, new()
{
T obj = new()
{
status = input.status
};
await _db.Updateable(obj).UpdateColumns(it => it.status).Where(it => input.ids.Contains(it.id)).ExecuteCommandAsync();
}
switch (input.strategyType)
{
case EnumInOutStockType.In:
await _updateStatus<WmsInstockPolicies>(input);
break;
case EnumInOutStockType.Out:
await _updateStatus<WmsOutstockPolicies>(input);
break;
}
}
/// <summary>
/// 生成预任务

View File

@@ -0,0 +1,17 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using SqlSugar;
namespace Tnb.WarehouseMgr
{
/// <summary>
/// 入库策略服务类
/// </summary>
public class WmsInStockPoliciesService : BaseWareHouseService
{
private readonly ISqlSugarClient _db;
}
}