yangys
2024-03-04 c51a042cfb8453265acf2b764b82bd17019b9b1b
增加厂商和使用部门维护功能
已重命名1个文件
已修改14个文件
已添加10个文件
993 ■■■■ 文件已修改
mdc-parent/mdc-collect/src/main/java/com/qianwen/mdc/listener/CollectTask.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
mdc-parent/mdc-collect/src/main/java/com/qianwen/mdc/service/opcua/KeyStoreLoader.java 201 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/controller/ManufacturerController.java 124 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/controller/UseDepartmentController.java 124 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/controller/account/MachineAccountAddController.java 84 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/controller/devicetype/DeviceTypeController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/domain/MachineAccount.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/domain/Manufacturer.java 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/domain/UseDepartment.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/dto/account/MachineAccountDTO.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/dto/account/MachineAccountEditDTO.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/dto/account/MachineAccountQueryDTO.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/dto/manufacturer/ManufacturerDTO.java 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/dto/manufacturer/ManufacturerQueryDTO.java 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/dto/usedepartment/UseDepartmentDTO.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/dto/usedepartment/UseDepartmentQueryDTO.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/mapper/ManufacturerMapper.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/mapper/UseDepartmentMapper.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/service/account/StaticData.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/service/manufacturer/ManufacturerService.java 93 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/service/usedepartment/UseDepartmentService.java 93 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
mdc-parent/mdc-showdb-mysql/src/main/resources/mapper/DeviceTypeMapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
mdc-parent/mdc-showdb-mysql/src/main/resources/mapper/MachineAccountMapper.xml 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
mdc-parent/mdc-showdb-mysql/src/main/resources/mapper/ManufacturerMapper.xml 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
mdc-parent/mdc-showdb-mysql/src/main/resources/mapper/UseDepartment.xml 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
mdc-parent/mdc-collect/src/main/java/com/qianwen/mdc/listener/CollectTask.java
@@ -32,9 +32,12 @@
        MachineProtocol protocol;
        for(Machine machine : machines) {
            protocol = protocolMapper.selectById(machine.getProtocolId());
            DataCollector collector = collectorHelper.getCollector(protocol);
            collector.collect(machine);
            try {
                DataCollector collector = collectorHelper.getCollector(protocol);
                collector.collect(machine);
            }catch(Exception ex) {
                logger.error("采集设备信息失败,machineId={}",machine.getId(),ex);
            }
        }
            
    }
