id, orgId, employeeId, employeeName, signDate, inTime, outTime, inDeviceId, inDeviceName, outDeviceId, outDeviceName, isNotSign, isLate, isLeaveEarly, isLeave, isRepair, revJson, createBy, createDate, updateBy, updateDate, remarks, delFlag delete from att_day where id = #{id,jdbcType=INTEGER} > insert into att_day (orgId, employeeId, employeeName, signDate, inTime, outTime, inDeviceId, inDeviceName, outDeviceId, outDeviceName, isNotSign, isLate, isLeaveEarly, isLeave, isRepair, revJson, createBy, createDate, updateBy, updateDate, remarks, delFlag) values (#{orgId,jdbcType=INTEGER}, #{employeeId,jdbcType=VARCHAR}, #{employeeName,jdbcType=VARCHAR}, #{signDate,jdbcType=DATE}, #{inTime,jdbcType=TIMESTAMP}, #{outTime,jdbcType=TIMESTAMP}, #{inDeviceId,jdbcType=VARCHAR}, #{inDeviceName,jdbcType=VARCHAR}, #{outDeviceId,jdbcType=VARCHAR}, #{outDeviceName,jdbcType=VARCHAR}, #{isNotSign,jdbcType=INTEGER}, #{isLate,jdbcType=INTEGER}, #{isLeaveEarly,jdbcType=INTEGER}, #{isLeave,jdbcType=INTEGER}, #{isRepair,jdbcType=INTEGER}, #{revJson,jdbcType=CHAR}, #{createBy,jdbcType=VARCHAR}, #{createDate,jdbcType=TIMESTAMP}, #{updateBy,jdbcType=VARCHAR}, #{updateDate,jdbcType=TIMESTAMP}, #{remarks,jdbcType=VARCHAR}, #{delFlag,jdbcType=VARCHAR}) insert into att_day orgId, employeeId, employeeName, signDate, inTime, outTime, inDeviceId, inDeviceName, outDeviceId, outDeviceName, isNotSign, isLate, isLeaveEarly, isLeave, isRepair, revJson, createBy, createDate, updateBy, updateDate, remarks, delFlag, #{orgId,jdbcType=INTEGER}, #{employeeId,jdbcType=VARCHAR}, #{employeeName,jdbcType=VARCHAR}, #{signDate,jdbcType=DATE}, #{inTime,jdbcType=TIMESTAMP}, #{outTime,jdbcType=TIMESTAMP}, #{inDeviceId,jdbcType=VARCHAR}, #{inDeviceName,jdbcType=VARCHAR}, #{outDeviceId,jdbcType=VARCHAR}, #{outDeviceName,jdbcType=VARCHAR}, #{isNotSign,jdbcType=INTEGER}, #{isLate,jdbcType=INTEGER}, #{isLeaveEarly,jdbcType=INTEGER}, #{isLeave,jdbcType=INTEGER}, #{isRepair,jdbcType=INTEGER}, #{revJson,jdbcType=CHAR}, #{createBy,jdbcType=VARCHAR}, #{createDate,jdbcType=TIMESTAMP}, #{updateBy,jdbcType=VARCHAR}, #{updateDate,jdbcType=TIMESTAMP}, #{remarks,jdbcType=VARCHAR}, #{delFlag,jdbcType=VARCHAR}, update att_day orgId = #{orgId,jdbcType=INTEGER}, employeeId = #{employeeId,jdbcType=VARCHAR}, employeeName = #{employeeName,jdbcType=VARCHAR}, signDate = #{signDate,jdbcType=DATE}, inTime = #{inTime,jdbcType=TIMESTAMP}, outTime = #{outTime,jdbcType=TIMESTAMP}, inDeviceId = #{inDeviceId,jdbcType=VARCHAR}, inDeviceName = #{inDeviceName,jdbcType=VARCHAR}, outDeviceId = #{outDeviceId,jdbcType=VARCHAR}, outDeviceName = #{outDeviceName,jdbcType=VARCHAR}, isNotSign = #{isNotSign,jdbcType=INTEGER}, isLate = #{isLate,jdbcType=INTEGER}, isLeaveEarly = #{isLeaveEarly,jdbcType=INTEGER}, isLeave = #{isLeave,jdbcType=INTEGER}, isRepair = #{isRepair,jdbcType=INTEGER}, revJson = #{revJson,jdbcType=CHAR}, createBy = #{createBy,jdbcType=VARCHAR}, createDate = #{createDate,jdbcType=TIMESTAMP}, updateBy = #{updateBy,jdbcType=VARCHAR}, updateDate = #{updateDate,jdbcType=TIMESTAMP}, remarks = #{remarks,jdbcType=VARCHAR}, delFlag = #{delFlag,jdbcType=VARCHAR}, where id = #{id,jdbcType=INTEGER} update att_day set orgId = #{orgId,jdbcType=INTEGER}, employeeId = #{employeeId,jdbcType=VARCHAR}, employeeName = #{employeeName,jdbcType=VARCHAR}, signDate = #{signDate,jdbcType=DATE}, inTime = #{inTime,jdbcType=TIMESTAMP}, outTime = #{outTime,jdbcType=TIMESTAMP}, inDeviceId = #{inDeviceId,jdbcType=VARCHAR}, inDeviceName = #{inDeviceName,jdbcType=VARCHAR}, outDeviceId = #{outDeviceId,jdbcType=VARCHAR}, outDeviceName = #{outDeviceName,jdbcType=VARCHAR}, isNotSign = #{isNotSign,jdbcType=INTEGER}, isLate = #{isLate,jdbcType=INTEGER}, isLeaveEarly = #{isLeaveEarly,jdbcType=INTEGER}, isLeave = #{isLeave,jdbcType=INTEGER}, isRepair = #{isRepair,jdbcType=INTEGER}, revJson = #{revJson,jdbcType=CHAR}, createBy = #{createBy,jdbcType=VARCHAR}, createDate = #{createDate,jdbcType=TIMESTAMP}, updateBy = #{updateBy,jdbcType=VARCHAR}, updateDate = #{updateDate,jdbcType=TIMESTAMP}, remarks = #{remarks,jdbcType=VARCHAR}, delFlag = #{delFlag,jdbcType=VARCHAR} where id = #{id,jdbcType=INTEGER} sys_user2 bb_person_base insert into att_day (orgId, employeeId, employeeName,signDate, createBy, createDate) select orgId,id,name,DATE_ADD(date_format(NOW(),'%y-%m-%d'),INTERVAL 1 DAY),#{createBy,jdbcType=VARCHAR},NOW() from . where delFlag = 0 and not exists (select ad.employeeId, ad.employeeName , ad.signDate from att_day ad where ad.signDate = date_format(NOW(),'%y-%m-%d') and ad.employeeId = e2.id ) insert into att_day ( orgId, employeeId, employeeName,signDate, createBy, createDate) select e2.orgId,e2.id,e2.name, date_format(NOW(),'%y-%m-%d') date_format(#{signDate},'%y-%m-%d') ,#{createBy,jdbcType=VARCHAR},NOW() from . e2 where e2.delFlag = 0 and not exists (select ad.employeeId, ad.employeeName , ad.signDate from att_day ad where ad.signDate = date_format(NOW(),'%y-%m-%d') ad.signDate = date_format(#{signDate},'%y-%m-%d') ) insert into . ( id,orgId, officeId, name, gender, type,photos,createBy, createTime, updateBy, updateTime) values ( #{pid,jdbcType=INTEGER},#{orgId,jdbcType=INTEGER}, #{officeId,jdbcType=INTEGER}, #{name,jdbcType=VARCHAR}, #{gender,jdbcType=VARCHAR}, #{type,jdbcType=VARCHAR}, #{photos,jdbcType=VARCHAR},#{createBy,jdbcType=VARCHAR}, NOW() #{createTime,jdbcType=TIMESTAMP} , #{createBy,jdbcType=VARCHAR}, NOW() ) /*where not exists (select ad.employeeId, ad.employeeName,ad.signDate from att_day ad where ad.signDate = date_format(NOW(),'%y-%m-%d') )*/ insert into att_day ( orgId, employeeId, employeeName, signDate, createBy, createDate, updateBy, updateDate) values #{item.orgId,jdbcType=INTEGER}, #{item.id,jdbcType=INTEGER}, #{item.userName,jdbcType=VARCHAR}, date_format(NOW(),'%y-%m-%d'), date_format(#{signDate},'%y-%m-%d'), #{item.createBy,jdbcType=VARCHAR}, NOW(), #{createTime,jdbcType=TIMESTAMP}, #{item.updateBy,jdbcType=VARCHAR}, NOW() #{updateTime,jdbcType=TIMESTAMP} update att_day set inTime = #{attDay.inTime,jdbcType=TIMESTAMP}, outTime = #{attDay.outTime,jdbcType=TIMESTAMP}, inDeviceId = #{attDay.inDeviceId,jdbcType=VARCHAR}, inDeviceName = #{attDay.inDeviceName,jdbcType=VARCHAR}, outDeviceId = #{attDay.outDeviceId,jdbcType=VARCHAR}, outDeviceName = #{attDay.outDeviceName,jdbcType=VARCHAR}, isNotSign = #{attDay.isNotSign,jdbcType=INTEGER}, isLate = #{attDay.isLate,jdbcType=INTEGER}, isLeaveEarly = #{attDay.isLeaveEarly,jdbcType=INTEGER}, isLeave = #{attDay.isLeave,jdbcType=INTEGER}, isRepair = #{attDay.isRepair,jdbcType=INTEGER}, revJson = #{attDay.revJson,jdbcType=VARCHAR}, updateBy = #{attDay.updateBy,jdbcType=VARCHAR}, updateDate = NOW(), updateDate = #{attDay.updateTime,jdbcType=TIMESTAMP}, remarks = #{attDay.remarks,jdbcType=VARCHAR}, delFlag = 0 delFlag = #{attDay.delFlag,jdbcType=INTEGER} where employeeId = #{attDay.employeeId ,jdbcType=VARCHAR} and signDate = date_format( #{attDay.signDate,jdbcType=VARCHAR},'%y-%m-%d') update att_day set inTime = CASE WHEN inTime is NULL THEN #{attDay.inTime,jdbcType=TIMESTAMP} WHEN inTime > #{attDay.inTime,jdbcType=TIMESTAMP} THEN #{attDay.inTime,jdbcType=TIMESTAMP} ELSE inTime END , outTime = CASE WHEN outTime is NULL THEN #{attDay.outTime,jdbcType=TIMESTAMP} WHEN outTime < #{attDay.outTime,jdbcType=TIMESTAMP} THEN #{attDay.outTime,jdbcType=TIMESTAMP} ELSE outTime END , inDeviceId = CASE WHEN inTime is NULL THEN #{attDay.inDeviceId,jdbcType=VARCHAR} WHEN inTime > #{attDay.inTime,jdbcType=TIMESTAMP} THEN #{attDay.inDeviceId,jdbcType=VARCHAR} ELSE inDeviceId END, inDeviceName = CASE WHEN inTime is NULL THEN #{attDay.inDeviceName,jdbcType=VARCHAR} WHEN inTime > #{attDay.inTime,jdbcType=TIMESTAMP} THEN #{attDay.inDeviceName,jdbcType=VARCHAR} ELSE inDeviceName END, outDeviceId = CASE WHEN outTime is NULL THEN #{attDay.outDeviceId,jdbcType=VARCHAR} WHEN outTime < #{attDay.outTime,jdbcType=TIMESTAMP} THEN #{attDay.outDeviceId,jdbcType=VARCHAR} ELSE outDeviceId END, outDeviceName = CASE WHEN outTime is NULL THEN #{attDay.outDeviceName,jdbcType=VARCHAR} WHEN outTime < #{attDay.outTime,jdbcType=TIMESTAMP} THEN #{attDay.outDeviceName,jdbcType=VARCHAR} ELSE outDeviceName END, isNotSign = CASE WHEN isNotSign is NULL THEN #{attDay.isNotSign,jdbcType=INTEGER} WHEN isNotSign = 0 THEN 0 ELSE #{attDay.isNotSign,jdbcType=INTEGER} END, isLate = CASE WHEN isLate is NULL THEN #{attDay.isLate,jdbcType=INTEGER} WHEN isLate = 0 THEN 0 ELSE #{attDay.isLate,jdbcType=INTEGER} END, isLeaveEarly = CASE WHEN isLeaveEarly is NULL THEN #{attDay.isLeaveEarly,jdbcType=INTEGER} WHEN isLeaveEarly = 0 THEN 0 ELSE #{attDay.isLeaveEarly,jdbcType=INTEGER} END, isLeave = #{attDay.isLeave,jdbcType=INTEGER}, isRepair = #{attDay.isRepair,jdbcType=INTEGER}, revJson = #{attDay.revJson,jdbcType=VARCHAR}, updateBy = #{attDay.updateBy,jdbcType=VARCHAR}, updateDate = NOW(), updateDate = #{attDay.updateTime,jdbcType=TIMESTAMP}, remarks = #{attDay.remarks,jdbcType=VARCHAR}, delFlag = 0 delFlag = #{attDay.delFlag,jdbcType=INTEGER} where employeeId = #{attDay.employeeId ,jdbcType=VARCHAR} and signDate = date_format( #{attDay.signDate,jdbcType=VARCHAR},'%y-%m-%d')