最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

基于Javaweb實(shí)現(xiàn)的人臉識(shí)別考勤系統(tǒng)

2022-03-02 10:14 作者:指南針畢業(yè)設(shè)計(jì)  | 我要投稿

??



人臉識(shí)別考勤系統(tǒng)使用說(shuō)明書(shū)


此系統(tǒng)是人臉識(shí)別考勤系統(tǒng)的后臺(tái)管理系統(tǒng),考勤數(shù)據(jù)從人臉識(shí)別機(jī)器上獲取,自動(dòng)識(shí)別員工信息記錄考勤。系統(tǒng)基于JSP/SERVLET來(lái)開(kāi)發(fā)實(shí)現(xiàn),開(kāi)發(fā)工具采用IDEA或ECLIPSE,數(shù)據(jù)庫(kù)采用MYSQL數(shù)據(jù)庫(kù)。Util包中jdbcinfo.properties文件進(jìn)行數(shù)據(jù)庫(kù)連接的相關(guān)配置修改。

訪(fǎng)問(wèn)路徑為:faceattendsystem為發(fā)布的虛擬目錄


1. 進(jìn)入主頁(yè),點(diǎn)擊未登錄。如下圖:

2. 輸入工號(hào)和密碼,點(diǎn)擊【登錄】按鈕。管理員默認(rèn)工號(hào)是admin,密碼是111111。如下圖:

3. 登錄成功后,進(jìn)入后臺(tái)管理頁(yè)面。如下圖:

4. 點(diǎn)擊【機(jī)構(gòu)管理】,進(jìn)入機(jī)構(gòu)詳情頁(yè)面。該頁(yè)面可添加機(jī)構(gòu)、搜索機(jī)構(gòu)、修改機(jī)構(gòu)、刪除機(jī)構(gòu)和設(shè)置機(jī)構(gòu)的作息管理。

5. 點(diǎn)擊【添加機(jī)構(gòu)】按鈕,進(jìn)入添加機(jī)構(gòu)頁(yè)面。根據(jù)文本框提示的信息進(jìn)行輸入信息,點(diǎn)擊【添加】按鈕。(*是必填項(xiàng))如下圖:

6. 添加成功后,輸入1111,點(diǎn)擊【搜索】按鈕。如下圖:


7. 點(diǎn)擊【修改】,進(jìn)入修改機(jī)構(gòu)頁(yè)面。修改信息后,點(diǎn)擊【修改】按鈕。(機(jī)構(gòu)號(hào)不能修改)如下圖:

8. 點(diǎn)擊【刪除】,刪除該機(jī)構(gòu)。


9. 點(diǎn)擊【作息管理】,進(jìn)入作息時(shí)間頁(yè)面。該頁(yè)面可添加作息和搜索日期。如下圖:

10. 點(diǎn)擊【添加作息】,進(jìn)入添加作息頁(yè)面。根據(jù)文本框提示輸入信息,點(diǎn)擊【添加】按鈕。如下圖:

11. 添加成功后,輸入2017-12-05,點(diǎn)擊【搜索】按鈕。如下圖:

12. 點(diǎn)擊【員工管理】,進(jìn)入查詢(xún)員工頁(yè)面。選擇剛添加的機(jī)構(gòu),點(diǎn)擊【查詢(xún)】按鈕。如下圖:

13. 查詢(xún)成功后,進(jìn)入員工信息頁(yè)面。該頁(yè)面可添加員工、搜索員工、修改員工和刪除員工。如下圖:

14. 點(diǎn)擊【添加員工】按鈕,進(jìn)入添加員工頁(yè)面。根據(jù)文本框的提示輸入信息,點(diǎn)擊【添加】按鈕。如下圖:

15. 添加員工成功后,在搜索框輸入2222,點(diǎn)擊【搜索】按鈕。如下圖:

16. 點(diǎn)擊【詳情】,進(jìn)入員工詳情頁(yè)面。如下圖:

17. 點(diǎn)擊【修改】,進(jìn)入員工修改頁(yè)面。修改信息后,點(diǎn)擊【修改】按鈕。如下圖:

18. 點(diǎn)擊【刪除】,刪除該員工。