mdc-parent/mdc-collect/src/main/java/com/qianwen/mdc/service/opcua/KeyStoreLoader.java
@@ -1,128 +1,77 @@
/*     */ package com.qianwen.mdc.service.opcua;
/*     */
/*     */ import java.io.InputStream;
/*     */ import java.io.OutputStream;
/*     */ import java.nio.file.Files;
/*     */ import java.nio.file.Path;
/*     */ import java.security.Key;
/*     */ import java.security.KeyPair;
/*     */ import java.security.KeyStore;
/*     */ import java.security.PrivateKey;
/*     */ import java.security.PublicKey;
/*     */ import java.security.cert.Certificate;
/*     */ import java.security.cert.X509Certificate;
/*     */ import java.util.regex.Pattern;
/*     */ import org.eclipse.milo.opcua.sdk.server.util.HostnameUtil;
/*     */ import org.eclipse.milo.opcua.stack.core.util.SelfSignedCertificateBuilder;
/*     */ import org.eclipse.milo.opcua.stack.core.util.SelfSignedCertificateGenerator;
/*     */ import org.slf4j.Logger;
/*     */ import org.slf4j.LoggerFactory;
/*     */ import org.springframework.stereotype.Component;
/*     */
/*     */
/*     */
/*     */
/*     */
/*     */
/*     */
/*     */
/*     */
/*     */
/*     */ @Component
/*     */ public class KeyStoreLoader
/*     */ {
/*     */   public com.qianwen.mdc.service.opcua.KeyStoreLoader load(Path baseDir) throws Exception {
/*  35 */     KeyStore keyStore = KeyStore.getInstance("PKCS12");
/*     */
/*     */
/*     */
/*  39 */     Path serverKeyStore = baseDir.resolve("opcua-client.pfx");
/*     */
/*  41 */     this.logger.info("Loading KeyStore at {}", serverKeyStore);
/*     */
/*     */
/*  44 */     if (!Files.exists(serverKeyStore, new java.nio.file.LinkOption[0])) {
/*  45 */       keyStore.load(null, PASSWORD);
/*     */
/*     */
/*  48 */       KeyPair keyPair = SelfSignedCertificateGenerator.generateRsaKeyPair(2048);
/*     */
/*     */
/*     */
/*     */
/*     */
/*     */
/*     */
/*     */
/*     */
/*     */
/*     */
/*     */
/*  61 */       SelfSignedCertificateBuilder builder = (new SelfSignedCertificateBuilder(keyPair)).setCommonName("mdc").setOrganization("hx").setOrganizationalUnit("Kx").setLocalityName("Terran").setStateName("Shanghai").setCountryCode("CN").setApplicationUri("urn:eclipse:milo:examples:client").addDnsName("localhost").addIpAddress("127.0.0.1");
/*     */
/*     */
/*  64 */       for (String hostname : HostnameUtil.getHostnames("0.0.0.0")) {
/*  65 */         if (IP_ADDR_PATTERN.matcher(hostname).matches()) {
/*  66 */           builder.addIpAddress(hostname); continue;
/*     */         }
/*  68 */         builder.addDnsName(hostname);
/*     */       }
/*     */
/*     */
/*  72 */       X509Certificate certificate = builder.build();
/*     */
/*     */
/*  75 */       keyStore.setKeyEntry("hx-mdc", keyPair.getPrivate(), PASSWORD, (Certificate[])new X509Certificate[] { certificate });
/*  76 */       try (OutputStream out = Files.newOutputStream(serverKeyStore, new java.nio.file.OpenOption[0])) {
/*     */
/*  78 */         keyStore.store(out, PASSWORD);
/*     */       }
/*     */     } else {
/*  81 */       try (InputStream in = Files.newInputStream(serverKeyStore, new java.nio.file.OpenOption[0])) {
/*     */
/*  83 */         keyStore.load(in, PASSWORD);
/*     */       }
/*     */     }
/*     */
/*     */
/*  88 */     Key serverPrivateKey = keyStore.getKey("hx-mdc", PASSWORD);
/*  89 */     if (serverPrivateKey instanceof PrivateKey) {
/*     */
/*  91 */       this.clientCertificate = (X509Certificate)keyStore.getCertificate("hx-mdc");
/*     */
/*  93 */       PublicKey serverPublicKey = this.clientCertificate.getPublicKey();
/*     */
/*  95 */       this.clientKeyPair = new KeyPair(serverPublicKey, (PrivateKey)serverPrivateKey);
/*     */     }
/*     */
/*  98 */     return this;
/*     */   }
/*     */
/*     */
/*     */   public X509Certificate getClientCertificate() {
/* 103 */     return this.clientCertificate;
/*     */   }
/*     */
/*     */
/*     */   public KeyPair getClientKeyPair() {
/* 108 */     return this.clientKeyPair;
/*     */   }
/*     */
/*     */
/* 112 */   private static final Pattern IP_ADDR_PATTERN = Pattern.compile("^(([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\.){3}([01]?\\d\\d?|2[0-4]\\d|25[0-5])$");
/*     */
/*     */
/*     */   private static final String CLIENT_ALIAS = "hx-mdc";
/*     */
/* 117 */   private static final char[] PASSWORD = "12345678".toCharArray();
/*     */
/* 119 */   private final Logger logger = LoggerFactory.getLogger(getClass());
/*     */   private X509Certificate clientCertificate;
/*     */   private KeyPair clientKeyPair;
/*     */ }
package com.qianwen.mdc.service.opcua;
import java.io.InputStream;
import java.io.OutputStream;
import java.nio.file.Files;
import java.nio.file.Path;
import java.security.Key;
import java.security.KeyPair;
import java.security.KeyStore;
import java.security.PrivateKey;
import java.security.PublicKey;
import java.security.cert.Certificate;
import java.security.cert.X509Certificate;
import java.util.regex.Pattern;
import org.eclipse.milo.opcua.sdk.server.util.HostnameUtil;
import org.eclipse.milo.opcua.stack.core.util.SelfSignedCertificateBuilder;
import org.eclipse.milo.opcua.stack.core.util.SelfSignedCertificateGenerator;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;
/* Location:              D:\yangys\mdm\老代码\mdcplugin\mdc-plugin-0.0.1-SNAPSHOT-删除lib.jar!\BOOT-INF\classes\cn\net\hx\mdc\service\opcua\KeyStoreLoader.class
 * Java compiler version: 8 (52.0)
 * JD-Core Version:       1.1.3
 */
