package com.hxzkappboot.controller; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.hxzkappboot.mapper.TbPersonMapper; import com.hxzkappboot.pojo.*; import com.hxzkappboot.service.TbMarsHomesetService; import com.hxzkappboot.service.TbPersonService; import com.hxzkappboot.udp.Udp_Out; import com.hxzkappboot.util.R; import com.hxzkappboot.util.StatusCode; import com.hxzkappboot.util.WechatLoginRequestDTO; import com.tencentcloudapi.common.Credential; import com.tencentcloudapi.common.profile.ClientProfile; import com.tencentcloudapi.common.profile.HttpProfile; import com.tencentcloudapi.sms.v20210111.SmsClient; import com.tencentcloudapi.sms.v20210111.models.SendSmsRequest; import com.tencentcloudapi.sms.v20210111.models.SendSmsResponse; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import javax.validation.Valid; import java.io.IOException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; import java.util.Objects; /** *

* 前端控制器 *

* * @author wangfei * @since 2024-03-08 */ @RestController //@Component //@RequestMapping("/") public class TbPersonController { @Autowired TbPersonService personService; @Autowired TbMarsHomesetService tbMarsHomesetService; @Autowired TbPersonMapper tbPersonMapper; @GetMapping("/api/wx/findPerson") public R findIdPerson(String name,String company) { R response; String output = name.toUpperCase();//将小写字母转成大写字母 if (personService.findIdPerson(output,company) != null) { response = new R(StatusCode.Success); // String token = wechatService.getToken(loginRequest); // tbUser1.setToken(token); response.setData(personService.findIdPerson(output,company)); // return personService.findIdPerson(name); } else { response = new R(StatusCode.Fail); response.setCode(-1); response.setMsg("未搜索到数据!"); } return response; } @GetMapping("/api/wx/findtixing") public R findtixing(String company,String juese) { R response; // String output = name.toUpperCase();//将小写字母转成大写字母 List people = personService.findtixing(company,juese); if (!people.isEmpty()) { response = new R(StatusCode.Success); // String token = wechatService.getToken(loginRequest); // tbUser1.setToken(token); response.setData(people); // return personService.findIdPerson(name); } else { response = new R(StatusCode.Fail); response.setCode(-1); response.setMsg("未搜索到数据!"); } return response; } @GetMapping("/api/wx/findbisuo") public R findbisuo(String company,String juese) { R response; // String output = name.toUpperCase();//将小写字母转成大写字母 List people = personService.findbisuo(company,juese); if (!people.isEmpty()) { response = new R(StatusCode.Success); // String token = wechatService.getToken(loginRequest); // tbUser1.setToken(token); response.setData(people); // return personService.findIdPerson(name); } else { response = new R(StatusCode.Fail); response.setCode(-1); response.setMsg("未搜索到数据!"); } return response; } @GetMapping("/api/wx/findtagid") public R findtagid(String company,String juese) { R response; // String output = name.toUpperCase();//将小写字母转成大写字母 List people = personService.findtagid(company,juese); if (!people.isEmpty()) { response = new R(StatusCode.Success); // String token = wechatService.getToken(loginRequest); // tbUser1.setToken(token); response.setData(people); // return personService.findIdPerson(name); } else { response = new R(StatusCode.Fail); response.setCode(-1); response.setMsg("未搜索到数据!"); } return response; } @GetMapping("/api/wx/acquisition") public R acquisition(String baoliu3,String company,String juese) { R response; String output = baoliu3.toUpperCase();//将小写字母转成大写字母 TbPerson tbPerson = personService.acquisition(output,company,juese); if (tbPerson != null) { if (Objects.equals(tbPerson.getGpsstatus(), "4") && Objects.equals(tbPerson.getOnline(), "1")) { response = new R(StatusCode.Success); response.setData(tbPerson); } else { response = new R(StatusCode.Fail); response.setCode(-1); response.setMsg("设备非高精或离线!"); } } else { response = new R(StatusCode.Fail); response.setCode(-1); response.setMsg("未搜索到数据!"); } return response; } // submit @PostMapping("/api/wx/MarsHome") public R MarsHome(HttpServletRequest request) { R response; response = new R(StatusCode.Success); List gpsList = tbMarsHomesetService.MarsHome(); response.setData(gpsList); return response; } @GetMapping("/api/wx/getGPSCesium") public R getGPSCesium( String company,String juese) { R response; response = new R(StatusCode.Success); List gpsList = personService.getGPSCesium(company,juese); response.setData(gpsList); return response; } @PostMapping("/api/wx/updateTagApi") public R upTag(@Valid @RequestBody PersonRequestDTO personRequestDTO) throws IOException { if (Objects.equals(personRequestDTO.getType(), "随机卡")) { TbPerson tbPerson = personService.upTag(); // TbPerson person = new TbPerson(); if (tbPerson==null){ // tagId = "b001"; personRequestDTO.setTagId("F001"); // personRequestDTO.setPTagid("b001"); }else{ String pTagid = tbPerson.getTagid(); String[] parts = pTagid.split("F"); String numberStr = parts[1]; int number = Integer.parseInt(numberStr); int incrementedNumber = number + 1; String newNumberStr = String.format("%03d", incrementedNumber); String newTagid = "F" + newNumberStr; personRequestDTO.setTagId(newTagid); } } R response; String xieyi = "BSTOCS1,ADDTAG," + personRequestDTO.getTagId() + "," + personRequestDTO.getName() + ",150,10000,1,系统默认,END"; String xieyi1 = "BSTOCS1,PERSONALTER," + personRequestDTO.getTagId() + ","+ personRequestDTO.getName() + ",男,系统默认,END"; // Udp_Out.udp_to_cs(xieyi1); if (personRequestDTO.getTagId() == null || personRequestDTO.getType() == null) { response = new R(StatusCode.Fail); return response; } Udp_Out.udp_to_cs(xieyi); Udp_Out.udp_to_cs(xieyi1); try { Thread.sleep(1000); }catch (InterruptedException e){ Thread.currentThread().interrupt(); // logUtil.error("线程中断"+e.getMessage()); } TbPerson tbPerson = personService.upperson(personRequestDTO.getTagId(),personRequestDTO.getBaoliu38(),personRequestDTO.getPhone()); // String content = "通过接口修改了标签信息,该标签为:"+tag.getTagId(); // String contentew = "Удалить метку через интерфейс:"+tag.getTagId(); // SystemLogController.InsertSystemLog("通过接口", gettime(),content,contentew); response = new R(StatusCode.Success); response.setData(tbPerson); return response; // return resultutil.returnSuccess("success",tag.getTagId()); } @GetMapping("/api/wx/getGPS") public R getGPS(String company,String juese) { R response; response = new R(StatusCode.Success); List gpsList = personService.getGps(company,juese); response.setData(gpsList); return response; } @GetMapping("/api/wx/findTag") public R findAll(Page page, String objectid,String company,String juese) { R response; IPage ipage = personService.findAll(page,objectid,company,juese); response = new R(StatusCode.Success); response.setData(ipage); response.setOnline(personService.findonline(company,juese)); response.setOffline(personService.findoffline(company,juese)); return response; } @GetMapping("/api/wx/findtagIdPerson") public R findtagIdPerson(String id,String company,String juese){ R response; response = new R(StatusCode.Success); response.setData(personService.findtagidPerson(id,company,juese)); return response; } @PostMapping("/api/wx/updateper") public void updateper(@Valid @RequestBody TbPerson tbPerson) { String time = this.gettime(); // BSTOCS1,WARNING,DELETE,warningId,delPerson,perCompany,time,END String xieyi = "BSTOCS1,PERSON,ALTER," + tbPerson.getTagid() +","+ tbPerson.getPersonname() +","+ tbPerson.getBaoliu1() +","+ tbPerson.getType() +","+ tbPerson.getDepartment() +","+ tbPerson.getCompany() +","+ tbPerson.getAlterPerson() +","+ tbPerson.getPerCompany()+","+ time+","+ tbPerson.getMestagid()+ ",END"; Udp_Out.udp_to_cs(xieyi); } @PostMapping("/api/wx/saveper") public void saveper(@Valid @RequestBody TbPerson tbPerson) { String time = this.gettime(); // BSTOCS1,WARNING,DELETE,warningId,delPerson,perCompany,time,END String xieyi = "BSTOCS1,PERSON,ADD," + tbPerson.getTagid() +","+ tbPerson.getPersonname() +","+tbPerson.getBaoliu1() +","+ tbPerson.getType() +","+ tbPerson.getDepartment() +","+ tbPerson.getCompany() +","+ tbPerson.getAlterPerson() +","+ tbPerson.getPerCompany()+","+ time+","+ tbPerson.getMestagid()+","+tbPerson.getEncryption()+ ",END"; Udp_Out.udp_to_cs(xieyi); // try { // Thread.sleep(1000); // // } catch (InterruptedException e) { // Thread.currentThread().interrupt(); //// logUtil.error("线程中断"+e.getMessage()); // } // QueryWrapper queryWrapper2 = new QueryWrapper<>(); // queryWrapper2.eq("tagid", tbPerson.getTagid()); // List fences = tbPersonMapper.selectList(queryWrapper2); // response.setData(fences); // queryWrapper.orderByDesc("addtime"); // TbFence CompanyPage1 = tbPersonMapper.selectOne(queryWrapper1); // CompanyPage1.setCompany(tbFence.getCompany()); // CompanyPage1.setBaoliu1(tbFence.getBaoliu1()); // if (CompanyPage1==null){ // this.findfence(name); // }else{ // int gpsList = tbPersonMapper.update(tbPerson,queryWrapper2); // } } 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; } }