19. 點(diǎn)擊【節(jié)假日管理】,進(jìn)入節(jié)假日頁(yè)面。該頁(yè)面可添加節(jié)假日和搜索日期。如下圖:

20. 點(diǎn)擊【添加節(jié)假日】按鈕,進(jìn)入添加節(jié)假日頁(yè)面。根據(jù)文本框提示輸入信息,點(diǎn)擊【添加】按鈕。如下圖:

21. 添加成功后,在搜索框輸入2018-01-01,點(diǎn)擊【搜索】按鈕。如下圖:


22. 點(diǎn)擊【考勤管理】,進(jìn)入查詢(xún)考勤頁(yè)面。如下圖:

23. 點(diǎn)擊【存在異常日期,點(diǎn)擊查看詳情】,進(jìn)入異常日期頁(yè)面。點(diǎn)擊【開(kāi)始統(tǒng)計(jì)】,則服務(wù)器會(huì)跑當(dāng)前的日期的考勤。如下圖:

24. 若根據(jù)文本框提示輸入信息,選擇異常,點(diǎn)擊【查詢(xún)】按鈕。進(jìn)入異常的考勤統(tǒng)計(jì)頁(yè)面。如下圖:

25. 若要把查詢(xún)數(shù)據(jù)導(dǎo)出,則點(diǎn)擊【導(dǎo)出excel】按鈕。如下圖:


25. 若根據(jù)文本框提示輸入信息,選擇流水,點(diǎn)擊【查詢(xún)】按鈕。如下圖:

26. 進(jìn)入流水的考勤統(tǒng)計(jì)頁(yè)面。如下圖:


27. 點(diǎn)擊【修改密碼】,進(jìn)入修改密碼頁(yè)面。根據(jù)文本框提示輸入信息后,點(diǎn)擊【修改】按鈕。如下圖:


以上是基于人臉識(shí)別的考勤系統(tǒng)的說(shuō)明


package faceattendsystem.serviceImpl;import java.sql.Date;import java.util.List;import faceattendsystem.dao.IDaytimeDao;import faceattendsystem.dao.IMechanismDao;import faceattendsystem.daoImpl.DaytimeDaoImpl;import faceattendsystem.daoImpl.MechanismDaoImpl;import faceattendsystem.entity.Daytime;import faceattendsystem.entity.PageBean;import faceattendsystem.service.IDaytimeService;public class DaytimeServiceImpl implements IDaytimeService { private IDaytimeDao daytimeDao = new DaytimeDaoImpl(); private IMechanismDao mechanismDao = new MechanismDaoImpl(); @Override public int add(Daytime daytime) { return daytimeDao.add(daytime); } @Override public int update(Daytime daytime) { return daytimeDao.update(daytime); } @Override public PageBean<Daytime> queryByMechid(String mechid, int pc, int ps) { PageBean<Daytime> pb =daytimeDao.queryByMechid(mechid, pc, ps); List<Daytime> daytimeList = pb.getBeanList(); for(Daytime daytime:daytimeList){ daytime.setMechanism(mechanismDao.queryByMechid(mechid)); daytime.setBegintime(getRealTime(daytime.getBegintime())); daytime.setEndtime(getRealTime(daytime.getEndtime())); } return pb; } private String getRealTime(String time){ while(time.length()<6){ time = "0"+time; } time = time.substring(0,2)+":"+time.substring(2,4)+":"+time.substring(4,6); return time; } @Override public int isRepeatDate(Daytime daytime) { return daytimeDao.isRepeatDate(daytime); } @Override public Daytime queryByMechid(String mechid, Date nowdate) { Daytime daytime = daytimeDao.queryByMechid(mechid, nowdate); daytime.setMechanism(mechanismDao.queryByMechid(mechid)); return daytime; } @Override public PageBean<Daytime> query(Daytime daytime, int pc, int ps) { PageBean<Daytime> pb =daytimeDao.query(daytime, pc, ps); List<Daytime> daytimeList = pb.getBeanList(); for(Daytime d:daytimeList){ d.setMechanism(mechanismDao.queryByMechid(d.getMechanism().getMechid())); d.setBegintime(getRealTime(d.getBegintime())); d.setEndtime(getRealTime(d.getEndtime())); } return pb; } }



package faceattendsystem.serviceImpl;import java.util.List;import faceattendsystem.dao.IEmployeeDao;import faceattendsystem.dao.IMechanismDao;import faceattendsystem.daoImpl.EmployeeDaoImpl;import faceattendsystem.daoImpl.MechanismDaoImpl;import faceattendsystem.entity.Employee;import faceattendsystem.entity.Mechanism;import faceattendsystem.entity.PageBean;import faceattendsystem.service.IEmployeeService;public class EmployeeServiceImpl implements IEmployeeService { private IEmployeeDao employeeDao = new EmployeeDaoImpl(); private IMechanismDao ?mechanismDao = new MechanismDaoImpl(); @Override public int add(Employee employee) { return employeeDao.add(employee); } @Override public int delete(String empid) { return employeeDao.delete(empid); } @Override public int update(Employee employee) { return employeeDao.update(employee); } @Override public int updatePw(String empid,String npw) { return employeeDao.updatePw(empid,npw); } @Override public Employee queryByEmpid(String empid) { Employee employee = employeeDao.queryByEmpid(empid); employee.setMechanism(mechanismDao.queryByMechid(employee.getMechanism().getMechid())); return employee; } @Override public PageBean<Employee> queryByMechid(String mechid, int pc, int ps) { return employeeDao.queryByMechid(mechid, pc, ps); } @Override public List<Employee> queryAll() { return employeeDao.queryAll(); } @Override public PageBean<Employee> query(Employee employee, int pc, int ps) { PageBean<Employee> pb = employeeDao.query(employee,pc,ps); List<Employee> employeeList = pb.getBeanList(); for(Employee e : employeeList){ e.setMechanism(mechanismDao.queryByMechid(e.getMechanism().getMechid())); } pb.setBeanList(employeeList); return pb; } @Override public List<Employee> queryByMechid(String mechid) { List<Employee> employeeList = employeeDao.queryByMechid(mechid); for(Employee emp : employeeList){ Mechanism mechanism = mechanismDao.queryByMechid(emp.getMechanism().getMechid()); emp.setMechanism(mechanism); } return employeeList; } @Override public boolean isRepeatEmpid(String empid) { Employee employee = employeeDao.queryByEmpid(empid); return employee!=null?true:false; } @Override public Employee isEmployee(String empid) { Employee employee = employeeDao.queryByEmpid(empid); if(employee!=null){ employee.setMechanism(mechanismDao.queryByMechid(employee.getMechanism().getMechid())); } return employee; } @Override public Employee isRepeatIdnumber(String idnumber) { return employeeDao.queryByIdnumber(idnumber); } }


package faceattendsystem.serviceImpl;import java.util.List;import faceattendsystem.dao.IEmployeeDao;import faceattendsystem.dao.IErrorsheetDao;import faceattendsystem.dao.IMechanismDao;import faceattendsystem.daoImpl.EmployeeDaoImpl;import faceattendsystem.daoImpl.ErrorsheetDaoImpl;import faceattendsystem.daoImpl.MechanismDaoImpl;import faceattendsystem.entity.Errorsheet;import faceattendsystem.entity.PageBean;import faceattendsystem.service.IErrorsheetService;public class ErrorsheetServiceImpl implements IErrorsheetService { IErrorsheetDao errorsheetDao = new ErrorsheetDaoImpl(); IMechanismDao mechanismDao = new MechanismDaoImpl(); IEmployeeDao employeeDao = new EmployeeDaoImpl(); @Override public PageBean<Errorsheet> query(Errorsheet errorsheet, String bdate, String edate, int pc, int ps) { PageBean<Errorsheet> pb = errorsheetDao.query(errorsheet, bdate, edate, pc, ps); List<Errorsheet> errorsheetList = pb.getBeanList(); for (Errorsheet e : errorsheetList) { e.setMechanism(mechanismDao.queryByMechid(e.getMechanism().getMechid())); e.setEmployee(employeeDao.queryByEmpid(e.getEmployee().getEmpid())); } pb.setBeanList(errorsheetList); return pb; } @Override public int add(Errorsheet errorsheet) { return errorsheetDao.add(errorsheet); } @Override public List<Errorsheet> queryAll() { return errorsheetDao.queryAll(); } @Override public PageBean<Errorsheet> queryAll(Errorsheet errorsheet, String bdate, String edate) { PageBean<Errorsheet> pb = errorsheetDao.queryAll(errorsheet, bdate, edate); List<Errorsheet> errorsheetList = pb.getBeanList(); for (Errorsheet e : errorsheetList) { e.setMechanism(mechanismDao.queryByMechid(e.getMechanism().getMechid())); e.setEmployee(employeeDao.queryByEmpid(e.getEmployee().getEmpid())); } pb.setBeanList(errorsheetList); return pb; } }



package faceattendsystem.serviceImpl;import java.sql.Date;import java.util.List;import faceattendsystem.dao.IEmployeeDao;import faceattendsystem.dao.IFlowsheetDao;import faceattendsystem.daoImpl.EmployeeDaoImpl;import faceattendsystem.daoImpl.FlowsheetDaoImpl;import faceattendsystem.entity.Employee;import faceattendsystem.entity.Flowsheet;import faceattendsystem.entity.PageBean;import faceattendsystem.service.IFlowsheetService;public class FlowsheetServiceImpl implements IFlowsheetService { IFlowsheetDao flowsheetDao = new FlowsheetDaoImpl(); IEmployeeDao employeeDao = new EmployeeDaoImpl(); @Override public List<Flowsheet> query(Date date, String empid) { return flowsheetDao.query(date,empid); } @Override public Date getMindate(Employee employee) { return flowsheetDao.getMindate(employee); } @Override public PageBean<Flowsheet> query(String empid, String bdate, String edate, int pc, int ps) { PageBean<Flowsheet> pb = flowsheetDao.query(empid,bdate,edate,pc,ps); List<Flowsheet> flowsheetList = pb.getBeanList(); for(Flowsheet fs:flowsheetList){ fs.setEmployee(employeeDao.queryByEmpid(fs.getEmployee().getEmpid())); fs.setLogtime(getRealTime(fs.getLogtime())); fs.setClientdatetime(getDatetime(fs.getClientdatetime())); //fs.setSimilarity(getExactValue(fs.getSimilarity())); } return pb; } @Override public PageBean<Flowsheet> queryAll(String empid, String bdate, String edate) { PageBean<Flowsheet> pb = flowsheetDao.queryAll(empid,bdate,edate); List<Flowsheet> flowsheetList = pb.getBeanList(); for(Flowsheet fs:flowsheetList){ fs.setEmployee(employeeDao.queryByEmpid(fs.getEmployee().getEmpid())); fs.setLogtime(getRealTime(fs.getLogtime())); fs.setClientdatetime(getDatetime(fs.getClientdatetime())); } return pb; } /** * 添加打卡記錄 * @param flowsheet */ public void addSheet(Flowsheet flowsheet){ flowsheetDao.addSheet(flowsheet); } /* private float getExactValue(float similarity) { return (Math.round(similarity*100)/100); }*/ private String getDatetime(String datetime) { String date = datetime.substring(0,8); date = date.substring(0,4)+"-"+date.substring(4,6)+"-"+date.substring(6); String time = datetime.substring(8); time = getRealTime(time); datetime = date+" "+time; return datetime; } private String getRealTime(String time){ while(time.length()<6){ time = "0"+time; } time = time.substring(0,2)+":"+time.substring(2,4)+":"+time.substring(4); return time; } }



基于Javaweb實(shí)現(xiàn)的人臉識(shí)別考勤系統(tǒng)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
庆城县| 成武县| 奉节县| 延吉市| 常山县| 柘城县| 扶绥县| 永泰县| 蒙阴县| 柏乡县| 任丘市| 治多县| 遂宁市| 黄大仙区| 霸州市| 千阳县| 扬州市| 渭源县| 施秉县| 靖江市| 林州市| 广丰县| 郧西县| 揭阳市| 昌都县| 重庆市| 雷山县| 眉山市| 汝南县| 宿迁市| 黄大仙区| 临湘市| 红安县| 临猗县| 合作市| 呼伦贝尔市| 内丘县| 嘉黎县| 德化县| 泊头市| 射阳县|