计划于物流结束

This commit is contained in:
qianhao.xu
2023-11-28 18:18:56 +08:00
parent 2a6ccc616e
commit 1ca03bd2a5
6 changed files with 142 additions and 31 deletions

View File

@@ -11,6 +11,7 @@ using ZR.Model.MES.qc.DTO;
using ZR.Service.mes.pro;
using ZR.Service.mes.pro.IService;
using ZR.Service.mes.qu.IService;
using static System.Runtime.InteropServices.JavaScript.JSType;
namespace ZR.Admin.WebApi.Controllers.mes.qu
{
@@ -40,5 +41,19 @@ namespace ZR.Admin.WebApi.Controllers.mes.qu
return ToResponse(new ApiResult(200, "success", data));
}
/// <summary>
/// 更新统计表
/// </summary>
/// <returns></returns>
[HttpGet("updateStatisticsTable")]
public IActionResult UpdateStatisticsTable(string id, int actualNumber, int randomRate, int ngs, int oks, decimal oksRatio,int Isqualified)
{
if (string.IsNullOrEmpty(id))
return ToResponse(new ApiResult(200, "success", 0));
int result = quRoughService.UpdateStatisticsTable(id, actualNumber, randomRate, ngs, oks, oksRatio,Isqualified);
return ToResponse(new ApiResult(200, "success", result));
}
}
}

View File

@@ -0,0 +1,36 @@
using Infrastructure.Extensions;
using JinianNet.JNTemplate;
using Microsoft.AspNetCore.Mvc;
using Microsoft.IdentityModel.Tokens;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using System.Text.Json;
using ZR.Admin.WebApi.Extensions;
namespace ZR.Admin.WebApi.Controllers.mes.qc
{
[Route("mes/qc/IQC")]
public class QcinspectionItemController : BaseController
{
readonly IQcinspectionItemService qcinspection;
public QcinspectionItemController(IQcinspectionItemService qcinspection)
{
this.qcinspection= qcinspection;
}
[HttpGet]
public ActionResult Get()
{
return qcinspection.Get();
}
}
}

View File

@@ -27,13 +27,6 @@ namespace ZR.Model.MES.qc.DTO
public string Workblankpartnumber { get; set; }
/// <summary>
/// 需要数量
///</summary>
public int? Requirenum { get; set; }
/// <summary>
/// 状态 0未领料 1已经领料
/// </summary>

View File

@@ -20,6 +20,7 @@ using static System.Net.WebRequestMethods;
using JinianNet.JNTemplate;
using static Aliyun.OSS.Model.LiveChannelStat;
using ZR.Model.MES.pro.DTO;
using ZR.Model.MES.qu;
namespace ZR.Service.mes.pro
{
@@ -97,7 +98,6 @@ namespace ZR.Service.mes.pro
// 生成领料单
// 若没有此零件号的领料单,就新增,否则,修改累加
bool isExit = Context.Queryable<WmWorkorderMr>().Where(it => it.WorkorderId == workorder.Id).Any();
if (!isExit)
{
@@ -121,6 +121,17 @@ namespace ZR.Service.mes.pro
mr.CreatedBy = context.User?.Identity?.Name;
mr.CreatedTime = DateTime.Now;
Context.Insertable(mr).ExecuteCommandAsync();
//新增领料单统计表
QcRough qcRough=new QcRough ();
qcRough.Id = DateTime.Now.ToString("yyyyMMddHHmmss");
qcRough.FkMaterialrequisitionId= materialrequisition.Id;
qcRough.RequireNum = materialrequisition.Requirenum;
qcRough.ActualNumber = materialrequisition.Requirenum;
qcRough.CreatedBy= context.User?.Identity?.Name;
qcRough.CreatedTime= DateTime.Now;
qcRough.OksRatio = 10;
Context.Insertable (qcRough).ExecuteCommandAsync();
}
else
{
@@ -139,7 +150,10 @@ namespace ZR.Service.mes.pro
wm[0].UpdatedBy = context.User?.Identity?.Name;
//更新领料单
Context.Updateable(wm[0]);
//更新检验表
Context.Updateable<QcRough>().SetColumns(it => it.RequireNum == wm[0].Requirenum)
.SetColumns(it => it.ActualNumber == wm[0].Requirenum)
.Where(it => it.FkMaterialrequisitionId == wm[0].Id).ExecuteCommandAsync();
});

View File

@@ -13,5 +13,6 @@ namespace ZR.Service.mes.qu.IService
public interface IQcRoughService
{
public (List<Mr_QuRoughDTO>, int) GetStatisticslist(int pageNum, int pageSize, int year, int week, int date, int isSchedule);
public int UpdateStatisticsTable(string id, int actualNumber, int randomRate, int ngs, int oks, decimal oksRatio,int Isqualified);
}
}

