replace into att_source_data(name, id_number, org_id, org_name, att_current_day,
att_current_time, att_type, att_address, province,is_outside_att, att_lon, att_lat, data_source, remark)
values (#{params.name}, #{params.idNumber}, #{params.orgId}, #{params.orgName},
#{params.attCurrentDay}, #{params.attCurrentTime}, #{params.attType},
#{params.attAddress}, #{params.province},#{params.isOutsideAtt}, #{params.attLon}, #{params.attLat},
#{params.dataSource},
#{params.remark})
replace into att_day_report(att_current_day, normal_num, late_num, early_num, skipping_num,
leave_num, address_error_num, ein_error_num, rest_num, out_num,outside_att_num,train_num)
values (#{params.attCurrentDay}, #{params.normalNum}, #{params.lateNum},
#{params.earlyNum}, #{params.skippingNum}, #{params.leaveNum},
#{params.addressErrorNum}, #{params.einErrorNum}, #{params.restNum}, #{params.outNum},
#{params.outsideAttNum},#{params.trainNum})
insert into sys_holiday(date, name, type)
values (#{date}, #{name}, #{type})
replace into att_work_abnormal(user_id, user_name,org_id, att_current_day,att_current_time, att_address)
values (#{item.userId}, #{item.name},#{item.orgId}, #{item.attCurrentDay}, #{item.attCurrentTime},
#{item.attAddress})
replace into att_setting_history(user_id, group_id, current_day) values
(#{item.userId},#{item.groupId},#{item.currentDay})
insert into att_data(user_id, org_id, att_current_day, att_status, att_type)
values
(#{item.userId}, #{item.orgId}, #{item.attCurrentDay}, #{item.attStatus}, #{item.attType})
;
insert into att_data_update(user_id, org_id, att_current_day, att_status, att_type)
values
(#{item.userId}, #{item.orgId}, #{item.attCurrentDay}, #{item.attStatus}, #{item.attType})
;
insert into att_month_report(user_id, name, org_id, org_name, att_current_month,
required_days, required_day_remark
)
values
(#{params.userId}, #{params.userName}, #{params.orgId}, #{params.orgName},
#{params.attCurrentMonth}, #{params.requiredDays}, #{params.requiredDayRemark}
)
update att_data set att_current_time = #{params.attCurrentTime},
att_address = #{params.attAddress}, province = #{params.province},
is_outside_att = #{params.isOutsideAtt},
att_lon = #{params.attLon},
att_lat = #{params.attLat},
data_source = #{params.dataSource},
error_remake = #{params.remark},
att_status = CASE
WHEN att_status in (SELECT dict_value
FROM sys_dict_data
where dict_type = 'att_status' and (is_leave = '1' or is_leave = '2') ) THEN att_status
ELSE #{params.attStatus}
END
where user_id = #{params.userId}
AND att_current_day = #{params.attCurrentDay} and att_type = #{params.attType};
update att_data_update set att_current_time = #{params.attCurrentTime},
att_address = #{params.attAddress}, province = #{params.province},
is_outside_att = #{params.isOutsideAtt},
att_lon = #{params.attLon},
att_lat = #{params.attLat},
data_source = #{params.dataSource},
error_remake = #{params.remark},
att_status = CASE
WHEN att_status in (SELECT dict_value
FROM sys_dict_data
where dict_type = 'att_status' and (is_leave = '1' or is_leave = '2')) THEN att_status
ELSE #{params.attStatus}
END
where is_update = 0 and user_id = #{params.userId}
and att_current_day = #{params.attCurrentDay} and att_type = #{params.attType}
update att_data set att_status = #{v.attStatus}
where user_id = #{v.userId} and att_current_day = #{v.attCurrentDay}
and att_type = #{v.attType}
update att_data_update set att_status = #{v.attStatus}
where is_update = 0 and user_id = #{v.userId}
and att_current_day = #{v.attCurrentDay}
and att_type = #{v.attType}
update att_data
set att_status = CASE
WHEN att_status = '11' THEN att_status
ELSE #{v.attStatus}
END
where user_id = #{v.userId}
and att_current_day = #{v.attCurrentDay}
and att_type = #{v.attType};
update att_data_update
set att_status = CASE
WHEN att_status = '11' THEN att_status
ELSE #{v.attStatus}
END
where user_id = #{v.userId}
and att_current_day = #{v.attCurrentDay}
and att_type = #{v.attType}
and is_update = 0;
update att_month_report
set
org_id = #{v.orgId},
org_name = #{v.orgName},
normal_num = #{v.normalNum},
late_num = #{v.lateNum},
early_num = #{v.earlyNum},
skipping_num = #{v.skippingNum},
leave_num = #{v.leaveNum},
leave_paid_num = #{v.leavePaidNum},
leave_unpaid_num = #{v.leaveUnpaidNum},
address_error_num = #{v.addressErrorNum},
ein_error_num = #{v.einErrorNum},
rest_num = #{v.restNum},
out_num = #{v.outNum},
business_trip_num = #{v.businessTripNum},
train_num = #{v.trainNum},
outside_att_num = #{v.outsideAttNum}
where
user_id = #{v.userId}
and att_current_month = #{v.attCurrentMonth}
update att_month_report
set required_days = #{requiredDays},required_day_remark = #{requiredDayRemark}
where user_id = #{userId}
and att_current_month = DATE_FORMAT(#{nowDate}, '%Y-%m')
update att_data
set att_status = '0'
where user_id = #{userId}
and att_current_day between #{leaveStartDate} and #{leaveEndDate};
update att_data_update
set att_status = '0',is_update = 0
where user_id = #{userId}
and att_current_day between #{leaveStartDate} and #{leaveEndDate};
update att_month_report set is_full_att = 0 where att_current_month = #{month} and user_id in
#{item}