客户字符串替换

This commit is contained in:
李狗蛋
2025-04-15 11:35:12 +08:00
parent a8271eafdf
commit 4f6ed39575
20 changed files with 138 additions and 10824 deletions

View File

@@ -2,6 +2,7 @@
using Kingdee.BOS.Core;
using Kingdee.BOS.Core.Bill.PlugIn;
using Kingdee.BOS.Core.DynamicForm;
using Kingdee.BOS.Core.DynamicForm.PlugIn;
using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;
using Kingdee.BOS.Orm.DataEntity;
using Kingdee.BOS.Util;
@@ -16,14 +17,15 @@ using System.Threading.Tasks;
namespace GZ_LTHPilot_ORDER.SAL_QUOTATION
{
[Description("【表单插件】销售报价单-下载Word"), HotUpdate]
public class DownLoadFile : AbstractBillPlugIn
public class DownLoadFile : AbstractDynamicFormPlugIn
{
public override void AfterDoOperation(AfterDoOperationEventArgs e)
public override void BarItemClick(BarItemClickEventArgs e)
{
base.AfterDoOperation(e);
//下载word
if (e.Operation.Operation.Equals("VRYF_tbButton"))
base.BarItemClick(e);
if (e.BarItemKey.Equals("VRYF_tbButton"))
{
//this.View.ShowMessage("1233456");
//获取时间戳
var ts = DateTime.Now - new DateTime(1970, 1, 1, 0, 0, 0, 0);
var _TimeSpan = Convert.ToInt64(ts.TotalSeconds).ToString();
@@ -41,6 +43,10 @@ namespace GZ_LTHPilot_ORDER.SAL_QUOTATION
string FIsDebugging = this.View.Model.GetValue("FIsDebugging")?.ToString();
//获取工程项目
DynamicObject F_projectname = this.View.Model.GetValue("F_projectname") as DynamicObject;
//获取是否不含施工,含调试费#
String F_BHSGHTSF = this.View.Model.GetValue("F_BHSGHTSF")?.ToString();
//判断是否含施工
String F_HSG = this.View.Model.GetValue("F_HSG")?.ToString();
if (FCustId == null)
{
@@ -60,6 +66,7 @@ namespace GZ_LTHPilot_ORDER.SAL_QUOTATION
return;
}
string projectname = "";
string FCustIdprojectname = "";
if (oId != 438223)
{
projectname = F_projectname["NAME"]?.ToString();
@@ -68,63 +75,60 @@ namespace GZ_LTHPilot_ORDER.SAL_QUOTATION
projectname = projectname.Replace("+", "");
projectname = projectname.Replace("*", " ");
projectname = projectname.Replace(":", "");
projectname = projectname.Replace("\"", "“");
FCustIdprojectname = FCustId["NAME"]?.ToString();
//特殊符号平替解决方法:
FCustIdprojectname = FCustIdprojectname.Replace("/", "");
FCustIdprojectname = FCustIdprojectname.Replace("+", "");
FCustIdprojectname = FCustIdprojectname.Replace("*", " ");
FCustIdprojectname = FCustIdprojectname.Replace(":", "");
FCustIdprojectname = FCustIdprojectname.Replace("\"", "“");
}
string FPath = string.Format(@"D:\导出Word\{0}\{1}\{2}\{3}年\{4}月\{5}日\{6}.docx", this.Context.DataCenterName, "销售单",
string FPath = string.Format(@"D:\导出Word\{0}\{1}\{2}\{3}年\{4}月\{5}日\{6}.docx", this.Context.DataCenterName, "销售报价单",
this.View.Model.DataObject["Billno"], DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day, string.Format("{0}-{1}-{2}-{3}-{4}", FDATE.ToString("yyyy-MM-dd"), F_cocntractnumber
, string.IsNullOrWhiteSpace(projectname) ? "" : projectname, FCustId == null ? "" : FCustId["NAME"], FSalerId == null ? "" : FSalerId["NAME"]));
//获取订单类型编码
DynamicObject F_Ordercategory = this.View.Model.GetValue("F_Ordercategory") as DynamicObject;
if (F_Ordercategory == null)
{
return;
}
string FOrdercategory = Convert.ToString(F_Ordercategory["FNumber"]);
, string.IsNullOrWhiteSpace(projectname) ? "":projectname,FCustIdprojectname, FSalerId == null ? "" : FSalerId["NAME"]));
//获取金额
string fBILLNO = this.View.Model.GetValue("FBILLNO").ToString();
string sql = string.Format(@"/*dialect*/Select B.FBillAllAmount as 'FBillAllAmount' From T_SAL_QUOTATION A
JOIN T_SAL_QUOTATIONFIN B on A.FID = B.FID Where A.FBILLNO = '{0}'", fBILLNO);
//获取销售报价单的合同类型,根据报价单合同类型获取模版
string sql = string.Format(@"/*dialect*/
EXEC GetSAL_QUOTATIONHT_GZTH '{0}'
", fBILLNO);
var sqlList = DBUtils.ExecuteDynamicObject(Context, sql);
var fAmount = Convert.ToDecimal(sqlList[0]["FBillAllAmount"]);
//取值合同类型
var F_Ordercategory = Convert.ToString(sqlList[0]["FNUMBER"]);
String FOrdercategory = "";
if (fAmount >= 200000 && FOrdercategory == "P")
//判断是哪个合同
if (F_Ordercategory == "C")
{
FOrdercategory = "PP";
FOrdercategory = "XNC";
}
var ntess = FIsDebugging;
if (FOrdercategory == "SX" && FIsDebugging == "1")
if(F_Ordercategory == "CS")
{
FOrdercategory = "SX-1";
}
if (FOrdercategory == "SX" && FIsDebugging == "0")
{
FOrdercategory = "SX-2";
}
//判断退货/换货
var splitList = F_cocntractnumber.Split('-');
if (splitList.Count() > 1)
{
if (splitList[1].ToString().Contains("TH"))
//判断含调试费
if (F_BHSGHTSF == "True")
{
FOrdercategory = "TH";
FOrdercategory = "XNSGCS";
}
else
//判断含施工,不含调试费
else if (F_HSG == "True")
{
FOrdercategory = "HH";
FOrdercategory = "XNTSCS";
}
}
if (F_Ordercategory == "CW") {
//判断是否按服务事件报价
}
//获取模板地址
var TempModelPath = SqlManage.SqlManage.GetTempModelPath(this.Context, FOrdercategory);
if (TempModelPath == null)
if (TempModelPath.Count == 0)
{
this.View.ShowErrMessage("找不到对应的word模板");
this.View.ShowErrMessage("找不到对应的word模板,CS模版需勾选是否不含施工或是否含施工复选框。");
return;
}
//获取内容
@@ -155,12 +159,12 @@ namespace GZ_LTHPilot_ORDER.SAL_QUOTATION
this.View.ShowForm(showParameter);
}
}
string opt = e.Operation.Operation;
//string opt = e.Operation.Operation;
if (opt == "Save" && e.OperationResult.IsSuccess)
{
this.View.Refresh();
}
//if (opt == "Save" && e.OperationResult.IsSuccess)
//{
// this.View.Refresh();
//}
}
}
}