77 lines
4.3 KiB
C#
77 lines
4.3 KiB
C#
using GZ_LTHPilot_ORDER.SqlManage;
|
||
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.PRD_PPBOM
|
||
{
|
||
[Description("服务插件1:生产用料清单审核触发,根据生产车间||生产组织,修改生产用料清单明细行"), HotUpdate]
|
||
public class AuditPOM : AbstractOperationServicePlugIn
|
||
{
|
||
public override void BeforeExecuteOperationTransaction(BeforeExecuteOperationTransaction e)
|
||
{
|
||
base.BeforeExecuteOperationTransaction(e);
|
||
foreach (var Row in e.SelectedRows)
|
||
{
|
||
|
||
string FWorkshopFname = "组装测试包装车间";
|
||
//获取单据信息
|
||
var Billobj = Row.DataEntity;
|
||
//获取生产用料清单的组织
|
||
var PPBOMFPrdOrgFname = SqlManage.SqlManage.GetPRD_PPBOMFWorkshopID(this.Context, Convert.ToString(Billobj["ID"]));
|
||
if (PPBOMFPrdOrgFname[0]["OEGFNAME"].ToString() == "珠海派诺")
|
||
{
|
||
//获取生产用料清单的生产车间
|
||
var PPBOMFWorkshopFname = SqlManage.SqlManage.GetPRD_PPBOMFWorkshopID(this.Context, Convert.ToString(Billobj["ID"]));
|
||
//根据仓库改编生产用料清单的明细信息
|
||
if (PPBOMFWorkshopFname[0]["FNAME"].ToString() == FWorkshopFname)
|
||
{
|
||
//查询明细行的FENTRYID,仓库的名称
|
||
var PPBOMFStockFNameS = SqlManage.SqlManage.GetPRD_PPBOMFStockID(this.Context, Convert.ToString(PPBOMFWorkshopFname[0]["FID"]));
|
||
foreach (var PPBOMFStockFName in PPBOMFStockFNameS)
|
||
{
|
||
if (PPBOMFStockFName["FNAME"].ToString() == "半成品仓")
|
||
{
|
||
SqlManage.SqlManage.UpdatePRD_PPBOMFIsKeyComponent(this.Context, Convert.ToString(PPBOMFStockFName["FENTRYID"]));
|
||
}
|
||
if (PPBOMFStockFName["FNAME"].ToString() == "包材仓")
|
||
{
|
||
SqlManage.SqlManage.UpdatePRD_PPBOMFIssueType(this.Context, Convert.ToString(PPBOMFStockFName["FENTRYID"]));
|
||
}
|
||
if (PPBOMFStockFName["FNAME"].ToString() == "包装结构件仓" || PPBOMFStockFName["FNAME"].ToString() == "装配结构件仓")
|
||
{
|
||
SqlManage.SqlManage.UpdatePRD_PPBOMFIssueTypeAndFBackFlushType(this.Context, Convert.ToString(PPBOMFStockFName["FENTRYID"]), Convert.ToString(PPBOMFWorkshopFname[0]["FPrdOrgId"]));
|
||
SqlManage.SqlManage.UpdateFSRCTRANSSTOCKID(this.Context, Convert.ToString(PPBOMFStockFName["FENTRYID"]));
|
||
SqlManage.SqlManage.UpdateFSTOCKID(this.Context, Convert.ToString(PPBOMFStockFName["FENTRYID"]));
|
||
}
|
||
}
|
||
//当物料为M开头,发料方式设置为调拨倒冲,倒冲时机设置为入库倒冲,拨出组织设置为珠海派诺,拨出组织为空,
|
||
//仓库设置为 : 68
|
||
SqlManage.SqlManage.UpdatePRD_PPBOMLIkeM(this.Context, Convert.ToString(Billobj["Id"]));
|
||
}
|
||
}
|
||
|
||
//获取生产用料清单的组织
|
||
var PPBOMFPrdOrgFname1 = SqlManage.SqlManage.GetPRD_PPBOMFWorkshopID(this.Context, Convert.ToString(Billobj["ID"]));
|
||
if (PPBOMFPrdOrgFname1[0]["OEGFNAME"].ToString() == "珠海派诺")
|
||
{
|
||
if (PPBOMFPrdOrgFname[0]["FNAME"].ToString() == "焊接车间" || PPBOMFPrdOrgFname[0]["FNAME"].ToString() == "贴片车间"
|
||
|| PPBOMFPrdOrgFname[0]["FNAME"].ToString() == "储能车间")
|
||
{
|
||
SqlManage.SqlManage.UpdatePRD_PPBOMFIDFIsKeyComponent(this.Context, PPBOMFPrdOrgFname[0]["FID"].ToString());
|
||
}
|
||
}
|
||
|
||
}
|
||
|
||
}
|
||
|
||
}
|
||
|
||
} |