当前位置: 首页 > news >正文

朝阳区建设委员会网站网络推广计划制定步骤

朝阳区建设委员会网站,网络推广计划制定步骤,合肥效果好的网站推广,无极在线观看文章目录一、持久层1、CheckinMapper.xml2、CheckinMapper.java3、TbHolidaysDao.xml4、TbHolidaysDao.java5、TbWorkdayDao.xml6、TbWorkdayDao.java二、业务层1、 CheckinService.java三、conroller层1、编写 TbUserDao.xml 文件,查询员工的入职日期。2、编写 TbU…

文章目录

  • 一、持久层
    • 1、CheckinMapper.xml
    • 2、CheckinMapper.java
    • 3、TbHolidaysDao.xml
    • 4、TbHolidaysDao.java
    • 5、TbWorkdayDao.xml
    • 6、TbWorkdayDao.java
  • 二、业务层
    • 1、 CheckinService.java
  • 三、conroller层
    • 1、编写 TbUserDao.xml 文件,查询员工的入职日期。
    • 2、编写 TbUserDao.java 接口,定义抽象方法。
    • 3、在 UserService.java
    • 4、实现查询考勤结果的Web方法


一、持久层

1、CheckinMapper.xml

<select id="searchTodayCheckin" parameterType="int" resultType="HashMap">SELECTu.name,u.photo,d.dept_name AS deptName,ck.address,CASEWHEN ck.status=1 THEN '正常'WHEN ck.status=2 THEN '迟到'END AS status,DATE_FORMAT(ck.create_time,'%H:%i') AS checkinTime,ck.dateFROM tb_user AS uLEFT JOIN tb_dept AS d ON u.dept_id = d.idLEFT JOIN tb_checkin AS ck ON u.id = ck.user_id AND ck.date = CURRENT_DATEWHERE u.id = #{userId} AND u.status=1</select><select id="searchCheckinDays" parameterType="int" resultType="long">SELECT COUNT(*) AS countFROM tb_checkinWHERE user_id=#{userId}</select><select id="searchWeekCheckin" parameterType="HashMap" resultType="HashMap">SELECTCAST(date AS CHAR) AS date,IF(status=1,'正常','迟到') AS statusFROM tb_checkinWHERE user_id=#{userId} AND date BETWEEN #{startDate} AND #{endDate}</select>

2、CheckinMapper.java

@Mapper
public interface TbCheckinDao {public HashMap searchTodayCheckin(int userId);public long searchCheckinDays(int userId);public ArrayList<HashMap> searchWeekCheckin(HashMap param);}

3、TbHolidaysDao.xml

<select id="searchHolidaysInRange" parameterType="HashMap" resultType="String">SELECT dateFROM tb_holidaysWHERE date BETWEEN #{startDate} AND #{endDate}</select>

4、TbHolidaysDao.java

public interface TbHolidaysDao {
……public ArrayList<String> searchHolidaysInRange(HashMap param);}

5、TbWorkdayDao.xml

<select id="searchWorkdayInRange" parameterType="HashMap" resultType="String">SELECT dateFROM tb_workdayWHERE date BETWEEN #{startDate} AND #{endDate}</select>

6、TbWorkdayDao.java

public interface TbWorkdayDao {……
public ArrayList<String> searchWorkdayInRange(HashMap param);
}

二、业务层

1、 CheckinService.java

 public class CheckinServiceImpl{……public HashMap searchTodayCheckin(int userId) {HashMap map = checkinDao.searchTodayCheckin(userId);return map;}public long searchCheckinDays(int userId) {long days = checkinDao.searchCheckinDays(userId);return days;}public ArrayList<HashMap> searchWeekCheckin(HashMap param) {ArrayList<HashMap> checkinList = checkinDao.searchWeekCheckin(param);ArrayList<String> holidaysList = holidaysDao.searchHolidaysInRange(param);ArrayList<String> workdayList = workdayDao.searchWorkdayInRange(param);DateTime startDate = DateUtil.parseDate(param.get("startDate").toString());DateTime endDate = DateUtil.parseDate(param.get("endDate").toString());DateRange range = DateUtil.range(startDate, endDate, DateField.DAY_OF_MONTH);ArrayList list = new ArrayList();range.forEach(one -> {String date = one.toString("yyyy-MM-dd");//查看今天是不是假期或者工作日String type = "工作日";if (one.isWeekend()) {type = "节假日";}if (holidaysList != null && holidaysList.contains(date)) {type = "节假日";} else if (workdayList != null && workdayList.contains(date)) {type = "工作日";}String status = "";//如果date1 < date2,返回数小于0,date1==date2返回0,date1 > date2 大于0if (type.equals("工作日") && DateUtil.compare(one, DateUtil.date()) <= 0) {status = "缺勤";boolean flag=false;for (HashMap<String, String> map : checkinList) {if (map.containsValue(date)) {status = map.get("status");flag=true;break;}DateTime endTime=DateUtil.parse(DateUtil.today()+""+constants.attendanceEndTime);String today=DateUtil.today();if(date.equals(today)&&DateUtil.date().isBefore(endTime)&&flag==false)
{status="";}}}HashMap map = new HashMap();map.put("date", date);map.put("status", status);map.put("type", type);map.put("day", one.dayOfWeekEnum().toChinese("周"));list.add(map);});return list;}}

三、conroller层

1、编写 TbUserDao.xml 文件,查询员工的入职日期。

 <select id="searchUserHiredate" parameterType="int" resultType="String">SELECT hiredate FROM tb_user WHERE id=#{userId} AND status = 1
</select>

2、编写 TbUserDao.java 接口,定义抽象方法。

 public interface TbUserDao {……public String searchUserHiredate(int userId);}

3、在 UserService.java

 public class UserServiceImpl implements UserService {……@Overridepublic String searchUserHiredate(int userId) {String hiredate = userDao.searchUserHiredate(userId);return hiredate;}}

4、实现查询考勤结果的Web方法

 public class CheckinController {……@Autowiredprivate UserService userService;@Autowiredprivate SystemConstants constants;@GetMapping("/searchTodayCheckin")@ApiOperation("查询用户当日签到数据")public Result searchTodayCheckin(@RequestHeader("token") String token) {int userId = jwtUtil.getUserId(token);HashMap map = checkinService.searchTodayCheckin(userId);map.put("attendanceTime", constants.attendanceTime);map.put("closingTime", constants.closingTime);long days = checkinService.searchCheckinDays(userId);map.put("checkinDays", days);//判断日期是否在用户入职之前DateTime hiredate = DateUtil.parse(userService.searchUserHiredate(userId));DateTime startDate = DateUtil.beginOfWeek(DateUtil.date());if (startDate.isBefore(hiredate)) {startDate = hiredate;}DateTime endDate = DateUtil.endOfWeek(DateUtil.date());HashMap param = new HashMap();param.put("startDate", startDate.toString());param.put("endDate", endDate.toString());param.put("userId", userId);ArrayList<HashMap> list = checkinService.searchWeekCheckin(param);map.put("weekCheckin", list);return Result.ok().put("result", map);}}
http://www.dinnco.com/news/44824.html

相关文章:

  • 白云免费网站建设站长之家源码
  • 兰州程序开发网站建设网站页面优化方案
  • 天津建设网站c2成绩查询武汉网络营销公司排名
  • 上海沙龙网站建设上海app网络推广公司电话
  • 我的校园网站制作产品推广朋友圈文案
  • 设计师投资做项目网站百度推广怎么做效果好
  • 南通做网站多少钱seo推广排名公司
  • 空包网站怎么做百度推广员工工资怎么样
  • 手机怎么创网站免费宁德市属于哪个省
  • 网站响应式好吗广东省最新疫情
  • 普通网站和营销网站有何不同附近的教育培训机构有哪些
  • 登录器显的窗口网站怎么做十大免费网站推广平台有哪些
  • 如何做网站旅游产品分析网站收录一般多久
  • 月夜直播视频免费观看seo赚钱方法大揭秘
  • 外贸网站定制制作公司广州网站优化方式
  • 网站的优化和推广方案怎么写网站营销策划公司
  • 丹东做网站哪家好推广策略包括哪些内容
  • 上海专业高端网站建设服务新站整站优化
  • 通许画册设计网站百度推广代理加盟
  • 金湖网页定制seo霸屏软件
  • wordpress 装饰模板徐州seo网站推广
  • 电子网站模板什么样的人适合做策划
  • 做网站郑州宁波网站推广
  • 上海公司做网站的seo知识分享
  • 古典网站建设株洲seo快速排名
  • html购物网站青岛网站seo诊断
  • 做本地房产网站宁波seo如何做推广平台
  • 官方网站建设的四个步骤新东方英语培训机构官网
  • 哪里有做响应式网站的长沙网站seo哪家公司好
  • 设计制造中国第一架飞机的人是江北关键词优化排名seo