1
This commit is contained in:
@@ -23,16 +23,56 @@ from Kingdee.BOS.ServiceHelper import *
|
||||
def AfterCreateNewData(e):
|
||||
details = this.View.BusinessInfo.GetEntity("FContractPlan")
|
||||
entrys = this.View.Model.GetEntityDataObject(details)
|
||||
dataJson = [{"name":"预付","FRecAdvanceRate":100}
|
||||
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"]
|
||||
entry["FRecAdvanceRate"] = dataJson[rowIndex]["FRecAdvanceRate"]
|
||||
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)
|
||||
46
05.长园/CYG.Python/CRM_Contract/OperationEvenPlugInEx.py
Normal file
46
05.长园/CYG.Python/CRM_Contract/OperationEvenPlugInEx.py
Normal file
@@ -0,0 +1,46 @@
|
||||
#引入clr运行库
|
||||
import clr
|
||||
#添加对cloud插件开发的常用组件引用
|
||||
clr.AddReference('System')
|
||||
clr.AddReference('System.Data')
|
||||
clr.AddReference('Kingdee.BOS')
|
||||
clr.AddReference('Kingdee.BOS.Core')
|
||||
clr.AddReference('Kingdee.BOS.App')
|
||||
clr.AddReference('Kingdee.BOS.Contracts')
|
||||
clr.AddReference('Kingdee.BOS.DataEntity')
|
||||
clr.AddReference('Kingdee.BOS.ServiceHelper')
|
||||
|
||||
#dairycloud基础库中的常用实体对象(分命名空间导入,不会递归导入)
|
||||
from Kingdee.BOS.Core import *
|
||||
from Kingdee.BOS.Util 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.Core.DynamicForm.PlugIn.ControlModel import *
|
||||
from System import *
|
||||
from System.Data import *
|
||||
from System.Collections.Generic import *
|
||||
from Kingdee.BOS.App.Data import *
|
||||
from Kingdee.BOS.ServiceHelper import *
|
||||
|
||||
# 执行保存操作前
|
||||
def BeforeDoSaveExecute(e):
|
||||
if e.DataEntities.Count > 0:
|
||||
# raise Exception(JsonUtil.Serialize(e.DataEntities))
|
||||
for item in e.DataEntities:
|
||||
# 收款计划
|
||||
FContractPlan = item["FContractPlan"]
|
||||
# 财务信息
|
||||
CRM_ContractFIN = item["CRM_ContractFIN"][0]
|
||||
# 合同金额
|
||||
FCONTRACTAMOUNT = CRM_ContractFIN["FCONTRACTAMOUNT"]
|
||||
removeList = []
|
||||
for idx, planItem in enumerate(FContractPlan):
|
||||
# 应收金额
|
||||
planItem["FRECADVANCEAMOUNT"] = planItem["FRECADVANCERATE"] * FCONTRACTAMOUNT / 100
|
||||
if planItem["F_CYG_Text"] == None or planItem["F_CYG_Text"] == "":
|
||||
removeList.append(idx)
|
||||
|
||||
for idx in removeList:
|
||||
FContractPlan.RemoveAt(idx)
|
||||
# raise Exception(JsonUtil.Serialize(e.DataEntities))
|
||||
Reference in New Issue
Block a user