View File

@@ -1,5 +1,6 @@
using Infrastructure.Attribute;
using Microsoft.AspNetCore.Http.HttpResults;
using Microsoft.AspNetCore.Server.HttpSys;
using Microsoft.Extensions.DependencyInjection;
using SqlSugar;
using System;
@@ -26,36 +27,87 @@ namespace ZR.Service.mes.qu
{
var predicate = Expressionable.Create<WmMaterialrequisition>()
.AndIF(year > 0, wm => wm.Year == year)
.AndIF(week > 0, wm => wm.Week == week)
.AndIF(week > 0, wm => wm.Week == week)
.AndIF(date > 0, wm => wm.Date == date)
.ToExpression();
int totalCount = 0;
//联表查询
List<Mr_QuRoughDTO> mr_QusList = Context.Queryable<WmMaterialrequisition>()
.LeftJoin<QcRough>((wm, qc) =>wm.Id==qc.FkMaterialrequisitionId)
.Where(predicate)
.Select((wm,qc) => new Mr_QuRoughDTO {
Id = qc.Id,
FkMaterialrequisitionId=qc.FkMaterialrequisitionId,
Workblankpartnumber=wm.Workblankpartnumber,
Requirenum=wm.Requirenum,
Status = wm.Status,
Year = wm.Year,
Week = wm.Week,
Date = wm.Date,
RequireNum= qc.RequireNum,
ActualNumber=qc.ActualNumber,
RandomRate = qc.RandomRate,
Oks = qc.Oks,
Ngs = qc.Ngs,
OksRatio = qc.OksRatio,
IsFeeding = qc.IsFeeding
})
.ToPageList(pageNum, pageSize, ref totalCount);
List<Mr_QuRoughDTO> mr_QusList = Context.Queryable<WmMaterialrequisition>()
.RightJoin<QcRough>((wm, qc) => wm.Id == qc.FkMaterialrequisitionId)
.Where(predicate)
.Select((wm, qc) => new Mr_QuRoughDTO
{
Id = qc.Id,
FkMaterialrequisitionId = qc.FkMaterialrequisitionId,
Workblankpartnumber = wm.Workblankpartnumber,
Status = wm.Status,
Year = wm.Year,
Week = wm.Week,
Date = wm.Date,
RequireNum = qc.RequireNum,
ActualNumber = qc.ActualNumber,
RandomRate = qc.RandomRate,
Oks = qc.Oks,
Ngs = qc.Ngs,
OksRatio = qc.OksRatio,
IsFeeding = qc.IsFeeding
})
.ToPageList(pageNum, pageSize, ref totalCount);
return (mr_QusList, totalCount);
}
public int UpdateStatisticsTable(string id, int actualNumber, int randomRate, int ngs, int oks, decimal oksRatio, int Isqualified)
{
UseTran(() =>
{
QcRough qr = Queryable().Where(it => it.Id == id).First();
if (qr != null)
{
//更新 领料单状态
if (Isqualified == 1)
{
Context.Updateable<WmMaterialrequisition>().SetColumns(it => it.Status == "1").Where(it => it.Id == qr.FkMaterialrequisitionId);
}
else if (Isqualified == 0)
{
//不合格,依然处于未领料
//新增退料单
WmMaterialrequisition materialrequisition = Context.Queryable<WmMaterialrequisition>().Where(it => it.Id == qr.FkMaterialrequisitionId).First();
WmMaterialreturn materialreturn = new WmMaterialreturn();
materialreturn.Id = DateTime.Now.ToString("yyyyMMdd");
materialreturn.FkMrqrId = qr.FkMaterialrequisitionId;
materialreturn.Year = materialrequisition.Year;
materialreturn.Week = materialrequisition.Week;
materialreturn.Date = materialrequisition.Date;
materialreturn.Workblankpartnumber = materialrequisition.Workblankpartnumber;
materialreturn.Requirenum = materialrequisition.Requirenum;
Context.Insertable(materialrequisition).ExecuteCommandAsync();
}
}
});
return Context.Updateable<QcRough>()
.SetColumns(it => it.ActualNumber == actualNumber)
.SetColumns(it => it.RandomRate == randomRate)
.SetColumns(it => it.Ngs == ngs)
.SetColumns(it => it.Oks == oks)
.SetColumns(it => it.OksRatio == oksRatio)
.Where(it => it.Id == id).ExecuteCommand();
}
}
}