@Component
public class KeyStoreLoader {
  public KeyStoreLoader load(Path baseDir) throws Exception {
    KeyStore keyStore = KeyStore.getInstance("PKCS12");
    Path serverKeyStore = baseDir.resolve("opcua-client.pfx");
    this.logger.info("Loading KeyStore at {}", serverKeyStore);
    if (!Files.exists(serverKeyStore, new java.nio.file.LinkOption[0])) {
      keyStore.load(null, PASSWORD);
      KeyPair keyPair = SelfSignedCertificateGenerator.generateRsaKeyPair(2048);
      SelfSignedCertificateBuilder builder = (new SelfSignedCertificateBuilder(keyPair)).setCommonName("mdc").setOrganization("hx").setOrganizationalUnit("Kx").setLocalityName("Terran").setStateName("Shanghai").setCountryCode("CN").setApplicationUri("urn:eclipse:milo:examples:client").addDnsName("localhost").addIpAddress("127.0.0.1");
      for (String hostname : HostnameUtil.getHostnames("0.0.0.0")) {
        if (IP_ADDR_PATTERN.matcher(hostname).matches()) {
          builder.addIpAddress(hostname);
          continue;
        }
        builder.addDnsName(hostname);
      }
      X509Certificate certificate = builder.build();
      keyStore.setKeyEntry("hx-mdc", keyPair.getPrivate(), PASSWORD, (Certificate[])new X509Certificate[] { certificate });
      try (OutputStream out = Files.newOutputStream(serverKeyStore, new java.nio.file.OpenOption[0])) {
        keyStore.store(out, PASSWORD);
      }
    } else {
      try (InputStream in = Files.newInputStream(serverKeyStore, new java.nio.file.OpenOption[0])) {
        keyStore.load(in, PASSWORD);
      }
    }
    Key serverPrivateKey = keyStore.getKey("hx-mdc", PASSWORD);
    if (serverPrivateKey instanceof PrivateKey) {
      this.clientCertificate = (X509Certificate)keyStore.getCertificate("hx-mdc");
      PublicKey serverPublicKey = this.clientCertificate.getPublicKey();
      this.clientKeyPair = new KeyPair(serverPublicKey, (PrivateKey)serverPrivateKey);
    }
    return this;
  }
  public X509Certificate getClientCertificate() {
    return this.clientCertificate;
  }
  public KeyPair getClientKeyPair() {
    return this.clientKeyPair;
  }
  private static final Pattern IP_ADDR_PATTERN = Pattern.compile("^(([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\.){3}([01]?\\d\\d?|2[0-4]\\d|25[0-5])$");
  private static final String CLIENT_ALIAS = "hx-mdc";
  private static final char[] PASSWORD = "12345678".toCharArray();
  private final Logger logger = LoggerFactory.getLogger(getClass());
  private X509Certificate clientCertificate;
  private KeyPair clientKeyPair;
}
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/controller/ManufacturerController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,124 @@
package com.qianwen.mdc.controller;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestHeader;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.qianwen.mdc.common.OpResult;
import com.qianwen.mdc.dto.IdsDTO;
import com.qianwen.mdc.dto.manufacturer.ManufacturerDTO;
import com.qianwen.mdc.dto.manufacturer.ManufacturerQueryDTO;
import com.qianwen.mdc.service.manufacturer.ManufacturerService;
/**
 * ç”Ÿäº§åŽ‚å•†ç®¡ç†æŽ§åˆ¶å™¨
 */
@RestController
@CrossOrigin
@RequestMapping(value = "/manufacturer")
public class ManufacturerController {
    @Autowired
    private ManufacturerService manufacturerService;
    public static final Logger logger = LoggerFactory.getLogger(ManufacturerController.class);
    @PostMapping(value = "/create")
    public OpResult<Void> create(@RequestHeader(value = "mdc-token", defaultValue = "") String token,
          @RequestBody ManufacturerDTO dto, HttpServletRequest request) {
        try {
            //accountTokenService.checkToken(token);
            manufacturerService.save(dto);
        }catch(Exception ex) {
            logger.error("新增生产厂商错误",ex);
            return OpResult.fail(ex.getMessage());
        }
        return OpResult.success();
    }
    @PostMapping(value = "/update")
    public OpResult<Void> update(@RequestHeader(value = "mdc-token", defaultValue = "") String token,
             @RequestBody ManufacturerDTO dto, HttpServletRequest request) {
        try {
            //accountTokenService.checkToken(token);
            manufacturerService.modify(dto);
        }catch(Exception ex) {
            logger.error("修改生产厂商错误",ex);
            return OpResult.fail(ex.getMessage());
        }
        return OpResult.success();
    }
    @PostMapping( "/pageQuery")
    public OpResult<Page<ManufacturerDTO>> pageQuery(@RequestHeader(value = "mdc-token", defaultValue = "") String token,
            @RequestBody ManufacturerQueryDTO dto) {
        try {
            return OpResult.success(manufacturerService.pageQuery(dto));
        }catch(Exception e) {
            logger.error("生产厂商分页查询异常",e);
            return OpResult.fail(e.getMessage());
        }
    }
    /**
     * èŽ·å–è¯¦æƒ…
     * @param id
     * @return
     */
    @GetMapping(value = "/{id}")
    public OpResult<ManufacturerDTO> get(@PathVariable("id") Integer id) {
        try {
            ManufacturerDTO d = manufacturerService.get(id);
            return OpResult.success(d);
        }catch(Exception e) {
            logger.error("生产厂商详情查询异常",e);
            return OpResult.fail(e.getMessage());
        }
    }
    @GetMapping(value = "/list")
    public OpResult<List<ManufacturerDTO>> list() {
        try {
            return OpResult.success(manufacturerService.allList());
        }catch(Exception e) {
            logger.error("生产厂商下拉i了表查询异常",e);
            return OpResult.fail(e.getMessage());
        }
    }
    @RequestMapping(value = "/delete", method = RequestMethod.POST)
    public OpResult<Void> delete(@RequestHeader(value = "mdc-token", defaultValue = "") String token,
            @RequestBody IdsDTO dto, HttpServletRequest request) {
        //accountTokenService.checkToken(token);@RequestParam List<Integer> ids
        try {
            manufacturerService.delete(dto.getIds());
            return OpResult.success();
        }catch(Exception e) {
            logger.error("删除生产厂商失败",e);
            return OpResult.fail(e.getMessage());
        }
    }
}
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/controller/UseDepartmentController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,124 @@
package com.qianwen.mdc.controller;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestHeader;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.qianwen.mdc.common.OpResult;
import com.qianwen.mdc.dto.IdsDTO;
import com.qianwen.mdc.dto.manufacturer.ManufacturerDTO;
import com.qianwen.mdc.dto.manufacturer.ManufacturerQueryDTO;
import com.qianwen.mdc.service.manufacturer.ManufacturerService;
/**
 * ä½¿ç”¨éƒ¨é—¨ç®¡ç†æŽ§åˆ¶å™¨
 */
