78 lines
3.8 KiB
Python
78 lines
3.8 KiB
Python
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)
|
|
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 = 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) |