提交 a2835f59 authored 作者: 许志图's avatar 许志图

Merge branch 'dev' of ssh://39.96.70.20:2222/A7/aroad into dev

......@@ -42,13 +42,14 @@ COMMENT = '班次表';
-- -----------------------------------------------------
DROP TABLE IF EXISTS `aroad`.`attendance` ;
CREATE TABLE IF NOT EXISTS `aroad`.`attendance` (
`attendance_id` INT NOT NULL AUTO_INCREMENT COMMENT '排班id',
`shift_id` INT NOT NULL COMMENT '班次表主键',
CREATE TABLE `attendance` (
`attendance_id` int(11) NOT NULL AUTO_INCREMENT COMMENT '排班id',
`shift_id` int(11) NOT NULL COMMENT '班次表主键',
`time` date NOT NULL COMMENT '排班日期',
`unit_id` int(11) NOT NULL COMMENT '排班部门id',
PRIMARY KEY (`attendance_id`),
INDEX `shift_id_index` (`shift_id` ASC) VISIBLE)
ENGINE = InnoDB
COMMENT = '排班表';
KEY `shift_id_index` (`shift_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='排班表';
-- -----------------------------------------------------
......@@ -56,31 +57,15 @@ COMMENT = '排班表';
-- -----------------------------------------------------
DROP TABLE IF EXISTS `aroad`.`attendance_members` ;
CREATE TABLE IF NOT EXISTS `aroad`.`attendance_members` (
`id` INT NOT NULL AUTO_INCREMENT COMMENT '主键',
`attendance_id` INT NOT NULL,
`name` VARCHAR(10) NOT NULL COMMENT '值班人员姓名',
CREATE TABLE `attendance_members` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键',
`attendance_id` int(11) NOT NULL,
`name` varchar(10) NOT NULL COMMENT '值班人员姓名',
`phone` varchar(15) NOT NULL COMMENT '手机号',
PRIMARY KEY (`id`),
INDEX `attendance_id_index` (`attendance_id` ASC) INVISIBLE)
ENGINE = InnoDB
COMMENT = '值班人员表';
KEY `attendance_id_index` (`attendance_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='值班人员表';
-- -----------------------------------------------------
-- Table `aroad`.`attendance_records`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `aroad`.`attendance_records` ;
CREATE TABLE IF NOT EXISTS `aroad`.`attendance_records` (
`record_id` INT NOT NULL AUTO_INCREMENT COMMENT '通讯录id',
`unit` VARCHAR(30) NOT NULL,
`department` VARCHAR(30) NOT NULL COMMENT '部门id',
`position` VARCHAR(30) NULL,
`name` VARCHAR(10) NOT NULL,
`telphone` VARCHAR(15) NULL,
`remark` VARCHAR(100) NULL,
PRIMARY KEY (`record_id`))
ENGINE = InnoDB
COMMENT = '值班通讯录';
SET SQL_MODE=@OLD_SQL_MODE;
......
......@@ -179,11 +179,6 @@
<artifactId>gson</artifactId>
<version>2.8.2</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.47</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
......
......@@ -46,6 +46,18 @@ public class AttendanceController extends BaseController {
return new R<>(attendanceService.getById(attendanceId));
}
/**
* @Description: 查询部门下的排班计划
* @Param: [deptId]
* @return: com.elephant.framework.galaxy.aroad.response.R
* @Author: songwenjie
* @Date: 2019/4/16
*/
@GetMapping("/list/{deptId}")
public R getAttance(@PathVariable("deptId") Integer deptId){
return new R<>(attendanceService.getAttendance(deptId));
}
/**
* 新增排班表
* @param attendance 排班表
......
package com.elephant.framework.galaxy.aroad.module.attendance.dto;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.Date;
/**
* @program:
* @description:
* @author: songwenjie
* @create: 2019-04-16 16:37
**/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class AttendanceDto {
/**
* 排班id
*/
private int attendanceId;
/**
部门id
*/
private int unitId;
/**
* 班次id
*/
private int shiftId;
/**
* 班次名称
*/
private String shiftName;
/**
* 值班人数
*/
private int count;
/**
* 值班时间
*/
@JsonFormat(pattern = "yyyy-MM-dd")
private Date time;
}
package com.elephant.framework.galaxy.aroad.module.attendance.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.elephant.framework.galaxy.aroad.module.attendance.dto.AttendanceDto;
import com.elephant.framework.galaxy.aroad.module.attendance.entity.Attendance;
import java.util.List;
/**
* 排班表
*
......@@ -11,4 +14,12 @@ import com.elephant.framework.galaxy.aroad.module.attendance.entity.Attendance;
*/
public interface AttendanceMapper extends BaseMapper<Attendance> {
/**
* @Description: 查询部门下的排班计划
* @Param: [deptId]
* @return: java.util.List<com.elephant.framework.galaxy.aroad.module.attendance.dto.AttendanceDto>
* @Author: songwenjie
* @Date: 2019/4/16
*/
List<AttendanceDto> getAttendance(int deptId);
}
package com.elephant.framework.galaxy.aroad.module.attendance.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.elephant.framework.galaxy.aroad.module.attendance.dto.AttendanceDto;
import com.elephant.framework.galaxy.aroad.module.attendance.entity.Attendance;
import java.util.List;
/**
* 排班表
*
......@@ -11,4 +14,12 @@ import com.elephant.framework.galaxy.aroad.module.attendance.entity.Attendance;
*/
public interface AttendanceService extends IService<Attendance> {
/**
* @Description: 查询部门下的排班计划
* @Param: [deptId]
* @return: java.util.List<com.elephant.framework.galaxy.aroad.module.attendance.dto.AttendanceDto>
* @Author: songwenjie
* @Date: 2019/4/16
*/
List<AttendanceDto> getAttendance(int deptId);
}
package com.elephant.framework.galaxy.aroad.module.attendance.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.elephant.framework.galaxy.aroad.module.attendance.dto.AttendanceDto;
import com.elephant.framework.galaxy.aroad.module.attendance.entity.Attendance;
import com.elephant.framework.galaxy.aroad.module.attendance.mapper.AttendanceMapper;
import com.elephant.framework.galaxy.aroad.module.attendance.service.AttendanceService;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* 排班表
*
......@@ -15,4 +18,14 @@ import org.springframework.stereotype.Service;
@Service
public class AttendanceServiceImpl extends ServiceImpl<AttendanceMapper, Attendance> implements AttendanceService {
/**
* @Description: 查询部门下的排班计划
* @Param: [deptId]
* @return: java.util.List<com.elephant.framework.galaxy.aroad.module.attendance.dto.AttendanceDto>
* @Author: songwenjie
* @Date: 2019/4/16
*/
public List<AttendanceDto> getAttendance(int deptId){
return baseMapper.getAttendance(deptId);
}
}
......@@ -8,4 +8,25 @@
<id property="attendanceId" column="attendance_id"/>
<result property="shiftId" column="shift_id"/>
</resultMap>
<resultMap id="attendanceDtoMap" type="com.elephant.framework.galaxy.aroad.module.attendance.dto.AttendanceDto">
<result property="attendanceId" column="attendance_id"/>
<result property="shiftId" column="shift_id"/>
<result property="unitId" column="unit_id"/>
<result property="time" column="time"/>
<result property="shiftName" column="shift_name"/>
<result property="count" column="count"/>
</resultMap>
<select id="getAttendance" resultMap="attendanceDtoMap">
SELECT
a.attendance_id,a.unit_id,a.time,t.shift_id,t.shift_name,COUNT(m.id) as count
FROM `attendance` a
INNER JOIN attendance_templates t
ON a.shift_id = t.shift_id
INNER JOIN attendance_members m
ON a.attendance_id = m.attendance_id
WHERE a.unit_id = #{unitId}
GROUP BY a.time,a.shift_id
</select>
</mapper>
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论