@RestController
@CrossOrigin
@RequestMapping(value = "/usedepartment")
public class UseDepartmentController {
    @Autowired
    private ManufacturerService manufacturerService;
    public static final Logger logger = LoggerFactory.getLogger(UseDepartmentController.class);
    @PostMapping(value = "/create")
    public OpResult<Void> create(@RequestHeader(value = "mdc-token", defaultValue = "") String token,
          @RequestBody ManufacturerDTO dto, HttpServletRequest request) {
        try {
            //accountTokenService.checkToken(token);
            manufacturerService.save(dto);
        }catch(Exception ex) {
            logger.error("新增生产厂商错误",ex);
            return OpResult.fail(ex.getMessage());
        }
        return OpResult.success();
    }
    @PostMapping(value = "/update")
    public OpResult<Void> update(@RequestHeader(value = "mdc-token", defaultValue = "") String token,
             @RequestBody ManufacturerDTO dto, HttpServletRequest request) {
        try {
            //accountTokenService.checkToken(token);
            manufacturerService.modify(dto);
        }catch(Exception ex) {
            logger.error("修改生产厂商错误",ex);
            return OpResult.fail(ex.getMessage());
        }
        return OpResult.success();
    }
    @PostMapping( "/pageQuery")
    public OpResult<Page<ManufacturerDTO>> pageQuery(@RequestHeader(value = "mdc-token", defaultValue = "") String token,
            @RequestBody ManufacturerQueryDTO dto) {
        try {
            return OpResult.success(manufacturerService.pageQuery(dto));
        }catch(Exception e) {
            logger.error("生产厂商分页查询异常",e);
            return OpResult.fail(e.getMessage());
        }
    }
    /**
     * èŽ·å–è¯¦æƒ…
     * @param id
     * @return
     */
    @GetMapping(value = "/{id}")
    public OpResult<ManufacturerDTO> get(@PathVariable("id") Integer id) {
        try {
            ManufacturerDTO d = manufacturerService.get(id);
            return OpResult.success(d);
        }catch(Exception e) {
            logger.error("生产厂商详情查询异常",e);
            return OpResult.fail(e.getMessage());
        }
    }
    @GetMapping(value = "/list")
    public OpResult<List<ManufacturerDTO>> list() {
        try {
            return OpResult.success(manufacturerService.allList());
        }catch(Exception e) {
            logger.error("生产厂商下拉列表查询异常",e);
            return OpResult.fail(e.getMessage());
        }
    }
    @RequestMapping(value = "/delete", method = RequestMethod.POST)
    public OpResult<Void> delete(@RequestHeader(value = "mdc-token", defaultValue = "") String token,
            @RequestBody IdsDTO dto, HttpServletRequest request) {
        //accountTokenService.checkToken(token);@RequestParam List<Integer> ids
        try {
            manufacturerService.delete(dto.getIds());
            return OpResult.success();
        }catch(Exception e) {
            logger.error("删除生产厂商失败",e);
            return OpResult.fail(e.getMessage());
        }
    }
}
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/controller/account/MachineAccountAddController.java
@@ -1,7 +1,6 @@
package com.qianwen.mdc.controller.account;
import java.util.List;
import java.util.stream.Collectors;
import javax.servlet.http.HttpServletRequest;
@@ -19,10 +18,9 @@
import com.qianwen.mdc.common.OpResult;
import com.qianwen.mdc.dto.account.MachineAccountEditDTO;
import com.qianwen.mdc.dto.account.UseDepartmentDTO;
import com.qianwen.mdc.mapper.UseDepartmentMapper;
import com.qianwen.mdc.dto.usedepartment.UseDepartmentDTO;
import com.qianwen.mdc.service.account.MachineAccountAddService;
import com.qianwen.mdc.service.account.StaticData;
import com.qianwen.mdc.service.usedepartment.UseDepartmentService;
/**
 * å°è´¦æ–°å¢žæŽ§åˆ¶å™¨
@@ -34,10 +32,9 @@
    @Autowired
    private MachineAccountAddService accountAddService;
    @Autowired
    private StaticData staticData;
    @Autowired
    private UseDepartmentMapper useDepartmentMapper;
    private UseDepartmentService useDepartmentService;
    
    public static final Logger logger = LoggerFactory.getLogger(MachineAccountAddController.class);
    
@@ -78,79 +75,10 @@
    
    @GetMapping(value = "/useDepartments")
    public OpResult<List<UseDepartmentDTO>> getDepartments() {
        return OpResult.success(useDepartmentMapper.selectList(null).stream().map(ud->{
            UseDepartmentDTO dto = new UseDepartmentDTO();
            dto.setId(ud.getId());
            dto.setName(ud.getName());
            return dto;
        }).collect(Collectors.toList()));
        return OpResult.success(useDepartmentService.allList());
    }
    /*
    @RequestMapping(value = "/file/upload", method = RequestMethod.POST)
    JSONObject fileUpload(@RequestHeader(value = "mdc-token", defaultValue = "") String token,
            String machineId, MultipartFile file) {
        //TODO checktoken
        JSONObject jsonResult = new JSONObject();
        if (file == null) {
            jsonResult.put("result", "FAIL");
            jsonResult.put("errCode", "403");
            return jsonResult;
        }
        MdcMachine mdcMachineObj = new MdcMachine();
        mdcMachineObj.setId(Integer.parseInt(machineId));
        MdcMachine mdcMachine = mdcMachineMapper.selectOne(mdcMachineObj);
        if (mdcMachine == null) {
            jsonResult.put("result", "FAIL");
            jsonResult.put("errCode", "404");
            return jsonResult;
        }
        MdcWorkshop mdcWorkshopObj = new MdcWorkshop();
        mdcWorkshopObj.setId(mdcMachine.getWorkshopId());
        MdcWorkshop mdcWorkshop = mdcWorkshopMapper.selectOne(mdcWorkshopObj);
        if (mdcWorkshop == null) {
            jsonResult.put("result", "FAIL");
            jsonResult.put("errCode", "405");
            return jsonResult;
        }
        MdcSection mdcSectionObj = new MdcSection();
        mdcSectionObj.setId(mdcMachine.getSectionId());
        MdcSection mdcSection = mdcSectionMapper.selectOne(mdcSectionObj);
        if (mdcSection == null) {
            jsonResult.put("result", "FAIL");
            jsonResult.put("errCode", "406");
            return jsonResult;
        }
        jsonResult.put("result", "SUCCESS");
        StringBuilder sbPath = new StringBuilder();
//        sb.append(uploadPath).append("/").append(mdcWorkshop.getName()).append("/").append(mdcSection.getName())
//                .append("/").append(mdcMachine.getName()).append("/").append(file.getName());
        sbPath.append(uploadPath).append("/").append(mdcWorkshop.getName()).append("/").append(mdcSection.getName())
                .append("/").append(mdcMachine.getName());
        try {
            File path = new File(sbPath.toString());
            if (!path.exists()) {
                path.mkdirs();
            }
            File uploadFile = new File(sbPath.append("/").append(file.getName()).toString());
            file.transferTo(uploadFile);
        } catch (IOException e) {
            e.printStackTrace();
        }
        String fileId = mdcMachine.getId() + "#" + file.getName();
        jsonResult.put("fileId", fileId);
        return jsonResult;
    }
    @RequestMapping(value = "/file/delete", method = RequestMethod.POST)
    JSONObject fileDelete(@RequestHeader(value = "mdc-token", defaultValue = "") String token,
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/controller/devicetype/DeviceTypeController.java
@@ -67,7 +67,7 @@
    }
    
    
    @RequestMapping(value = "/pageQuery", method = RequestMethod.POST)
    @PostMapping("/pageQuery")
    public OpResult<Page<DeviceTypeDTO>> pageQuery(@RequestHeader(value = "mdc-token", defaultValue = "") String token,
            @RequestBody DeviceTypeDTO dto) {
        
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/domain/MachineAccount.java
@@ -78,7 +78,7 @@
    /**
     * ä½¿ç”¨éƒ¨é—¨
     */
    private Integer department;
    private Long department;
    /**
     * æ˜¯å¦å…³é”®è®¾å¤‡
@@ -238,11 +238,11 @@
    }
   
    public Integer getDepartment() {
    public Long getDepartment() {
        return department;
    }
    public void setDepartment(Integer department) {
    public void setDepartment(Long department) {
        this.department = department;
    }
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/domain/Manufacturer.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,39 @@
package com.qianwen.mdc.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
/**
 * ç”Ÿäº§åŽ‚å•†ï¼Œå­—å…¸è¡¨
 */
