Administrator 3 years ago
parent
commit
92d8bfcb7a
  1. 45
      src/Modules/SettleAccount/src/SettleAccount.Application/Entities/WMS/WMSHQHKanbanAppService.cs
  2. 35
      src/Modules/SettleAccount/src/SettleAccount.Application/Entities/WMS/WMSHQHSharePartAppService.cs
  3. 35
      src/Modules/SettleAccount/src/SettleAccount.Application/Entities/WMS/WMSKanbanAppService.cs
  4. 45
      src/Modules/SettleAccount/src/SettleAccount.Application/Entities/WMS/WMSSharePart90AppService.cs
  5. 55
      src/Modules/SettleAccount/src/SettleAccount.Application/Entities/WMS/WMSSharePartAppService.cs
  6. 45
      src/Modules/SettleAccount/src/SettleAccount.Application/Entities/WMS/WmsHQCarAppService.cs
  7. 15
      src/Modules/SettleAccount/src/SettleAccount.Application/Entities/WMS/WmsUnInterface.cs
  8. 5
      src/Modules/SettleAccount/src/SettleAccount.Domain/Settings/Helper.cs
  9. 110
      src/Modules/SettleAccount/src/SettleAccount.EntityFrameworkCore/Migrations/SettleAccountDbContextModelSnapshot.cs
  10. 10
      vue/src/router/modules/fis.js
  11. 481
      vue/src/views/pg-fis/basedate/assemblyCfg/index.vue

45
src/Modules/SettleAccount/src/SettleAccount.Application/Entities/WMS/WMSHQHKanbanAppService.cs

