wet 2 years ago
commit cb92470059

@ -39,5 +39,9 @@ namespace Myshipping.Application.Entity
/// 分单
/// </summary>
public bool IsSub { get; set; }
/// <summary>
/// 显示名称
/// </summary>
public string DisplayName { get; set; }
}
}

@ -80,7 +80,7 @@ namespace Myshipping.Application
/// <summary>
/// 增加订舱打印模板
/// 增加订舱打印模板(准备作废)
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
@ -148,7 +148,7 @@ namespace Myshipping.Application
/// <summary>
/// 更新订舱打印模板
/// 更新订舱打印模板(准备作废)
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
@ -209,6 +209,81 @@ namespace Myshipping.Application
await _rep.UpdateAsync(entity);
}
/// <summary>
/// 保存订舱打印模板(新增或修改)
/// </summary>
/// <param name="file"></param>
/// <param name="input"></param>
/// <returns></returns>
[HttpPost("/BookingPrintTemplate/save")]
public async Task<long> Save(IFormFile file, [FromForm] SaveBookingPrintTemplateInput input)
{
var opt = App.GetOptions<PrintTemplateOptions>();
if (file != null && file.Length > 0)
{
var fileSuffix = Path.GetExtension(file.FileName).ToLower(); // 文件后缀
if (!opt.fileType.Contains(fileSuffix))
{
throw Oops.Bah(BookingErrorCode.BOOK114);
}
}
BookingPrintTemplate entity = null;
if (input.Id > 0)
{
entity = _rep.AsQueryable().Filter(null, true).First(x => x.Id == input.Id);
input.Adapt(entity);
await _rep.UpdateAsync(entity);
}
else
{
//新增时必须上传文件
if (file == null || file.Length == 0)
{
throw Oops.Bah(BookingErrorCode.BOOK113);
}
entity = input.Adapt<BookingPrintTemplate>();
await _rep.InsertAsync(entity);
}
if (file != null && file.Length > 0)
{
var originalFilename = file.FileName; // 文件原始名称
var dirAbs = string.Empty;
if (string.IsNullOrEmpty(opt.basePath))
{
dirAbs = Path.Combine(App.WebHostEnvironment.WebRootPath, opt.relativePath);
}
else
{
dirAbs = Path.Combine(opt.basePath, opt.relativePath);
}
if (!Directory.Exists(dirAbs))
Directory.CreateDirectory(dirAbs);
// 先存库获取Id
var id = YitIdHelper.NextId();
var fileSuffix = Path.GetExtension(file.FileName).ToLower();
var fileSaveName = $"{id}{fileSuffix}".ToLower();
var fileRelaPath = Path.Combine(opt.relativePath, fileSaveName).ToLower();
var fileAbsPath = Path.Combine(dirAbs, fileSaveName).ToLower();
using (var stream = File.Create(fileAbsPath))
{
await file.CopyToAsync(stream);
}
entity.FileName = originalFilename;
entity.FilePath = fileRelaPath;
await _rep.UpdateAsync(entity);
}
return entity.Id;
}
/// <summary>
/// 删除订舱打印模板
/// </summary>

@ -10,12 +10,12 @@ namespace Myshipping.Application
public class BookingPrintTemplateInput
{
/// <summary>
/// 模板类型
/// 模板类型(准备作废)
/// </summary>
public string TypeCode { get; set; }
/// <summary>
/// 类型名称
/// 类型名称(准备作废)
/// </summary>
public virtual string TypeName { get; set; }
@ -30,14 +30,29 @@ namespace Myshipping.Application
public string TenantName { get; set; }
/// <summary>
/// 主单
/// 主单(准备作废)
/// </summary>
public bool IsMain { get; set; }
/// <summary>
/// 分单
/// 分单(准备作废)
/// </summary>
public bool IsSub { get; set; }
/// <summary>
/// 显示名称
/// </summary>
public string DisplayName { get; set; }
/// <summary>
/// 分类代码
/// </summary>
public string CateCode { get; set; }
/// <summary>
/// 分类名称
/// </summary>
public virtual string CateName { get; set; }
}
/// <summary>
@ -60,6 +75,15 @@ namespace Myshipping.Application
}
public class SaveBookingPrintTemplateInput : BookingPrintTemplateInput
{
/// <summary>
/// 主键Id
/// </summary>
public long Id { get; set; }
}
/// <summary>
/// 订舱打印模板获取(删除)输入参数
/// </summary>

Loading…
Cancel
Save