|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.text.SimpleDateFormat; | 
|---|
|  |  |  | import java.util.*; | 
|---|
|  |  |  | import java.util.stream.Collectors; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * Created by vincent on 2020/11/16 | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private static final String[] WEEK = {"星期日","星期一","星期二","星期三","星期四","星期五","星期六"}; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private String programMsg; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private ReportQueryMapper reportQueryMapper; | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private SlaveProperties slaveProperties; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | ArrayList<Object> programs = new ArrayList<>(); | 
|---|
|  |  |  | HashMap<Integer,String> lcd = new HashMap<>(); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取当前时间 | 
|---|
|  |  |  | 
|---|
|  |  |  | @GetMapping("/led/program") | 
|---|
|  |  |  | public R monitorProgramShow(@RequestParam("ledId") Integer ledId) { | 
|---|
|  |  |  | String program = ""; | 
|---|
|  |  |  | for (LedSlave slave : slaveProperties.getLed()) { | 
|---|
|  |  |  | if (slave.getStaArr().contains(ledId)) { | 
|---|
|  |  |  | LedThread ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, slave.getId()); | 
|---|
|  |  |  | if (null != ledThread) { | 
|---|
|  |  |  | program = ledThread.getProgram().toString(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | for (Object object : programs) { | 
|---|
|  |  |  | program = lcd.get(ledId); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return R.ok().add(program); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @RequestMapping("/led/add/program") | 
|---|
|  |  |  | public R addProgram(Integer ledId, String msg) { | 
|---|
|  |  |  | MessageQueue.offer(SlaveType.Led, ledId, new Task(5, msg)); | 
|---|
|  |  |  | lcd.put(ledId,msg); | 
|---|
|  |  |  | for (int i = 0; i < programs.size(); i++) { | 
|---|
|  |  |  | Object o = programs.get(i); | 
|---|
|  |  |  | System.out.println(o); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | programs.add(lcd); | 
|---|
|  |  |  | Iterator<Object> iterator = programs.iterator(); | 
|---|
|  |  |  | while (iterator.hasNext()) { | 
|---|
|  |  |  | // 获取循环的值 | 
|---|
|  |  |  | Object next = iterator.next(); | 
|---|
|  |  |  | // 如果存在两个相同的值 | 
|---|
|  |  |  | if (programs.indexOf(next) != programs.lastIndexOf(next)) { | 
|---|
|  |  |  | // 移除最后那个相同的值 | 
|---|
|  |  |  | iterator.remove(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | System.out.println(programs); | 
|---|
|  |  |  | return R.ok(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|