SVN-Revision: r659
This commit is contained in:
wyf
2025-06-03 08:54:17 +00:00
parent d239cbc4d8
commit 6c9154e516
2 changed files with 210 additions and 28 deletions
+148
View File
@@ -260,6 +260,133 @@ namespace Lskj.PubBomImport
}
}
/// <summary>
/// Bom结构补充,新增其它文件,无版本控制
/// </summary>
/// <param name="dirPaths"></param>
public void StartImportInOtherFiles(List<DataRow> selectRows)
{
try
{
int execOrder = 1;
FrmBillInfo frmBillInfo = new FrmBillInfo();
foreach (DataRow selectRow in selectRows)
{
string productId = selectRow["BomMxMainProduct"] + "";
if (string.IsNullOrEmpty(productId))
{
throw new Exception($"物料编码不能为空");
}
string fileName = selectRow[Model.AfterBomFieldName] + "";
string dirPath = selectRow["BomFieldNameDir"] + "";
FileInfo fileInfo = new FileInfo(dirPath);
if (fileInfo != null)
{
string fileNameWithoutExtension = Path.GetFileNameWithoutExtension(fileInfo.Name).Trim();
if (fileNameWithoutExtension.StartsWith("ZZQD"))
{
throw new Exception($"不允许补充ZZQD文件{fileNameWithoutExtension}");
}
else if (fileNameWithoutExtension.StartsWith("MX"))
{
throw new Exception($"不允许补充MX文件{fileNameWithoutExtension}");
}
else if (fileNameWithoutExtension.StartsWith("QD"))
{
throw new Exception($"不允许补充QD文件{fileNameWithoutExtension}");
}
else
{
DataTable filetable = BaseImpl.GetDataTableResult($"select sname,fileId from p_fm_filetab where parentid in (select dirid from P_fm_DirectoryTab where pid = '{productId}' and dllcoid = '1000202') and speciesno = '010106' and sname = '{fileNameWithoutExtension}'");
if (filetable.Rows.Count > 0)
{
throw new Exception($"{fileNameWithoutExtension}的附件已存在");
}
}
}
else
{
throw new Exception($"{fileName}的文件不存在");
}
}
frmBillInfo.OnControlSourceBind += (s, args) =>
{
Task task = new Task(() =>
{
try
{
int.TryParse(Model.FirstRowIndex, out int index);
frmMain.FirstRowIndex = index;
foreach (DataRow selectRow in selectRows)
{
string productId = selectRow["BomMxMainProduct"] + "";
int childIndex = selectRows.IndexOf(selectRow);
int nowCount = 1 + childIndex;
int allCount = (int)((decimal)(1 + childIndex) / (selectRows.Count + 1) * 100);
int finishCount = (int)((decimal)(1 + nowCount) / (selectRows.Count + 1) * 100);
string fileName = selectRow[Model.AfterBomFieldName] + "";
string dirPath = selectRow["BomFieldNameDir"] + "";
FileInfo fileInfo = new FileInfo(dirPath);
if (fileInfo != null)
{
string fileNameWithoutExtension = Path.GetFileNameWithoutExtension(fileInfo.Name).Trim();
SetProcessBar(0, allCount);
bool isUpload = UploadFileToAudit(fileInfo.FullName, productId, "010106", out string msg, out string uploadFileId);
if (!isUpload)
{
throw new Exception($"{fileNameWithoutExtension}附件上传失败\r\n{msg}");
}
StaticControl.RightMenuGridView.GridControl.Invoke(new Action(() =>
{
if (selectRow.Table.Columns.Contains("qms_laddf_FileId"))
{
int.TryParse(uploadFileId, out int qms_laddf_FileId);
selectRow["qms_laddf_FileId"] = qms_laddf_FileId;
}
}));
SetProcessBar(100, finishCount);
SetProcessLabelAllMsg($"总进度:{nowCount + 1}/{selectRows.Count + 1}");
}
else
{
throw new Exception($"{fileName}的文件不存在");
}
}
this.Invoke(new Action(() =>
{
this.DialogResult = DialogResult.OK;
Close();
ImportTimer?.Dispose();
}));
}
catch (Exception ex)
{
MessageUtil.Show(ex.Message);
this.Invoke(new Action(() =>
{
this.DialogResult = DialogResult.Cancel;
Close();
ImportTimer?.Dispose();
}));
}
});
task.Start();
};
frmBillInfo.OnLoad(Model);
frmMain.ParentView = frmBillInfo.GcMainView;
}
catch (Exception ex)
{
MessageUtil.Show(ex.Message);
this.Invoke(new Action(() =>
{
this.DialogResult = DialogResult.Cancel;
Close();
ImportTimer?.Dispose();
}));
}
}
/// <summary>
/// 修改单个文件
/// </summary>
/// <param name="dirPaths"></param>
@@ -1256,6 +1383,13 @@ namespace Lskj.PubBomImport
{
throw new Exception($"{code}附件上传失败\r\n{msg}");
}
StaticControl.RightMenuGridView.GridControl.Invoke(new Action(() =>
{
if (childInfoRow.Table.Columns.Contains("qms_laddf_uploadtag"))
{
childInfoRow["qms_laddf_uploadtag"] = 1;
}
}));
}
}
StaticControl.RightMenuGridView.GridControl.Invoke(new Action(() =>
@@ -1289,6 +1423,13 @@ namespace Lskj.PubBomImport
{
throw new Exception($"{code}附件上传失败\r\n{msg}");
}
StaticControl.RightMenuGridView.GridControl.Invoke(new Action(() =>
{
if (childInfoRow.Table.Columns.Contains("qms_laddf_uploadtag"))
{
childInfoRow["qms_laddf_uploadtag"] = 1;
}
}));
}
StaticControl.RightMenuGridView.GridControl.Invoke(new Action(() =>
{
@@ -1361,6 +1502,13 @@ namespace Lskj.PubBomImport
{
throw new Exception($"{code}附件上传失败\r\n{msg}");
}
StaticControl.RightMenuGridView.GridControl.Invoke(new Action(() =>
{
if (childInfoRow.Table.Columns.Contains("qms_laddf_uploadtag"))
{
childInfoRow["qms_laddf_uploadtag"] = 1;
}
}));
}
}
StaticControl.RightMenuGridView.GridControl.Invoke(new Action(() =>