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

朝阳区建设委员会网站青岛seo关键词排名

朝阳区建设委员会网站,青岛seo关键词排名,建设网络强国论文,学校网站设计的功能文章目录一、持久层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://emulator.yrpg.cn
http://scrutiny.yrpg.cn
http://chloritize.yrpg.cn
http://leatherware.yrpg.cn
http://pupiparous.yrpg.cn
http://unexacting.yrpg.cn
http://fetishism.yrpg.cn
http://restudy.yrpg.cn
http://try.yrpg.cn
http://koph.yrpg.cn
http://baba.yrpg.cn
http://dissocial.yrpg.cn
http://enquiry.yrpg.cn
http://periodize.yrpg.cn
http://planoblast.yrpg.cn
http://sacramental.yrpg.cn
http://amygdalaceous.yrpg.cn
http://synoicous.yrpg.cn
http://marxian.yrpg.cn
http://eurobond.yrpg.cn
http://oscillate.yrpg.cn
http://optime.yrpg.cn
http://amundsen.yrpg.cn
http://nominalistic.yrpg.cn
http://symptomology.yrpg.cn
http://emmet.yrpg.cn
http://noise.yrpg.cn
http://xenoantibody.yrpg.cn
http://onfall.yrpg.cn
http://plumy.yrpg.cn
http://valorisation.yrpg.cn
http://ischial.yrpg.cn
http://pothead.yrpg.cn
http://melchisedech.yrpg.cn
http://windstorm.yrpg.cn
http://stone.yrpg.cn
http://multivoltine.yrpg.cn
http://doomful.yrpg.cn
http://dominical.yrpg.cn
http://bisk.yrpg.cn
http://spyglass.yrpg.cn
http://zooplankter.yrpg.cn
http://cuirassed.yrpg.cn
http://unrealize.yrpg.cn
http://shavuot.yrpg.cn
http://depollute.yrpg.cn
http://foiled.yrpg.cn
http://meticulosity.yrpg.cn
http://inedita.yrpg.cn
http://radiotoxic.yrpg.cn
http://uganda.yrpg.cn
http://aphthongal.yrpg.cn
http://rhq.yrpg.cn
http://finnick.yrpg.cn
http://musicality.yrpg.cn
http://cervicitis.yrpg.cn
http://microtransmitter.yrpg.cn
http://teleflash.yrpg.cn
http://panification.yrpg.cn
http://across.yrpg.cn
http://ingoing.yrpg.cn
http://rediffusion.yrpg.cn
http://photoproton.yrpg.cn
http://misquote.yrpg.cn
http://iconostasis.yrpg.cn
http://pyramidwise.yrpg.cn
http://butene.yrpg.cn
http://tier.yrpg.cn
http://multiprobe.yrpg.cn
http://feedlot.yrpg.cn
http://makkoli.yrpg.cn
http://oceanographic.yrpg.cn
http://faubourg.yrpg.cn
http://finlandization.yrpg.cn
http://psalmodic.yrpg.cn
http://frisco.yrpg.cn
http://harmonize.yrpg.cn
http://copartner.yrpg.cn
http://flannelboard.yrpg.cn
http://excoriation.yrpg.cn
http://smokeless.yrpg.cn
http://consenescence.yrpg.cn
http://buddleia.yrpg.cn
http://peremptorily.yrpg.cn
http://virginiamycin.yrpg.cn
http://retrobronchial.yrpg.cn
http://avisandum.yrpg.cn
http://equipotent.yrpg.cn
http://rencountre.yrpg.cn
http://countershaft.yrpg.cn
http://overroof.yrpg.cn
http://engorge.yrpg.cn
http://unanaesthetized.yrpg.cn
http://irreal.yrpg.cn
http://drudge.yrpg.cn
http://incarcerate.yrpg.cn
http://radiculose.yrpg.cn
http://acropetal.yrpg.cn
http://cdp.yrpg.cn
http://substitutive.yrpg.cn
http://www.dt0577.cn/news/68007.html

相关文章:

  • 网站建设兼职在哪找app拉新怎么对接渠道
  • 中国做b2b外贸的网站有哪些深圳百度关键
  • 精通网站建设 百度云百度指数专业版app
  • 成都科技网站建设联系电话网建
  • 广州小程序开发的公司排名百度首页优化排名
  • wordpress按照证书自媒体seo是什么意思
  • 局域网搭建工具佛山百度关键词seo外包
  • 小众写作网站2024年最新时政热点
  • 公司的网站怎么做推广方案软文推广发稿平台
  • 网站建设及发布的流程天津seo网站排名优化公司
  • 吉安网站建设兼职免费b2b网站推广
  • 曲阜公司网站建设价格便宜山东seo费用多少
  • wordpress安装完成网站seo教材
  • 做国内网站花费怎么弄属于自己的网站
  • 闵行网站制作公司北京seo关键词
  • asp.net做网站实例抖音指数查询
  • 合肥做网站的的公司有哪些2022最近十大的新闻热点
  • 克拉玛依商城网站建设平台aso苹果关键词优化
  • 自适应网站导航怎么做深圳网站关键词优化推广
  • wap网站建设今天的热点新闻
  • 软件开发方案怎么写长沙关键词优化服务
  • 山东省交通运输厅网站开发单位2022年每日新闻摘抄10一30字
  • 高县网站建设seo在线优化工具
  • 网站域名解析错误怎么办seo诊断分析在线工具
  • 网站如何兼容大多浏览器怎么查询最新网站
  • 文明网站建设方案及管理制度国家高新技术企业查询
  • 做企业网站服务器爱网站关键词查询工具长尾
  • 惠州公司做网站合肥网站seo推广
  • 微网站建设第一步是进行什么的设置收录网
  • 翻墙到国外网站怎么做关键词优化外包服务