1
This commit is contained in:
parent
dff2f5f9fe
commit
569ca39775
@ -238,6 +238,9 @@
|
||||
<Compile Include="PRD_PPBOMCHANGE\PLTHForm.cs" />
|
||||
<Compile Include="PRD_PPBOMCHANGE\PLTHWL.cs" />
|
||||
<Compile Include="SAL_DELIVERYNOTICE\PushCeLue.cs" />
|
||||
<Compile Include="SAL_ORDER\SaveWL.cs" />
|
||||
<Compile Include="T_PUR_RECEIVE\SaveDate.cs" />
|
||||
<Compile Include="SAL_DELIVERYNOTICE\SaveYFH.cs" />
|
||||
<Compile Include="T_IV_SALESIC\AuditS_Order.cs" />
|
||||
<Compile Include="Common\CommonHelper.cs" />
|
||||
<Compile Include="PRD_PPBOM\AuditPOM.cs" />
|
||||
|
@ -16,7 +16,8 @@ namespace GZ_LTHPilot_ORDER.SAL_DELIVERYNOTICE
|
||||
public override void OnParseFilter(ParseFilterEventArgs e)
|
||||
{
|
||||
base.OnParseFilter(e);
|
||||
e.FilterPolicySQL = string.Format("And 1 = 1");
|
||||
e.FilterPolicySQL += $"AND (SELECT CASE WHEN (SELECT COUNT(*) FROM T_SAL_DELIVERYNOTICEENTRY A INNER JOIN T_SAL_DELIVERYNOTICEENTRY_LK B ON A.FENTRYID = B.FENTRYID AND B.FSTABLENAME = 'T_SAL_ORDERENTRY' INNER JOIN T_SAL_ORDER C ON C.FID = B.FSBILLID INNER JOIN T_SAL_ORDERENTRY D ON C.FID = D.FID WHERE C.FSaleOrgId = 100302 AND C.FSALEORGID <> C.F_SaleOrgId AND A.FENTRYID = t1.FENTRYID) > 0 THEN 1 WHEN (SELECT COUNT(*) FROM T_SAL_DELIVERYNOTICEENTRY A INNER JOIN T_SAL_DELIVERYNOTICEENTRY_LK B ON A.FENTRYID = B.FENTRYID AND B.FSTABLENAME = 'T_SAL_ORDERENTRY' INNER JOIN T_SAL_ORDER C ON C.FID = B.FSBILLID INNER JOIN T_SAL_ORDERENTRY D ON C.FID = D.FID WHERE C.FSaleOrgId <> 100302 AND A.FENTRYID = t1.FENTRYID) > 0 THEN 1 WHEN (SELECT COUNT(*) FROM T_PRD_MO A INNER JOIN T_PRD_MOENTRY B ON A.FID = B.FID INNER JOIN T_PRD_MOENTRY_LK C ON B.FENTRYID = C.FENTRYID AND C.FSTABLENAME = 'T_SAL_ORDERENTRY' WHERE A.FDocumentStatus = 'C' AND C.FSBILLID IN (SELECT C.FID FROM T_SAL_DELIVERYNOTICEENTRY A INNER JOIN T_SAL_DELIVERYNOTICEENTRY_LK B ON A.FENTRYID = B.FENTRYID AND B.FSTABLENAME = 'T_SAL_ORDERENTRY' INNER JOIN T_SAL_ORDER C ON C.FID = B.FSBILLID INNER JOIN T_SAL_ORDERENTRY D ON C.FID = D.FID INNER JOIN T_BD_MATERIAL E ON D.FMATERIALID = E.FMATERIALID WHERE C.FSaleOrgId = 100302 AND C.FSALEORGID = C.F_SaleOrgId AND (E.FNUMBER NOT LIKE 'H.10%' OR E.FNUMBER NOT LIKE 'H.20%' OR E.FNUMBER NOT LIKE 'H.30%') AND A.FENTRYID = t1.FENTRYID)) > 0 THEN 1 ELSE (SELECT COUNT(*) FROM T_PRD_MO A INNER JOIN T_PRD_MOENTRY B ON A.FID = B.FID INNER JOIN T_PRD_MOENTRY_LK C ON B.FENTRYID = C.FENTRYID AND C.FSTABLENAME = 'T_SAL_ORDERENTRY' WHERE A.FDocumentStatus = 'C' AND C.FSBILLID IN (SELECT C.FID FROM T_SAL_DELIVERYNOTICEENTRY A INNER JOIN T_SAL_DELIVERYNOTICEENTRY_LK B ON A.FENTRYID = B.FENTRYID AND B.FSTABLENAME = 'T_SAL_ORDERENTRY' INNER JOIN T_SAL_ORDER C ON C.FID = B.FSBILLID INNER JOIN T_SAL_ORDERENTRY D ON C.FID = D.FID INNER JOIN T_BD_MATERIAL E ON D.FMATERIALID = E.FMATERIALID WHERE C.FSaleOrgId = 100302 AND C.FSALEORGID = C.F_SaleOrgId AND (E.FNUMBER LIKE 'H.10%' OR E.FNUMBER LIKE 'H.20%' OR E.FNUMBER LIKE 'H.30%') AND A.FENTRYID = t1.FENTRYID)) END AS Result) > 0";
|
||||
e.PlugFilterDesc = "当销售订单的销售组织为珠海派诺且销售组织=备货组织时,销售订单需下推生产订单且生产订单处于审核状态后,才可由发货通知单下推销售出库";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
191
SAL_DELIVERYNOTICE/SaveYFH.cs
Normal file
191
SAL_DELIVERYNOTICE/SaveYFH.cs
Normal file
@ -0,0 +1,191 @@
|
||||
using System;
|
||||
using Kingdee.BOS.Core.Bill.PlugIn;
|
||||
using Kingdee.BOS.App.Data;
|
||||
using System.ComponentModel;
|
||||
using Kingdee.BOS.Core.Bill.PlugIn.Args;
|
||||
using Kingdee.BOS.Util;
|
||||
using Kingdee.BOS.WebApi.Client;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using System.Net.Http;
|
||||
using System.Text;
|
||||
using Kingdee.BOS.WebApi.FormService;
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace GZ_LthFHTZSava
|
||||
{
|
||||
[Description("保存前触发,以收款条件和发货金额做判断01"), HotUpdate]
|
||||
public class SaveYFH : AbstractBillPlugIn
|
||||
{
|
||||
private double F_Amount;
|
||||
|
||||
//获取当前时间
|
||||
private DateTime now = DateTime.Now;
|
||||
|
||||
public override void BeforeSave(BeforeSaveEventArgs e)
|
||||
{
|
||||
base.BeforeSave(e);
|
||||
|
||||
//获取发货通知单的销售范围#字段
|
||||
var F_SalesRange = this.View.Model.GetValue("F_SalesRange");
|
||||
|
||||
//判断销售范围字段等于购销
|
||||
if (F_SalesRange.ToString() == "GX")
|
||||
{
|
||||
//获取发货通知单的源单编号字段
|
||||
var FSrcBillNo = this.View.Model.GetValue("FSrcBillNo", 0);
|
||||
|
||||
//SQL查询获取销售订单的累计核销金额字段
|
||||
var F_AmountSql = string.Format(@"SELECT F_AMOUNT FROM T_SAL_ORDER WHERE FBILLNO = '{0}'", FSrcBillNo.ToString());
|
||||
var F_AmountDS = DBUtils.ExecuteDynamicObject(this.Context, F_AmountSql);
|
||||
if (F_AmountDS.Count != 0)
|
||||
{
|
||||
F_Amount = Convert.ToDouble(F_AmountDS[0]["F_AMOUNT"]);
|
||||
}
|
||||
|
||||
//SQL以销售订单编号做查询,查询收款条件名称
|
||||
var SKTJFNameSql = string.Format(@"SELECT ISNULL(t3.FNAME,'') AS FNAME FROM T_SAL_ORDER t1 LEFT JOIN T_SAL_ORDERPLAN t2 on t1.FID = t2.FID LEFT JOIN T_BD_RECCONDITION_L t3 on t3.FID = t2.F_RecConditionId Where t1.FBILLNO = '{0}'", FSrcBillNo.ToString());
|
||||
var SKTJFNameDS = DBUtils.ExecuteDynamicObject(this.Context, SKTJFNameSql);
|
||||
foreach (var SKTJFNameRow in SKTJFNameDS)
|
||||
{
|
||||
if (SKTJFNameRow["FNAME"].ToString() == "")
|
||||
{
|
||||
continue;
|
||||
}
|
||||
//判定收款条件是否为预付款
|
||||
string IFYFK = "预付";
|
||||
if (SKTJFNameRow["FNAME"].ToString().Contains(IFYFK))
|
||||
{
|
||||
//SQL查询获取销售订单预付款的应收金额
|
||||
string FRecAdvanceAmountSql = string.Format(@"SELECT SUM(t1.FRecAdvanceAmount) AS FRecAdvanceAmount FROM T_SAL_ORDERPLAN t1 LEFT JOIN T_SAL_ORDER t2 on t1.FID = t2.FID LEFT JOIN T_BD_RECCONDITION_L t3 on t3.FID = t1.F_RECCONDITIONID WHERE t2.FBILLNO = '{0}' AND t3.FNAME like '%预付%'", FSrcBillNo);
|
||||
var FRecAdvanceAmountDS = DBUtils.ExecuteDynamicObject(this.Context, FRecAdvanceAmountSql);
|
||||
if (FRecAdvanceAmountDS.Count != 0)
|
||||
{
|
||||
double FRecAdvanceAmount = Convert.ToDouble(FRecAdvanceAmountDS[0]["FRecAdvanceAmount"]);
|
||||
//判定收款条件为预付款时,是否为预发货
|
||||
if (F_Amount < FRecAdvanceAmount)
|
||||
{
|
||||
this.View.Model.SetValue("F_SFYFH", "是");
|
||||
this.View.Model.SetValue("F_VRYF_Date_83g", now);
|
||||
this.View.UpdateView();
|
||||
}
|
||||
else
|
||||
{
|
||||
this.View.Model.SetValue("F_SFYFH", "否");
|
||||
this.View.Model.SetValue("F_VRYF_Date_83g", now);
|
||||
this.View.UpdateView();
|
||||
}
|
||||
}
|
||||
}
|
||||
//判定条件是否为款到发货
|
||||
string IFKDFH = "款到发货";
|
||||
if (SKTJFNameRow["FNAME"].ToString().Contains(IFKDFH))
|
||||
{
|
||||
//获取当前单据的发货金额
|
||||
double FBillAllAmount1 = Convert.ToDouble(this.View.Model.GetValue("FBillAllAmount"));
|
||||
|
||||
string FBillAllAmountSql;
|
||||
|
||||
//SQL查询累计发货金额
|
||||
if (this.View.Model.GetValue("FBillNo").IsNullOrEmpty())
|
||||
{
|
||||
FBillAllAmountSql = string.Format(@"SELECT SUM(t1.FBillAllAmount) FBillAllAmount FROM T_SAL_DELIVERYNOTICEFIN t1 LEFT JOIN T_SAL_DELIVERYNOTICEENTRY t2 on t1.FID = t2.FID WHERE t2.FSRCBILLNO = '{0}'And t2.FID != 0", FSrcBillNo);
|
||||
}
|
||||
else
|
||||
{
|
||||
//获取发货通知单的FID
|
||||
string FormTitle = this.View.Model.DataObject["Id"].ToString();
|
||||
|
||||
FBillAllAmountSql = string.Format(@"SELECT SUM(t1.FBillAllAmount) FBillAllAmount FROM T_SAL_DELIVERYNOTICEFIN t1 LEFT JOIN T_SAL_DELIVERYNOTICEENTRY t2 on t1.FID = t2.FID WHERE t2.FSRCBILLNO = '{0}' And t1.FID != '{1}'", FSrcBillNo, FormTitle);
|
||||
}
|
||||
|
||||
var FBillAllAmountDS = DBUtils.ExecuteDynamicObject(this.Context, FBillAllAmountSql);
|
||||
if (FBillAllAmountDS.Count != 0)
|
||||
{
|
||||
double FBillAllAmount = Convert.ToDouble(FBillAllAmountDS[0]["FBillAllAmount"]);
|
||||
if (F_Amount < FBillAllAmount + FBillAllAmount1)
|
||||
{
|
||||
this.View.Model.SetValue("F_SFYFH", "是");
|
||||
this.View.UpdateView();
|
||||
this.View.Model.SetValue("F_VRYF_Date_83g", now);
|
||||
this.View.UpdateView();
|
||||
}
|
||||
else
|
||||
{
|
||||
this.View.Model.SetValue("F_SFYFH", "否");
|
||||
this.View.UpdateView();
|
||||
this.View.Model.SetValue("F_VRYF_Date_83g", now);
|
||||
this.View.UpdateView();
|
||||
}
|
||||
}
|
||||
}
|
||||
////判定条件是否为协议付款
|
||||
//string IFXYFK = "协议付款";
|
||||
//if (SKTJFNameRow["FNAME"].ToString().Contains(IFXYFK))
|
||||
//{
|
||||
// //SQL查询销售组织和客户编码
|
||||
// string FSaleOrgIdAndFCustIdSql = string.Format(@"SELECT t1.FSaleOrgId AS FSaleOrgId,t2.FNUMBER AS FNUMBER FROM T_SAL_ORDER t1 LEFT JOIN T_BD_CUSTOMER t2 on t1.FCUSTID = t2.FCUSTID WHERE FBILLNO = '{0}'", FSrcBillNo);
|
||||
// var FSaleOrgIdAndFCustIdDS = DBUtils.ExecuteDynamicObject(this.Context, FSaleOrgIdAndFCustIdSql);
|
||||
// if (FSaleOrgIdAndFCustIdDS.Count != 0)
|
||||
// {
|
||||
// //获取销售组织
|
||||
// string FSaleOrgId = FSaleOrgIdAndFCustIdDS[0]["FSaleOrgId"].ToString();
|
||||
// //获取客户编码
|
||||
// string FCustId = FSaleOrgIdAndFCustIdDS[0]["FNUMBER"].ToString();
|
||||
// //通过API获取客户剩余信用额度
|
||||
// var Json = "{\"FieldKeys\":\"FLIMITBALANCE\",\"SchemeId\":\"\",\"StartRow\":0,\"Limit\":2000,\"IsVerifyBaseDataField\":\"true\",\"FilterString\":[],\"Model\":{\"FSaleOrgList\":\"" + FSaleOrgId + "\",\"FObjectType\":\"BD_Customer\",\"FStartCustId\":{\"FNumber\":\"" + FCustId + "\"},\"FEndCustId\":{\"FNumber\":\"" + FCustId + "\"},\"FCreditStatus\":\"ALL\",\"FIsExceeds\":\"-1\",\"FMultiSelect\":false}}";
|
||||
|
||||
// var result = WebApiServiceCall.GetSysReportData(this.Context, "CRE_Rpt_CreditInfo", Json);
|
||||
|
||||
// var resultJo = JsonConvert.DeserializeObject<JToken>(JsonConvert.SerializeObject(result));
|
||||
// var IsSuccess = resultJo["Result"]["IsSuccess"].Value<string>();
|
||||
// if (IsSuccess == "True")
|
||||
// {
|
||||
// var RowCount = resultJo["Result"]["RowCount"].Value<int>();
|
||||
// if (RowCount != 0)
|
||||
// {
|
||||
// JArray FLIMITBALANCEJArray = resultJo["Result"]["Rows"].Value<JArray>();
|
||||
|
||||
// double FLIMITBALANCE = Convert.ToDouble(FLIMITBALANCEJArray[0][0]);
|
||||
|
||||
// //查询当前发货通知单的发货金额
|
||||
// double FBillAllAmount = Convert.ToDouble(this.View.Model.GetValue("FBillAllAmount").ToString());
|
||||
// //发货金额大于剩余额度百分之九十,则判定为预发货
|
||||
// if (FBillAllAmount > FLIMITBALANCE * 0.9)
|
||||
// {
|
||||
// this.View.Model.SetValue("F_SFYFH", "是");
|
||||
// this.View.UpdateView();
|
||||
// this.View.Model.SetValue("F_VRYF_Date_83g", now);
|
||||
// this.View.UpdateView();
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// this.View.Model.SetValue("F_SFYFH", "否");
|
||||
// this.View.UpdateView();
|
||||
// this.View.Model.SetValue("F_VRYF_Date_83g", now);
|
||||
// this.View.UpdateView();
|
||||
// }
|
||||
// }
|
||||
// else if (RowCount == 0)
|
||||
// {
|
||||
// this.View.Model.SetValue("F_SFYFH", "是");
|
||||
// this.View.UpdateView();
|
||||
// this.View.ShowErrMessage("客户编码: " + FCustId + ",未启用信用管理");
|
||||
// this.View.Model.SetValue("F_VRYF_Date_83g", now);
|
||||
// this.View.UpdateView();
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// this.View.Model.SetValue("F_SFYFH", "否");
|
||||
// this.View.UpdateView();
|
||||
// this.View.Model.SetValue("F_VRYF_Date_83g", now);
|
||||
// this.View.UpdateView();
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
//}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
41
SAL_ORDER/SaveWL.cs
Normal file
41
SAL_ORDER/SaveWL.cs
Normal file
@ -0,0 +1,41 @@
|
||||
using Kingdee.BOS.Core.DynamicForm.PlugIn;
|
||||
using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;
|
||||
using Kingdee.BOS.Util;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace GZ_LTHPilot_ORDER.SAL_ORDER
|
||||
{
|
||||
[Description("服务插件:销售订单根据物料编码做判断"), HotUpdate]
|
||||
public class SaveWL : AbstractOperationServicePlugIn
|
||||
{
|
||||
public override void BeforeExecuteOperationTransaction(BeforeExecuteOperationTransaction e)
|
||||
{
|
||||
base.BeforeExecuteOperationTransaction(e);
|
||||
foreach (var Row in e.SelectedRows)
|
||||
{
|
||||
//获取单据信息
|
||||
var Billobj = Row.DataEntity;
|
||||
//根据订单FID
|
||||
var sqls = SqlManage.SqlManage.SaveOrder_GZTH(this.Context, Convert.ToString(Billobj["Id"]));
|
||||
if (sqls != null)
|
||||
{
|
||||
foreach (var sql in sqls)
|
||||
{
|
||||
if (Convert.ToInt32(sql["SUMWL"]) == 0)
|
||||
{
|
||||
e.Cancel = true;
|
||||
throw new Exception(
|
||||
string.Format(@"物料编码J开头,则明细物联网卡使用年份字段必填")
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -58,17 +58,17 @@ namespace GZ_LTHPilot_ORDER.SqlManage
|
||||
return DBServiceHelper.ExecuteDynamicObject(ctx, sql.ToString(), null, null, CommandType.Text, null);
|
||||
}
|
||||
//生产用料清单明细为半成品仓,更改是否关键件字段
|
||||
public static void UpdatePRD_PPBOMFIsKeyComponent(Context ctx,string FENTRYID)
|
||||
public static void UpdatePRD_PPBOMFIsKeyComponent(Context ctx, string FENTRYID)
|
||||
{
|
||||
string sql = string.Format(@"/*dialect*/
|
||||
update T_PRD_PPBOMENTRY_C
|
||||
SET FIsKeyComponent = '1'
|
||||
WHERE FENTRYID = '{0}'
|
||||
",FENTRYID);
|
||||
", FENTRYID);
|
||||
DBServiceHelper.ExecuteDynamicObject(ctx, sql.ToString(), null, null, CommandType.Text, null);
|
||||
}
|
||||
//生产用料清单明细为包材仓,更改发料方式
|
||||
public static void UpdatePRD_PPBOMFIssueType(Context ctx, string FENTRYID)
|
||||
public static void UpdatePRD_PPBOMFIssueType(Context ctx, string FENTRYID)
|
||||
{
|
||||
string sql = string.Format(@"/*dialect*/
|
||||
update T_PRD_PPBOMENTRY_C
|
||||
@ -84,7 +84,7 @@ namespace GZ_LTHPilot_ORDER.SqlManage
|
||||
update T_PRD_PPBOMENTRY_C
|
||||
SET FIssueType = '4',FBackFlushType = '3',FSrcTransOrgId = '{1}'
|
||||
WHERE FENTRYID = '{0}'
|
||||
", FENTRYID,ZZID);
|
||||
", FENTRYID, ZZID);
|
||||
DBServiceHelper.ExecuteDynamicObject(ctx, sql.ToString(), null, null, CommandType.Text, null);
|
||||
}
|
||||
//生产用料清单明细为包装结构件仓和装配结构件仓,更改拔出仓库为仓库
|
||||
@ -159,7 +159,7 @@ namespace GZ_LTHPilot_ORDER.SqlManage
|
||||
}
|
||||
|
||||
//查询收款单源单明细的源单类型为应收单查询销售订单编号的SQL语句
|
||||
public static DynamicObjectCollection GetRECEIVEBILLFSRCBILLNOAndFREALRECAMOUNTFOR(Context ctx,string FID)
|
||||
public static DynamicObjectCollection GetRECEIVEBILLFSRCBILLNOAndFREALRECAMOUNTFOR(Context ctx, string FID)
|
||||
{
|
||||
string sql = string.Format(@"/*dialect*/
|
||||
SELECT
|
||||
@ -178,13 +178,13 @@ namespace GZ_LTHPilot_ORDER.SqlManage
|
||||
}
|
||||
|
||||
//更新销售订单表头的累计核销金额
|
||||
public static void UpdateOrderF_AMOUNTNew(Context ctx,string Fbillno,string FREALRECAMOUNTFOR)
|
||||
public static void UpdateOrderF_AMOUNTNew(Context ctx, string Fbillno, string FREALRECAMOUNTFOR)
|
||||
{
|
||||
string sql = string.Format(@"/*dialect*/
|
||||
update T_SAL_ORDER
|
||||
SET F_AMOUNT = F_AMOUNT+{1}
|
||||
WHERE FBILLNO = '{0}'
|
||||
", Fbillno,FREALRECAMOUNTFOR);
|
||||
", Fbillno, FREALRECAMOUNTFOR);
|
||||
DBServiceHelper.ExecuteDynamicObject(ctx, sql.ToString(), null, null, CommandType.Text, null);
|
||||
}
|
||||
|
||||
@ -200,7 +200,7 @@ namespace GZ_LTHPilot_ORDER.SqlManage
|
||||
}
|
||||
|
||||
//获取预收款单的销售订单源单编号
|
||||
public static DynamicObjectCollection GetRECEIVEBILLFSRCBILLNOS(Context ctx,string FID)
|
||||
public static DynamicObjectCollection GetRECEIVEBILLFSRCBILLNOS(Context ctx, string FID)
|
||||
{
|
||||
string sql = string.Format(@"
|
||||
SELECT
|
||||
@ -229,7 +229,7 @@ namespace GZ_LTHPilot_ORDER.SqlManage
|
||||
INNER JOIN T_AR_RECEIVABLEENTRY_LK F On E.FENTRYID = F.FENTRYID AND F.FALLAMOUNTFOR_D <> 0
|
||||
INNER JOIN T_SAL_RETURNSTOCKENTRY G ON G.FID = F.FSBILLID AND F.FSID = G.FENTRYID
|
||||
WHERE A.FID = '{0}' AND B.FSOURCETYPE = 'AR_receivable' AND A.FSALEORGID <> '100302'
|
||||
",FID);
|
||||
", FID);
|
||||
return DBServiceHelper.ExecuteDynamicObject(ctx, sql.ToString(), null, null, CommandType.Text, null);
|
||||
}
|
||||
|
||||
@ -257,56 +257,56 @@ namespace GZ_LTHPilot_ORDER.SqlManage
|
||||
}
|
||||
|
||||
//根据销售出库单的FID,获取销售订单的FENTRYID
|
||||
public static DynamicObjectCollection GetSal_ORderFEntryIdAndFid(Context ctx,string FID)
|
||||
public static DynamicObjectCollection GetSal_ORderFEntryIdAndFid(Context ctx, string FID)
|
||||
{
|
||||
string sql = string.Format(@"/*dialect*/
|
||||
EXEC GETSAL_ORDERFidAndFENTRYID_GZTH '{0}'
|
||||
",FID);
|
||||
", FID);
|
||||
//执行SQL
|
||||
return DBServiceHelper.ExecuteDynamicObject(ctx, sql.ToString(), null, null, CommandType.Text, null) as DynamicObjectCollection;
|
||||
}
|
||||
|
||||
//根据销售出库单的FID,反写销售订单新旧系统未出库数量
|
||||
public static void UpdateSal_OrderF_notoutQty(Context ctx,string FENTRYID)
|
||||
public static void UpdateSal_OrderF_notoutQty(Context ctx, string FENTRYID)
|
||||
{
|
||||
string sql = string.Format(@"/*dialect*/
|
||||
EXEC UpdateSAL_ORDERF_notoutQty '{0}'
|
||||
",FENTRYID);
|
||||
", FENTRYID);
|
||||
DBServiceHelper.ExecuteDynamicObject(ctx, sql.ToString(), null, null, CommandType.Text, null);
|
||||
}
|
||||
|
||||
//根据销售退货单的FID,获取销售订单的FENTRYID
|
||||
public static DynamicObjectCollection GETRETURNSTOCKSal_ORDERFidAndFentryid(Context ctx,string FID)
|
||||
public static DynamicObjectCollection GETRETURNSTOCKSal_ORDERFidAndFentryid(Context ctx, string FID)
|
||||
{
|
||||
string sql = string.Format(@"/*dialect*/
|
||||
EXEC GETRETURNSTOCKSal_ORDERFidAndFentryid_GZTH '{0}'
|
||||
",FID);
|
||||
", FID);
|
||||
return DBServiceHelper.ExecuteDynamicObject(ctx, sql.ToString(), null, null, CommandType.Text, null) as DynamicObjectCollection;
|
||||
}
|
||||
/*当物料为M开头,发料方式设置为调拨倒冲,倒冲时机设置为入库倒冲,拨出组织设置为珠海派诺,拨出组织为空,
|
||||
仓库设置为 : 68*/
|
||||
public static void UpdatePRD_PPBOMLIkeM(Context ctx,string FID)
|
||||
public static void UpdatePRD_PPBOMLIkeM(Context ctx, string FID)
|
||||
{
|
||||
string sql = string.Format(@"/*dialect*/
|
||||
EXEC UpdatePRD_PPBOMLIkeM_GZTH '{0}'
|
||||
",FID);
|
||||
", FID);
|
||||
DBServiceHelper.ExecuteDynamicObject(ctx, sql.ToString(), null, null, CommandType.Text, null);
|
||||
}
|
||||
//根据销售订单的纸质合同号,修改销售订单的销售类型字段
|
||||
public static void UpdateSal_OrderF_VRYF_Combo_lsn(Context ctx,string FID)
|
||||
public static void UpdateSal_OrderF_VRYF_Combo_lsn(Context ctx, string FID)
|
||||
{
|
||||
string sql = string.Format(@"/*dialect*/
|
||||
EXEC GZTH_UpdateSal_OrderF_VRYF_Combo_lsn '{0}'
|
||||
",FID);
|
||||
", FID);
|
||||
DBServiceHelper.ExecuteDynamicObject(ctx, sql.ToString(), null, null, CommandType.Text, null);
|
||||
}
|
||||
|
||||
//根据红字发票FID,获取查询出是否由蓝字发票进行下推,获取蓝字发票的FID,FENTRYID
|
||||
public static DynamicObjectCollection GetBuleFpFID(Context ctx,string FID)
|
||||
//根据红字发票FID,获取查询出是否由蓝字发票进行下推,获取蓝字发票的FID,FENTRYID
|
||||
public static DynamicObjectCollection GetBuleFpFID(Context ctx, string FID)
|
||||
{
|
||||
string sql = string.Format(@"/*dialect*/
|
||||
EXEC GetLPFid_GZTH '{0}'
|
||||
",FID);
|
||||
", FID);
|
||||
DBServiceHelper.ExecuteDynamicObject(ctx, sql.ToString(), null, null, CommandType.Text, null);
|
||||
string LpFidSql = string.Format(@"/*dialect*/
|
||||
SELECT * FROM GZ_AuditTHHZFP
|
||||
@ -315,7 +315,7 @@ namespace GZ_LTHPilot_ORDER.SqlManage
|
||||
}
|
||||
|
||||
//根据红字发票查询蓝字发票的FID,查询销售订单的FID和FENTRYID,开票数量和开票金额
|
||||
public static DynamicObjectCollection GetHZFPSal_ORDERFidAndFentryid(Context ctx,string FID)
|
||||
public static DynamicObjectCollection GetHZFPSal_ORDERFidAndFentryid(Context ctx, string FID)
|
||||
{
|
||||
string sql = string.Format(@"/*dialect*/
|
||||
EXEC GetIV_SALESICSal_OrderFID_GZTH '{0}'
|
||||
@ -338,11 +338,11 @@ namespace GZ_LTHPilot_ORDER.SqlManage
|
||||
return DBServiceHelper.ExecuteDynamicObject(ctx, getSql.ToString(), null, null, CommandType.Text, null);
|
||||
}
|
||||
//根据获取的销售订单FID和FentryId,更新开票数量和开票金额
|
||||
public static void UpSal_OrderKPJEAndKPSL(Context ctx,string FID,string FENTRYID,string F_INVOICEQTY,string F_F_INVOICEAMOUNT)
|
||||
public static void UpSal_OrderKPJEAndKPSL(Context ctx, string FID, string FENTRYID, string F_INVOICEQTY, string F_F_INVOICEAMOUNT)
|
||||
{
|
||||
string sql = string.Format(@"/*dialect*/
|
||||
EXEC TrueUpdateSal_OrderF_INVOICEQTYAndF_F_INVOICEAMOUNTAndF_invoiceAmount_TH '{0}','{1}','{2}','{3}'
|
||||
",FID,FENTRYID,F_INVOICEQTY,F_F_INVOICEAMOUNT);
|
||||
", FID, FENTRYID, F_INVOICEQTY, F_F_INVOICEAMOUNT);
|
||||
DBServiceHelper.ExecuteDynamicObject(ctx, sql.ToString(), null, null, CommandType.Text, null);
|
||||
}
|
||||
//根据获取的销售订单FID和FentryId,更新开票数量和开票金额(当销售订单的累计核销金额>价税合计本位币后)
|
||||
@ -354,17 +354,17 @@ namespace GZ_LTHPilot_ORDER.SqlManage
|
||||
DBServiceHelper.ExecuteDynamicObject(ctx, sql.ToString(), null, null, CommandType.Text, null);
|
||||
}
|
||||
//根据查询销售订单FID,查询销售订单累计核销金额和价税合计本位币
|
||||
public static DynamicObjectCollection GetSal_Order(Context ctx,string FID)
|
||||
public static DynamicObjectCollection GetSal_Order(Context ctx, string FID)
|
||||
{
|
||||
string sql = string.Format(@"
|
||||
SELECT
|
||||
A.FBILLNO AS '单据编号',
|
||||
B.FBILLALLAMOUNT_LC AS '价税合计',
|
||||
B.FBillAllAmount AS '价税合计',
|
||||
A.F_INVOICEAMOUNT AS '累计开票金额'
|
||||
FROM T_SAL_ORDER A
|
||||
INNER JOIN T_SAL_ORDERFIN B ON A.FID = B.FID
|
||||
WHERE A.FID = '{0}'
|
||||
AND ABS(A.F_invoiceAmount) > ABS(B.FBILLALLAMOUNT_LC)
|
||||
AND ABS(A.F_invoiceAmount) > ABS(B.FBillAllAmount)
|
||||
", FID);
|
||||
return DBServiceHelper.ExecuteDynamicObject(ctx, sql.ToString(), null, null, CommandType.Text, null);
|
||||
}
|
||||
@ -382,5 +382,25 @@ namespace GZ_LTHPilot_ORDER.SqlManage
|
||||
");
|
||||
return DBServiceHelper.ExecuteDynamicObject(ctx, getSql.ToString(), null, null, CommandType.Text, null);
|
||||
}
|
||||
//根据销售出库的FID,反写发货通知单的检验周期字段
|
||||
public static DynamicObjectCollection UpdateFHTZDJYZQ(Context ctx,string FID)
|
||||
{
|
||||
//查询表并且返回表的数据
|
||||
string getSql = string.Format(@"/*dialect*/
|
||||
EXEC SaveCGRK_GZTH '{0}'
|
||||
", FID);
|
||||
return DBServiceHelper.ExecuteDynamicObject(ctx, getSql.ToString(), null, null, CommandType.Text, null);
|
||||
}
|
||||
|
||||
//根据销售订单的FID,查询物料编码J开头的物联网卡使用年份必填
|
||||
public static DynamicObjectCollection SaveOrder_GZTH(Context ctx, string FID)
|
||||
{
|
||||
//查询表并且返回表的数据
|
||||
string getSql = string.Format(@"/*dialect*/
|
||||
EXEC SaveOrder_GZTH '{0}'
|
||||
", FID);
|
||||
return DBServiceHelper.ExecuteDynamicObject(ctx, getSql.ToString(), null, null, CommandType.Text, null);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -11,7 +11,7 @@ using System.Threading.Tasks;
|
||||
|
||||
namespace GZ_LTHPilot_ORDER.IV_SALESIC
|
||||
{
|
||||
[Description("服务插件:发票审核时,反写销售订单累计开票金额字段"), HotUpdate]
|
||||
[Description("服务插件:发票审核时,反写销售订单累计开票金额字段非本位币"), HotUpdate]
|
||||
public class AuditS_Order : AbstractOperationServicePlugIn
|
||||
{
|
||||
public override void BeforeExecuteOperationTransaction(BeforeExecuteOperationTransaction e)
|
||||
|
@ -54,6 +54,7 @@ namespace GZ_LTHPilot_ORDER.T_IV_SALESIC
|
||||
Convert.ToString(LZOrder["销售订单FENTRYID"]), Convert.ToString(LZOrder["开票数量"]),
|
||||
Convert.ToString(LZOrder["开票金额"]));
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
28
T_PUR_RECEIVE/SaveDate.cs
Normal file
28
T_PUR_RECEIVE/SaveDate.cs
Normal file
@ -0,0 +1,28 @@
|
||||
using Kingdee.BOS.Core.DynamicForm.PlugIn;
|
||||
using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;
|
||||
using Kingdee.BOS.Util;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace GZ_LTHPilot_ORDER.SAL_DELIVERYNOTICE
|
||||
{
|
||||
[Description("服务插件:采购入库单保存触发检验周期字段更新"), HotUpdate]
|
||||
public class SaveDate : AbstractOperationServicePlugIn
|
||||
{
|
||||
public override void AfterExecuteOperationTransaction(AfterExecuteOperationTransaction e)
|
||||
{
|
||||
base.AfterExecuteOperationTransaction(e);
|
||||
foreach (var Row in e.SelectedRows)
|
||||
{
|
||||
//获取单据信息
|
||||
var Billobj = Row.DataEntity;
|
||||
//以采购入库单的FID,获取采购入库单日期字段减去收料通知单的日期的天数,并对检验周期字段赋值
|
||||
SqlManage.SqlManage.UpdateFHTZDJYZQ(this.Context, Convert.ToString(Billobj["Id"]));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
BIN
bin/Debug/AForge.Video.DirectShow.dll
Normal file
BIN
bin/Debug/AForge.Video.DirectShow.dll
Normal file
Binary file not shown.
BIN
bin/Debug/AForge.Video.dll
Normal file
BIN
bin/Debug/AForge.Video.dll
Normal file
Binary file not shown.
BIN
bin/Debug/Antlr3.Runtime.dll
Normal file
BIN
bin/Debug/Antlr3.Runtime.dll
Normal file
Binary file not shown.
BIN
bin/Debug/Aspose.Cells.dll
Normal file
BIN
bin/Debug/Aspose.Cells.dll
Normal file
Binary file not shown.
BIN
bin/Debug/BouncyCastle.Crypto.dll
Normal file
BIN
bin/Debug/BouncyCastle.Crypto.dll
Normal file
Binary file not shown.
BIN
bin/Debug/Castle.Core.dll
Normal file
BIN
bin/Debug/Castle.Core.dll
Normal file
Binary file not shown.
BIN
bin/Debug/DevExpress.Data.v13.1.dll
Normal file
BIN
bin/Debug/DevExpress.Data.v13.1.dll
Normal file
Binary file not shown.
BIN
bin/Debug/DevExpress.Printing.v13.1.Core.dll
Normal file
BIN
bin/Debug/DevExpress.Printing.v13.1.Core.dll
Normal file
Binary file not shown.
BIN
bin/Debug/DevExpress.Utils.v13.1.dll
Normal file
BIN
bin/Debug/DevExpress.Utils.v13.1.dll
Normal file
Binary file not shown.
BIN
bin/Debug/DevExpress.XtraEditors.v13.1.dll
Normal file
BIN
bin/Debug/DevExpress.XtraEditors.v13.1.dll
Normal file
Binary file not shown.
BIN
bin/Debug/DocumentFormat.OpenXml.Framework.dll
Normal file
BIN
bin/Debug/DocumentFormat.OpenXml.Framework.dll
Normal file
Binary file not shown.
BIN
bin/Debug/DocumentFormat.OpenXml.dll
Normal file
BIN
bin/Debug/DocumentFormat.OpenXml.dll
Normal file
Binary file not shown.
BIN
bin/Debug/FarPoint.CalcEngine.dll
Normal file
BIN
bin/Debug/FarPoint.CalcEngine.dll
Normal file
Binary file not shown.
BIN
bin/Debug/FarPoint.Excel.dll
Normal file
BIN
bin/Debug/FarPoint.Excel.dll
Normal file
Binary file not shown.
BIN
bin/Debug/FarPoint.Localization.dll
Normal file
BIN
bin/Debug/FarPoint.Localization.dll
Normal file
Binary file not shown.
BIN
bin/Debug/FarPoint.PDF.dll
Normal file
BIN
bin/Debug/FarPoint.PDF.dll
Normal file
Binary file not shown.
BIN
bin/Debug/FarPoint.PluginCalendar.WinForms.dll
Normal file
BIN
bin/Debug/FarPoint.PluginCalendar.WinForms.dll
Normal file
Binary file not shown.
BIN
bin/Debug/FarPoint.Win.Chart.dll
Normal file
BIN
bin/Debug/FarPoint.Win.Chart.dll
Normal file
Binary file not shown.
BIN
bin/Debug/FarPoint.Win.Spread.dll
Normal file
BIN
bin/Debug/FarPoint.Win.Spread.dll
Normal file
Binary file not shown.
BIN
bin/Debug/FarPoint.Win.dll
Normal file
BIN
bin/Debug/FarPoint.Win.dll
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
bin/Debug/ICSharpCode.SharpZipLib.dll
Normal file
BIN
bin/Debug/ICSharpCode.SharpZipLib.dll
Normal file
Binary file not shown.
BIN
bin/Debug/IronPython.dll
Normal file
BIN
bin/Debug/IronPython.dll
Normal file
Binary file not shown.
BIN
bin/Debug/JWT.dll
Normal file
BIN
bin/Debug/JWT.dll
Normal file
Binary file not shown.
BIN
bin/Debug/Microsoft.Dynamic.dll
Normal file
BIN
bin/Debug/Microsoft.Dynamic.dll
Normal file
Binary file not shown.
BIN
bin/Debug/Microsoft.Scripting.dll
Normal file
BIN
bin/Debug/Microsoft.Scripting.dll
Normal file
Binary file not shown.
44
发货通知单下推sql.sql
Normal file
44
发货通知单下推sql.sql
Normal file
@ -0,0 +1,44 @@
|
||||
SELECT
|
||||
CASE
|
||||
WHEN
|
||||
(
|
||||
SELECT COUNT(*)
|
||||
FROM T_SAL_DELIVERYNOTICEENTRY A
|
||||
INNER JOIN T_SAL_DELIVERYNOTICEENTRY_LK B ON A.FENTRYID = B.FENTRYID AND B.FSTABLENAME = 'T_SAL_ORDERENTRY'
|
||||
INNER JOIN T_SAL_ORDER C ON C.FID = B.FSBILLID
|
||||
INNER JOIN T_SAL_ORDERENTRY D ON C.FID = D.FID
|
||||
WHERE C.FSaleOrgId = 100302
|
||||
AND C.FSALEORGID <> C.F_SaleOrgId
|
||||
AND A.FENTRYID = t1.FENTRYID
|
||||
) > 0
|
||||
THEN 1
|
||||
WHEN(
|
||||
SELECT COUNT(*)
|
||||
FROM T_SAL_DELIVERYNOTICEENTRY A
|
||||
INNER JOIN T_SAL_DELIVERYNOTICEENTRY_LK B ON A.FENTRYID = B.FENTRYID AND B.FSTABLENAME = 'T_SAL_ORDERENTRY'
|
||||
INNER JOIN T_SAL_ORDER C ON C.FID = B.FSBILLID
|
||||
INNER JOIN T_SAL_ORDERENTRY D ON C.FID = D.FID
|
||||
WHERE C.FSaleOrgId <> 100302
|
||||
AND A.FENTRYID = t1.FENTRYID
|
||||
) > 0
|
||||
THEN 1
|
||||
ELSE
|
||||
(
|
||||
SELECT COUNT(*)
|
||||
FROM T_PRD_MO A
|
||||
INNER JOIN T_PRD_MOENTRY B ON A.FID = B.FID
|
||||
INNER JOIN T_PRD_MOENTRY_LK C ON B.FENTRYID = C.FENTRYID AND C.FSTABLENAME = 'T_SAL_ORDERENTRY'
|
||||
WHERE A.FDocumentStatus = 'C'
|
||||
AND C.FSBILLID IN
|
||||
(
|
||||
SELECT C.FID
|
||||
FROM T_SAL_DELIVERYNOTICEENTRY A
|
||||
INNER JOIN T_SAL_DELIVERYNOTICEENTRY_LK B ON A.FENTRYID = B.FENTRYID AND B.FSTABLENAME = 'T_SAL_ORDERENTRY'
|
||||
INNER JOIN T_SAL_ORDER C ON C.FID = B.FSBILLID
|
||||
INNER JOIN T_SAL_ORDERENTRY D ON C.FID = D.FID
|
||||
WHERE C.FSaleOrgId = 100302
|
||||
AND C.FSALEORGID = C.F_SaleOrgId
|
||||
AND A.FENTRYID = t1.FENTRYID
|
||||
)
|
||||
)
|
||||
END AS Result
|
Loading…
x
Reference in New Issue
Block a user