@ -443,9 +443,32 @@ namespace Win.Sfs.SettleAccount.Entities.SettleAccounts
public async Task<string> ExcelImport([FromForm] IFormFileCollection files, string version)
{
var _billNum = "HQHKB" + DateTime.Now.ToString("yyyyMMddhhmmss");
var checkList = new List<ErrorExportDto>();
ExportImporter _exportImporter = new ExportImporter();
var result = await _exportImporter.ExtendExcelOfSheetOneImport<WmsHQHKanbanOutPutDetial>(files, _excelImportService);
var filteResult = result.Where(p => p.Kanban != "");//过滤掉看板号为空的数据
//检验1:导入模板中的第一页签数据不能为空
if (result == null || result.Count == 0)
{
checkList.Add(new ErrorExportDto(version, "红旗批量出库单导入", string.Empty, string.Empty, string.Empty, string.Empty, "导入模板中第一页签没有数据,请检查!", string.Empty));
}
if (checkList.Count > 0)
{
return await ExportErrorReportAsync(checkList);
}
var filteResult = result.Where(p => p.Kanban != "" && p.MaterialCode !="");//过滤掉看板号为空的数据
//检验2:导入模板中的结算数据是否为0
foreach (var itm in filteResult)
{
if (itm.Qty == 0)
{
checkList.Add(new ErrorExportDto(version, "红旗批量出库单导入", string.Empty, string.Empty, string.Empty, string.Empty, string.Format("导入模板中看板号{0}的结算数量为0,影响出库请检查!", itm.Kanban), string.Empty));
}
}
List<WmsHQHKanbanOutPutDetial> _lst = new List<WmsHQHKanbanOutPutDetial>();
var _lsCopy = new List<WmsHQHKanbanOutPutDetial>();
foreach (var itm in filteResult)
@ -475,6 +498,24 @@ namespace Win.Sfs.SettleAccount.Entities.SettleAccounts
_lsCopy.Add(_detail);
}
_lst.AddRange(_lsCopy.ToArray());
//检验3:导入模板中看板号+物料号,不能重复
var _isRepeatOfReportList = from arc in _lst
group arc by new { arc.Kanban, arc.MaterialCode, arc.Version }
into g
where g.Count() > 1
select g;
foreach (var itm in _isRepeatOfReportList)
{
checkList.Add(new ErrorExportDto(version, "红旗批量出库单", string.Empty, string.Empty, string.Empty, string.Empty, string.Format("导入模板中看板号{0}组合物料号{1}有重复,请检查!", itm.Key.Kanban, itm.Key.MaterialCode), string.Empty));
}
if (checkList.Count > 0)
{
return await ExportErrorReportAsync(checkList);
}
var outPutDetail = await _wmsRepository.Where(p => p.Version == version).ToListAsync();
@ -486,7 +527,7 @@ namespace Win.Sfs.SettleAccount.Entities.SettleAccounts
select itm1;
var errList = error.GroupBy(p => new { p.BillNum }).Select(p => new { BillNum = p.Key.BillNum, Number = p.Count() });
var checkList = new List<ErrorExportDto>();
foreach (var itm in errList)
{
checkList.Add(new ErrorExportDto() { Message = string.Format("出库单号:{0}重复记录数:{1}条", itm.BillNum, itm.Number) });

35
src/Modules/SettleAccount/src/SettleAccount.Application/Entities/WMS/WMSHQHSharePartAppService.cs

@ -478,8 +478,28 @@ into temp1
public async Task<string> ExcelImport([FromForm] IFormFileCollection files, string version)
{
var _billNum = "BHQH" + DateTime.Now.ToString("yyyyMMddhhmmss");
var checkList = new List<ErrorExportDto>();
ExportImporter _exportImporter = new ExportImporter();
var result = await _exportImporter.ExtendExcelOfSheetOneImport<WmsHQHSharePartOutPutDetial>(files, _excelImportService);
//检验1:导入模板中的第一页签数据不能为空
if (result == null || result.Count == 0)
{
checkList.Add(new ErrorExportDto(version, "红旗备件出库单导入", string.Empty, string.Empty, string.Empty, string.Empty, "导入模板中第一页签没有数据,请检查!", string.Empty));
}
if (checkList.Count > 0)
{
return await ExportErrorReportAsync(checkList);
}
//检验2:导入模板中的结算数据是否为0
foreach (var itm in result)
{
if (itm.Qty == 0)
{
checkList.Add(new ErrorExportDto(version, "红旗备件出库单导入", string.Empty, string.Empty, string.Empty, string.Empty, string.Format("导入模板中SAP编码{0}结算数量为0,影响出库请检查!", itm.MaterialCode), string.Empty));
}
}
List<WmsHQHSharePartOutPutDetial> _lst = new List<WmsHQHSharePartOutPutDetial>();
var _lsCopy = new List<WmsHQHSharePartOutPutDetial>();
@ -510,6 +530,19 @@ into temp1
}
_lst.AddRange(_lsCopy.ToArray());
//检验3:导入模板中的SAP编号不能重复,按其汇总出库
var _isRepeatOfReportList = _lst.GroupBy(x => new { x.MaterialCode, x.Version }).Select(p => new { Count = p.Count(), MaterialCode = p.Key.MaterialCode });
foreach (var itm in _isRepeatOfReportList)
{
if (itm.Count > 1)
{
checkList.Add(new ErrorExportDto(version, "红旗备件出库单导入", string.Empty, string.Empty, string.Empty, string.Empty, string.Format("导入模板中的SAP编码{0}有重复!", itm.MaterialCode), string.Empty));
}
}
if (checkList.Count > 0)
{
return await ExportErrorReportAsync(checkList);
}
var outPutDetail = await _wmsRepository.Where(p => p.Version == version).ToListAsync();
@ -521,7 +554,7 @@ into temp1
select itm1;
var errList = error.GroupBy(p => new { p.BillNum }).Select(p => new { BillNum = p.Key.BillNum, Number = p.Count() });
var checkList = new List<ErrorExportDto>();
foreach (var itm in errList)
{
checkList.Add(new ErrorExportDto() { Message = string.Format("出库单号:{0}重复记录数:{1}条", itm.BillNum, itm.Number) });

35
src/Modules/SettleAccount/src/SettleAccount.Application/Entities/WMS/WMSKanbanAppService.cs

@ -676,9 +676,27 @@ namespace Win.Sfs.SettleAccount.Entities.SettleAccounts
//[Authorize(SettleAccountPermissions.SettleAccounts.Default)]
public async Task<string> ExcelImport([FromForm] IFormFileCollection files, string version)
{
var checkList = new List<ErrorExportDto>();
var _billNum = "K" + DateTime.Now.ToString("yyyyMMddhhmmss");
ExportImporter _exportImporter = new ExportImporter();
var result = await _exportImporter.ExtendExcelOfSheetOneImport<WmsKanbanOutPutDetial>(files, _excelImportService);
//检验1:导入模板中的第一页签数据不能为空
if (result == null || result.Count == 0)
{
checkList.Add(new ErrorExportDto(version, "大众看板出库单导入", string.Empty, string.Empty, string.Empty, string.Empty, "导入模板中第一页签没有数据,请检查!", string.Empty));
}
if (checkList.Count > 0)
{
return await ExportErrorReportAsync(checkList);
}
//检验2:导入模板中的结算数据是否为0
foreach (var itm in result)
{
if (itm.Qty == 0)
{
checkList.Add(new ErrorExportDto(version, "大众看板出库单导入", string.Empty, string.Empty, string.Empty, string.Empty, string.Format("导入模板中看板号{0}的结算数量为0,影响出库请检查!", itm.Kanban), string.Empty));
}
}
var filteResult = result.Where(p => p.Kanban != "");
List<WmsKanbanOutPutDetial> _lst = new List<WmsKanbanOutPutDetial>();
var _lsCopy = new List<WmsKanbanOutPutDetial>();
@ -710,6 +728,21 @@ namespace Win.Sfs.SettleAccount.Entities.SettleAccounts
}
_lst.AddRange(_lsCopy.ToArray());
//检验3:导入模板中看板号+物料号,不能重复
var _isRepeatOfReportList = from arc in _lst
group arc by new { arc.Kanban, arc.MaterialCode,arc.Version }
into g
where g.Count() > 1
select g;
foreach (var itm in _isRepeatOfReportList)
{
checkList.Add(new ErrorExportDto(version, "大众看板出库单导入", string.Empty, string.Empty, string.Empty, string.Empty, string.Format("导入模板中看板号{0}组合物料号{1}有重复,请检查!", itm.Key.Kanban, itm.Key.MaterialCode), string.Empty));
}
if (checkList.Count > 0)
{
return await ExportErrorReportAsync(checkList);
}
var outPutDetail = await _wmsRepository.Where(p => p.Version == version).ToListAsync();
@ -722,7 +755,7 @@ namespace Win.Sfs.SettleAccount.Entities.SettleAccounts
select itm1;
var errList = error.GroupBy(p => new { p.BillNum }).Select(p => new { BillNum = p.Key.BillNum, Number = p.Sum(itm => itm.Qty) });
var checkList = new List<ErrorExportDto>();
foreach (var itm in errList)
{
checkList.Add(new ErrorExportDto() { Message = string.Format("出库单号:{0}重复记录数:{1}条", itm.BillNum, itm.Number) });

45
src/Modules/SettleAccount/src/SettleAccount.Application/Entities/WMS/WMSSharePart90AppService.cs

@ -11,6 +11,7 @@ using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp;
using Volo.Abp.Application.Dtos;
using Volo.Abp.Caching;
using Volo.Abp.Domain.Repositories;
@ -477,9 +478,29 @@ namespace Win.Sfs.SettleAccount.Entities.WMS
public async Task<string> ExcelImport([FromForm] IFormFileCollection files, string version)
{
var _billNum = "B" + DateTime.Now.ToString("yyyyMMddhhmmss");
var checkList = new List<ErrorExportDto>();
ExportImporter _exportImporter = new ExportImporter();
var result = await _exportImporter.ExtendExcelOfSheetOneImport<WmsSharePart90OutPutDetial>(files, _excelImportService);
var filteResult = result.Where(p => p.OrderBillNum != "");//过滤掉订单号为空的数据,限制这样数据导入
//检验1:导入模板中的第一页签数据不能为空
if (result == null || result.Count == 0)
{
checkList.Add(new ErrorExportDto(version, "大众备件出库单导入", string.Empty, string.Empty, string.Empty, string.Empty, "导入模板中第一页签没有数据,请检查!", string.Empty));
}
if (checkList.Count > 0)
{
return await ExportErrorReportAsync(checkList);
}
var filteResult = result.Where(p => p.OrderBillNum != "" && p.MaterialCode !="");//过滤掉订单号为空的数据,限制这样数据导入
//检验2:导入模板中的结算数据是否为0
foreach (var itm in filteResult)
{
if (itm.Qty == 0)
{
checkList.Add(new ErrorExportDto(version, "大众备件出库单导入", string.Empty, string.Empty, string.Empty, string.Empty, string.Format("导入模板中订单号{0}结算数量为0,影响出库请检查!", itm.OrderBillNum), string.Empty));
}
}
List<WmsSharePart90OutPutDetial> _lst = new List<WmsSharePart90OutPutDetial>();
var _lsCopy = new List<WmsSharePart90OutPutDetial>();
@ -514,17 +535,33 @@ namespace Win.Sfs.SettleAccount.Entities.WMS
}
_lst.AddRange(_lsCopy.ToArray());
//检验3:导入模板中订单号+物料号,不能重复
var _isRepeatOfReportList = from arc in _lst
group arc by new { arc.OrderBillNum, arc.MaterialCode }
into g
where g.Count() > 1
select g;
foreach (var itm in _isRepeatOfReportList)
{
checkList.Add(new ErrorExportDto(version, "大众备件出库单", string.Empty, string.Empty, string.Empty, string.Empty, string.Format("导入模板中订单号{0}组合物料号{1}有重复,请检查!", itm.Key.OrderBillNum, itm.Key.MaterialCode), string.Empty));
}
if (checkList.Count > 0)
{
return await ExportErrorReportAsync(checkList);
}
var outPutDetail = await _wmsRepository.Where(p => p.Version == version).ToListAsync();
var error = from itm1 in outPutDetail
join itm2 in _lst on
new { itm1.MaterialCode }
new { itm1.OrderBillNum, itm1.MaterialCode }
equals
new { itm2.MaterialCode }
new {itm2.OrderBillNum, itm2.MaterialCode }
select itm1;
var errList = error.GroupBy(p => new { p.BillNum }).Select(p => new { BillNum = p.Key.BillNum, Number = p.Sum(itm => itm.Qty) });
var checkList = new List<ErrorExportDto>();
foreach (var itm in errList)
{
checkList.Add(new ErrorExportDto() { Message = string.Format("出库单号:{0}重复记录数:{1}条", itm.BillNum, itm.Number) });

55
src/Modules/SettleAccount/src/SettleAccount.Application/Entities/WMS/WMSSharePartAppService.cs

@ -638,13 +638,30 @@ namespace Win.Sfs.SettleAccount.Entities.SettleAccounts
//[Authorize(SettleAccountPermissions.SettleAccounts.Default)]
public async Task<string> ExcelImport([FromForm] IFormFileCollection files, string version)
{
var checkList = new List<ErrorExportDto>();
ExportImporter _exportImporter = new ExportImporter();
var result = await _exportImporter.ExtendExcelOfSheetOneImport<WmsSharePartOutPutDetial>(files, _excelImportService);
//检验1:导入模板中的第一页签数据不能为空
if (result == null || result.Count == 0)
{
checkList.Add(new ErrorExportDto(version, "大众备件出库单导入", string.Empty, string.Empty, string.Empty, string.Empty, "导入模板中第一页签没有数据,请检查!", string.Empty));
}
if (checkList.Count > 0)
{
return await ExportErrorReportAsync(checkList);
}
if (result == null)
//检验2:导入模板中的结算数据是否为0
foreach (var itm in result)
{
if (itm.Qty == 0)
{
throw new BusinessException("导入的模板中没有数据,不能为空,请检查!");
checkList.Add(new ErrorExportDto(version, "大众备件出库单导入", string.Empty, string.Empty, string.Empty, string.Empty, string.Format("导入模板中物料号{0}结算数量为0,影响出库请检查!", itm.MaterialCode), string.Empty));
}
}
if (checkList.Count > 0)
{
return await ExportErrorReportAsync(checkList);
}
var result90 = await _exportImporter.ExtendExcelOfSheetOneImport<WmsSharePart90OutPutDetial>(files, _excelImportService);
@ -689,6 +706,20 @@ namespace Win.Sfs.SettleAccount.Entities.SettleAccounts
}
_lst.AddRange(_lsCopy.ToArray());
//检验3:导入模板中的SAP编号不能重复,按其汇总出库
var _isRepeatOfReportList = _lst.GroupBy(x => new { x.MaterialCode, x.Version }).Select(p => new { Count = p.Count(), MaterialCode = p.Key.MaterialCode });
foreach (var itm in _isRepeatOfReportList)
{
if (itm.Count > 1)
{
checkList.Add(new ErrorExportDto(version, "大众备件出库单导入", string.Empty, string.Empty, string.Empty, string.Empty, string.Format("导入模板中的物料编码{0}有重复!", itm.MaterialCode), string.Empty));
}
}
if (checkList.Count > 0)
{
return await ExportErrorReportAsync(checkList);
}
//var _ls1 = _lst.Where(p => p.ParentMaterialCode == p.MaterialCode).ToList();
var outPutDetail = await _wmsRepository.Where(p => p.Version == version).ToListAsync();
@ -701,7 +732,7 @@ namespace Win.Sfs.SettleAccount.Entities.SettleAccounts
var errList = error.GroupBy(p => new { p.BillNum }).Select(p => new { BillNum = p.Key.BillNum, Number = p.Sum(itm => itm.Qty) });
var checkList = new List<ErrorExportDto>();
foreach (var itm in errList)
{
checkList.Add(new ErrorExportDto() { Message = string.Format("出库单号:{0}重复记录数:{1}条", itm.BillNum, itm.Number) });
@ -771,6 +802,21 @@ namespace Win.Sfs.SettleAccount.Entities.SettleAccounts
}
_lst.AddRange(_lsCopy.ToArray());
//检验3:导入模板中的订单号+物料号不能重复
var _isRepeatOfReportList = _lst.GroupBy(x => new { x.MaterialCode,x.OrderBillNum, x.Version }).Select(p => new { Count = p.Count(), MaterialCode = p.Key.MaterialCode, OrderBillNum =p.Key.OrderBillNum});
foreach (var itm in _isRepeatOfReportList)
{
if (itm.Count > 1)
{
checkList.Add(new ErrorExportDto(version, "大众备件出库单导入", string.Empty, string.Empty, string.Empty, string.Empty, string.Format("导入模板中订单号{0}组合物料号{1}有重复,请检查!!",itm.OrderBillNum, itm.MaterialCode), string.Empty));
}
}
if (checkList.Count > 0)
{
return await ExportErrorReportAsync(checkList);
}
var outPutDetail = await _wmsRepository90.Where(p => p.Version == version).ToListAsync();
@ -784,7 +830,6 @@ namespace Win.Sfs.SettleAccount.Entities.SettleAccounts
var errList = error.GroupBy(p => new { p.BillNum }).Select(p => new { BillNum = p.Key.BillNum, Number = p.Sum(itm => itm.Qty) });
var checkList = new List<ErrorExportDto>();
foreach (var itm in errList)
{
checkList.Add(new ErrorExportDto() { Message = string.Format("出库单号:{0}重复记录数:{1}条", itm.BillNum, itm.Number) });

45
src/Modules/SettleAccount/src/SettleAccount.Application/Entities/WMS/WmsHQCarAppService.cs

@ -11,6 +11,7 @@ using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp;
using Volo.Abp.Application.Dtos;
using Volo.Abp.Caching;
using Volo.Abp.Domain.Repositories;
@ -411,8 +412,27 @@ namespace Win.Sfs.SettleAccount.Entities.WMS
public async Task<string> ExcelImport([FromForm] IFormFileCollection files, string version)
{
var _billNum = "BCar" + DateTime.Now.ToString("yyyyMMddhhmmss");
var checkList = new List<ErrorExportDto>();
ExportImporter _exportImporter = new ExportImporter();
var result = await _exportImporter.ExtendExcelOfSheetOneImport<WmsHQCarOutPutDetial>(files, _excelImportService);
//检验1:导入模板中的第一页签数据不能为空
if (result == null || result.Count == 0)
{
checkList.Add(new ErrorExportDto(version, "轿车出库单导入", string.Empty, string.Empty, string.Empty, string.Empty, "导入模板中第一页签没有数据,请检查!", string.Empty));
}
if (checkList.Count > 0)
{
return await ExportErrorReportAsync(checkList);
}
//检验2:导入模板中的结算数据是否为0
foreach (var itm in result)
{
if (itm.Qty == 0)
{
checkList.Add(new ErrorExportDto(version, "轿车出库单导入", string.Empty, string.Empty, string.Empty, string.Empty, string.Format("导入模板中SAP编码{0}结算数量为0,影响出库请检查!", itm.MaterialCode), string.Empty));
}
}
List<WmsHQCarOutPutDetial> _lst = new List<WmsHQCarOutPutDetial>();
var _lsCopy = new List<WmsHQCarOutPutDetial>();
@ -445,6 +465,20 @@ namespace Win.Sfs.SettleAccount.Entities.WMS
_lsCopy.Add(_detail);
}
_lst.AddRange(_lsCopy.ToArray());
//检验3:导入模板中的SAP编号不能重复,按其汇总出库
var _isRepeatOfReportList = _lst.GroupBy(x => new { x.MaterialCode, x.Version }).Select(p => new { Count = p.Count(), MaterialCode = p.Key.MaterialCode });
foreach (var itm in _isRepeatOfReportList)
{
if (itm.Count > 1)
{
checkList.Add(new ErrorExportDto(version, "轿车出库单导入", string.Empty, string.Empty, string.Empty, string.Empty, string.Format("导入模板中的SAP编码{0}有重复!", itm.MaterialCode), string.Empty));
}
}
if (checkList.Count > 0)
{
return await ExportErrorReportAsync(checkList);
}
var outPutDetail = await _wmsRepository.Where(p => p.Version == version).ToListAsync();
@ -457,11 +491,20 @@ namespace Win.Sfs.SettleAccount.Entities.WMS
select itm1;
var errList = error.GroupBy(p => new { p.BillNum }).Select(p => new { BillNum = p.Key.BillNum, Number = p.Count() });
var checkList = new List<ErrorExportDto>();
//检验4:出库单号不能重复
foreach (var itm in errList)
{
checkList.Add(new ErrorExportDto() { Message = string.Format("出库单号:{0}重复记录数:{1}条", itm.BillNum, itm.Number) });
}
////检验5,SAP编码在数据库中是否重复
//var _isRepeatOfDataBaseList = error.GroupBy(x => new { x.MaterialCode, x.Version }).Select(p => new { Count = p.Count(), MaterialCode = p.Key.MaterialCode });
//foreach (var itm in _isRepeatOfDataBaseList)
//{
// if (itm.Count > 1)
// {
// checkList.Add(new ErrorExportDto(version, "轿车出库单导入", string.Empty, string.Empty, string.Empty, string.Empty, string.Format("当期出库单中的SAP编码{0}在数据库中已经存在!", itm.MaterialCode), string.Empty));
// }
//}
if (checkList.Count > 0)
{
return await ExportErrorReportAsync(checkList);

15
src/Modules/SettleAccount/src/SettleAccount.Application/Entities/WMS/WmsUnInterface.cs

@ -161,8 +161,21 @@ namespace Win.Sfs.SettleAccount.Entities.WMS
[UnitOfWork(false)]
virtual public async Task<bool> OutputAsync(WmsRequestDetailReportDto input)
{
if (!string.IsNullOrEmpty(input.Client))
{
input.Filters.Add(new FilterCondition() { Action = EnumFilterAction.Equal, Column = "Client", Logic = EnumFilterLogic.And, Value = input.Client });
}
input.Filters.Add(new FilterCondition() { Action = EnumFilterAction.Equal, Column = "Version", Logic = EnumFilterLogic.And, Value = input.Version });
if (!string.IsNullOrEmpty(input.Type))
{
input.Filters.Add(new FilterCondition() { Action = EnumFilterAction.Equal, Column = "Type", Logic = EnumFilterLogic.And, Value = input.Type });
}
if (!string.IsNullOrEmpty(input.MaterialGroup))
{
input.Filters.Add(new FilterCondition() { Action = EnumFilterAction.Equal, Column = "MaterialGroup", Logic = EnumFilterLogic.And, Value = input.MaterialGroup });
}
//input.Filters.Add(new FilterCondition() { Action = EnumFilterAction.Equal, Column = "Version", Logic = EnumFilterLogic.And, Value = input.Version });
var entities = await _wmsRepository.GetListByFilterAsync(GuidGenerator.Create(), input.Filters, input.Sorting, int.MaxValue,
0, true);
List<WmsDetailReport> _ls = new List<WmsDetailReport>();

5
src/Modules/SettleAccount/src/SettleAccount.Domain/Settings/Helper.cs

@ -12,6 +12,7 @@ using System.Reflection;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using Volo.Abp;
using Win.Sfs.SettleAccount.Entities.ImportMap;
namespace Win.Sfs.SettleAccount
@ -290,6 +291,10 @@ namespace Win.Sfs.SettleAccount
}
}
IRow firstRow = sheet.GetRow(0);
if (firstRow == null)
{
throw new BusinessException("导入模板中sheet页为空,请检查!");
}
int cellCount = firstRow.LastCellNum;
Dictionary<int, string> _dicList = new Dictionary<int, string>();

110
src/Modules/SettleAccount/src/SettleAccount.EntityFrameworkCore/Migrations/SettleAccountDbContextModelSnapshot.cs

@ -11637,6 +11637,116 @@ namespace Win.Sfs.SettleAccount.Migrations
b.ToTable("Set_WmsDetailReport");
});
modelBuilder.Entity("Win.Sfs.SettleAccount.Entities.WmsDetailWithCodeReport", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<string>("BillNum")
.IsRequired()
.HasMaxLength(50)
.HasColumnType("nvarchar(50)");
b.Property<Guid>("BranchId")
.HasColumnType("uniqueidentifier");
b.Property<string>("Client")
.IsRequired()
.HasMaxLength(50)
.HasColumnType("nvarchar(50)");
b.Property<string>("ConcurrencyStamp")
.IsConcurrencyToken()
.HasMaxLength(40)
.HasColumnType("nvarchar(40)")
.HasColumnName("ConcurrencyStamp");
b.Property<DateTime>("CreationTime")
.HasColumnType("datetime2")
.HasColumnName("CreationTime");
b.Property<Guid?>("CreatorId")
.HasColumnType("uniqueidentifier")
.HasColumnName("CreatorId");
b.Property<Guid?>("DeleterId")
.HasColumnType("uniqueidentifier")
.HasColumnName("DeleterId");
b.Property<DateTime?>("DeletionTime")
.HasColumnType("datetime2")
.HasColumnName("DeletionTime");
b.Property<decimal>("DiffQty")
.HasColumnType("decimal(18,2)");
b.Property<bool>("Enabled")
.HasColumnType("bit");
b.Property<string>("ExtraProperties")
.HasColumnType("nvarchar(max)")
.HasColumnName("ExtraProperties");
b.Property<bool>("IsDeleted")
.ValueGeneratedOnAdd()
.HasColumnType("bit")
.HasDefaultValue(false)
.HasColumnName("IsDeleted");
b.Property<DateTime?>("LastModificationTime")
.HasColumnType("datetime2")
.HasColumnName("LastModificationTime");
b.Property<Guid?>("LastModifierId")
.HasColumnType("uniqueidentifier")
.HasColumnName("LastModifierId");
b.Property<string>("MaterialCode")
.HasMaxLength(50)
.HasColumnType("nvarchar(50)");
b.Property<string>("MaterialDesc")
.HasMaxLength(150)
.HasColumnType("nvarchar(150)");
b.Property<string>("MaterialGroup")
.HasMaxLength(50)
.HasColumnType("nvarchar(50)");
b.Property<string>("MaterialGroupCode")
.HasMaxLength(50)
.HasColumnType("nvarchar(50)");
b.Property<decimal>("OutputQty")
.HasColumnType("decimal(18,2)");
b.Property<decimal>("Qty")
.HasColumnType("decimal(18,2)");
b.Property<string>("Remark")
.HasColumnType("nvarchar(max)");
b.Property<string>("Remark1")
.HasColumnType("nvarchar(max)");
b.Property<int>("State")
.HasColumnType("int");
b.Property<string>("SwitchCode")
.HasColumnType("nvarchar(max)");
b.Property<string>("Type")
.HasColumnType("nvarchar(max)");
b.Property<string>("Version")
.HasColumnType("nvarchar(max)");
b.HasKey("Id");
b.ToTable("Set_WmsDetailWithCodeReport");
});
modelBuilder.Entity("Win.Sfs.SettleAccount.EstimatedInventories.EstimatedInventoryDetail", b =>
{
b.Property<Guid>("Id")

10
vue/src/router/modules/fis.js

@ -36,6 +36,16 @@ const pgfis = {
icon: '发货'
}
},
{
path: '/pg-partSwitch',
component: () => import('@/views/pg-fis/basedate/partSwitch'),
name: 'pg-partSwitch',//命名路由
meta: {
title: '零件切换管理',
roles: ['SettleAccount.Reports'],
icon: '发货'
}
},
{
path: '/pg-unknownAssembly',
component: () => import('@/views/pg-fis/basedate/unknownAssembly'),

481
vue/src/views/pg-fis/basedate/assemblyCfg/index.vue

@ -3,135 +3,50 @@
<div class="cr-body-content">
<div ref="box">
<flexbox class="content-header">
<el-form
:model="listQuery"
ref="queryForm"
v-show="showSearch"
:inline="true"
>
<el-form-item
label="总成编码"
prop="ErpAssemblyCode"
class="forimitem"
>
<el-input
v-model="listQuery.ErpAssemblyCode"
placeholder="请输入总成编码"
clearable
size="small"
style="width: 240px"
@keyup.enter.native="handleQuery"
/>
<el-form :model="listQuery" ref="queryForm" v-show="showSearch" :inline="true">
<el-form-item label="总成编码" prop="erpAssemblyCode" class="forimitem">
<el-input v-model="listQuery.erpAssemblyCode" placeholder="请输入总成编码" clearable size="small" style="width: 240px"
@keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item
label="总成名称"
prop="ErpAssemblyName"
class="forimitem"
>
<el-input
v-model="listQuery.ErpAssemblyName"
placeholder="请输入总成名称"
clearable
size="small"
style="width: 240px"
@keyup.enter.native="handleQuery"
/>
<el-form-item label="总成名称" prop="erpAssemblyName" class="forimitem">
<el-input v-model="listQuery.erpAssemblyName" placeholder="请输入总成名称" clearable size="small" style="width: 240px"
@keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item
label="车型:"
prop="vehicleModelCode"
class="forimitem"
>
<el-select
v-model="listQuery.vehicleModelCode"
clearable
placeholder="请选择"
size="medium"
style="margin-right: 15px"
@change="valueselectChange"
>
<el-option
v-for="item in vehicleModelList"
:key="item.id"
:label="item.dicItemName"
:value="item.dicItemCode"
/>
<el-form-item label="长描述" prop="groupCode" class="forimitem">
<el-input v-model="listQuery.groupCode" placeholder="请输入长描述" clearable size="small" style="width: 240px"
@keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item label="车型:" prop="vehicleModelCode" class="forimitem">
<el-select v-model="listQuery.vehicleModelCode" clearable placeholder="请选择" size="medium" style="margin-right: 15px"
@change="valueselectChange">
<el-option v-for="item in vehicleModelList" :key="item.id" :label="item.dicItemName" :value="item.dicItemCode" />
</el-select>
</el-form-item>
<el-form-item label="创建时间">
<el-date-picker
v-model="listQuery.CreateTimeValue"
size="small"
style="width: 380px"
value-format="yyyy-MM-dd HH:mm:ss"
type="datetimerange"
:default-time="['00:00:00', '23:59:59']"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
></el-date-picker>
<el-date-picker v-model="listQuery.createTimeValue" size="small" style="width: 380px" value-format="yyyy-MM-dd HH:mm:ss"
type="datetimerange" :default-time="['00:00:00', '23:59:59']" range-separator="-" start-placeholder="开始日期"
end-placeholder="结束日期"></el-date-picker>
</el-form-item>
<el-form-item class="formitem">
<el-button
type="primary"
icon="el-icon-search"
size="mini"
@click="handleFilter"
>搜索</el-button
>
<el-button
icon="el-icon-refresh"
size="mini"
@click="resetQuery('queryForm')"
>重置</el-button
>
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
style="margin-left: 15px"
@click="handleDownload()"
>导出(Excel)
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleFilter">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery('queryForm')">重置</el-button>
<el-button type="warning" plain icon="el-icon-download" size="mini" style="margin-left: 15px" @click="handleDownload()">导出(Excel)
</el-button>
</el-form-item>
<!-- <el-divider class="divider1" ></el-divider> -->
<el-form-item style="margin-bottom: 0px; ">
<el-button
class="filter-item"
size="mini"
type="primary"
icon="el-icon-plus"
@click="handleCreate"
>新增
<el-button class="filter-item" size="mini" type="primary" icon="el-icon-plus" @click="handleCreate" disabled>新增
</el-button>
<el-button
class="filter-item"
size="mini"
type="primary"
icon="el-icon-edit"
@click="handleUpdate"
>修改
<el-button class="filter-item" size="mini" type="primary" icon="el-icon-edit" @click="handleUpdate" disabled>修改
</el-button>
<el-button
class="filter-item"
size="mini"
type="primary"
icon="el-icon-delete"
@click="handleDelete"
>删除
<el-button class="filter-item" size="mini" type="primary" icon="el-icon-delete" @click="handleDelete" disabled>删除
</el-button>
<el-button
class="filter-item"
size="mini"
type="primary"
icon="el-icon-plus"
@click="handleImportSAP"
>导入SAP对接
<el-button class="filter-item" size="mini" type="primary" icon="el-icon-plus" @click="handleImportSAP" disabled>导入SAP对接
</el-button>
</el-form-item>
</el-form>
@ -139,51 +54,21 @@
</div>
<div class="l-table">
<!--表格渲染-->
<el-table
ref="multipleTable"
v-loading="listLoading"
element-loading-text="拼命加载中..."
element-loading-spinner="el-icon-loading"
class="cr-table"
:data="list"
:height="tableHeight"
:cell-style="cellStyle"
:header-cell-style="headerRowStyle"
size="small"
stripe
border
highlight-current-row
style="width: 100%"
@sort-change="sortChange"
@selection-change="handleSelectionChange"
@row-click="handleRowClick"
>
<el-table ref="multipleTable" v-loading="listLoading" element-loading-text="拼命加载中..." element-loading-spinner="el-icon-loading"
class="cr-table" :data="list" :height="tableHeight" :cell-style="cellStyle" :header-cell-style="headerRowStyle"
size="small" stripe border highlight-current-row style="width: 100%" @sort-change="sortChange" @selection-change="handleSelectionChange"
@row-click="handleRowClick">
<el-table-column type="selection" width="44px"></el-table-column>
<el-table-column
label="ERP总成编码"
prop="erpAssemblyCode"
sortable="custom"
align="center"
width="180px"
>
<el-table-column label="ERP总成编码" prop="erpAssemblyCode" sortable="custom" align="center" width="180px">
<template slot-scope="scope">
<span class="link-type" @click="handleDrawerOpen(scope.row)">{{
scope.row.erpAssemblyCode
}}</span>
</template>
</el-table-column>
<el-table-column
v-for="(item, index) in getDefaultField"
:key="index"
:prop="item.prop"
:label="item.label"
:min-width="item.width"
:formatter="fieldFormatter"
sortable="custom"
show-overflow-tooltip
:gutter="0"
>
<el-table-column v-for="(item, index) in getDefaultField" :key="index" :prop="item.prop" :label="item.label"
:min-width="item.width" :formatter="fieldFormatter" sortable="custom" show-overflow-tooltip :gutter="0">
<template slot="header" slot-scope="scope">
{{ scope.column.label }}
</template>
@ -191,32 +76,15 @@
</el-table>
<!--表单渲染-->
<el-dialog
:visible.sync="dialogFormVisible"
:close-on-click-modal="false"
:title="formTitle"
width="700px"
@close="closeDialog"
>
<el-form
ref="form"
:inline="true"
:model="form"
:rules="rules"
size="small"
label-width="120px"
>
<el-dialog :visible.sync="dialogFormVisible" :close-on-click-modal="false" :title="formTitle" width="700px" @close="closeDialog">
<el-form ref="form" :inline="true" :model="form" :rules="rules" size="small" label-width="120px">
<el-row>
<el-col :span="4">
<el-form-item label="总成编码:" required />
</el-col>
<el-col :span="20">
<el-form-item prop="erpAssemblyCode">
<el-input
style="width: 400px"
v-model="form.erpAssemblyCode"
:disabled="isEdit"
/>
<el-input style="width: 400px" v-model="form.erpAssemblyCode" :disabled="isEdit" />
</el-form-item>
</el-col>
</el-row>
@ -227,11 +95,7 @@
</el-col>
<el-col :span="20">
<el-form-item prop="erpAssemblyName">
<el-input
style="width: 400px"
v-model="form.erpAssemblyName"
:disabled="isEdit"
/>
<el-input style="width: 400px" v-model="form.erpAssemblyName" :disabled="isEdit" />
</el-form-item>
</el-col>
</el-row>
@ -257,81 +121,33 @@
</el-col>
<el-col :span="20">
<el-form-item prop="vehicleModel">
<el-select
style="width: 200px"
v-model="form.vehicleModel"
:disabled="isEdit"
>
<el-option
v-for="item in vehicleModelList"
:key="item.id"
:label="item.dicItemName"
:value="item.dicItemCode"
/>
<el-select style="width: 200px" v-model="form.vehicleModel" :disabled="isEdit">
<el-option v-for="item in vehicleModelList" :key="item.id" :label="item.dicItemName" :value="item.dicItemCode" />
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-table
ref="DetialTable"
v-loading="listLoading"
element-loading-text="拼命加载中..."
element-loading-spinner="el-icon-loading"
class="cr-table"
:data="form.details"
:height="detailTableHeight"
:cell-style="cellStyle"
:header-cell-style="headerRowStyle"
size="small"
stripe
border
highlight-current-row
style="width: 100%"
@row-click="handleRowClick"
>
<el-table ref="DetialTable" v-loading="listLoading" element-loading-text="拼命加载中..." element-loading-spinner="el-icon-loading"
class="cr-table" :data="form.details" :height="detailTableHeight" :cell-style="cellStyle" :header-cell-style="headerRowStyle"
size="small" stripe border highlight-current-row style="width: 100%" @row-click="handleRowClick">
<!-- <el-table-column type="selection" width="44px"></el-table-column> -->
<el-table-column
prop="partCode"
label="客户零件代码"
width="150px"
>
<el-table-column prop="partCode" label="客户零件代码" width="150px">
<template slot-scope="scope">
<el-input
v-model="scope.row.partCode"
size="mini"
style="width: 135px"
></el-input>
<el-input v-model="scope.row.partCode" size="mini" style="width: 135px"></el-input>
</template>
</el-table-column>
<el-table-column prop="description" label="客户零件名称">
<template slot-scope="scope">
<el-input
v-model="scope.row.description"
size="mini"
></el-input>
<el-input v-model="scope.row.description" size="mini"></el-input>
</template>
</el-table-column>
<el-table-column
prop="partNum"
label="客户零件数量"
width="120px"
>
<el-table-column prop="partNum" label="客户零件数量" width="120px">
<template slot-scope="scope">
<el-input-number
v-model="scope.row.partNum"
:min="1"
size="mini"
style="width: 100px"
></el-input-number>
<el-input-number v-model="scope.row.partNum" :min="1" size="mini" style="width: 100px"></el-input-number>
</template>
</el-table-column>
<el-table-column
prop="isKey"
label="是否Key件"
align="center"
width="80px"
>
<el-table-column prop="isKey" label="是否Key件" align="center" width="80px">
<!-- label-class-name="DisabledSelection" 去除列头全选-->
<template slot-scope="scope">
<el-checkbox v-model="scope.row.isKey"></el-checkbox>
@ -344,18 +160,10 @@
</el-table-column> -->
<el-table-column prop="description" width="35px">
<template slot="header">
<el-button
@click="handleAddDetails"
icon="el-icon-plus"
type="text"
></el-button>
<el-button @click="handleAddDetails" icon="el-icon-plus" type="text"></el-button>
</template>
<template slot-scope="scope">
<el-button
@click="handleDeleteDetails(scope.$index, scope.row)"
icon="el-icon-minus"
type="text"
></el-button>
<el-button @click="handleDeleteDetails(scope.$index, scope.row)" icon="el-icon-minus" type="text"></el-button>
</template>
</el-table-column>
</el-table>
@ -363,46 +171,23 @@
</el-form>
<!--表格渲染-->
<div slot="footer" class="dialog-footer">
<el-button type="text" @click="dialogFormVisible = false"
>取消</el-button
>
<el-button v-loading="formLoading" type="primary" @click="save()"
>确认</el-button
>
<el-button type="text" @click="dialogFormVisible = false">取消</el-button>
<el-button v-loading="formLoading" type="primary" @click="save()">确认</el-button>
</div>
</el-dialog>
</div>
<div class="table-footer">
<!-- 分页控件 style="margin-top: -25px;margin-bottom:-25px;float:right;"-->
<pagination
v-show="totalCount > 0"
:total="totalCount"
:page.sync="page"
:limit.sync="listQuery.MaxResultCount"
@pagination="getList"
/>
<pagination v-show="totalCount > 0" :total="totalCount" :page.sync="page" :limit.sync="listQuery.maxResultCount"
@pagination="getList" />
<!-- 导入Excel组件 -->
<importExcel
ref="importexcel"
:show="showExcelImport"
:crmType="crmType"
@close="importExcelData"
/>
<importExcel ref="importexcel" :show="showExcelImport" :crmType="crmType" @close="importExcelData" />
</div>
<!-- 抽屉控件 -->
<el-drawer
title="信息详细页"
size="75%"
direction="rtl"
:visible.sync="drawer"
:before-close="handleDrawerClose"
>
<el-drawer title="信息详细页" size="75%" direction="rtl" :visible.sync="drawer" :before-close="handleDrawerClose">
<div>
<Detail
v-bind:customerInfos="customerInfos"
style="margin-top: -35px"
></Detail>
<Detail v-bind:customerInfos="customerInfos" style="margin-top: -35px"></Detail>
</div>
</el-drawer>
</div>
@ -416,13 +201,23 @@ import importExcel from "@/components/ImportTxt";
import Lockr from "lockr";
import moment from "moment";
import Detail from "./detail.vue";
import { downloadFile } from "@/utils/crmindex.js";
import {
downloadFile
} from "@/utils/crmindex.js";
//
const bomUnit = [
{ key: 0, display_name: "PC" },
{ key: 1, display_name: "TON" },
{ key: 2, display_name: "Other" },
const bomUnit = [{
key: 0,
display_name: "PC"
},
{
key: 1,
display_name: "TON"
},
{
key: 2,
display_name: "Other"
},
];
const projectTypeKeyValue = bomUnit.reduce((acc, cur) => {
acc[cur.key] = cur.display_name;
@ -431,8 +226,15 @@ const projectTypeKeyValue = bomUnit.reduce((acc, cur) => {
export default {
name: "AssemblyCfgERP",
components: { Pagination, CRMTableHead, importExcel, Detail },
directives: { permission },
components: {
Pagination,
CRMTableHead,
importExcel,
Detail
},
directives: {
permission
},
filters: {
IsCustomerSignFilter(status) {
//
@ -455,9 +257,11 @@ export default {
return {
crmType: "AssemblyCfgERP",
rules: {
erpAssemblyName: [
{ required: true, message: "必须输入!", trigger: "blur" },
],
erpAssemblyName: [{
required: true,
message: "必须输入!",
trigger: "blur"
}, ],
},
valueSelect: "",
customerInfos: [],
@ -480,19 +284,16 @@ export default {
},
},
listQuery: {
CreateTimeValue: [],
BeginCreateTime: undefined,
EndCreateTime: undefined,
SkipCount: 0,
MaxResultCount: 15,
ErpAssemblyName: undefined,
ErpAssemblyCode: undefined,
vehicleModel: undefined,
},
listExportQuery: {
erpAssemblyCode: undefined,
createTimeValue: [],
beginCreateTime: undefined,
endCreateTime: undefined,
skipCount: 0,
maxResultCount: 15,
erpAssemblyName: undefined,
erpAssemblyCode: undefined,
vehicleModel: undefined,
},
vehicleModelQuery: {
dicTypeName: "派格车型",
},
@ -505,12 +306,12 @@ export default {
bomUnit,
multipleSelection: [],
drawer: false,
dialogFormVisible: false,
formTitle: "",
isEdit: false,
formLoading: false,
dialogFormVisible: false,
tableHeight: document.documentElement.clientHeight - 280,
detailTableHeight: 250,
details: [], //
@ -541,20 +342,21 @@ export default {
width: 180,
});
tempsTabs.push({
label: "ERP总成版本",
prop: "erpAssemblyVersion",
width: 100,
});
tempsTabs.push({
label: "创建时间",
prop: "creationTime",
width: 100,
label: "长描述",
prop: "groupCode",
width: 240,
});
tempsTabs.push({
label: "车型代码",
prop: "vehicleModel",
width: 120,
});
tempsTabs.push({
label: "创建时间",
prop: "creationTime",
width: 100,
});
return tempsTabs;
},
},
@ -563,11 +365,9 @@ export default {
handleDrawerOpen(param) {
this.drawer = true;
var parentId = param.id; //id
this.customerInfos = [
{
this.customerInfos = [{
ParentId: parentId,
},
];
}, ];
},
handleDrawerClose(done) {
done();
@ -668,8 +468,7 @@ export default {
// });
this.$confirm(
"是否删除总成" + this.multipleSelection[0].erpAssemblyCode + "?",
"提示",
{
"提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
@ -711,11 +510,10 @@ export default {
/** 导出功能 */
handleDownload() {
this.listLoading = true;
this.listExportQuery.erpAssemblyCode = this.listQuery.ErpAssemblyCode;
this.listExportQuery.erpAssemblyName = this.listQuery.ErpAssemblyName;
console.log(JSON.stringify(this.listExportQuery));
console.log(JSON.stringify(this.listQuery));
this.$axios
.posts("/api/newjit/assembly-cfg-erp/export", this.listExportQuery)
.posts("/api/newjit/assembly-cfg-erp/export", this.listQuery)
.then((res) => {
let filename = res.item;
this.$axios
@ -751,11 +549,11 @@ export default {
this.$refs[refName].resetFields();
this.getvehicleModel();
this.handleQuery();
this.listQuery.CreateTimeValue = [];
this.listQuery.createTimeValue = [];
},
/** 搜索按钮操作 */
handleQuery() {
this.listQuery.SkipCount = 1;
this.listQuery.skipCount = 1;
this.getList();
},
selectValue(params) {
@ -807,7 +605,11 @@ export default {
/** 格式化字段 */
fieldFormatter(row, column) {
if (column.property === "billStatus") {
return { 0: "未生效", 2: "已生效", 3: "已发布" }[row[column.property]];
return {
0: "未生效",
2: "已生效",
3: "已发布"
} [row[column.property]];
}
if (column.property == "onlineTime" || column.property == "receiveTime") {
var date = row[column.property];
@ -824,10 +626,10 @@ export default {
getList() {
this.listLoading = true;
console.log("创建时间:" + JSON.stringify(this.listQuery));
this.listQuery.SkipCount = (this.page - 1) * 10;
if (this.listQuery.CreateTimeValue !== undefined) {
this.listQuery.BeginCreateTime = this.listQuery.CreateTimeValue[0];
this.listQuery.EndCreateTime = this.listQuery.CreateTimeValue[1];
this.listQuery.skipCount = (this.page - 1) * 10;
if (this.listQuery.createTimeValue !== undefined) {
this.listQuery.beginCreateTime = this.listQuery.createTimeValue[0];
this.listQuery.endCreateTime = this.listQuery.createTimeValue[1];
}
this.$axios
.gets("/api/newjit/assembly-cfg-erp/list", this.listQuery)
@ -885,7 +687,10 @@ export default {
},
sortChange(data) {
const { prop, order } = data;
const {
prop,
order
} = data;
if (!prop || !order) {
this.handleFilter();
return;
@ -897,19 +702,39 @@ export default {
this.multipleSelection = val;
},
/** 通过回调控制style */
cellStyle({ row, column, rowIndex, columnIndex }) {
cellStyle({
row,
column,
rowIndex,
columnIndex
}) {
if (column.property === "qty") {
return { textAlign: "right" };
return {
textAlign: "right"
};
} else {
return { textAlign: "left" };
return {
textAlign: "left"
};
}
},
/** 通过回调控制表头style */
headerRowStyle({ row, column, rowIndex, columnIndex }) {
headerRowStyle({
row,
column,
rowIndex,
columnIndex
}) {
if (column.property === "qty") {
return { textAlign: "right", background: "#FAFAFA" };
return {
textAlign: "right",
background: "#FAFAFA"
};
} else {
return { textAlign: "left", background: "#FAFAFA" };
return {
textAlign: "left",
background: "#FAFAFA"
};
}
},
handleRowClick(row, column, event) {
@ -952,8 +777,8 @@ export default {
margin: 0;
//width: 100%;
}
.formitem {
margin-bottom: 0;
}
</style>

Loading…
Cancel
Save