This commit is contained in:
PastSaid
2024-04-10 10:39:04 +08:00
parent 9a7bf9b67e
commit b2419eec9c
119 changed files with 23402 additions and 350 deletions

View File

@@ -0,0 +1,83 @@
#<23><><EFBFBD><EFBFBD>clr<6C><72><EFBFBD>п<EFBFBD>
import clr
#<23><><EFBFBD>Ӷ<EFBFBD>cloud<75><64><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD><C4B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
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<75><64><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>еij<D0B5><C4B3><EFBFBD>ʵ<EFBFBD><CAB5><EFBFBD><EFBFBD><EFBFBD>󣨷<EFBFBD><F3A3A8B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ<D5BC><EFBFBD><EBA3AC><EFBFBD><EFBFBD><EFBFBD>ݹ鵼<DDB9>
from Kingdee.BOS.Core import *
from Kingdee.BOS.Util import *
from Kingdee.BOS.Core.Bill import *
from Kingdee.BOS.Core.Bill.PlugIn 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 Kingdee.BOS.App.Data import *
from System.Collections.Generic import List
from Kingdee.BOS.ServiceHelper import *
def OnPreparePropertys(e):
e.FieldKeys.Add("F_CYG_Worktype")
e.FieldKeys.Add("FFinishQty")
e.FieldKeys.Add("FStdManHour")
e.FieldKeys.Add("FMaterialId")
e.FieldKeys.Add("FHRWORKTIME")
def EndOperationTransaction(e):
# <20><><EFBFBD><EFBFBD>8<EFBFBD>ύ9<E1BDBB><39><EFBFBD><EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>26ɾ<36><C9BE>3
if this.FormOperation.OperationId == 1:
Audit2DoUpdMoRptInfo(e)
def Audit2DoUpdMoRptInfo(e):
# sqlList = """"""
sqlLList=List[str]();
for data in e.DataEntitys:
billId = data["Id"]
formId = data["FFormId"]
for item in data["PRD_MORPTENTRY"]:
entryId =item["Id"]
entrySeq = item["Seq"]
# Ĭ<><C4AC>ȡ<EFBFBD><C8A1><EFBFBD>ε<EFBFBD><CEB5><EFBFBD><EFBFBD><EFBFBD>Աʵ<D4B1><CAB5><EFBFBD><EFBFBD>ʱ
hrWorkTime = item["HrWorkTime"]
fitTimeTotal = 0
guideTimeTotal = 0
workTimeTypeVal = item["F_CYG_Worktype"]
workTimeType = (0 if workTimeTypeVal.strip() == '' else int(workTimeTypeVal))
# <20><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD> 0.<2E><> 1.<2E><><EFBFBD><EFBFBD>װ<EFBFBD><D7B0>ʱ 2.ָ<><D6B8><EFBFBD><EFBFBD>װ<EFBFBD><D7B0>ʱ 3.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>װ<EFBFBD><D7B0>ʱ
if (workTimeType) > 0:
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
finishQty = item["FinishQty"]
# <20><>׼<EFBFBD><D7BC>λʱ<CEBB><CAB1>
stdManHour = item["StdManHour"]
# 1.<2E><>׼<EFBFBD><D7BC>λʱ<CEBB>䲻Ϊ<E4B2BB><CEAA>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Աʵ<D4B1><CAB5><EFBFBD><EFBFBD>ʱ = <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> * <20><>׼<EFBFBD><D7BC>λʱ<CEBB>
if stdManHour != 0:
hrWorkTime = finishQty * stdManHour
if workTimeType != 3:
materialId = item["MaterialId"]
if workTimeType == 1:
fitTime = materialId["F_CYG_FitTime"]
fitTimeTotal = fitTime * finishQty
# 2.<2E><><EFBFBD><EFBFBD>װ<EFBFBD><D7B0>ʱ <20><>׼<EFBFBD><D7BC>λʱ<CEBB><CAB1>Ϊ0ʱ <20><>Աʵ<D4B1><CAB5><EFBFBD><EFBFBD>ʱ = <20><><EFBFBD>ε<EFBFBD><CEB5>ݹ<EFBFBD>ʱ
if stdManHour == 0:
hrWorkTime = hrWorkTime - fitTimeTotal
if workTimeType == 2:
guideTime = materialId["F_CYG_GuideTime"]
guideTimeTotal = guideTime * finishQty
# 3.ָ<><D6B8><EFBFBD><EFBFBD>װ<EFBFBD><D7B0>ʱ <20><>׼<EFBFBD><D7BC>λʱ<CEBB><CAB1>Ϊ0ʱ <20><>Աʵ<D4B1><CAB5><EFBFBD><EFBFBD>ʱ = <20><><EFBFBD>ε<EFBFBD><CEB5>ݹ<EFBFBD>ʱ
if stdManHour == 0:
hrWorkTime = hrWorkTime - guideTimeTotal
sql = ("""/*dialect*/UPDATE T_CB_WORKHOURSENTRY SET F_CYG_Worktype = '{0}' ,FFitTimeTotal = {1},FguideTimeTotal = {2},FHrWorkTimePart = {3}
WHERE FSRCBILLID = {4} AND FSRCENTRYID = {5} AND FSRCSEQ = {6} AND FSRCBILLFORMID = '{7}' ;""").format(workTimeType,fitTimeTotal,guideTimeTotal,hrWorkTime,billId,entryId,entrySeq,formId)
# sqlList = sqlList + sql;
sqlLList.Add(sql);
# DBUtils.Execute(this.Context,sqlList)
if(sqlLList.Count > 0):
DBUtils.ExecuteBatch(this.Context,sqlLList,sqlLList.Count);

View File

@@ -0,0 +1,72 @@
SELECT
t0.FBILLNO
,t0e.FSRCBILLNO
,t0e.FENTRYID
,t1e.F_CYG_WORKTYPE
,t1e.FFINISHQTY
,t1e.FSTDMANHOUR
,t1e.FHRWORKTIME
,t2p.FPERUNITSTANDHOUR
,(CASE t1e.F_CYG_WORKTYPE --<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
WHEN '' THEN t1e.FHRWORKTIME --<EFBFBD><EFBFBD>Աʵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ
ELSE (CASE t1e.FSTDMANHOUR
WHEN 0 THEN t1e.FHRWORKTIME
ELSE t1e.FSTDMANHOUR * t1e.FFINISHQTY
END)
END) 'NEW_FHRWORKTIME'
,t2.F_CYG_FITTIME
,CASE t1e.F_CYG_WORKTYPE WHEN '1' THEN t2.F_CYG_FITTIME * t1e.FFINISHQTY ELSE 0 END 'NEW_FITTIME'
,t2.F_CYG_GUIDETIME
,CASE t1e.F_CYG_WORKTYPE WHEN '2' THEN t2.F_CYG_GUIDETIME * t1e.FFINISHQTY ELSE 0 END 'NEW_GUIDETIME'
INTO #temp
FROM T_CB_WORKHOURS t0 --ʵ<EFBFBD>ʹ<EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD>ͷ
INNER JOIN T_CB_WORKHOURSENTRY t0e on t0.FID = t0e.FID --ʵ<EFBFBD>ʹ<EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
INNER JOIN T_PRD_MORPTENTRY t1e on t1e.FENTRYID = t0e.FSRCENTRYID --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
AND t1e.FID = t0e.FSRCBILLID AND t1e.FSEQ = t0e.FSRCSEQ AND t0e.FSRCBILLFORMID = 'PRD_MORPT'
INNER JOIN T_BD_MATERIAL t2 on t2.FMATERIALID = t1e.FMATERIALID
INNER JOIN T_BD_MATERIALPRODUCE t2p on t2p.FMATERIALID = t1e.FMATERIALID
--<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ''.<EFBFBD><EFBFBD> 1.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>װ<EFBFBD><EFBFBD>ʱ 2.ָ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>װ<EFBFBD><EFBFBD>ʱ 3.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>װ<EFBFBD><EFBFBD>ʱ
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> == '' ʵ<EFBFBD>ʹ<EFBFBD>ʱ<EFBFBD>.<EFBFBD><EFBFBD>Աʵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ# = <20><><EFBFBD><EFBFBD><EFBFBD>㱨.<2E><>Աʵ<D4B1><CAB5><EFBFBD><EFBFBD>ʱ
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> == 1 <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>׼<EFBFBD><EFBFBD>ʱ <EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0 <EFBFBD><EFBFBD>:ʵ<EFBFBD>ʹ<EFBFBD>ʱ<EFBFBD>.<EFBFBD><EFBFBD>Աʵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ# = <20><><EFBFBD><EFBFBD><EFBFBD>㱨.<2E><>Աʵ<D4B1><CAB5><EFBFBD><EFBFBD>ʱ - <20><><EFBFBD><EFBFBD><EFBFBD>㱨.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> * <20><><EFBFBD><EFBFBD>.<2E><>װ<EFBFBD><D7B0>ʱ#
-- <09><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>㱨.<2E><>λ<EFBFBD><CEBB>׼<EFBFBD><D7BC>ʱ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0 <20><><>ʹ<EFBFBD>ʱ<EFBFBD>鼯.<2E><>Աʵ<D4B1><CAB5><EFBFBD><EFBFBD>ʱ# = <20><><EFBFBD><EFBFBD><EFBFBD>㱨.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> * <20><><EFBFBD><EFBFBD><EFBFBD>㱨.<2E><>λ<EFBFBD><CEBB>׼<EFBFBD><D7BC>ʱ
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> == 2 <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>׼<EFBFBD><EFBFBD>ʱ <EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0 <EFBFBD><EFBFBD>:ʵ<EFBFBD>ʹ<EFBFBD>ʱ<EFBFBD>.<EFBFBD><EFBFBD>Աʵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ# = <20><><EFBFBD><EFBFBD><EFBFBD>㱨.<2E><>Աʵ<D4B1><CAB5><EFBFBD><EFBFBD>ʱ - <20><><EFBFBD><EFBFBD><EFBFBD>㱨.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> * <20><><EFBFBD><EFBFBD><><D6B8><EFBFBD><EFBFBD>װ<EFBFBD><D7B0>ʱ
-- <09><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>㱨.<2E><>λ<EFBFBD><CEBB>׼<EFBFBD><D7BC>ʱ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0 <20><><>ʹ<EFBFBD>ʱ<EFBFBD>鼯.<2E><>Աʵ<D4B1><CAB5><EFBFBD><EFBFBD>ʱ# = <20><><EFBFBD><EFBFBD><EFBFBD>㱨.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> * <20><><EFBFBD><EFBFBD><EFBFBD>㱨.<2E><>λ<EFBFBD><CEBB>׼<EFBFBD><D7BC>ʱ
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> == 3 <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>׼<EFBFBD><EFBFBD>ʱ <EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0 <EFBFBD><EFBFBD>:ʵ<EFBFBD>ʹ<EFBFBD>ʱ<EFBFBD>.<EFBFBD><EFBFBD>Աʵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ# = <20><><EFBFBD><EFBFBD><EFBFBD>㱨.<2E><>Աʵ<D4B1><CAB5><EFBFBD><EFBFBD>ʱ
-- <09><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>㱨.<2E><>λ<EFBFBD><CEBB>׼<EFBFBD><D7BC>ʱ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0 <20><><>ʹ<EFBFBD>ʱ<EFBFBD>鼯.<2E><>Աʵ<D4B1><CAB5><EFBFBD><EFBFBD>ʱ# = <20><><EFBFBD><EFBFBD><EFBFBD>㱨.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> * <20><><EFBFBD><EFBFBD><EFBFBD>㱨.<2E><>λ<EFBFBD><CEBB>׼<EFBFBD><D7BC>ʱ
--SELECT
-- t0.FBILLNO
-- ,t0.FSRCBILLNO
-- ,t0.FENTRYID
-- ,t0.F_CYG_WORKTYPE
-- ,t0.FFINISHQTY
-- ,t0.FSTDMANHOUR
-- ,t0.FHRWORKTIME
-- ,t0.FPERUNITSTANDHOUR
-- ,t0.NEW_FHRWORKTIME
-- ,t0.F_CYG_FITTIME
-- ,t0.NEW_FITTIME
-- ,t0.F_CYG_GUIDETIME
-- ,t0.NEW_GUIDETIME
-- INTO #temp1
--FROM #temp t0
--WHERE t0.FSTDMANHOUR = 0
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
--UPDATE t0e
--SET t0e.F_CYG_WORKTYPE = t1.F_CYG_WORKTYPE
-- ,t0e.FFitTimeTotal =t1.NEW_FITTIME
-- ,t0e.FguideTimeTotal = t1.NEW_GUIDETIME
-- ,t0e.FHrWorkTimePart = t1.NEW_FHRWORKTIME
--FROM T_CB_WORKHOURSENTRY t0e
-- INNER JOIN #temp t1 on t0e.FENTRYID = t1.FENTRYID
SELECT * FROM #temp
DROP TABLE #temp
--SELECT * FROM #temp1
--DROP TABLE #temp1

View File

@@ -0,0 +1,22 @@
SELECT
t0.FBILLNO
,t0.FID
,t0.F_CYG_BASE AS 'NewCYG_BASE1'
,t0.F_CYG_BASE1 AS 'NewCYG_BASE'
INTO #TEMP1
FROM T_AR_REFUNDBILL t0
----SELECT * FROM #TEMP1
SELECT
t0.FID
,t0.F_CYG_BASE
,tt.NewCYG_BASE
,t0.F_CYG_BASE1
,tt.NewCYG_BASE1
FROM T_AR_REFUNDBILL t0
INNER JOIN #TEMP1 tt on t0.FID = tt.FID
--UPDATE t0 SET t0.F_CYG_BASE =tt.NewCYG_BASE,t0.F_CYG_BASE1 =tt.NewCYG_BASE1
--FROM T_AR_REFUNDBILL t0
-- INNER JOIN #TEMP1 tt on t0.FID = tt.FID
DROP TABLE #TEMP1