@TableName( "manufacturer")
public class Manufacturer{
    @TableId(type=IdType.ASSIGN_ID)
    private Long id;
    /**
     * ç±»åž‹åç§°
     */
    private String name;
    public Long getId() {
        return id;
    }
    public void setId(Long id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
}
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/domain/UseDepartment.java
@@ -1,22 +1,23 @@
package com.qianwen.mdc.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
/**
 * ä½¿ç”¨éƒ¨é—¨è¡¨ï¼Œå›ºå®šæ•°æ®
 * ä½¿ç”¨éƒ¨é—¨è¡¨
 */
@TableName( "use_department")
public class UseDepartment {
    @TableId
    private Integer id;
    @TableId(type=IdType.ASSIGN_ID)
    private Long id;
    private String name;
    public Integer getId() {
    public Long getId() {
        return id;
    }
    public void setId(Integer id) {
    public void setId(Long id) {
        this.id = id;
    }
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/dto/account/MachineAccountDTO.java
@@ -75,7 +75,7 @@
    /**
     * ä½¿ç”¨éƒ¨é—¨id
     */
    private Integer department;
    private Long department;
    private String departmentName;
   
@@ -220,11 +220,11 @@
    }
   
    public Integer getDepartment() {
    public Long getDepartment() {
        return department;
    }
    public void setDepartment(Integer department) {
    public void setDepartment(Long department) {
        this.department = department;
    }
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/dto/account/MachineAccountEditDTO.java
@@ -74,7 +74,7 @@
    /**
     * ä½¿ç”¨éƒ¨é—¨
     */
    private Integer department;
    private Long department;
@@ -232,11 +232,11 @@
    }
   
    public Integer getDepartment() {
    public Long getDepartment() {
        return department;
    }
    public void setDepartment(Integer department) {
    public void setDepartment(Long department) {
        this.department = department;
    }
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/dto/account/MachineAccountQueryDTO.java
@@ -35,7 +35,7 @@
    /**
     * department
     */
    private Integer department;
    private Long department;
    /**
     * å›½åˆ«
@@ -87,11 +87,11 @@
        this.accountingAttribute = accountingAttribute;
    }
    public Integer getDepartment() {
    public Long getDepartment() {
        return department;
    }
    public void setDepartment(Integer department) {
    public void setDepartment(Long department) {
        this.department = department;
    }
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/dto/manufacturer/ManufacturerDTO.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,35 @@
package com.qianwen.mdc.dto.manufacturer;
import com.qianwen.mdc.dto.BasePageDTO;
/**
 * è®¾å¤‡ç±»åž‹"数据
 */
public class ManufacturerDTO{
    private Long id;
    /*
     * ç±»åž‹åç§°
     */
    private String name;
    public Long getId() {
        return id;
    }
    public void setId(Long id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
}
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/dto/manufacturer/ManufacturerQueryDTO.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,48 @@
package com.qianwen.mdc.dto.manufacturer;
import com.qianwen.mdc.dto.BasePageDTO;
/**
 * è®¾å¤‡ç±»åž‹"数据
 */
public class ManufacturerQueryDTO extends BasePageDTO{
    private Long id;
    /*
     * ç±»åž‹åç§°
     */
    private String name;
    /*
     * åˆ é™¤æ ‡è®° 0:未删除;1:已删除
     */
    private int deleteFlag;
    public Long getId() {
        return id;
    }
    public void setId(Long id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public int getDeleteFlag() {
        return deleteFlag;
    }
    public void setDeleteFlag(int deleteFlag) {
        this.deleteFlag = deleteFlag;
    }
}
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/dto/usedepartment/UseDepartmentDTO.java
ÎļþÃû´Ó mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/dto/account/UseDepartmentDTO.java ÐÞ¸Ä
@@ -1,23 +1,23 @@
package com.qianwen.mdc.dto.account;
package com.qianwen.mdc.dto.usedepartment;
/**
 * "使用部门"数据,在yaml里配置的
 * "使用部门"数据
 */
public class UseDepartmentDTO{
    private int id;
    private Long id;
    /*
     * éƒ¨é—¨åç§°
     */
    private String name;
    public int getId() {
    public Long getId() {
        return id;
    }
    public void setId(int id) {
    public void setId(Long id) {
        this.id = id;
    }
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/dto/usedepartment/UseDepartmentQueryDTO.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,26 @@
package com.qianwen.mdc.dto.usedepartment;
import com.qianwen.mdc.dto.BasePageDTO;
/**
 * "使用部门"数据
 */
public class UseDepartmentQueryDTO extends BasePageDTO{
    /*
     * éƒ¨é—¨åç§°
     */
    private String name;
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
}
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/mapper/ManufacturerMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,18 @@
package com.qianwen.mdc.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.qianwen.mdc.domain.Manufacturer;
import com.qianwen.mdc.dto.manufacturer.ManufacturerDTO;
import com.qianwen.mdc.dto.manufacturer.ManufacturerQueryDTO;
public interface ManufacturerMapper extends BaseMapper<Manufacturer> {
    /**
     * åˆ†é¡µæŸ¥è¯¢ç”Ÿäº§åނ商
     * @param rowPage
     * @param dto
     * @return
     */
    Page<ManufacturerDTO> queryPage(Page<ManufacturerDTO> rowPage, ManufacturerQueryDTO dto);
}
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/mapper/UseDepartmentMapper.java
@@ -1,7 +1,17 @@
package com.qianwen.mdc.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.qianwen.mdc.domain.UseDepartment;
import com.qianwen.mdc.dto.usedepartment.UseDepartmentDTO;
import com.qianwen.mdc.dto.usedepartment.UseDepartmentQueryDTO;
public interface UseDepartmentMapper extends BaseMapper<UseDepartment> {
    /**
     * åˆ†é¡µæŸ¥è¯¢
     * @param rowPage
     * @param dto
     * @return
     */
    Page<UseDepartmentDTO> queryPage(Page<UseDepartmentDTO> rowPage, UseDepartmentQueryDTO dto);
}
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/service/account/StaticData.java
@@ -5,7 +5,7 @@
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
import com.qianwen.mdc.dto.account.UseDepartmentDTO;
import com.qianwen.mdc.dto.usedepartment.UseDepartmentDTO;
@Component
@ConfigurationProperties(prefix = "staticdata")
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/service/manufacturer/ManufacturerService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,93 @@
package com.qianwen.mdc.service.manufacturer;
import java.util.List;
import java.util.stream.Collectors;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.qianwen.mdc.domain.Manufacturer;
import com.qianwen.mdc.dto.manufacturer.ManufacturerDTO;
import com.qianwen.mdc.dto.manufacturer.ManufacturerQueryDTO;
import com.qianwen.mdc.mapper.ManufacturerMapper;
/**
 * @author y_ys79
 * è®¾å¤‡å°è´¦æŸ¥è¯¢æœåŠ¡
 */
@Service
public class ManufacturerService {
    @Autowired
    private ManufacturerMapper manufacturerMapper;
    @Transactional
    public void save(ManufacturerDTO dto) {
        Manufacturer m = new Manufacturer();
        m.setName(dto.getName());
        manufacturerMapper.insert(m);
    }
    @Transactional
    public void modify(ManufacturerDTO dto) {
        Manufacturer m = manufacturerMapper.selectById(dto.getId());
        m.setName(dto.getName());
        manufacturerMapper.updateById(m);
    }
    /**
     * è®¾å¤‡å°è´¦åˆ†é¡µæŸ¥è¯¢
     * @param dto æŸ¥è¯¢å‚æ•°
     * @return
     */
    @Transactional(readOnly=true)
    public Page<ManufacturerDTO> pageQuery(ManufacturerQueryDTO dto) {
        Page<ManufacturerDTO> rowPage = new Page<>(dto.finalPageNo(),dto.finalPageSize());
        rowPage = manufacturerMapper.queryPage(rowPage, dto);
        return rowPage;
    }
    @Transactional(readOnly=true)
    public ManufacturerDTO get(Integer id) {
        Manufacturer dtype = manufacturerMapper.selectById(id);
        ManufacturerDTO dto = new ManufacturerDTO();
        BeanUtils.copyProperties(dtype, dto);
        return dto;
    }
    @Transactional
    public void delete(List<Long> ids) {
        for(Long id : ids) {
            manufacturerMapper.deleteById(id);
        }
    }
    @Transactional(readOnly=true)
    public List<ManufacturerDTO> allList() {
        QueryWrapper<Manufacturer> qwp = Wrappers.query();
        return manufacturerMapper.selectList(qwp).stream().map(m ->{
            ManufacturerDTO dto = new ManufacturerDTO();
            BeanUtils.copyProperties(m, dto);
            return dto;
            }).collect(Collectors.toList());
    }
}
mdc-parent/mdc-show/src/main/java/com/qianwen/mdc/service/usedepartment/UseDepartmentService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,93 @@
package com.qianwen.mdc.service.usedepartment;
import java.util.List;
import java.util.stream.Collectors;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.qianwen.mdc.domain.UseDepartment;
import com.qianwen.mdc.dto.usedepartment.UseDepartmentDTO;
import com.qianwen.mdc.dto.usedepartment.UseDepartmentQueryDTO;
import com.qianwen.mdc.mapper.UseDepartmentMapper;
/**
 * @author y_ys79
 * è®¾å¤‡å°è´¦æŸ¥è¯¢æœåŠ¡
 */
@Service
public class UseDepartmentService {
    @Autowired
    private UseDepartmentMapper deptMapper;
    @Transactional
    public void save(UseDepartmentDTO dto) {
        UseDepartment m = new UseDepartment();
        m.setName(dto.getName());
        deptMapper.insert(m);
    }
    @Transactional
    public void modify(UseDepartmentDTO dto) {
        UseDepartment m = deptMapper.selectById(dto.getId());
        m.setName(dto.getName());
        deptMapper.updateById(m);
    }
    /**
     * è®¾å¤‡å°è´¦åˆ†é¡µæŸ¥è¯¢
     * @param dto æŸ¥è¯¢å‚æ•°
     * @return
     */
    @Transactional(readOnly=true)
    public Page<UseDepartmentDTO> pageQuery(UseDepartmentQueryDTO dto) {
        Page<UseDepartmentDTO> rowPage = new Page<>(dto.finalPageNo(),dto.finalPageSize());
        rowPage = deptMapper.queryPage(rowPage, dto);
        return rowPage;
    }
    @Transactional(readOnly=true)
    public UseDepartmentDTO get(Integer id) {
        UseDepartment dtype = deptMapper.selectById(id);
        UseDepartmentDTO dto = new UseDepartmentDTO();
        BeanUtils.copyProperties(dtype, dto);
        return dto;
    }
    @Transactional
    public void delete(List<Long> ids) {
        for(Long id : ids) {
            deptMapper.deleteById(id);
        }
    }
    @Transactional(readOnly=true)
    public List<UseDepartmentDTO> allList() {
        QueryWrapper<UseDepartment> qwp = Wrappers.query();
        return deptMapper.selectList(qwp).stream().map(m ->{
            UseDepartmentDTO dto = new UseDepartmentDTO();
            BeanUtils.copyProperties(m, dto);
            return dto;
            }).collect(Collectors.toList());
    }
}
mdc-parent/mdc-showdb-mysql/src/main/resources/mapper/DeviceTypeMapper.xml
@@ -4,7 +4,7 @@
  <resultMap id="BaseResultMap" type="com.qianwen.mdc.domain.DeviceType">
    <id column="id" jdbcType="INTEGER" property="id" />
    <result column="name" jdbcType="VARCHAR" property="name" />
    <result column="delete_flag" jdbcType="INTEGER" property="t" />
    <result column="delete_flag" jdbcType="INTEGER" property="deleteFlag" />
  </resultMap>
mdc-parent/mdc-showdb-mysql/src/main/resources/mapper/MachineAccountMapper.xml
@@ -71,6 +71,14 @@
            and a.specification like #{specification}
         </if>
         
         <if test="dto.productionDateBegin != null">
            and a.a.production_date &gt;= #{dto.productionDateBegin}
         </if>
         <if test="dto.productionDateEnd != null">
            and a.a.production_date &lt;= #{dto.productionDateEnd}
         </if>
         <if test="dto.manufacturer != null and dto.manufacturer != ''">
             <bind name="manufacturer" value="'%' + dto.manufacturer + '%'" />
            and a.manufacturer like #{manufacturer}
mdc-parent/mdc-showdb-mysql/src/main/resources/mapper/ManufacturerMapper.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.qianwen.mdc.mapper.ManufacturerMapper">
  <resultMap id="BaseResultMap" type="com.qianwen.mdc.domain.Manufacturer">
    <id column="id" jdbcType="INTEGER" property="id" />
    <result column="name" jdbcType="VARCHAR" property="name" />
  </resultMap>
    <select id="queryPage" resultType="com.qianwen.mdc.dto.manufacturer.ManufacturerDTO">
      SELECT id,name
      FROM manufacturer
      <where>
           <if test="dto.name != null and dto.name != ''">
               <bind name="name" value="'%' + dto.name + '%'" />
           and name like #{name}
         </if>
      </where>
     </select>
</mapper>
mdc-parent/mdc-showdb-mysql/src/main/resources/mapper/UseDepartment.xml
@@ -7,4 +7,14 @@
    <result column="name" jdbcType="VARCHAR" property="name" />
  </resultMap>
    <select id="queryPage" resultType="com.qianwen.mdc.dto.usedepartment.UseDepartmentDTO">
      SELECT id,name
      FROM use_department
      <where>
           <if test="dto.name != null and dto.name != ''">
               <bind name="name" value="'%' + dto.name + '%'" />
           and name like #{name}
         </if>
      </where>
     </select>
</mapper>