Commit ed60c2a7 authored by liudong1993's avatar liudong1993

重新入库

parent 20d25d83
......@@ -42,7 +42,7 @@ namespace Mall.Model.Entity.Property
set;
}
/// <summary>
/// 来源类型 1仓库操作 2商品操作 3 采购,4集团授权,5用户授权,6-出库
/// 来源类型 1仓库操作 2商品操作 3 采购,4集团授权,5用户授权,6-出库, 7重新入库
/// </summary>
public int? Type
{
......
using VT.FW.DB;
using System;
using System.Collections.Generic;
using System.Text;
namespace Mall.Model.Entity.Property
{
/// <summary>
/// 商品重新入库记录实体
/// </summary>
[Serializable]
[DB(ConnectionName = "PropertyConnection")]
public class RB_Warehouseout_Inventory
{
/// <summary>
/// Id
/// </summary>
public int Id { get; set; }
/// <summary>
/// 订单id
/// </summary>
public int OrderId { get; set; }
/// <summary>
/// 订单明细id
/// </summary>
public int OrderGoodsId { get; set; }
/// <summary>
/// 订单号
/// </summary>
public string OrderNo { get; set; }
/// <summary>
/// 出库id
/// </summary>
public int StockOutId { get; set; }
/// <summary>
/// 物料id
/// </summary>
public int MaterialId { get; set; }
/// <summary>
/// 重新入库数量
/// </summary>
public int InventoryNum { get; set; }
/// <summary>
/// 状态 0 正常 1删除
/// </summary>
public int Status { get; set; }
/// <summary>
/// 公司
/// </summary>
public int RB_Branch_Id { get; set; }
/// <summary>
/// 集团
/// </summary>
public int RB_Group_Id { get; set; }
/// <summary>
/// CreateBy
/// </summary>
public int CreateBy { get; set; }
/// <summary>
/// CreateDate
/// </summary>
public DateTime CreateDate { get; set; }
/// <summary>
/// 商户号
/// </summary>
public int TenantId { get; set; }
/// <summary>
/// 小程序id
/// </summary>
public int MallBaseId { get; set; }
/// <summary>
/// 财务单据id
/// </summary>
public int FinanceId { get; set; }
/// <summary>
/// 仓库id
/// </summary>
public int WarehouseId { get; set; }
/// <summary>
/// 生成入库单id
/// </summary>
public int StockInId { get; set; }
/// <summary>
/// 备注
/// </summary>
public string Remark { get; set; }
}
}
......@@ -38,5 +38,10 @@ namespace Mall.Model.Extend.Property
/// 흙욋鑒좆
/// </summary>
public int InStockNum { get; set; }
/// <summary>
/// 係近쯤
/// </summary>
public string Barcode { get; set; }
}
}
\ No newline at end of file
......@@ -15,6 +15,11 @@ namespace Mall.Model.Extend.Property
[DB(ConnectionName = "PropertyConnection")]
public class RB_WarehouseOut_GoodsDetail_Extend : RB_WarehouseOut_GoodsDetail
{
/// <summary>
/// 出库明细ids
/// </summary>
public string WarehouseOutIds { get; set; }
/// <summary>
/// 订单号
/// </summary>
......@@ -40,6 +45,11 @@ namespace Mall.Model.Extend.Property
/// </summary>
public DateTime? StockOutDate { get; set; }
/// <summary>
/// 重新入库时间
/// </summary>
public DateTime? StockInDate { get; set; }
/// <summary>
/// 重新入库数量
/// </summary>
......
using VT.FW.DB;
using Mall.Model.Entity.Property;
using System;
using System.Collections.Generic;
using System.Text;
namespace Mall.Model.Extend.Property
{
/// <summary>
/// 商品重新入库记录扩展实体
/// </summary>
[Serializable]
[DB(ConnectionName = "PropertyConnection")]
public class RB_Warehouseout_Inventory_Extend : RB_Warehouseout_Inventory
{
/// <summary>
/// 仓库名称
/// </summary>
public string WarehouseName { get; set; }
}
}
This diff is collapsed.
......@@ -60,7 +60,7 @@ namespace Mall.Repository.Property
/// </summary>
/// <param name="query">查询条件</param>
/// <returns></returns>
public List<RB_WarehouseOut_GoodsDetail> GetOutGoodsDetailList(RB_WarehouseOut_GoodsDetail query)
public List<RB_WarehouseOut_GoodsDetail> GetOutGoodsDetailList(RB_WarehouseOut_GoodsDetail_Extend query)
{
StringBuilder builder = new StringBuilder();
builder.Append($" select * from {TableName} as a where a.Status=0 ");
......@@ -82,6 +82,10 @@ namespace Mall.Repository.Property
{
builder.Append($" AND a.{nameof(RB_WarehouseOut_GoodsDetail.ApplyId)}={query.ApplyId}");
}
if (!string.IsNullOrEmpty(query.WarehouseOutIds))
{
builder.Append($" AND a.{nameof(RB_WarehouseOut_GoodsDetail.ID)} in({query.WarehouseOutIds})");
}
}
return Get<RB_WarehouseOut_GoodsDetail>(builder.ToString()).ToList();
}
......@@ -97,7 +101,7 @@ namespace Mall.Repository.Property
public List<RB_WarehouseOut_GoodsDetail_Extend> GetPageList_V2(int pageIndex, int pageSize, out long rowCount, RB_WarehouseOut_GoodsDetail_Extend query)
{
StringBuilder builder = new StringBuilder();
builder.Append($@"SELECT a.*,i.InventoryNum FROM(
builder.Append($@"SELECT a.*,i.InventoryNum,i.CreateDate as StockInDate FROM(
SELECT gd.OrderId,gd.OrderGoodsId,gd.GoodsId,gd.StockOutId,gd.MaterialId,gd.GoodsName
,gd.Specification,gd.CostMoney,gd.ProductCode,gd.WarehouseId,s.StockOutDate,w.`Name` as WarehouseName,COUNT(0) AS Number
FROM rb_warehouseout_goodsdetail gd
......@@ -110,6 +114,10 @@ WHERE gd.`Status`=0 ");
{
builder.Append($" AND gd.{nameof(RB_WarehouseOut_GoodsDetail.ID)}={query.ID}");
}
if (!string.IsNullOrEmpty(query.WarehouseOutIds))
{
builder.Append($" AND gd.{nameof(RB_WarehouseOut_GoodsDetail.ID)} in({query.WarehouseOutIds})");
}
if (query.TenantId > 0)
{
builder.Append($" AND gd.{nameof(RB_WarehouseOut_GoodsDetail.TenantId)}={query.TenantId}");
......@@ -132,5 +140,53 @@ LEFT JOIN rb_warehouseout_inventory i on a.StockOutId = i.StockOutId and a.Mater
builder.Append(" ORDER BY a.StockOutDate DESC");
return GetPage<RB_WarehouseOut_GoodsDetail_Extend>(pageIndex, pageSize, out rowCount, builder.ToString()).ToList();
}
/// <summary>
/// 获取出库记录列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_WarehouseOut_GoodsDetail_Extend> GetList_V2(RB_WarehouseOut_GoodsDetail_Extend query)
{
StringBuilder builder = new StringBuilder();
builder.Append($@"SELECT a.*,i.InventoryNum FROM(
SELECT gd.OrderId,gd.OrderGoodsId,gd.GoodsId,gd.StockOutId,gd.MaterialId,gd.GoodsName
,gd.Specification,gd.CostMoney,gd.ProductCode,gd.WarehouseId,s.StockOutDate,w.`Name` as WarehouseName,COUNT(0) AS Number
FROM rb_warehouseout_goodsdetail gd
LEFT JOIN rb_supplies_stockout s on gd.StockOutId = s.Id and s.`Status`=0 and s.StockOutState =1
LEFT JOIN rb_supplies_warehouse w on gd.WarehouseId =w.Id
WHERE gd.`Status`=0 ");
if (query != null)
{
if (query.ID > 0)
{
builder.Append($" AND gd.{nameof(RB_WarehouseOut_GoodsDetail.ID)}={query.ID}");
}
if (!string.IsNullOrEmpty(query.WarehouseOutIds))
{
builder.Append($" AND gd.{nameof(RB_WarehouseOut_GoodsDetail.ID)} in({query.WarehouseOutIds})");
}
if (query.TenantId > 0)
{
builder.Append($" AND gd.{nameof(RB_WarehouseOut_GoodsDetail.TenantId)}={query.TenantId}");
}
if (query.MallBaseId > 0)
{
builder.Append($" AND gd.{nameof(RB_WarehouseOut_GoodsDetail.MallBaseId)}={query.MallBaseId}");
}
if (query.OrderId > 0)
{
builder.Append($" AND gd.{nameof(RB_WarehouseOut_GoodsDetail.OrderId)}={query.OrderId}");
}
if (!string.IsNullOrEmpty(query.GoodsName))
{
builder.Append($" AND gd.{nameof(RB_WarehouseOut_GoodsDetail.GoodsName)} like '%{query.GoodsName}%'");
}
}
builder.Append($@" GROUP BY gd.OrderId,gd.OrderGoodsId,gd.GoodsId,gd.StockOutId,gd.MaterialId) a
LEFT JOIN rb_warehouseout_inventory i on a.StockOutId = i.StockOutId and a.MaterialId = i.MaterialId and a.OrderId = i.OrderId and a.OrderGoodsId = i.OrderGoodsId");
builder.Append(" ORDER BY a.StockOutDate DESC");
return Get<RB_WarehouseOut_GoodsDetail_Extend>(builder.ToString()).ToList();
}
}
}
using Mall.Model.Entity.Property;
using Mall.Model.Extend.Property;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Mall.Repository.Property
{
/// <summary>
/// 重新入库仓储类
/// </summary>
public partial class RB_Warehouseout_InventoryRepository : BaseRepository<RB_Warehouseout_Inventory>
{
/// <summary>
/// 获取分页数据
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="dmodel"></param>
/// <param name="count"></param>
/// <returns></returns>
public List<RB_Warehouseout_Inventory_Extend> GetPageList(int pageIndex, int pageSize, RB_Warehouseout_Inventory_Extend dmodel, out long count)
{
string where = " where 1=1 ";
where += string.Format(" AND {0}={1}", nameof(RB_Warehouseout_Inventory_Extend.Status), 0);
where += $@" and RB_Group_Id={dmodel.RB_Group_Id}";
if (dmodel.WarehouseId > 0)
{
where += " and " + nameof(RB_Warehouseout_Inventory_Extend.WarehouseId) + $" ={dmodel.WarehouseId}";
}
if (dmodel.OrderId > 0)
{
where += " and " + nameof(RB_Warehouseout_Inventory_Extend.OrderId) + $" ={dmodel.OrderId}";
}
if (dmodel.MaterialId > 0)
{
where += " and " + nameof(RB_Warehouseout_Inventory_Extend.MaterialId) + $" ={dmodel.MaterialId}";
}
if (dmodel.FinanceId > 0)
{
where += " and " + nameof(RB_Warehouseout_Inventory_Extend.FinanceId) + $" ={dmodel.FinanceId}";
}
string sql = $@" select * from RB_Warehouseout_Inventory {where} order by Id desc";
return GetPage<RB_Warehouseout_Inventory_Extend>(pageIndex, pageSize, out count, sql).ToList();
}
/// <summary>
/// 获取列表
/// </summary>
/// <param name="dmodel"></param>
/// <returns></returns>
public List<RB_Warehouseout_Inventory_Extend> GetList(RB_Warehouseout_Inventory_Extend dmodel)
{
string where = " where 1=1 ";
where += string.Format(" AND {0}={1}", nameof(RB_Warehouseout_Inventory_Extend.Status), 0);
where += $@" and RB_Group_Id={dmodel.RB_Group_Id}";
if (dmodel.WarehouseId > 0)
{
where += " and " + nameof(RB_Warehouseout_Inventory_Extend.WarehouseId) + $" ={dmodel.WarehouseId}";
}
if (dmodel.OrderId > 0)
{
where += " and " + nameof(RB_Warehouseout_Inventory_Extend.OrderId) + $" ={dmodel.OrderId}";
}
if (dmodel.OrderGoodsId > 0)
{
where += " and " + nameof(RB_Warehouseout_Inventory_Extend.OrderGoodsId) + $" ={dmodel.OrderGoodsId}";
}
if (dmodel.StockOutId > 0)
{
where += " and " + nameof(RB_Warehouseout_Inventory_Extend.StockOutId) + $" ={dmodel.StockOutId}";
}
if (dmodel.MaterialId > 0)
{
where += " and " + nameof(RB_Warehouseout_Inventory_Extend.MaterialId) + $" ={dmodel.MaterialId}";
}
if (dmodel.FinanceId > 0)
{
where += " and " + nameof(RB_Warehouseout_Inventory_Extend.FinanceId) + $" ={dmodel.FinanceId}";
}
string sql = $@" select * from RB_Warehouseout_Inventory {where} order by Id desc";
return Get<RB_Warehouseout_Inventory_Extend>(sql).ToList();
}
}
}
......@@ -125,7 +125,8 @@ namespace Mall.WebApi.Controllers.MallBase
y.MaterialModel.GoodsCategoryList,
y.MaterialModel.GoodsId,
y.MaterialModel.SpecificationKey,
y.MaterialModel.ImageList
y.MaterialModel.ImageList,
y.MaterialModel.Barcode
}
}),
model.FinanceId
......@@ -408,6 +409,7 @@ namespace Mall.WebApi.Controllers.MallBase
x.WarehouseName,
x.Number,
StockOutDate = x.StockOutDate.HasValue ? x.StockOutDate.Value.ToString("yyyy-MM-dd HH:mm:ss") : "",
StockInDate = x.StockInDate.HasValue ? x.StockInDate.Value.ToString("yyyy-MM-dd HH:mm:ss") : "",
x.InventoryNum
});
return ApiResult.Success("", pagelist);
......@@ -420,11 +422,11 @@ namespace Mall.WebApi.Controllers.MallBase
[HttpPost]
public ApiResult SetGoodsAgainInventory()
{
var parms = RequestParm;
List<RB_WarehouseOut_GoodsDetail_Extend> demodel = JsonConvert.DeserializeObject<List<RB_WarehouseOut_GoodsDetail_Extend>>(parms.msg.ToString());
if (parms.ERPEmpId <= 0)
var requestParm = RequestParm;
List<RB_WarehouseOut_GoodsDetail_Extend> demodel = JsonConvert.DeserializeObject<List<RB_WarehouseOut_GoodsDetail_Extend>>(requestParm.msg.ToString());
if (requestParm.ERPEmpId <= 0)
{
return ApiResult.ParamIsNull("请传递参数");
return ApiResult.ParamIsNull("非资产绑定账户,无法操作");
}
if (demodel == null || demodel.Count() == 0) {
return ApiResult.ParamIsNull("请传递数据");
......@@ -443,13 +445,35 @@ namespace Mall.WebApi.Controllers.MallBase
if (item.MaterialId <= 0) {
return ApiResult.ParamIsNull("请传递物料id");
}
if (item.WarehouseId <= 0) {
return ApiResult.ParamIsNull("请传递仓库id");
}
if (item.InventoryNum <= 0) {
return ApiResult.ParamIsNull("请传递入库数量");
}
}
if (string.IsNullOrEmpty(item.GoodsName))
{
return ApiResult.ParamIsNull("请传递商品名称");
}
if (string.IsNullOrEmpty(item.Specification))
{
return ApiResult.ParamIsNull("请传递商品规格");
}
if (string.IsNullOrEmpty(item.OrderNo))
{
return ApiResult.ParamIsNull("请传递订单号");
}
}
return ApiResult.Success();
string msg = propertyModule.SetGoodsAgainInventory(demodel, requestParm.ERPEmpId, requestParm.ERPBranchId, requestParm.ERPGroupId, requestParm.TenantId, requestParm.MallBaseId, requestParm.EmpId);
if (msg == "")
{
return ApiResult.Success();
}
else {
return ApiResult.Failed(msg);
}
}
#endregion
......@@ -490,12 +514,40 @@ namespace Mall.WebApi.Controllers.MallBase
x.InventoryNum,
x.GoodsSpecificationList,
x.GoodsCategoryList,
//UpdateBy = CacheManager.User.UserReidsCache.GetEmployee(x.UpdateBy)?.EmName ?? "",
x.Barcode,
UpdateDate = x.UpdateDate.Value.ToString("yyyy-MM-dd")
});
return ApiResult.Success("", pagelist);
}
/// <summary>
/// 设置物料条形码
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult SetMaterialBarcode() {
var requestParm = RequestParm;
if (requestParm.ERPEmpId <= 0)
{
return ApiResult.ParamIsNull("请传递参数");
}
JObject parms = JObject.Parse(requestParm.msg.ToString());
int MaterialId = parms.GetInt("MaterialId", 0);
string Barcode = parms.GetStringValue("Barcode");
if (MaterialId <= 0) {
return ApiResult.ParamIsNull();
}
bool flag = propertyModule.SetMaterialBarcode(MaterialId, Barcode);
if (flag)
{
return ApiResult.Success();
}
else {
return ApiResult.Failed();
}
}
/// <summary>
/// 同步商品信息至资产耗材
/// </summary>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment