diff --git a/Pilot_KD_Parino/Sal_Order/Bill.cs b/Pilot_KD_Parino/Sal_Order/Bill.cs index fa611b1..e231639 100644 --- a/Pilot_KD_Parino/Sal_Order/Bill.cs +++ b/Pilot_KD_Parino/Sal_Order/Bill.cs @@ -16,6 +16,7 @@ using Kingdee.BOS.Orm.DataEntity; using System.Web; using Kingdee.BOS.App.Data; using Kingdee.BOS.Core.Deploy; +using System.Data; namespace Pilot_KD_Parino.Sal_Order { @@ -129,7 +130,18 @@ namespace Pilot_KD_Parino.Sal_Order string sql = string.Format(@"/*dialect*/Select B.FBILLALLAMOUNT as 'FBILLALLAMOUNT' From T_SAL_ORDER A JOIN T_SAL_ORDERFIN B on A.FID = B.FID Where A.FBILLNO = '{0}'", fBILLNO); var sqlList = DBUtils.ExecuteDynamicObject(Context, sql); - var fAmount = Convert.ToDecimal(sqlList[0]["FBILLALLAMOUNT"]); + decimal fAmount; + if (sqlList.Count != 0) + { + fAmount = Convert.ToDecimal(sqlList[0]["FBILLALLAMOUNT"]); + } + else + { + sql = string.Format(@"/*dialect*/Select B.FBILLALLAMOUNT as 'FBILLALLAMOUNT' From T_SAL_XORDER A + JOIN T_SAL_XORDERFIN B on A.FID = B.FID Where A.FBILLNO = '{0}'", fBILLNO); + sqlList = DBUtils.ExecuteDynamicObject(Context, sql); + fAmount = Convert.ToDecimal(sqlList[0]["FBILLALLAMOUNT"]); + } if (fAmount >= 200000 && FOrdercategory == "P") { @@ -169,8 +181,28 @@ namespace Pilot_KD_Parino.Sal_Order this.View.ShowErrMessage("找不到对应的word模板"); return; } - //获取内容 - var TempModelData = SQL.SqlManage.GetTempModelData(this.Context, Convert.ToString(this.View.Model.DataObject["Id"]), FOrdercategory); + var formId = this.View.Model.DataObject["FFormId"]; + DataSet TempModelData = null; + if (formId.ToString() == "SAL_XORDER") + { + sql = string.Format(@"SELECT FDOCUMENTSTATUS FROM T_SAL_XORDER WHERE FBILLNO = '{0}'", fBILLNO); + sqlList = DBUtils.ExecuteDynamicObject(Context, sql); + if (Convert.ToString(sqlList[0]["FDOCUMENTSTATUS"]) != "C") + { + this.View.ShowErrMessage("销售订单新变更单未审核,不能下载合同"); + return; + } + + sql = string.Format(@"SELECT FID AS FID FROM T_SAL_ORDER WHERE FXPKID IN (SELECT FID FROM T_SAL_XORDER WHERE FBILLNO = '{0}')", fBILLNO); + sqlList = DBUtils.ExecuteDynamicObject(Context, sql); + //获取内容 + TempModelData = SQL.SqlManage.GetTempModelData(this.Context, Convert.ToString(sqlList[0]["FID"]), FOrdercategory); + } + else + { + //获取内容 + TempModelData = SQL.SqlManage.GetTempModelData(this.Context, Convert.ToString(this.View.Model.DataObject["Id"]), FOrdercategory); + } // 提取文件名 string fileProjectname = Path.GetFileName(FPath);