Commit 9d29216e by Administrator

Merge branch 'develop' into 'master'

Develop

See merge request 8timerv2/8timerapiv200!518
parents bd3f6f36 50f29381
......@@ -54,4 +54,6 @@ public class AttendanceAssistant implements Serializable{
int fieldpersonnel;//外勤
int restdayclock;//休息日打卡
String PagetransferDate;//页面传输修改日期
}
......@@ -340,8 +340,13 @@ public class AttController {
//记录排班(排班制)
List<Schedule> schlist=new ArrayList<Schedule>();
Schedule[] schedules = attass.getSchedules();// 排班日期【排班制】--班次id、日期
String date_scmx = null;
if(schedules.length>0 && attass.getAtttype() == 2){
date_scmx = ClockInTool.SunNovCSTYM(schedules[0].getData());
String date = String.valueOf(schedules[0].getData());
Date dt=new Date(date);
SimpleDateFormat famt = new SimpleDateFormat("yyyy-MM");
......@@ -1135,7 +1140,10 @@ public class AttController {
}
if(schlist.size()>0 && xiugai){
//删除排班明细表(自由排班)
scheduleservice.deleteByPrimaryBykqzid(id);
// scheduleservice.deleteByPrimaryBykqzid(id);
scheduleservice.deleteByPrimaryBykqzid(id,date_scmx);
scheduleservice.insertKqglAssoPbmxList(schlist);
return ResultUtil.data(schlist,"修改考勤组排班成功");
}
......@@ -1458,7 +1466,13 @@ public class AttController {
for(int u=0;u<attser.length;u++){
if(attass.getAtttype() == 2){//排班制 考勤组与用户、用户排班
scheduleservice.deleteByPrimaryByUserid(Integer.valueOf(attser[u]));
Schedule[] schedules = attass.getSchedules();// 排班日期【排班制】--班次id、日期
if(schedules.length>0) {
String date = ClockInTool.SunNovCSTYM(schedules[0].getData());
scheduleservice.deleteByPrimaryByUserid(Integer.valueOf(attser[u]),attgrpid,date);
}
// scheduleservice.deleteByPrimaryByUserid(Integer.valueOf(attser[u]));
}
userattendancerelservice.deleteByPrimaryByUserid(Integer.valueOf(attser[u]),qyid);
......@@ -1581,12 +1595,17 @@ public class AttController {
}
/**********/
scheduleservice.deleteByPrimaryBykqzid(attgrpid);
// scheduleservice.deleteByPrimaryBykqzid(attgrpid);
/***********/
//记录排班(排班制)
List<Schedule> schlist=new ArrayList<Schedule>();
Schedule[] schedules = attass.getSchedules();// 排班日期【排班制】--班次id、日期
if(schedules.length>0 && attass.getAtttype() == 2){
String date = ClockInTool.SunNovCSTYM(schedules[0].getData());
scheduleservice.deleteByPrimaryBykqzid(attgrpid,date);
for(int p=0;p<schedules.length;p++){
Schedule sch = new Schedule();
sch.setUserid(schedules[p].getUserid());
......
......@@ -363,8 +363,10 @@ public class ClockInTool {
Iterator<String> it = arrList.iterator();
while (it.hasNext()) {
String x = it.next();
if (x.indexOf(target) != -1) {
it.remove();
if(x != null) {
if (x.indexOf(target) != -1) {
it.remove();
}
}
}
res = new String[arrList.size()];
......@@ -728,5 +730,27 @@ public class ClockInTool {
}
return sdf.format(date2);
}
/**
* Sun Nov 01 00:00:00 CST 2020
*/
public static String SunNovCST(String s){
String cst;
Date date = new Date(s);
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
cst = simpleDateFormat.format(date);
return cst;
}
/**
* Sun Nov 01 00:00:00 CST 2020
*/
public static String SunNovCSTYM(Date date2){
String cst;
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM");
cst = simpleDateFormat.format(date2);
return cst;
}
}
......@@ -98,7 +98,7 @@ public class AttendanceTaskTiming{
//typeid:1-员工 2-考勤组
// @Scheduled(cron = "0 */5 * * * ?")
// @Scheduled(cron = "0 42 14 * * ?")
// @Scheduled(cron = "0 0 11 * * ?")
@Scheduled(cron = "0 0 8,12,16,20 * * ?")//每天上午8、12点,下午16点,20点 执行
public void AttendanceTask() throws ParseException {
......@@ -133,7 +133,7 @@ public class AttendanceTaskTiming{
List<QyzxEntInfoM> orgcodelist = qyzxentinfommapper.selectList(new QueryWrapper<QyzxEntInfoM>());//系统中的所有公司 所有未到期的公司
// List<QyzxEntInfoM> orgcodelist = qyzxentinfommapper.selectList(new QueryWrapper<QyzxEntInfoM>().lambda().eq(QyzxEntInfoM::getId, 3));
// List<QyzxEntInfoM> orgcodelist = qyzxentinfommapper.selectList(new QueryWrapper<QyzxEntInfoM>().lambda().eq(QyzxEntInfoM::getId, 6));
for(int t = 0;t<orgcodelist.size();t++){
int org_code = orgcodelist.get(t).getId();//企业组织代码
......@@ -298,7 +298,7 @@ public class AttendanceTaskTiming{
y = y-1;
}
if(attgro.getIsFdjjr().equals(1)) {
if(attgro.getIsFdjjr().equals(1111)) {
if(Arrays.asList(holidays).contains(String.valueOf(sdf1.format(date1)))){
y = y-1;
jj ++;
......@@ -350,7 +350,11 @@ public class AttendanceTaskTiming{
xxts = ClockInTool.doChinFilters(ClockInTool.deleteArrayNull(xxts), num);//为必须上班的话从休息日期中去除
}
if(ClockInTool.useArrayUtils(appmaps, num)) {//检查是否存在 无需打卡名单中
ycqts = ClockInTool.doChinFilters(ClockInTool.deleteArrayNull(ycqts), num);//为必须休息的话从上班日期中去除
ycqts = ClockInTool.doChinFilters(ycqts, num);//为必须休息的话从上班日期中去除
// ycqts = ClockInTool.doChinFilters(ClockInTool.deleteArrayNull(ycqts), num);//为必须休息的话从上班日期中去除
zjgzts = zjgzts - 1;
String[] xxtst = new String[xxts.length + zj];
......@@ -364,7 +368,7 @@ public class AttendanceTaskTiming{
//当前考勤组开启法定节假日休息开关
if(attgro.getIsFdjjr().equals(1)) {
if(attgro.getIsFdjjr().equals(11111)) {
//法定节假日
if(ClockInTool.useArrayUtils(holidays, num)) {//法定节假日沦为休息日计算
// ycqts = ClockInTool.doChinFilters(ClockInTool.deleteArrayNull(ycqts), num);//为必须休息的话从上班日期中去除
......
......@@ -90,7 +90,7 @@ public class LastMonthtimingExport {
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
// @Scheduled(cron = "0 7 15 * * ?")
// @Scheduled(cron = "0 5 11 * * ?")
@Scheduled(cron = "0 0 4,20 * * ?")//每天上午4点,下午20点 执行
public void LastMonthtimingAttendanceTask() throws ParseException {
......@@ -286,7 +286,7 @@ public class LastMonthtimingExport {
y = y-1;
}
if(attgro.getIsFdjjr().equals(1)) {
if(attgro.getIsFdjjr().equals(111)) {
if(Arrays.asList(holidays).contains(String.valueOf(sdf1.format(date1)))){
y = y-1;
jj ++;
......@@ -336,7 +336,8 @@ public class LastMonthtimingExport {
xxts = ClockInTool.doChinFilters(ClockInTool.deleteArrayNull(xxts), num);//为必须上班的话从休息日期中去除
}
if(ClockInTool.useArrayUtils(appmaps, num)) {//检查是否存在 无需打卡名单中
ycqts = ClockInTool.doChinFilters(ClockInTool.deleteArrayNull(ycqts), num);//为必须休息的话从上班日期中去除
ycqts = ClockInTool.doChinFilters(ycqts, num);//为必须休息的话从上班日期中去除
// ycqts = ClockInTool.doChinFilters(ClockInTool.deleteArrayNull(ycqts), num);//为必须休息的话从上班日期中去除
zjgzts = zjgzts - 1;
String[] xxtst = new String[xxts.length + zj];
......@@ -349,7 +350,7 @@ public class LastMonthtimingExport {
}
//当前考勤组开启法定节假日休息开关
if(attgro.getIsFdjjr().equals(1)) {
if(attgro.getIsFdjjr().equals(11111)) {
//法定节假日
if(ClockInTool.useArrayUtils(holidays, num)) {//法定节假日沦为休息日计算
// ycqts = ClockInTool.doChinFilters(ClockInTool.deleteArrayNull(ycqts), num);//为必须休息的话从上班日期中去除
......
......@@ -23,11 +23,11 @@ public interface ScheduleMapper {
int insertKqglAssoPbmxList(List<Schedule> schedule);
int deleteByPrimaryBykqzid(Integer kqzid);
int deleteByPrimaryBykqzid(Integer kqzid,String date);
List<Schedule> selectAttGroupScheduling(AttScheduling attscheduling);
int deleteByPrimaryByUserid(Integer userid);
int deleteByPrimaryByUserid(Integer userid,Integer kqzid,String date);
List<Schedule> getAttendanceShouldList(Integer userid,Long start,Long end);
......
......@@ -147,9 +147,10 @@
</foreach>
</insert>
<delete id="deleteByPrimaryBykqzid" parameterType="java.lang.Integer" >
<delete id="deleteByPrimaryBykqzid" >
delete from kqgl_asso_pbmx
where kqzid = #{kqzid,jdbcType=INTEGER}
and SUBSTR(data,1,7) = #{date,jdbcType=VARCHAR}
</delete>
<select id="selectAttGroupScheduling" resultMap="BaseResultMap">
......@@ -168,9 +169,11 @@
and pbmx.kqzid = #{kqzid,jdbcType=INTEGER}
</select>
<delete id="deleteByPrimaryByUserid" parameterType="java.lang.Integer" >
<delete id="deleteByPrimaryByUserid">
delete from kqgl_asso_pbmx
where userid = #{userid,jdbcType=INTEGER}
and SUBSTR(data,1,7) = #{date,jdbcType=VARCHAR}
and kqzid = #{kqzid,jdbcType=INTEGER}
</delete>
<select id="getAttendanceShouldList" resultMap="BaseResultMap">
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment