Files
GateDge2023_ljy/05.长园/CYG.Python/CRM_Contract/BillEventPlugInEx.py

78 lines
3.8 KiB
Python
Raw Normal View History

2024-04-29 17:57:07 +08:00
import clr
clr.AddReference("System")
clr.AddReference("Kingdee.BOS")
clr.AddReference("Kingdee.BOS.Core")
clr.AddReference("Kingdee.BOS.DataEntity")
clr.AddReference("Kingdee.BOS.App")
clr.AddReference("Kingdee.BOS.Contracts")
clr.AddReference("Kingdee.BOS.ServiceHelper")
from Kingdee.BOS import *
from Kingdee.BOS.Core import *
from Kingdee.BOS.Core.Metadata.EntityElement import *
from Kingdee.BOS.Orm.DataEntity import *
from Kingdee.BOS.Core.DynamicForm.PlugIn import *
from Kingdee.BOS.Core.DynamicForm.PlugIn.Args import *
from Kingdee.BOS.Util import *
from System import *
from System.ComponentModel import *
from System.Collections.Generic import *
from System.Text import*
from Kingdee.BOS.ServiceHelper import *
def AfterCreateNewData(e):
details = this.View.BusinessInfo.GetEntity("FContractPlan")
entrys = this.View.Model.GetEntityDataObject(details)
2024-05-15 13:56:09 +08:00
dataJson = [{"name":"预付","FRecAdvanceRate":0}
2024-04-29 17:57:07 +08:00
,{"name":"发货","FRecAdvanceRate":0}
,{"name":"到货","FRecAdvanceRate":0}
,{"name":"验收","FRecAdvanceRate":0}
,{"name":"质保","FRecAdvanceRate":0}]
2024-05-15 13:56:09 +08:00
# "预付" if FMaterialSeq == 1 else "发货" if FMaterialSeq == 2 else "到货" if FMaterialSeq == 3 else "验收" if FMaterialSeq == 4 else "质保"
2024-04-29 17:57:07 +08:00
if entrys != None and entrys.Count > 0:
2024-05-15 13:56:09 +08:00
contractAmount = this.View.Model.GetValue("FCONTRACTAMOUNT")
countRecAdvanceRate = 0
2024-04-29 17:57:07 +08:00
for entry in entrys:
rowIndex = this.View.Model.GetRowIndex(details, entry)
if rowIndex > 4:
continue
entry["F_CYG_Text"] = dataJson[rowIndex]["name"]
2024-05-15 13:56:09 +08:00
recAdvanceRate = dataJson[rowIndex]["FRecAdvanceRate"]
countRecAdvanceRate = countRecAdvanceRate + recAdvanceRate
entry["FRecAdvanceRate"] = recAdvanceRate
entry["FRecAdvanceAmount"] = recAdvanceRate / 100 * contractAmount
# def AfterCreateNewData(e):
# details = this.View.BusinessInfo.GetEntity("FContractPlan")
# entrys = this.View.Model.GetEntityDataObject(details)
# dataJson = [{"name":"预付","FRecAdvanceRate":0}
# ,{"name":"发货","FRecAdvanceRate":0}
# ,{"name":"到货","FRecAdvanceRate":0}
# ,{"name":"验收","FRecAdvanceRate":0}
# ,{"name":"质保","FRecAdvanceRate":0}]
# # "预付" if FMaterialSeq == 1 else "发货" if FMaterialSeq == 2 else "到货" if FMaterialSeq == 3 else "验收" if FMaterialSeq == 4 else "质保"
# if entrys != None and entrys.Count > 0:
# contractAmount = this.View.Model.GetValue("FCONTRACTAMOUNT")
# countRecAdvanceRate = 0
# for entry in entrys:
# rowIndex = this.View.Model.GetRowIndex(details, entry)
# if rowIndex > 4:
# continue
# entry["F_CYG_Text"] = dataJson[rowIndex]["name"]
# recAdvanceRate = entry["FRecAdvanceRate"]
# recAdvanceRate = dataJson[rowIndex]["FRecAdvanceRate"] if recAdvanceRate == 0 else recAdvanceRate
# countRecAdvanceRate = countRecAdvanceRate + recAdvanceRate
# entry["FRecAdvanceRate"] = recAdvanceRate
# entry["FRecAdvanceAmount"] = recAdvanceRate / 100 * contractAmount
# if countRecAdvanceRate == 0:
# this.View.Model.SetValue("FRecAdvanceRate", 100, 0)
# this.View.Model.SetValue("FRecAdvanceAmount", contractAmount, 0)
# def DataChanged(e):
# if e.Field.Key == "FRecAdvanceRate":
# contractAmount = this.View.Model.GetValue("FCONTRACTAMOUNT")
# recAdvanceRate = e.NewValue
# rowIndex = e.Row
# recAdvanceAmount = recAdvanceRate * contractAmount / 100
# this.View.Model.SetValue("FRecAdvanceAmount", recAdvanceAmount, rowIndex)