福利发放: (员工福利-发放计算 调存储过程 KinWelfarePaymentCalculation)
-----------------调用:KinUserCalendar员工月份工作日历表----往这个表里插数据 (uf_AttendancSchedul 员工考勤日程表 )
exec KinUserCalendar @Dt2UserId,@Month,@Year,@RequestId,0;
----------------------------------------------------------------------------------
计算思路:
1、插入考勤流程信息 formtable_main_246_dt1(从 视图KinStaffAttendanceProcessView 考勤流程)
2、插入员工发放汇总信息 formtable_main_246_dt2(从 员工福利表uf_KinStaffWelfare)-- (一人一条)
3、插入员工发放明细信息 formtable_main_246_dt3
3.1循环员工发放汇总信息
3.2循环员工福利
3.3插入员工发放明细信息
3.4更新员工发放明细信息
3.4.1--获取签到天数
3.4.5更新实发金额
3.4.6更新剩余总金额
3.5更新员工发放汇总信息
dt1: 类型
外出办公、年假、其他、调整
考勤流程
公出申请=0
请假申请=1
销假申请=2
出差申请=3
出差调整=4
===================================加代码块=========
-------whl---start---新加 2021.10.21 出差 后 做调整,取消出差的判断
------------------------------------------判断 条件 开始日期=结束日期 and 开始时间=结束时间 时 是否出差=1
update formtable_main_246_dt1
set FIsBusinessTravel=1,
FBusRemark='做过[出差日期调整]没出差'
where FFieldBDate=FFieldEDate and FFieldBTime=FFieldETime and FType=3 and mainid=@ID;
-------whl---end---新加 2021.10.21 出差 后 做调整,取消出差的判断
==============================================
-----------------调用:KinUserCalendar员工月份工作日历表----往这个表里插数据 (uf_AttendancSchedul 员工考勤日程表 )
exec KinUserCalendar @Dt2UserId,@Month,@Year,@RequestId,0;
--------出差申请
SELECT
@BusinessTravelCon = COUNT ( * )
FROM
formtable_main_246_dt1 t1
INNER JOIN formtable_main_246 t ON t.id= t1.mainid
WHERE
t1.mainid=@main246ID
AND t1.FType= 3
AND t1.FApplyUser=@USER
AND CONVERT ( DATE,@SchedulDate ) >= CONVERT ( DATE, t1.FFieldBDate)
AND CONVERT ( DATE,@SchedulDate) <= CONVERT ( DATE, t1.FFieldEDate)
------ --whl---start---新加 2021.10.21 出差 后 做调整,取消出差的判断FIsBusinessTravel<>1
AND t1.FIsBusinessTravel is null
==============================================
---------------------------------------------------------------------------
1.插入【员工考勤日程表】
出差
--新加 2021.10.21 出差 后 做调整,取消出差的判断
update formtable_main_246_dt1
set FIsBusinessTravel=1
where FFieldBDate=FFieldEDate and FFieldBTime=FFieldETime
FIsBusinessTravel=0 是否出差
做过 出差日期调整 没出差
---------------------------
--员工福利发放申请表
select *
from formtable_main_246
where requestId='130125'
--/================================================================================
--员工福利发放申请表 考勤----formtable_main_246_dt1
select FRelatedProcesses 相关流程,
FType 考勤流程,FFieldType 类型,
*
from formtable_main_246_dt1
where mainid =304 and FApplyUser=59 --59FType=3
--员工福利发放申请表 考勤扣除---formtable_main_246_dt2
select FWCDeductedRemark 扣除说明,FJTDeductedRemark 扣除说明,FWCDeductedAmount 扣除金额,FWCOtherAmount 其它金额,*
from formtable_main_246_dt2
where mainid =304 and FUserId=135 --59
--/--------------------formtable_main_246_dt3
select FSignInDays 签到天数,FAmount,FSignInDays, FDeductedAmount 扣除金额,FPayableDeductedAmount 应发扣除金额,*
from formtable_main_246_dt3
where mainid =304 and FUserId=59
--/================================================================================
select * from KinStaffAttendanceProcessView
select *
from uf_KinStaffWelfare
where FUserId=59
------------员工考勤日程表
select
FBusinessTravelReleaseIDS,
FIsBusinessTravel 是否出差,
FBusinessTravelReleaseIDS 出差流程,
FPublicReimReleaseIDS 补助公出流程,
FIsPublicReimRelease 是否补助公出,
*
from uf_AttendancSchedul
where FYear=2021 and FMonth=9 and requestId='130125' and FUserId=59--and FUserId=59 and FIsBusinessTravel=0 --是否出差
order by FDate
--员工福利发放申请表 考勤----formtable_main_246_dt1
select FRelatedProcesses 相关流程,
FType 考勤流程,FFieldType 类型,
FIsBusinessTravel,
*
from formtable_main_246_dt1
where mainid =304 and FApplyUser=59
and FFieldBDate=FFieldEDate and FFieldBTime=FFieldETime and FType=3
--59FType=3