using Tiger.Model;
|
using SqlSugar;
|
using System;
|
using System.Collections.Generic;
|
using System.Linq.Expressions;
|
using System.Text;
|
using System.Threading.Tasks;
|
using Rhea.Common;
|
using System.Net;
|
using System.Linq;
|
using Newtonsoft.Json;
|
using Tiger.IBusiness;
|
using Microsoft.AspNetCore.Http;
|
using Tiger.Model.Entitys.MES.BizMesWoBatch;
|
using Tiger.Model.Entitys.MES.BizMesWo;
|
using Tiger.Model.Entitys.MES.DoUnPack;
|
using Tiger.Model.Entitys.MES.Position;
|
|
namespace Tiger.Business.MES
|
{
|
public partial class DoUnPack : IDoUnPack
|
{
|
/// <summary>
|
/// 拆解包装
|
/// </summary>
|
/// <param name="input"></param>
|
/// <returns></returns>
|
public async Task<ApiAction<List<MES_WIP_PKG>>> Submit(DoUnPackInput input)
|
{
|
var result = new ApiAction<List<MES_WIP_PKG>>();
|
try
|
{
|
var wipPkg = await Biz.Db.Queryable<MES_WIP_PKG>().Where(q => q.SN == input.SN && q.AUTH_ORG == input.AUTH_ORG).FirstAsync();
|
var wipPkgParent = await Biz.Db.Queryable<MES_WIP_PKG>().Where(q => q.SN == wipPkg.PARENT_SN && q.AUTH_ORG == input.AUTH_ORG).FirstAsync();
|
var db = Biz.Db;
|
var dbTran = db.UseTran(() =>
|
{
|
db.Updateable<WMS_ITEM_PKG>().SetColumns(q => q.PARENT_SN == null).Where(q => q.ID == wipPkg.ID).ExecuteCommand();
|
db.Updateable<WMS_ITEM_PKG>().SetColumns(q => q.QTY == q.QTY - 1).Where(q => q.ID == wipPkgParent.ID).ExecuteCommand();
|
if (!Biz.Db.Queryable<WMS_ITEM_PKG>().Any(q => q.PARENT_SN == wipPkg.PARENT_SN && q.SN != wipPkg.SN))
|
{
|
db.Deleteable(wipPkgParent);
|
}
|
});
|
if (!dbTran.IsSuccess)
|
{
|
result.IsSuccessed = false;
|
result.Message = $"拆解包装异常";
|
}
|
result.Data = Biz.Db.Queryable<MES_WIP_PKG>().Where(q => q.PARENT_SN == wipPkgParent.SN).ToList();
|
}
|
catch (Exception ex)
|
{
|
result.CatchExceptionWithLog(ex, "拆解包装异常");
|
}
|
return result;
|
}
|
}
|
}
|