This commit is contained in:
赵正易 2024-11-15 18:51:05 +08:00
parent 8155905cb4
commit caee66b131
11 changed files with 184 additions and 79 deletions

View File

@ -1,4 +1,5 @@
using Microsoft.AspNetCore.Mvc;
using MiniExcelLibs;
using ZR.Admin.WebApi.Extensions;
using ZR.Admin.WebApi.Filters;
using ZR.Model.MES.wms;
@ -31,7 +32,7 @@ namespace ZR.Admin.WebApi.Controllers
/// <param name="parm"></param>
/// <returns></returns>
[HttpGet("list")]
[ActionPermissionFilter(Permission = "business:wmonetimeinventory:list")]
// [ActionPermissionFilter(Permission = "business:wmonetimeinventory:list")]
public IActionResult QueryWmOneTimeInventory([FromQuery] WmOneTimeInventoryQueryDto parm)
{
var response = _WmOneTimeInventoryService.GetList(parm);
@ -44,7 +45,7 @@ namespace ZR.Admin.WebApi.Controllers
/// <param name="Id"></param>
/// <returns></returns>
[HttpGet("{Id}")]
[ActionPermissionFilter(Permission = "business:wmonetimeinventory:query")]
// [ActionPermissionFilter(Permission = "business:wmonetimeinventory:query")]
public IActionResult GetWmOneTimeInventory(string Id)
{
var response = _WmOneTimeInventoryService.GetInfo(Id);
@ -58,7 +59,7 @@ namespace ZR.Admin.WebApi.Controllers
/// </summary>
/// <returns></returns>
[HttpPost]
[ActionPermissionFilter(Permission = "business:wmonetimeinventory:add")]
// [ActionPermissionFilter(Permission = "business:wmonetimeinventory:add")]
[Log(Title = "一次合格品仓库", BusinessType = BusinessType.INSERT)]
public IActionResult AddWmOneTimeInventory([FromBody] WmOneTimeInventoryDto parm)
{
@ -74,7 +75,7 @@ namespace ZR.Admin.WebApi.Controllers
/// </summary>
/// <returns></returns>
[HttpPut]
[ActionPermissionFilter(Permission = "business:wmonetimeinventory:edit")]
// [ActionPermissionFilter(Permission = "business:wmonetimeinventory:edit")]
[Log(Title = "一次合格品仓库", BusinessType = BusinessType.UPDATE)]
public IActionResult UpdateWmOneTimeInventory([FromBody] WmOneTimeInventoryDto parm)
{
@ -89,7 +90,7 @@ namespace ZR.Admin.WebApi.Controllers
/// </summary>
/// <returns></returns>
[HttpDelete("{ids}")]
[ActionPermissionFilter(Permission = "business:wmonetimeinventory:delete")]
// [ActionPermissionFilter(Permission = "business:wmonetimeinventory:delete")]
[Log(Title = "一次合格品仓库", BusinessType = BusinessType.DELETE)]
public IActionResult DeleteWmOneTimeInventory(string ids)
{
@ -104,21 +105,7 @@ namespace ZR.Admin.WebApi.Controllers
return ToResponse(response);
}
/// <summary>
/// 一次合格品仓库数据导出
/// </summary>
/// <param name="parm"></param>
/// <returns></returns>
[HttpGet("export")]
[Log(Title = "一次合格品仓库数据导出", BusinessType = BusinessType.EXPORT)]
public IActionResult Export([FromQuery] WmOneTimeInventoryQueryDto parm)
{
parm.PageNum = 1;
parm.PageSize = 10000;
var list = _WmOneTimeInventoryService.GetExportList(parm);
var result = ExportExcelMini(list, "wm_one_time_inventory", "一次合格品仓库数据");
return ExportExcel(result.Item2, result.Item1);
}
/// <summary>
/// 一次合格品手动入库
@ -191,5 +178,55 @@ namespace ZR.Admin.WebApi.Controllers
var response = _WmOneTimeInventoryService.GetPartNumber();
return SUCCESS(response);
}
/// <summary>
/// 抛光导入模板下载
/// </summary>
/// <returns></returns>
[HttpGet("importTemplate")]
[Log(Title = "一次合格模板", BusinessType = BusinessType.EXPORT, IsSaveRequestData = true, IsSaveResponseData = false)]
[AllowAnonymous]
public IActionResult ImportTemplateExcel()
{
string fileName = "一次合格仓库盘点模板";
(string, string) result = DownloadImportTemplate(fileName);
return ExportExcel(result.Item2, result.Item1);
}
/// <summary>
/// 导入
/// </summary>
/// <param name="formFile">使用IFromFile必须使用name属性否则获取不到文件</param>
/// <returns></returns>
[HttpPost("importData")]
[Log(Title = "一次合格盘点导入", BusinessType = BusinessType.IMPORT, IsSaveRequestData = false, IsSaveResponseData = true)]
[AllowAnonymous]
public IActionResult ImportData([FromForm(Name = "file")] IFormFile formFile)
{
List<WmOneTimeInventoryExportDto> importList = new();
using (var stream = formFile.OpenReadStream())
{
importList = stream.Query<WmOneTimeInventoryExportDto>(startCell: "A1").ToList();
}
return SUCCESS(_WmOneTimeInventoryService.ImportExcel(importList));
}
/// <summary>
/// 一次合格品仓库数据导出
/// </summary>
/// <param name="parm"></param>
/// <returns></returns>
[HttpGet("export")]
[Log(Title = "一次合格品仓库数据导出", BusinessType = BusinessType.EXPORT)]
public IActionResult Export([FromQuery] WmOneTimeInventoryQueryDto parm)
{
parm.PageNum = 1;
parm.PageSize = 10000;
var list = _WmOneTimeInventoryService.GetExportList(parm);
var result = ExportExcelMini(list, "wm_one_time_inventory", "一次合格品仓库数据");
return ExportExcel(result.Item2, result.Item1);
}
}
}

View File

@ -30,7 +30,7 @@ namespace ZR.Admin.WebApi.Controllers
/// <param name="parm"></param>
/// <returns></returns>
[HttpGet("list")]
[ActionPermissionFilter(Permission = "business:wmonetimerecord:list")]
//[ActionPermissionFilter(Permission = "business:wmonetimerecord:list")]
public IActionResult QueryWmOneTimeRecord([FromQuery] WmOneTimeRecordQueryDto parm)
{
var response = _WmOneTimeRecordService.GetList(parm);
@ -43,7 +43,7 @@ namespace ZR.Admin.WebApi.Controllers
/// <param name="Id"></param>
/// <returns></returns>
[HttpGet("{Id}")]
[ActionPermissionFilter(Permission = "business:wmonetimerecord:query")]
//[ActionPermissionFilter(Permission = "business:wmonetimerecord:query")]
public IActionResult GetWmOneTimeRecord(string Id)
{
var response = _WmOneTimeRecordService.GetInfo(Id);
@ -57,7 +57,7 @@ namespace ZR.Admin.WebApi.Controllers
/// </summary>
/// <returns></returns>
[HttpPost]
[ActionPermissionFilter(Permission = "business:wmonetimerecord:add")]
//[ActionPermissionFilter(Permission = "business:wmonetimerecord:add")]
[Log(Title = "一次合格品仓库记录表", BusinessType = BusinessType.INSERT)]
public IActionResult AddWmOneTimeRecord([FromBody] WmOneTimeRecordDto parm)
{
@ -73,7 +73,7 @@ namespace ZR.Admin.WebApi.Controllers
/// </summary>
/// <returns></returns>
[HttpPut]
[ActionPermissionFilter(Permission = "business:wmonetimerecord:edit")]
//[ActionPermissionFilter(Permission = "business:wmonetimerecord:edit")]
[Log(Title = "一次合格品仓库记录表", BusinessType = BusinessType.UPDATE)]
public IActionResult UpdateWmOneTimeRecord([FromBody] WmOneTimeRecordDto parm)
{
@ -88,7 +88,7 @@ namespace ZR.Admin.WebApi.Controllers
/// </summary>
/// <returns></returns>
[HttpDelete("{ids}")]
[ActionPermissionFilter(Permission = "business:wmonetimerecord:delete")]
//[ActionPermissionFilter(Permission = "business:wmonetimerecord:delete")]
[Log(Title = "一次合格品仓库记录表", BusinessType = BusinessType.DELETE)]
public IActionResult DeleteWmOneTimeRecord(string ids)
{

View File

@ -39,7 +39,7 @@ namespace ZR.Admin.WebApi.Controllers
/// <param name="parm"></param>
/// <returns></returns>
[HttpGet("list")]
[ActionPermissionFilter(Permission = "business:wmpolishinventory:list")]
// [ActionPermissionFilter(Permission = "business:wmpolishinventory:list")]
public IActionResult QueryWmPolishInventory([FromQuery] WmPolishInventoryQueryDto parm)
{
var response = _WmPolishInventoryService.GetList(parm);
@ -52,7 +52,7 @@ namespace ZR.Admin.WebApi.Controllers
/// <param name="Id"></param>
/// <returns></returns>
[HttpGet("{Id}")]
[ActionPermissionFilter(Permission = "business:wmpolishinventory:query")]
// [ActionPermissionFilter(Permission = "business:wmpolishinventory:query")]
public IActionResult GetWmPolishInventory(string Id)
{
var response = _WmPolishInventoryService.GetInfo(Id);
@ -66,7 +66,7 @@ namespace ZR.Admin.WebApi.Controllers
/// </summary>
/// <returns></returns>
[HttpPost]
[ActionPermissionFilter(Permission = "business:wmpolishinventory:add")]
// [ActionPermissionFilter(Permission = "business:wmpolishinventory:add")]
[Log(Title = "抛光 库存表", BusinessType = BusinessType.INSERT)]
public IActionResult AddWmPolishInventory([FromBody] WmPolishInventoryDto parm)
{
@ -82,7 +82,7 @@ namespace ZR.Admin.WebApi.Controllers
/// </summary>
/// <returns></returns>
[HttpPut]
[ActionPermissionFilter(Permission = "business:wmpolishinventory:edit")]
// [ActionPermissionFilter(Permission = "business:wmpolishinventory:edit")]
[Log(Title = "抛光 库存表", BusinessType = BusinessType.UPDATE)]
public IActionResult UpdateWmPolishInventory([FromBody] WmPolishInventoryDto parm)
{
@ -97,7 +97,7 @@ namespace ZR.Admin.WebApi.Controllers
/// </summary>
/// <returns></returns>
[HttpDelete("{ids}")]
[ActionPermissionFilter(Permission = "business:wmpolishinventory:delete")]
// [ActionPermissionFilter(Permission = "business:wmpolishinventory:delete")]
[Log(Title = "抛光 库存表", BusinessType = BusinessType.DELETE)]
public IActionResult DeleteWmPolishInventory(string ids)
{
@ -112,22 +112,7 @@ namespace ZR.Admin.WebApi.Controllers
return ToResponse(response);
}
/// <summary>
/// 抛光仓库数据导出
/// </summary>
/// <param name="parm"></param>
/// <returns></returns>
[HttpGet("export")]
[Log(Title = "抛光仓库数据导出", BusinessType = BusinessType.EXPORT)]
public IActionResult Export([FromQuery] WmPolishInventoryQueryDto parm)
{
parm.PageNum = 1;
parm.PageSize = 10000;
var list = _WmPolishInventoryService.GetExportList(parm);
var result = ExportExcelMini(list, "wm_polish_inventory", "抛光仓库数据");
return ExportExcel(result.Item2, result.Item1);
}
/// <summary>
/// 物料下拉菜单查看
@ -152,7 +137,7 @@ namespace ZR.Admin.WebApi.Controllers
/// </summary>
/// <returns></returns>
[HttpPost("doWmPolishWarehousing")]
[ActionPermissionFilter(Permission = "business:wmpolishinventory:edit")]
// [ActionPermissionFilter(Permission = "business:wmpolishinventory:edit")]
[Log(Title = "抛光手动入库", BusinessType = BusinessType.UPDATE)]
public IActionResult DoWmPolishWarehousing([FromBody] WmPolishInventoryDto parm)
{
@ -173,7 +158,7 @@ namespace ZR.Admin.WebApi.Controllers
/// </summary>
/// <returns></returns>
[HttpPost("doWmPolishRetrieval")]
[ActionPermissionFilter(Permission = "business:wmpolishinventory:edit")]
// [ActionPermissionFilter(Permission = "business:wmpolishinventory:edit")]
[Log(Title = "抛光手动出库", BusinessType = BusinessType.UPDATE)]
public IActionResult DoWmPolishRetrieval([FromBody] WmPolishInventoryDto parm)
{
@ -194,7 +179,7 @@ namespace ZR.Admin.WebApi.Controllers
/// </summary>
/// <returns></returns>
[HttpPost("doWmPolishStocktaking")]
[ActionPermissionFilter(Permission = "business:wmpolishinventory:edit")]
// [ActionPermissionFilter(Permission = "business:wmpolishinventory:edit")]
[Log(Title = "抛光仓库盘点", BusinessType = BusinessType.INSERT)]
public IActionResult DoWmPolishStocktaking([FromBody] WmPolishInventoryDto parm)
{
@ -255,5 +240,22 @@ namespace ZR.Admin.WebApi.Controllers
return SUCCESS(_WmPolishInventoryService.ImportExcel(importList));
}
/// <summary>
/// 抛光仓库数据导出
/// </summary>
/// <param name="parm"></param>
/// <returns></returns>
[HttpGet("export")]
[Log(Title = "抛光仓库数据导出", BusinessType = BusinessType.EXPORT)]
public IActionResult Export([FromQuery] WmPolishInventoryQueryDto parm)
{
parm.PageNum = 1;
parm.PageSize = 10000;
var list = _WmPolishInventoryService.GetExportList(parm);
var result = ExportExcelMini(list, "wm_polish_inventory", "抛光仓库数据");
return ExportExcel(result.Item2, result.Item1);
}
}
}

View File

@ -34,7 +34,7 @@ namespace ZR.Admin.WebApi.Controllers
/// <param name="parm"></param>
/// <returns></returns>
[HttpGet("list")]
[ActionPermissionFilter(Permission = "business:wmpolishqualitystatistics:list")]
// [ActionPermissionFilter(Permission = "business:wmpolishqualitystatistics:list")]
public IActionResult QueryWmPolishQualityStatistics(
[FromQuery] WmPolishQualityStatisticsQueryDto parm
)
@ -66,7 +66,7 @@ namespace ZR.Admin.WebApi.Controllers
/// <param name="Id"></param>
/// <returns></returns>
[HttpGet("{Id}")]
[ActionPermissionFilter(Permission = "business:wmpolishqualitystatistics:query")]
// [ActionPermissionFilter(Permission = "business:wmpolishqualitystatistics:query")]
public IActionResult GetWmPolishQualityStatistics(string Id)
{
var response = _WmPolishQualityStatisticsService.GetInfo(Id);
@ -80,7 +80,7 @@ namespace ZR.Admin.WebApi.Controllers
/// </summary>
/// <returns></returns>
[HttpPost]
[ActionPermissionFilter(Permission = "business:wmpolishqualitystatistics:add")]
// [ActionPermissionFilter(Permission = "business:wmpolishqualitystatistics:add")]
[Log(Title = "抛光管理-质量统计", BusinessType = BusinessType.INSERT)]
public IActionResult AddWmPolishQualityStatistics(
[FromBody] WmPolishQualityStatisticsDto parm
@ -107,7 +107,7 @@ namespace ZR.Admin.WebApi.Controllers
/// </summary>
/// <returns></returns>
[HttpPut]
[ActionPermissionFilter(Permission = "business:wmpolishqualitystatistics:edit")]
// [ActionPermissionFilter(Permission = "business:wmpolishqualitystatistics:edit")]
[Log(Title = "抛光管理-质量统计", BusinessType = BusinessType.UPDATE)]
public IActionResult UpdateWmPolishQualityStatistics(
[FromBody] WmPolishQualityStatisticsDto parm
@ -132,7 +132,7 @@ namespace ZR.Admin.WebApi.Controllers
/// </summary>
/// <returns></returns>
[HttpDelete("{ids}")]
[ActionPermissionFilter(Permission = "business:wmpolishqualitystatistics:delete")]
// [ActionPermissionFilter(Permission = "business:wmpolishqualitystatistics:delete")]
[Log(Title = "抛光管理-质量统计", BusinessType = BusinessType.DELETE)]
public IActionResult DeleteWmPolishQualityStatistics(string ids)
{

View File

@ -31,7 +31,7 @@ namespace ZR.Admin.WebApi.Controllers
/// <param name="parm"></param>
/// <returns></returns>
[HttpGet("list")]
[ActionPermissionFilter(Permission = "business:wmpolishrecord:list")]
// [ActionPermissionFilter(Permission = "business:wmpolishrecord:list")]
public IActionResult QueryWmPolishRecord([FromQuery] WmPolishRecordQueryDto parm)
{
var response = _WmPolishRecordService.GetList(parm);
@ -44,7 +44,7 @@ namespace ZR.Admin.WebApi.Controllers
/// <param name="Id"></param>
/// <returns></returns>
[HttpGet("{Id}")]
[ActionPermissionFilter(Permission = "business:wmpolishrecord:query")]
// [ActionPermissionFilter(Permission = "business:wmpolishrecord:query")]
public IActionResult GetWmPolishRecord(string Id)
{
var response = _WmPolishRecordService.GetInfo(Id);
@ -58,7 +58,7 @@ namespace ZR.Admin.WebApi.Controllers
/// </summary>
/// <returns></returns>
[HttpPost]
[ActionPermissionFilter(Permission = "business:wmpolishrecord:add")]
// [ActionPermissionFilter(Permission = "business:wmpolishrecord:add")]
[Log(Title = "工艺路线-抛光 库存变动表", BusinessType = BusinessType.INSERT)]
public IActionResult AddWmPolishRecord([FromBody] WmPolishRecordDto parm)
{
@ -74,7 +74,7 @@ namespace ZR.Admin.WebApi.Controllers
/// </summary>
/// <returns></returns>
[HttpPut]
[ActionPermissionFilter(Permission = "business:wmpolishrecord:edit")]
// [ActionPermissionFilter(Permission = "business:wmpolishrecord:edit")]
[Log(Title = "工艺路线-抛光 库存变动表", BusinessType = BusinessType.UPDATE)]
public IActionResult UpdateWmPolishRecord([FromBody] WmPolishRecordDto parm)
{
@ -89,7 +89,7 @@ namespace ZR.Admin.WebApi.Controllers
/// </summary>
/// <returns></returns>
[HttpDelete("{ids}")]
[ActionPermissionFilter(Permission = "business:wmpolishrecord:delete")]
// [ActionPermissionFilter(Permission = "business:wmpolishrecord:delete")]
[Log(Title = "工艺路线-抛光 库存变动表", BusinessType = BusinessType.DELETE)]
public IActionResult DeleteWmPolishRecord(string ids)
{

View File

@ -58,19 +58,19 @@ namespace ZR.Model.MES.wms.Dto
public DateTime? UpdatedTime { get; set; }
}
// 一次合格导出
// 一次合格(产成品)导出
[SugarTable("wm_one_time_record", "一次合格表")]
public class WmOneTimeInventoryExportDto
{
[SugarColumn(ColumnName = "partnumber")]
public string { get; set; }
public string { get; set; }
public string { get; set; }
public string { get; set; }
[SugarColumn(ColumnName = "quantity")]
public int { get; set; } = 0;
public int { get; set; } = 0;
[SugarColumn(ColumnName = "CREATED_TIME")]
public DateTime? { get; set; }
}
}

View File

@ -1419,7 +1419,7 @@ namespace ZR.Service.mes.qc
Context
.Queryable<QcQualityStatisticsFirst>()
.Where(it => it.FinishedPartNumber == partNumber)
.Where(it => it.StartTime >= startTime.ToLocalTime())
.Where(it => it.StartTime >= startTime)
.Sum(it => it.PaoguangTotal) ?? 0;
productPolishTotal = productPolishTotal / 3;
// 后道反抛
@ -1427,21 +1427,21 @@ namespace ZR.Service.mes.qc
Context
.Queryable<WmPolishQualityStatistics>()
.Where(it => it.Partnumber == partNumber)
.Where(it => it.StartTime >= startTime.ToLocalTime())
.Where(it => it.StartTime >= startTime)
.Sum(it => it.PaoguangTotal) ?? 0;
// GP12 反抛
int gP12PolishTotal =
Context
.Queryable<WmGp12QualityStatistics>()
.Where(it => it.Partnumber == partNumber)
.Where(it => it.StartTime >= startTime.ToLocalTime())
.Where(it => it.StartTime >= startTime)
.Sum(it => it.PaoguangTotal) ?? 0;
// 抛光出库
int polishRequireTotal =
Context
.Queryable<WmPolishWorkQualityStatistics>()
.Where(it => it.Partnumber == partNumber)
.Where(it => it.StartTime >= startTime.ToLocalTime())
.Where(it => it.StartTime >= startTime)
.Sum(it => it.RequireNumber) ?? 0;
int realStock =
@ -1515,7 +1515,7 @@ namespace ZR.Service.mes.qc
.Queryable<QcQualityStatisticsFirst>()
.Where(it => !ParkingSensorPartNumberList.Contains(it.FinishedPartNumber))
.Where(it => it.FinishedPartNumber == partNumber)
.Where(it => it.StartTime >= startTime.ToLocalTime())
.Where(it => it.StartTime >= startTime)
.Sum(it => it.QualifiedNumber)
?? 0;
productQualifiedTotal = productQualifiedTotal / 3;
@ -1524,21 +1524,21 @@ namespace ZR.Service.mes.qc
Context
.Queryable<WmPolishWorkQualityStatistics>()
.Where(it => it.Partnumber == partNumber)
.Where(it => it.StartTime.Value.ToLocalTime() >= startTime.ToLocalTime())
.Where(it => it.StartTime >= startTime)
.Sum(it => it.QualifiedNumber) ?? 0;
// gp12投入
int gP12RequireTotal =
Context
.Queryable<WmGp12QualityStatistics>()
.Where(it => it.Partnumber == partNumber)
.Where(it => it.StartTime.Value.ToLocalTime() >= startTime.ToLocalTime())
.Where(it => it.StartTime >= startTime)
.Sum(it => it.RequireNumber) ?? 0;
// 后道直接出库
int afterPolishOutTotal =
Context
.Queryable<WmPolishQualityStatistics>()
.Where(it => it.Partnumber == partNumber)
.Where(it => it.StartTime >= startTime.ToLocalTime())
.Where(it => it.StartTime >= startTime)
.Where(it => it.Type == 1)
.Sum(it => it.RequireNumber) ?? 0;

View File

@ -51,5 +51,12 @@ namespace ZR.Service.mes.wms.IService
/// <returns></returns>
public int GetPartNumber();
/// <summary>
/// 导入Excel
/// </summary>
/// <param name="excel"></param>
/// <returns></returns>
public (string, object, object) ImportExcel(List<WmOneTimeInventoryExportDto> excel);
}
}

View File

@ -60,8 +60,8 @@ namespace ZR.Service.mes.wms.IService
/// <summary>
/// 导入Excel
/// </summary>
/// <param name="users"></param>
/// <param name="excel"></param>
/// <returns></returns>
public (string, object, object) ImportExcel(List<WmPolishInventoryExportDto> users);
public (string, object, object) ImportExcel(List<WmPolishInventoryExportDto> excel);
}
}

View File

@ -1,6 +1,7 @@
using System;
using System.Linq;
using Infrastructure.Attribute;
using Infrastructure.Extensions;
using SqlSugar;
using ZR.Model;
using ZR.Model.MES.wms;
@ -53,7 +54,7 @@ namespace ZR.Service.mes.wms
var response = Queryable()
.Where(predicate.ToExpression())
.OrderBy(it => it.Partnumber)
.OrderByDescending(it => it.Quantity)
.ToPage<WmOneTimeInventory, WmOneTimeInventoryDto>(parm);
if (response.Result.Count > 0)
{
@ -450,6 +451,9 @@ namespace ZR.Service.mes.wms
Dictionary<string, object> stockNumbers = GetBatchOneTimeStockPartNum(partnumbers);
Dictionary<string, int> realNumbers = GetBatchOneTimeRealPartNum(partnumbers);
// 更新盘点时间
DateTime dateTime = DateTime.Now.ToLocalTime();
// 构建导出数据
List<WmOneTimeInventoryExportDto> exportDto = materials
.Select(it =>
@ -466,6 +470,7 @@ namespace ZR.Service.mes.wms
= it.Description,
= stockNumber,
= found2 ? realNumber : 0,
= dateTime,
};
})
.ToList();
@ -502,12 +507,65 @@ namespace ZR.Service.mes.wms
CommonFQCService commonFQCService = new();
// 获取报表数据
// 一次合格计算后库存 = 盘点库存 + 产线合格 + 抛光合格 - gp12投入 - 后道直接出库
return commonFQCService.GetBatchOneTimePartRealStock(partnumbers, checkTime.Value.ToLocalTime());
return commonFQCService.GetBatchOneTimePartRealStock(partnumbers, checkTime.Value);
}
catch (Exception e)
{
throw;
}
}
/// <summary>
/// 导入数据
/// </summary>
/// <param name="importData"></param>
/// <returns></returns>
public (string, object, object) ImportExcel(List<WmOneTimeInventoryExportDto> importList)
{
List<WmOneTimeInventory> wmOneTimeInventorylist = importList.Select(it => new WmOneTimeInventory
{
Id = SnowFlakeSingle.Instance.NextId().ToString(),
Type = 1,
Status = 1,
MaxNum = 0,
MinNum = 0,
WarnNum = 0,
CreatedBy = "页面导入",
Remark = "EXCEL 盘点导入",
CreatedTime = it. ?? DateTime.Now.ToLocalTime(),
Partnumber = it.,
Quantity = it.
}).ToList();
var x = Context.Storageable(wmOneTimeInventorylist)
.SplitError(x => x.Item.Partnumber.IsEmpty(), "零件号不能为空")
.SplitError(x => x.Item.Quantity.IsEmpty(), "盘点数不能为空")
.SplitUpdate(it => it.Any()) // 数据库存在更新
.SplitDelete(it => it.Item.Quantity == 0) //盘点数为0的不导入
.SplitInsert(it => true) // 其余插入
.WhereColumns(it => it.Partnumber)//如果不是主键可以这样实现多字段it=>new{it.x1,it.x2}
.ToStorage();
// 清空全部
var result = x.AsInsertable.ExecuteCommand();//不存在则插入;
var result2 = x.AsUpdateable.IgnoreColumns(it => new { it.Id }).ExecuteCommand();//存在则修改;
var result3 = x.AsDeleteable.ExecuteCommand(); //盘点数为0的删除;
string msg = string.Format(" 插入{0} 更新{1} 错误数据{2} 不计算数据{3} 删除数据{4} 总共{5}",
x.InsertList.Count,
x.UpdateList.Count,
x.ErrorList.Count,
x.IgnoreList.Count,
x.DeleteList.Count,
x.TotalList.Count);
//输出统计
Console.WriteLine(msg);
//输出错误信息
foreach (var item in x.ErrorList)
{
Console.WriteLine("零件异常:" + item.Item.Partnumber + " : " + item.StorageMessage);
}
return (msg, x.ErrorList, x.IgnoreList);
}
}
}

View File

@ -47,6 +47,7 @@ namespace ZR.Service.mes.wms
.Queryable<WmMaterial>()
.Where(it => it.Description.Contains(parm.Description))
.Select(it => it.Partnumber)
.ToList();
}
var predicate = Expressionable
@ -64,7 +65,7 @@ namespace ZR.Service.mes.wms
var response = Queryable()
.Where(predicate.ToExpression())
.OrderBy(it => it.Partnumber)
.OrderByDescending(it => it.Quantity)
.ToPage<WmPolishInventory, WmPolishInventoryDto>(parm);
if (response.Result.Count > 0)
{
@ -583,7 +584,7 @@ namespace ZR.Service.mes.wms
CommonFQCService commonFQCService = new();
// 获取报表数据
// 抛光计算后库存 = 盘点库存 + 产线抛光 + 后道反抛 + GP12反抛 - 抛光投入
return commonFQCService.GetBatchPolishPartRealStock(partnumbers, checkTime.Value.ToLocalTime());
return commonFQCService.GetBatchPolishPartRealStock(partnumbers, checkTime.Value);
}
catch (Exception e)
{