2023-03-10

This commit is contained in:
2023-03-10 16:44:23 +08:00
parent a53759ccf3
commit 7907969b51
4 changed files with 105 additions and 28 deletions
+1
View File
@@ -117,6 +117,7 @@
<Reference Include="System.DirectoryServices" /> <Reference Include="System.DirectoryServices" />
<Reference Include="System.Drawing" /> <Reference Include="System.Drawing" />
<Reference Include="System.IO.Compression" /> <Reference Include="System.IO.Compression" />
<Reference Include="System.IO.Compression.FileSystem" />
<Reference Include="System.Management" /> <Reference Include="System.Management" />
<Reference Include="System.Memory, Version=4.0.1.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL"> <Reference Include="System.Memory, Version=4.0.1.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Memory.4.5.4\lib\net461\System.Memory.dll</HintPath> <HintPath>..\packages\System.Memory.4.5.4\lib\net461\System.Memory.dll</HintPath>
+49
View File
@@ -567,6 +567,55 @@ namespace BLL
return str; return str;
} }
public static bool DeleteDir(string file)
{
try
{
//去除文件夹和子文件的只读属性
//去除文件夹的只读属性
System.IO.DirectoryInfo fileInfo = new DirectoryInfo(file);
fileInfo.Attributes = FileAttributes.Normal & FileAttributes.Directory;
//去除文件的只读属性
System.IO.File.SetAttributes(file, System.IO.FileAttributes.Normal);
//判断文件夹是否还存在
if (Directory.Exists(file))
{
foreach (string f in Directory.GetFileSystemEntries(file))
{
if (File.Exists(f))
{
//如果有子文件删除文件
File.Delete(f);
Console.WriteLine(f);
}
else
{
//循环递归删除子文件夹
DeleteDir(f);
}
}
//删除空文件夹
Directory.Delete(file);
}
return true;
}
catch (Exception ex) // 异常处理
{
return false;
}
}
#region #region
/// <summary> /// <summary>
/// 输入文本转换时间类型 /// 输入文本转换时间类型
@@ -1,5 +1,7 @@
using Aspose.Words; using Aspose.Words;
using FineUIPro; using FineUIPro;
using ICSharpCode.SharpZipLib.Zip;
using Microsoft.SqlServer.Server;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Data; using System.Data;
@@ -650,62 +652,84 @@ namespace BLL
File.Delete(pdfUrl); File.Delete(pdfUrl);
} }
//删除文件夹
public static void PrintApprovalForm(string ContractReviewId) public static void PrintApprovalForm(string ContractReviewId)
{ {
var ReviewModel = BLL.PHTGL_ContractReviewService.GetPHTGL_ContractReviewById(ContractReviewId); var ReviewModel = BLL.PHTGL_ContractReviewService.GetPHTGL_ContractReviewById(ContractReviewId);
var getFireWork = BLL.ContractService.GetContractById(ReviewModel.ContractId); var getFireWork = BLL.ContractService.GetContractById(ReviewModel.ContractId);
Document doc=new Document(); string projectname=ProjectService.GetProjectNameByProjectId(getFireWork.ProjectId);
string rootPath = Funs.RootPath;
string startPath = rootPath + "File\\Word\\PHTGL\\"+ getFireWork.ContractNum + "-"+projectname + "-" + getFireWork.ContractName + "-合同管理资料";
if (!Directory.Exists(startPath))
{
Directory.CreateDirectory(startPath);
}
string zipPath = rootPath + "File\\Word\\PHTGL\\" + getFireWork.ContractNum + "-" + projectname + "-" + getFireWork.ContractName + "-合同管理资料.zip";
switch (getFireWork.ConfirmWay) switch (getFireWork.ConfirmWay)
{ {
case "1": case "1":
doc = PrintApprovalFormType_SetSub(ContractReviewId); PrintApprovalFormType_SetSub(ContractReviewId, startPath + "\\");
break; break;
case "2": case "2":
doc = PrintApprovalFormType_SetSub(ContractReviewId); PrintApprovalFormType_SetSub(ContractReviewId, startPath + "\\");
break; break;
case "3": case "3":
doc = PrintApprovalFormType_SetSub(ContractReviewId); PrintApprovalFormType_SetSub(ContractReviewId, startPath + "\\");
break; break;
case "4": case "4":
doc = PrintApprovalFormType_Act(ContractReviewId); PrintApprovalFormType_Act(ContractReviewId, startPath + "\\");
break; break;
case "5": case "5":
doc = PrintApprovalFormType_Act(ContractReviewId); PrintApprovalFormType_Act(ContractReviewId, startPath + "\\");
break; break;
default : default :
doc = PrintApprovalFormType__Con(ContractReviewId); PrintApprovalFormType__Con(ContractReviewId, startPath + "\\");
break; break;
} }
PrintFileByDocument(doc, getFireWork.ContractNum+ getFireWork.ContractName+ "-合同管理资料"); System.IO.Compression.ZipFile.CreateFromDirectory(startPath, zipPath);
} FileInfo info = new FileInfo(zipPath);
long fileSize = info.Length;
System.Web.HttpContext.Current.Response.Clear();
System.Web.HttpContext.Current.Response.ContentType = "application/x-zip-compressed";
System.Web.HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode(getFireWork.ContractNum + "-" + projectname + "-" + getFireWork.ContractName + "-合同管理资料.zip", System.Text.Encoding.UTF8));
System.Web.HttpContext.Current.Response.AddHeader("Content-Length", fileSize.ToString());
System.Web.HttpContext.Current.Response.TransmitFile(zipPath, 0, fileSize);
System.Web.HttpContext.Current.Response.Flush();
System.Web.HttpContext.Current.Response.Close();
Funs.DeleteDir(startPath);
File.Delete (zipPath);
}
/// <summary> /// <summary>
/// ConfirmWay 45 /// ConfirmWay 45
/// </summary> /// </summary>
public static Document PrintApprovalFormType_Act(string ContractReviewId) public static void PrintApprovalFormType_Act(string ContractReviewId, string path)
{ {
Model.PHTGL_Contract Contract = new Model.PHTGL_Contract(); //合同信息 Model.PHTGL_Contract Contract = new Model.PHTGL_Contract(); //合同信息
Model.PHTGL_ActionPlanFormation ActPlan = new Model.PHTGL_ActionPlanFormation(); //实施计划编制信息 Model.PHTGL_ActionPlanFormation ActPlan = new Model.PHTGL_ActionPlanFormation(); //实施计划编制信息
Model.PHTGL_ActionPlanFormation ActPlanFormat = new Model.PHTGL_ActionPlanFormation(); //实施计划编制信息
var ReviewModel = BLL.PHTGL_ContractReviewService.GetPHTGL_ContractReviewById(ContractReviewId); var ReviewModel = BLL.PHTGL_ContractReviewService.GetPHTGL_ContractReviewById(ContractReviewId);
Contract = BLL.ContractService.GetContractById(ReviewModel.ContractId); Contract = BLL.ContractService.GetContractById(ReviewModel.ContractId);
ActPlan = BLL.PHTGL_ActionPlanFormationService.GetPHTGL_ActionPlanFormationByCode(Contract.ActionPlanCode); ActPlan = BLL.PHTGL_ActionPlanFormationService.GetPHTGL_ActionPlanFormationByCode(Contract.ActionPlanCode);
ActPlanFormat = PHTGL_ActionPlanFormationService.GetPHTGL_ActionPlanFormationById(ActPlan.ActionPlanID);
var Doc_ActPlan = PHTGL_ActionPlanFormationService.Print(ActPlan.ActionPlanID); var Doc_ActPlan = PHTGL_ActionPlanFormationService.Print(ActPlan.ActionPlanID);
var Doc_Contract = Print(ContractReviewId); var Doc_Contract = Print(ContractReviewId);
Doc_ActPlan.AppendDocument(Doc_Contract, ImportFormatMode.UseDestinationStyles);
return Doc_ActPlan; Doc_ActPlan.Save(path + ActPlanFormat.ActionPlanCode + "施工分包实施计划.pdf", SaveFormat.Pdf);
Doc_Contract.Save(path + Contract.ContractNum + "合同评审.pdf", SaveFormat.Pdf);
} }
/// <summary> /// <summary>
/// ConfirmWay 123 /// ConfirmWay 123
/// </summary> /// </summary>
public static Document PrintApprovalFormType_SetSub(string ContractReviewId) public static void PrintApprovalFormType_SetSub(string ContractReviewId,string path)
{ {
Model.PHTGL_Contract Contract =new Model.PHTGL_Contract(); //合同信息 Model.PHTGL_Contract Contract =new Model.PHTGL_Contract(); //合同信息
@@ -713,13 +737,15 @@ namespace BLL
Model.PHTGL_BidApproveUserReview ApproveUser = new Model.PHTGL_BidApproveUserReview(); //评标小组名单信息 Model.PHTGL_BidApproveUserReview ApproveUser = new Model.PHTGL_BidApproveUserReview(); //评标小组名单信息
Model.PHTGL_BidDocumentsReview BidDoc = new Model.PHTGL_BidDocumentsReview();//招标文件信息 Model.PHTGL_BidDocumentsReview BidDoc = new Model.PHTGL_BidDocumentsReview();//招标文件信息
Model.PHTGL_ActionPlanReview ActPlan = new Model.PHTGL_ActionPlanReview();//实施计划信息 Model.PHTGL_ActionPlanReview ActPlan = new Model.PHTGL_ActionPlanReview();//实施计划信息
Model.PHTGL_ActionPlanFormation ActPlanFormat = new Model.PHTGL_ActionPlanFormation(); //实施计划编制信息
var ReviewModel = BLL.PHTGL_ContractReviewService.GetPHTGL_ContractReviewById(ContractReviewId); var ReviewModel = BLL.PHTGL_ContractReviewService.GetPHTGL_ContractReviewById(ContractReviewId);
Contract = BLL.ContractService.GetContractById(ReviewModel.ContractId); Contract = BLL.ContractService.GetContractById(ReviewModel.ContractId);
SetSub = BLL.PHTGL_SetSubReviewService.GetPHTGL_SetSubReviewBySetSubReviewCode(Contract.SetSubReviewCode); SetSub = BLL.PHTGL_SetSubReviewService.GetPHTGL_SetSubReviewBySetSubReviewCode(Contract.SetSubReviewCode);
ApproveUser = BLL.PHTGL_BidApproveUserReviewService.GetPHTGL_BidApproveUserReviewById(SetSub.ApproveUserReviewID); ApproveUser = BLL.PHTGL_BidApproveUserReviewService.GetPHTGL_BidApproveUserReviewById(SetSub.ApproveUserReviewID);
BidDoc = BLL.PHTGL_BidDocumentsReviewService.GetPHTGL_BidDocumentsReviewById(ApproveUser.BidDocumentsReviewId); BidDoc = BLL.PHTGL_BidDocumentsReviewService.GetPHTGL_BidDocumentsReviewById(ApproveUser.BidDocumentsReviewId);
ActPlan = BLL.PHTGL_ActionPlanReviewService.GetPHTGL_ActionPlanReviewById(BidDoc.ActionPlanReviewId); ActPlan = BLL.PHTGL_ActionPlanReviewService.GetPHTGL_ActionPlanReviewById(BidDoc.ActionPlanReviewId);
ActPlanFormat = PHTGL_ActionPlanFormationService.GetPHTGL_ActionPlanFormationById(ActPlan.ActionPlanID);
var Doc_ActPlan = PHTGL_ActionPlanFormationService.Print(ActPlan.ActionPlanID); var Doc_ActPlan = PHTGL_ActionPlanFormationService.Print(ActPlan.ActionPlanID);
var Doc_BidDoc = PHTGL_BidDocumentsReviewService.Print(BidDoc.BidDocumentsReviewId); var Doc_BidDoc = PHTGL_BidDocumentsReviewService.Print(BidDoc.BidDocumentsReviewId);
@@ -727,20 +753,21 @@ namespace BLL
var Doc_SetSub = PHTGL_SetSubReviewService.Print(SetSub.SetSubReviewID); var Doc_SetSub = PHTGL_SetSubReviewService.Print(SetSub.SetSubReviewID);
var Doc_Contract = Print(ContractReviewId); var Doc_Contract = Print(ContractReviewId);
Doc_ActPlan.AppendDocument(Doc_BidDoc, ImportFormatMode.UseDestinationStyles); Doc_ActPlan.Save(path+ ActPlanFormat.ActionPlanCode+ "施工分包实施计划.pdf" , SaveFormat.Pdf);
Doc_ActPlan.AppendDocument(Doc_ApproveUser, ImportFormatMode.UseDestinationStyles); Doc_BidDoc.Save(path + BidDoc.BidDocumentsCode + "招标文件审批表.pdf",SaveFormat.Pdf);
Doc_ActPlan.AppendDocument(Doc_SetSub, ImportFormatMode.UseDestinationStyles); Doc_ApproveUser.Save(path+ "施工招标评标小组名单审批表.pdf", SaveFormat.Pdf);
Doc_ActPlan.AppendDocument(Doc_Contract, ImportFormatMode.UseDestinationStyles); Doc_SetSub.Save(path+ SetSub.SetSubReviewCode+ "确定分包商审批表.pdf", SaveFormat.Pdf);
return Doc_ActPlan; Doc_Contract.Save(path+ Contract.ContractNum + "合同评审.pdf", SaveFormat.Pdf);
} }
public static Document PrintApprovalFormType__Con(string ContractReviewId) public static void PrintApprovalFormType__Con(string ContractReviewId,string path)
{ {
Model.PHTGL_Contract Contract = new Model.PHTGL_Contract(); //合同信息 Model.PHTGL_Contract Contract = new Model.PHTGL_Contract(); //合同信息
var ReviewModel = BLL.PHTGL_ContractReviewService.GetPHTGL_ContractReviewById(ContractReviewId); var ReviewModel = BLL.PHTGL_ContractReviewService.GetPHTGL_ContractReviewById(ContractReviewId);
Contract = BLL.ContractService.GetContractById(ReviewModel.ContractId); Contract = BLL.ContractService.GetContractById(ReviewModel.ContractId);
var Doc_Contract = Print(ContractReviewId); var Doc_Contract = Print(ContractReviewId);
return Doc_Contract; Doc_Contract.Save(path + Contract.ContractNum + "合同评审.pdf", SaveFormat.Pdf);
} }
/// <summary> /// <summary>
/// 分包合同协议书 /// 分包合同协议书
@@ -21,7 +21,6 @@ namespace BLL
return Funs.DB.PHTGL_Approve.FirstOrDefault(e => e.ApproveId == ApproveId); return Funs.DB.PHTGL_Approve.FirstOrDefault(e => e.ApproveId == ApproveId);
} }
public static List<Model.PHTGL_Approve> GetPHTGL_ApproveByContractId(string contractId) public static List<Model.PHTGL_Approve> GetPHTGL_ApproveByContractId(string contractId)
{ {
var q = (from x in Funs.DB.PHTGL_Approve where x.ContractId == contractId && x.State == 0 select x).ToList(); var q = (from x in Funs.DB.PHTGL_Approve where x.ContractId == contractId && x.State == 0 select x).ToList();
@@ -41,9 +40,10 @@ namespace BLL
return q; return q;
} }
public static Model.PHTGL_Approve GetPHTGL_ApproveByContractIdandUserId(string contractId, string UserID) public static Model.PHTGL_Approve GetPHTGL_ApproveByContractIdandUserId(string contractId, string UserID)
{ {
return Funs.DB.PHTGL_Approve.FirstOrDefault(e => e.ContractId == contractId && e.ApproveMan == UserID); var q=(from x in Funs.DB.PHTGL_Approve where x.ContractId==contractId && x.ApproveMan==UserID orderby x.ApproveDate descending select x ).FirstOrDefault();
//return Funs.DB.PHTGL_Approve.FirstOrDefault(e => e.ContractId == contractId && e.ApproveMan == UserID );
return q;
} }
public static Model.PHTGL_Approve GetPHTGL_ApproveByContractIdAndType(string contractId, string approveType) public static Model.PHTGL_Approve GetPHTGL_ApproveByContractIdAndType(string contractId, string approveType)