update code

dev_xds
haha 2023-09-27 00:37:24 +08:00
parent ac05a76efe
commit c281a11886
6 changed files with 73 additions and 4 deletions

View File

@ -1,20 +1,22 @@
package com.yanzhu.jh.bigscreen.web.controller;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.core.text.Convert;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.StringUtils;
import com.yanzhu.jh.project.domain.SurProjectAttendanceData;
import com.yanzhu.jh.project.domain.SurProjectDeptWroks;
import com.yanzhu.jh.project.domain.SurProjectWorkAttendance;
import com.yanzhu.jh.project.service.ISurProjectAttendanceDataService;
import com.yanzhu.jh.project.service.ISurProjectDeptWroksService;
import com.yanzhu.jh.project.service.ISurProjectWorkAttendanceService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import java.util.Date;
import java.util.List;
/**
* Conller
@ -29,6 +31,9 @@ public class ProjectAttendanceController extends BaseController {
@Autowired
ISurProjectDeptWroksService surProjectDeptWroksService;
@Autowired
ISurProjectAttendanceDataService attendanceDataService;
/**
*
* @param deptId
@ -70,4 +75,10 @@ public class ProjectAttendanceController extends BaseController {
}
return getDataTable(surProjectWorkAttendanceService.selectBgscreenWorkAttendanceList(surProjectWorkAttendance));
}
@PostMapping("/groupByComany")
public AjaxResult groupByComany(@RequestBody SurProjectAttendanceData where){
List<SurProjectAttendanceData> list=attendanceDataService.groupByComany(where);
return AjaxResult.success(list);
}
}

View File

@ -91,6 +91,34 @@ public class SurProjectAttendanceData extends BaseEntity
@Excel(name = "")
private Long isDel;
private Long projectId;
private Long subDeptId;
private String companyTypeId;
public Long getProjectId() {
return projectId;
}
public void setProjectId(Long projectId) {
this.projectId = projectId;
}
public Long getSubDeptId() {
return subDeptId;
}
public void setSubDeptId(Long subDeptId) {
this.subDeptId = subDeptId;
}
public String getCompanyTypeId() {
return companyTypeId;
}
public void setCompanyTypeId(String companyTypeId) {
this.companyTypeId = companyTypeId;
}
public static SurProjectAttendanceData create(JSONObject json) {
SurProjectAttendanceData d=new SurProjectAttendanceData();
d.attendanceTime=json.getString("time");

View File

@ -60,4 +60,6 @@ public interface SurProjectAttendanceDataMapper
public int deleteSurProjectAttendanceDataByIds(Long[] ids);
public long getLastServerId(SurProjectAttendanceData where);
List<SurProjectAttendanceData> groupByComany(SurProjectAttendanceData where);
}

View File

@ -62,4 +62,6 @@ public interface ISurProjectAttendanceDataService
public void add(SurProjectAttendanceData sdata);
public long getLastServerId(SurProjectAttendanceData where);
public List<SurProjectAttendanceData> groupByComany(SurProjectAttendanceData where);
}

View File

@ -116,4 +116,9 @@ public class SurProjectAttendanceDataServiceImpl implements ISurProjectAttendanc
public long getLastServerId(SurProjectAttendanceData where) {
return surProjectAttendanceDataMapper.getLastServerId(where);
}
@Override
public List<SurProjectAttendanceData> groupByComany(SurProjectAttendanceData where) {
return surProjectAttendanceDataMapper.groupByComany(where);
}
}

View File

@ -29,10 +29,19 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="createTime" column="create_time" />
<result property="updateBy" column="update_by" />
<result property="updateTime" column="update_time" />
<result property="projectId" column="project_id" />
<result property="subDeptId" column="sub_dept_id"/>
<result property="companyTypeId" column="companyTypeId"/>
</resultMap>
<sql id="selectSurProjectAttendanceDataVo">
select id, cfgid, vendors_code, serverid, workerId, attendance_type, attendance_time, identification, teamId, workTypeCode, companyId, vendorId, projectType, device_code, work_point_id, scanPhoto, other, state, remark, is_del, create_by, create_time, update_by, update_time from sur_project_attendance_data
select * FROM
(
select a.*,b.project_id,b.sub_dept_id,c.companyTypeId
from sur_project_attendance_data a,sur_project_attendance_cfg b,sur_project_attendance_group c
where a.cfgid=b.id and a.companyId=c.companyId
)
sur_project_attendance_data
</sql>
<select id="selectSurProjectAttendanceDataList" parameterType="SurProjectAttendanceData" resultMap="SurProjectAttendanceDataResult">
@ -161,4 +170,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<select id="getLastServerId" parameterType="SurProjectAttendanceData" resultType="Long">
SELECT IF(MAX(serverid),MAX(serverid),0) serverid FROM sur_project_attendance_data WHERE cfgid=#{cfgid}
</select>
<select id="groupByComany" parameterType="SurProjectAttendanceData" resultMap="SurProjectAttendanceDataResult">
select companyTypeId,count(1) id from ( <include refid="selectSurProjectAttendanceDataVo"/> ) x2 where id in (
select min(id) from ( <include refid="selectSurProjectAttendanceDataVo"/> ) x1
where date(attendance_time)=#{attendanceTime}
<if test="subDeptId!=null and subDeptId>0"> and project_id in (
SELECT id FROM sur_project WHERE isdel=0 AND deptid = #{subDeptId}
)
</if>
<if test="projectId!=null and projectId>0"> and project_id=#{projectId}</if>
group by workerId )
and companyTypeId in (1,2,3,8) group by companyTypeId
</select>
</mapper>