package com.hxzk.controller; import com.github.pagehelper.PageInfo; import com.hxzk.deo.FaKa; import com.hxzk.pojo.*; import com.hxzk.service.FaKaHuanLogService; import com.hxzk.service.FaKaQuService; import com.hxzk.service.FaKaService; import com.hxzk.service.PersonService; import com.hxzk.util.result; import com.hxzk.util.resultutil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.text.SimpleDateFormat; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; @RestController @RequestMapping("/") public class FaKaController { @Autowired FaKaService faKaService; @Autowired PersonService personService; @Autowired FaKaQuService faKaQuService; @Autowired FaKaHuanLogService faKaHuanLogService; @GetMapping("findFaKa") result> findFaKa(Integer page, Integer limit){ PageInfo cz= faKaService.findAll(page, limit); return resultutil.returnSuccess(cz.getTotal(), cz.getList()); } @PostMapping("takeCard") public Map takeCard(@RequestBody FaKa faKa){ TbFakaji fakaji = faKaService.findFaka(faKa); //如果根据柜门号和卡号查出来是空,则可以取卡 if (fakaji == null){ return KaFan("200","2","success"); }else{ if (fakaji.getState().equals("1")){ return KaFan("200","2","success"); }else{ TbPerson personName = personService.findtagidPerson(Integer.valueOf(faKa.getCardId())); if (personName == null){ return KaFan("101","0","该设备号不存在"); } return KaFan("200","1","success"); } } } @PostMapping("takeSuccess") public Map takeSuccess(@RequestBody FaKa faKa){ TbFakaji fakaji = faKaService.findFaka(faKa); //如果根据柜门号和卡号查出来是空,则可以取卡 if (fakaji == null){ return KaFan("200","2","success"); }else{ if (fakaji.getState().equals("1")){ return KaFan("200","2","success"); }else{ //可以发卡并切保存记录和保存到实时表中 //根据卡编号查询人员名称 TbPerson personName = personService.findtagidPerson(Integer.valueOf(faKa.getCardId())); if (personName == null){ return KaFan("101","0","该设备号不存在"); } TbFakaji tbFakaji = new TbFakaji(); tbFakaji.setGuiziid(faKa.getDeviceId()); tbFakaji.setKacaoid(faKa.getDoorNo()); tbFakaji.setTagid(faKa.getCardId()); tbFakaji.setTime(gettime()); tbFakaji.setState("1"); tbFakaji.setTagname(personName.getPName()); Integer count = faKaService.updateFaKa(tbFakaji); //添加记录表 TbFakaqulog fakaqulog = new TbFakaqulog(); fakaqulog.setGuiziid(faKa.getDoorNo()); fakaqulog.setTagid(faKa.getDeviceId()); fakaqulog.setPersonname(personName.getPName()); fakaqulog.setTime(gettime()); faKaQuService.InserteFaka(fakaqulog); return KaFan("200","1","success"); } } } @PostMapping("takeSuccessTest") public Map takeSuccessTest(FaKa faKa){ TbFakaji fakaji = faKaService.findFaka(faKa); //如果根据柜门号和卡号查出来是空,则可以取卡 if (fakaji == null){ return KaFan("200","2","success"); }else{ if (fakaji.getState().equals("1")){ return KaFan("200","2","success"); }else{ //可以发卡并切保存记录和保存到实时表中 //根据卡编号查询人员名称 TbPerson personName = personService.findtagidPerson(Integer.valueOf(faKa.getCardId())); if (personName == null){ return KaFan("101","0","该设备号不存在"); } TbFakaji tbFakaji = new TbFakaji(); tbFakaji.setGuiziid(faKa.getDeviceId()); tbFakaji.setKacaoid(faKa.getDoorNo()); tbFakaji.setTagid(faKa.getCardId()); tbFakaji.setTime(gettime()); tbFakaji.setState("1"); tbFakaji.setTagname(personName.getPName()); Integer count = faKaService.updateFaKa(tbFakaji); //添加记录表 TbFakaqulog fakaqulog = new TbFakaqulog(); fakaqulog.setGuiziid(faKa.getDoorNo()); fakaqulog.setTagid(faKa.getDeviceId()); fakaqulog.setPersonname(personName.getPName()); fakaqulog.setTime(gettime()); faKaQuService.InserteFaka(fakaqulog); return KaFan("200","1","success"); } } } @PostMapping("saveCard") public Map saveCard(@RequestBody FaKa faKa){ if (faKa.getDeviceId() == null || faKa.getDoorNo() == null){ return KaFan("200","2","success"); } TbFakaji fakaji = new TbFakaji(); fakaji.setGuiziid(faKa.getDeviceId()); fakaji.setKacaoid(faKa.getDoorNo()); fakaji.setTagid(faKa.getCardId()); fakaji.setState("0"); fakaji.setTime(gettime()); TbFakahuanlog tbFakahuanlog = new TbFakahuanlog(); tbFakahuanlog.setGuiziid(faKa.getDeviceId()); tbFakahuanlog.setTagid(faKa.getCardId()); tbFakahuanlog.setTime(gettime()); faKaHuanLogService.InsertFaKaHuan(tbFakahuanlog); //添加成功之后删除实时表 faKaService.deleteFakaji(fakaji); return KaFan("200","1","success"); } @GetMapping("UpStateFaka") public Integer UpStateFaka (TbFakaji fakaji){ return faKaService.updateStateFaKa(fakaji); } public Map KaFan(String code,String status,String msg){ Map map = new HashMap<>(); map.put("code",code); map.put("status",status); map.put("msg",msg); return map; } public String gettime(){ Date now = new Date(); // 创建日期格式化对象,设置格式为 "yyyy-MM-dd HH:mm" SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm"); // 格式化日期对象,输出字符串结果 String formattedDate = sdf.format(now); return formattedDate; } }