CashierController.java 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  1. package com.kmall.admin.controller;
  2. import java.net.InetAddress;
  3. import java.net.NetworkInterface;
  4. import java.net.SocketException;
  5. import java.net.UnknownHostException;
  6. import java.util.List;
  7. import java.util.Map;
  8. import com.kmall.admin.service.CashierService;
  9. import com.kmall.common.utils.PageUtils;
  10. import com.kmall.common.utils.Query;
  11. import com.kmall.common.utils.R;
  12. import org.apache.commons.lang.StringUtils;
  13. import org.springframework.beans.factory.annotation.Autowired;
  14. import org.springframework.stereotype.Controller;
  15. import org.springframework.web.bind.annotation.*;
  16. import com.kmall.admin.entity.CashierEntity;
  17. /**
  18. * 收银机表Controller
  19. *
  20. * @author emato
  21. * @email admin@qhdswl.com
  22. * @date 2020-06-13 09:39:15
  23. */
  24. @Controller
  25. @RequestMapping("cashier")
  26. public class CashierController {
  27. @Autowired
  28. private CashierService cashierService;
  29. /**
  30. * 查看列表
  31. */
  32. @RequestMapping("/list")
  33. // @RequiresPermissions("cashier:list")
  34. @ResponseBody
  35. public R list(@RequestParam Map<String, Object> params) {
  36. //查询列表数据
  37. Query query = new Query(params);
  38. List<CashierEntity> cashierList = cashierService.queryList(query);
  39. int total = cashierService.queryTotal(query);
  40. PageUtils pageUtil = new PageUtils(cashierList, total, query.getLimit(), query.getPage());
  41. return R.ok().put("page", pageUtil);
  42. }
  43. /**
  44. * 查看信息
  45. */
  46. @RequestMapping("/info/{mcId}")
  47. // @RequiresPermissions("cashier:info")
  48. @ResponseBody
  49. public R info(@PathVariable("mcId") String mcId) {
  50. CashierEntity cashier = cashierService.queryObject(mcId);
  51. return R.ok().put("cashier", cashier);
  52. }
  53. /**
  54. * 保存
  55. */
  56. @RequestMapping("/save")
  57. // @RequiresPermissions("cashier:save")
  58. @ResponseBody
  59. public R save(@RequestBody CashierEntity cashier) throws UnknownHostException, SocketException {
  60. if(StringUtils.isEmpty(cashier.getMachineCode())) {
  61. // 获取mac地址
  62. InetAddress ia = InetAddress.getLocalHost();
  63. System.out.println(ia);
  64. String mac = getLocalMac(ia);
  65. cashier.setMachineCodeType("01"); // 默认mac地址
  66. cashier.setMachineCode(mac);
  67. }
  68. cashierService.save(cashier);
  69. return R.ok();
  70. }
  71. private static String getLocalMac(InetAddress ia) throws SocketException {
  72. // TODO Auto-generated method stub
  73. //获取网卡,获取地址
  74. byte[] mac = NetworkInterface.getByInetAddress(ia).getHardwareAddress();
  75. System.out.println("mac数组长度:"+mac.length);
  76. StringBuffer sb = new StringBuffer("");
  77. for(int i=0; i<mac.length; i++) {
  78. if(i!=0) {
  79. sb.append("-");
  80. }
  81. //字节转换为整数
  82. int temp = mac[i]&0xff;
  83. String str = Integer.toHexString(temp);
  84. System.out.println("每8位:"+str);
  85. if(str.length()==1) {
  86. sb.append("0"+str);
  87. }else {
  88. sb.append(str);
  89. }
  90. }
  91. System.out.println("本机MAC地址:"+sb.toString().toUpperCase());
  92. return sb.toString().toUpperCase();
  93. }
  94. /**
  95. * 修改
  96. */
  97. @RequestMapping("/update")
  98. // @RequiresPermissions("cashier:update")
  99. @ResponseBody
  100. public R update(@RequestBody CashierEntity cashier) {
  101. cashierService.update(cashier);
  102. return R.ok();
  103. }
  104. /**
  105. * 删除
  106. */
  107. @RequestMapping("/delete")
  108. // @RequiresPermissions("cashier:delete")
  109. @ResponseBody
  110. public R delete(@RequestBody String[]mcIds) {
  111. cashierService.deleteBatch(mcIds);
  112. return R.ok();
  113. }
  114. /**
  115. * 查看所有列表
  116. */
  117. @RequestMapping("/queryAll")
  118. @ResponseBody
  119. public R queryAll(@RequestParam Map<String, Object> params) {
  120. List<CashierEntity> list = cashierService.queryList(params);
  121. return R.ok().put("list", list);
  122. }
  123. }