订舱货物状态修改

usertest
cjy 4 months ago
parent 0f5cbcc865
commit 137d8e65bd

@ -10,7 +10,7 @@ using System.Threading.Tasks;
namespace DS.WMS.Core.Op.Dtos
{
/// <summary>
///
/// 订舱货物状态管理
/// </summary>
public class BookingGoodsStatusConfigReq
{
@ -27,7 +27,10 @@ namespace DS.WMS.Core.Op.Dtos
/// 状态名称
/// </summary>
public string StatusName { get; set; }
/// <summary>
/// 状态颜色
/// </summary>
public string StatusColor { get; set; }
/// <summary>
/// 排序
/// </summary>

@ -26,6 +26,10 @@ namespace DS.WMS.Core.Op.Dtos
/// 状态名称
/// </summary>
public string StatusName { get; set; }
/// <summary>
/// 状态颜色
/// </summary>
public string StatusColor { get; set; }
/// <summary>
/// 排序

@ -0,0 +1,36 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DS.WMS.Core.Op.Dtos
{
/// <summary>
/// 订舱货物状态管理导入实体
/// </summary>
public class BookingStatusConfigExcelReq
{
/// <summary>
/// 系统编码
/// </summary>
public string SystemCode { get; set; }
/// <summary>
/// 状态名称
/// </summary>
public string StatusName { get; set; }
/// <summary>
/// 状态颜色
/// </summary>
public string StatusColor { get; set; }
/// <summary>
/// 排序
/// </summary>
public int? OrderNo { get; set; } = 100;
/// <summary>
/// 备注
/// </summary>
public string Note { get; set; } = "";
}
}

@ -6,6 +6,7 @@ using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Http;
namespace DS.WMS.Core.Op.Interface
{
@ -32,18 +33,19 @@ namespace DS.WMS.Core.Op.Interface
/// <param name="id"></param>
/// <returns></returns>
DataResult<BookingGoodsStatusConfigRes> GetBookingGoodsStatusConfigInfo(string id);
/// <summary>
/// 批量删除
/// </summary>
/// <param name="req"></param>
/// <returns></returns>
public DataResult BatchDelBookingStatusConfig(IdModel req);
///// <summary>
///// 删除
///// </summary>
///// <param name="id"></param>
///// <returns></returns>
//public DataResult DelBookingStatusConfig(string id);
///// <summary>
///// 批量删除
///// </summary>
///// <param name="req"></param>
///// <returns></returns>
//public DataResult BatchDelBookingStatusConfig(IdModel req);
/// <summary>
/// 按Excel导入订舱货物状态
/// </summary>
/// <param name="file"></param>
/// <returns></returns>
public Task<DataResult<string>> ImportBookingStatusConfigByExcel(IFormFile file);
}
}

@ -10,13 +10,19 @@ using DS.Module.Core.Extensions;
using Mapster;
using Org.BouncyCastle.Ocsp;
using DS.WMS.Core.Code.Entity;
using DS.Module.Core.Data;
using DS.WMS.Core.Sys.Dtos;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using DS.WMS.Core.Check.Dtos;
using MiniExcelLibs;
namespace DS.WMS.Core.Op.Method
{
/// <summary>
///
/// </summary>
public class BookingGoodsStatusConfigService: IBookingGoodsStatusConfigService
public class BookingGoodsStatusConfigService : IBookingGoodsStatusConfigService
{
private readonly IServiceProvider _serviceProvider;
private readonly ISqlSugarClient db;
@ -80,5 +86,67 @@ namespace DS.WMS.Core.Op.Method
.Select<BookingGoodsStatusConfigRes>().ToQueryPage(request.PageCondition);
return data;
}
/// <summary>
///
/// </summary>
/// <param name="req"></param>
/// <returns></returns>
public DataResult BatchDelBookingStatusConfig(IdModel req)
{
var tenantDb = saasService.GetBizDbScopeById(user.TenantId);
var list = tenantDb.Queryable<BookingGoodsStatusConfig>().Where(x => req.Ids.Contains(x.Id)).ToList();
if (list.Count > 0)
{
tenantDb.Deleteable(list).ExecuteCommand();
}
return DataResult.Successed("删除成功!", MultiLanguageConst.DataDelSuccess);
}
/// <summary>
/// 按Excel导入订舱货物状态
/// </summary>
/// <param name="file"></param>
/// <returns></returns>
public async Task<DataResult<string>> ImportBookingStatusConfigByExcel(IFormFile file)
{
//未上传文件
if (file == null || file.Length == 0)
{
return await Task.FromResult(DataResult<string>.Failed("请上传Excel!"));
}
var formFile = file;
//DataResult<string> api_Result = new Api_Result<string>();
//获取文件名
var fileName = formFile.FileName;
// 获取文件后缀
var fileExtension = Path.GetExtension(fileName);
// 判断后缀是否是xlsx或者xls
if (fileExtension != ".xlsx" && fileExtension != ".xls")
{
return DataResult<string>.Failed("文件格式错误");
}
var length = formFile.Length;
if (length > 1024 * 1024 * 10)
{
return DataResult<string>.Failed("文件大小不能超过10M");
}
var tenantDb = saasService.GetBizDbScopeById(user.TenantId);
// MemoryStream 内存流 在内存当中创建一个流(开辟空间)
using (var stream = new MemoryStream())
{
//将文件写入内存流
formFile.CopyTo(stream);
//将流的位置归零
stream.Position = 0;
//将内存流转成List集合
var list = await stream.QueryAsync<BookingStatusConfigExcelReq>();
var configs = list.Adapt<BookingGoodsStatusConfig>();
await tenantDb.Insertable(configs).ExecuteCommandAsync();
return await Task.FromResult(DataResult<string>.Failed("导入成功!", MultiLanguageConst.DataImportSuccess));
}
}
}
}

Loading…
Cancel
Save