Commit 55a10f5a authored by 吴春's avatar 吴春

提交代码

parent 01c2e7df
...@@ -30,6 +30,12 @@ namespace Mall.Model.Extend.Product ...@@ -30,6 +30,12 @@ namespace Mall.Model.Extend.Product
/// 单据状态 1已制单 2未制单 /// 单据状态 1已制单 2未制单
/// </summary> /// </summary>
public int? FinanceStatus { get; set; } public int? FinanceStatus { get; set; }
/// <summary>
/// 是否出库0-否, 1-是
/// </summary>
public int IsOut { get; set; }
/// <summary> /// <summary>
/// 会员优惠 /// 会员优惠
/// </summary> /// </summary>
......
...@@ -36,5 +36,10 @@ namespace Mall.Model.Extend.Property ...@@ -36,5 +36,10 @@ namespace Mall.Model.Extend.Property
public string TenantName { get; set; } public string TenantName { get; set; }
/// <summary>
/// 0-未出库,1-已出库
/// </summary>
public int IsOut { get; set; }
} }
} }
...@@ -374,7 +374,15 @@ where {where} order by o.CreateDate desc"; ...@@ -374,7 +374,15 @@ where {where} order by o.CreateDate desc";
/// <returns></returns> /// <returns></returns>
public List<RB_Goods_OrderDetail_Extend> GetOrderGoodsList(RB_Goods_OrderDetail_Extend dmodel) public List<RB_Goods_OrderDetail_Extend> GetOrderGoodsList(RB_Goods_OrderDetail_Extend dmodel)
{ {
string where = $" 1=1 and o.{nameof(RB_Goods_Order.Status)}=0 and o.OrderStatus=2"; string where = "";
if (dmodel.IsOut == 0)
{
where = $" 1=1 and o.{nameof(RB_Goods_Order.Status)}=0 and o.OrderStatus =2";
}
else
{
where = $" 1=1 and o.{nameof(RB_Goods_Order.Status)}=0 and o.OrderStatus in(2,3,4,5,6)";
}
string childreWhere = ""; string childreWhere = "";
if (dmodel.TenantId > 0) if (dmodel.TenantId > 0)
{ {
...@@ -435,8 +443,10 @@ where {where} order by o.CreateDate desc"; ...@@ -435,8 +443,10 @@ where {where} order by o.CreateDate desc";
{ {
where += $@" and od.{nameof(RB_Goods_OrderDetail.ProductCode)} like '%{dmodel.ProductCode}%'"; where += $@" and od.{nameof(RB_Goods_OrderDetail.ProductCode)} like '%{dmodel.ProductCode}%'";
} }
if (dmodel.IsOut == 0)
where += $"and od.Id not in (SELECT OrderDetailId from rb_goods_expressrelevance where 1=1 {childreWhere})"; {
where += $"and od.Id not in (SELECT OrderDetailId from rb_goods_expressrelevance where 1=1 {childreWhere})";
}
string sql = $@"SELECT od.*,o.OrderNo FROM rb_goods_orderdetail od string sql = $@"SELECT od.*,o.OrderNo FROM rb_goods_orderdetail od
INNER JOIN rb_goods_order o on o.OrderId=od.OrderId INNER JOIN rb_goods_order o on o.OrderId=od.OrderId
where {where} order by o.CreateDate desc"; where {where} order by o.CreateDate desc";
...@@ -454,7 +464,16 @@ where {where} order by o.CreateDate desc"; ...@@ -454,7 +464,16 @@ where {where} order by o.CreateDate desc";
/// <returns></returns> /// <returns></returns>
public List<RB_Goods_OrderDetail_Extend> GetNoOutOrderGoodsList(int pageIndex, int pageSize, out long count, RB_Goods_OrderDetail_Extend dmodel) public List<RB_Goods_OrderDetail_Extend> GetNoOutOrderGoodsList(int pageIndex, int pageSize, out long count, RB_Goods_OrderDetail_Extend dmodel)
{ {
string where = $" 1=1 and o.{nameof(RB_Goods_Order.Status)}=0 and o.OrderStatus=2"; string where = "";
if (dmodel.IsOut == 0)
{
where = $" 1=1 and o.{nameof(RB_Goods_Order.Status)}=0 and o.OrderStatus =2";
}
else
{
where = $" 1=1 and o.{nameof(RB_Goods_Order.Status)}=0 and o.OrderStatus in(2,3,4,5,6)";
}
string childreWhere = ""; string childreWhere = "";
string outWhere = ""; string outWhere = "";
if (dmodel.TenantId > 0) if (dmodel.TenantId > 0)
...@@ -519,8 +538,16 @@ where {where} order by o.CreateDate desc"; ...@@ -519,8 +538,16 @@ where {where} order by o.CreateDate desc";
where += $@" and od.{nameof(RB_Goods_OrderDetail.ProductCode)} like '%{dmodel.ProductCode}%'"; where += $@" and od.{nameof(RB_Goods_OrderDetail.ProductCode)} like '%{dmodel.ProductCode}%'";
} }
where += $" and od.Id not in (SELECT OrderDetailId from rb_goods_expressrelevance where 1=1 {childreWhere})"; if (dmodel.IsOut == 0)
where += @$" AND od.Id NOT IN (SELECT OrderGoodsId FROM {Config.PropertyDB}.rb_warehouseout_goods AS g LEFT JOIN {Config.PropertyDB}.rb_warehouseout_apply AS ap ON g.applyId = ap.id WHERE ap.ApplyStatus in (1,2) {outWhere} )"; {
where += $" and od.Id not in (SELECT OrderDetailId from rb_goods_expressrelevance where 1=1 {childreWhere})";
where += @$" AND od.Id NOT IN (SELECT OrderGoodsId FROM {Config.PropertyDB}.rb_warehouseout_goods AS g LEFT JOIN {Config.PropertyDB}.rb_warehouseout_apply AS ap ON g.applyId = ap.id WHERE ap.ApplyStatus in (1,2) {outWhere} )";
}
else if (dmodel.IsOut == 1)
{
where += $" and( od.Id in (SELECT OrderDetailId from rb_goods_expressrelevance where 1=1 {childreWhere})";
where += @$" or od.Id IN (SELECT OrderGoodsId FROM {Config.PropertyDB}.rb_warehouseout_goods AS g LEFT JOIN {Config.PropertyDB}.rb_warehouseout_apply AS ap ON g.applyId = ap.id WHERE ap.ApplyStatus in (1,2) {outWhere} ))";
}
string sql = $@"SELECT od.*,o.OrderNo FROM rb_goods_orderdetail od string sql = $@"SELECT od.*,o.OrderNo FROM rb_goods_orderdetail od
INNER JOIN rb_goods_order o on o.OrderId=od.OrderId INNER JOIN rb_goods_order o on o.OrderId=od.OrderId
where {where} order by o.CreateDate desc"; where {where} order by o.CreateDate desc";
...@@ -578,7 +605,8 @@ where {where} order by o.CreateDate desc"; ...@@ -578,7 +605,8 @@ where {where} order by o.CreateDate desc";
{ {
where += $@" and o.{nameof(RB_Goods_Order.OrderNo)} ='{dmodel.OrderNo}'"; where += $@" and o.{nameof(RB_Goods_Order.OrderNo)} ='{dmodel.OrderNo}'";
} }
if (dmodel.UserId > 0) { if (dmodel.UserId > 0)
{
where += $@" and o.{nameof(RB_Goods_Order.UserId)} ={dmodel.UserId}"; where += $@" and o.{nameof(RB_Goods_Order.UserId)} ={dmodel.UserId}";
} }
......
...@@ -111,7 +111,8 @@ namespace Mall.WebApi.Controllers.Property ...@@ -111,7 +111,8 @@ namespace Mall.WebApi.Controllers.Property
//根据订单商品id查询商品信息 //根据订单商品id查询商品信息
var orderGoodsIds = string.Join(",", demodel.WarehouseOutGoodsList.Select(x => x.OrderGoodsId)); var orderGoodsIds = string.Join(",", demodel.WarehouseOutGoodsList.Select(x => x.OrderGoodsId));
var orderGoodsList = orderModule.GetOrderGoodsList(new Model.Extend.Product.RB_Goods_OrderDetail_Extend { TenantId = requestParm.TenantId, MallBaseId = requestParm.MallBaseId, IdList = demodel.WarehouseOutGoodsList.Select(x => x.OrderGoodsId).ToList() });
var orderGoodsList = orderModule.GetOrderGoodsList(new Model.Extend.Product.RB_Goods_OrderDetail_Extend { IsOut=demodel.IsOut,TenantId = requestParm.TenantId, MallBaseId = requestParm.MallBaseId, IdList = demodel.WarehouseOutGoodsList.Select(x => x.OrderGoodsId).ToList() });
if (demodel.WarehouseOutGoodsList.GroupBy(x => x.OrderGoodsId).Count() != orderGoodsList.Count) if (demodel.WarehouseOutGoodsList.GroupBy(x => x.OrderGoodsId).Count() != orderGoodsList.Count)
{ {
List<int> chajiList = demodel.WarehouseOutGoodsList.Select(x => x.OrderGoodsId).Except(orderGoodsList.Select(x => x.Id)).ToList(); List<int> chajiList = demodel.WarehouseOutGoodsList.Select(x => x.OrderGoodsId).Except(orderGoodsList.Select(x => x.Id)).ToList();
...@@ -126,24 +127,27 @@ namespace Mall.WebApi.Controllers.Property ...@@ -126,24 +127,27 @@ namespace Mall.WebApi.Controllers.Property
} }
return ApiResult.Failed("订单号:" + msg + "的商品已出库/已取消"); return ApiResult.Failed("订单号:" + msg + "的商品已出库/已取消");
} }
if (demodel.IsOut == 0)
//判断商品是否出库中
var oldOutGoods = warehouseOutModule.GetWarehouseOutListByIds(new RB_WarehouseOut_Goods_Extend { OrderGoodsIds = String.Join(",", demodel.WarehouseOutGoodsList.Select(x => x.OrderGoodsId)), TenantId = requestParm.TenantId, MallBaseId = requestParm.MallBaseId });
if (oldOutGoods != null && oldOutGoods.Any())
{ {
//判断商品是否出库中
string msg = ""; var oldOutGoods = warehouseOutModule.GetWarehouseOutListByIds(new RB_WarehouseOut_Goods_Extend { OrderGoodsIds = String.Join(",", demodel.WarehouseOutGoodsList.Select(x => x.OrderGoodsId)), TenantId = requestParm.TenantId, MallBaseId = requestParm.MallBaseId });
foreach (var item in oldOutGoods) if (oldOutGoods != null && oldOutGoods.Any())
{ {
msg += orderGoodsList.Where(x => x.Id == item.OrderGoodsId).FirstOrDefault()?.OrderNo + ",";
} string msg = "";
if (!string.IsNullOrWhiteSpace(msg)) foreach (var item in oldOutGoods)
{ {
msg = msg.TrimEnd(','); msg += orderGoodsList.Where(x => x.Id == item.OrderGoodsId).FirstOrDefault()?.OrderNo + ",";
}
if (!string.IsNullOrWhiteSpace(msg))
{
msg = msg.TrimEnd(',');
}
return ApiResult.Failed("订单号:" + msg + "的商品已申请出库,请勿重复申请");
} }
return ApiResult.Failed("订单号:" + msg + "的商品已申请出库,请勿重复申请");
} }
//获取商品的出库规格物料信息 //获取商品的出库规格物料信息
var goodsIds = string.Join(",", demodel.WarehouseOutGoodsList.Select(x => x.NewGoodsId)); var goodsIds = string.Join(",", demodel.WarehouseOutGoodsList.Select(x => x.NewGoodsId));
// var materialList = propertyModule.GetSuppliesMaterialList(new RB_Supplies_Material_Extend { GoodsIds = goodsIds, RB_Group_Id = requestParm.ERPGroupId, TenantId = requestParm.TenantId, MallBaseId = requestParm.MallBaseId }); // var materialList = propertyModule.GetSuppliesMaterialList(new RB_Supplies_Material_Extend { GoodsIds = goodsIds, RB_Group_Id = requestParm.ERPGroupId, TenantId = requestParm.TenantId, MallBaseId = requestParm.MallBaseId });
......
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