工业测量
This commit is contained in:
		
							
								
								
									
										18
									
								
								src/main/java/com/xkrs/service/DataDictService.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								src/main/java/com/xkrs/service/DataDictService.java
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,18 @@ | ||||
| package com.xkrs.service; | ||||
|  | ||||
| import com.xkrs.model.entity.DataDict; | ||||
| import com.xkrs.model.qo.DataDictQo; | ||||
|  | ||||
| /** | ||||
|  * @Author: XinYi Song | ||||
|  * @Date: 2022/1/19 10:10 | ||||
|  */ | ||||
| public interface DataDictService { | ||||
|  | ||||
|     /** | ||||
|      * 添加字典数据 | ||||
|      * @param dataDictQo | ||||
|      * @return | ||||
|      */ | ||||
|     String insertDataDict(DataDictQo dataDictQo); | ||||
| } | ||||
							
								
								
									
										17
									
								
								src/main/java/com/xkrs/service/DataSourceService.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								src/main/java/com/xkrs/service/DataSourceService.java
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,17 @@ | ||||
| package com.xkrs.service; | ||||
|  | ||||
| import com.xkrs.model.qo.DataSourceQo; | ||||
|  | ||||
| /** | ||||
|  * @Author: XinYi Song | ||||
|  * @Date: 2022/1/19 16:42 | ||||
|  */ | ||||
| public interface DataSourceService { | ||||
|  | ||||
|     /** | ||||
|      * 添加测量数据 | ||||
|      * @param dataSourceQo | ||||
|      * @return | ||||
|      */ | ||||
|     String insertDataSource(DataSourceQo dataSourceQo); | ||||
| } | ||||
							
								
								
									
										29
									
								
								src/main/java/com/xkrs/service/FileService.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										29
									
								
								src/main/java/com/xkrs/service/FileService.java
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,29 @@ | ||||
| package com.xkrs.service; | ||||
|  | ||||
| import com.xkrs.model.qo.FileQo; | ||||
| import org.apache.poi.openxml4j.exceptions.InvalidFormatException; | ||||
| import org.springframework.web.multipart.MultipartFile; | ||||
|  | ||||
| import javax.servlet.http.HttpServletResponse; | ||||
| import java.io.IOException; | ||||
|  | ||||
| /** | ||||
|  * @Author: XinYi Song | ||||
|  * @Date: 2022/1/20 15:24 | ||||
|  */ | ||||
| public interface FileService { | ||||
|  | ||||
|     /** | ||||
|      * 添加模板信息 | ||||
|      * @param fileQo | ||||
|      * @return | ||||
|      */ | ||||
|     String insertFileExcel(FileQo fileQo,MultipartFile fileExcel) throws IOException; | ||||
|  | ||||
|     /** | ||||
|      * 导出excel | ||||
|      * @param fileQo | ||||
|      * @return | ||||
|      */ | ||||
|     String exportExcel(FileQo fileQo) throws IOException, InvalidFormatException; | ||||
| } | ||||
							
								
								
									
										50
									
								
								src/main/java/com/xkrs/service/impl/DataDictServiceImpl.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										50
									
								
								src/main/java/com/xkrs/service/impl/DataDictServiceImpl.java
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,50 @@ | ||||
| package com.xkrs.service.impl; | ||||
|  | ||||
| import com.xkrs.dao.DataDictDao; | ||||
| import com.xkrs.encapsulation.PromptMessageEnum; | ||||
| import com.xkrs.model.entity.DataDict; | ||||
| import com.xkrs.model.qo.DataDictQo; | ||||
| import com.xkrs.service.DataDictService; | ||||
| import org.springframework.context.i18n.LocaleContextHolder; | ||||
| import org.springframework.stereotype.Service; | ||||
|  | ||||
| import javax.annotation.Resource; | ||||
| import java.util.Locale; | ||||
|  | ||||
| import static com.xkrs.encapsulation.OutputEncapsulation.outputEncapsulationObject; | ||||
|  | ||||
| /** | ||||
|  * @Author: XinYi Song | ||||
|  * @Date: 2022/1/19 10:28 | ||||
|  */ | ||||
| @Service | ||||
| public class DataDictServiceImpl implements DataDictService { | ||||
|  | ||||
|     @Resource | ||||
|     private DataDictDao dataDictDao; | ||||
|  | ||||
|     /** | ||||
|      * 添加字典数据 | ||||
|      * @param dataDictQo | ||||
|      * @return | ||||
|      */ | ||||
|     @Override | ||||
|     public String insertDataDict(DataDictQo dataDictQo) { | ||||
|         Locale locale = LocaleContextHolder.getLocale(); | ||||
|         //DataDict byDictChineseName = dataDictDao.findByDictChineseName(dataDictQo.getDictChineseName()); | ||||
|         /*DataDict chineseName = dataDictDao.findByModelNumberAndBatchNumberAndMachineCodeAndDictProductNumberAndDictChineseName(dataDictQo.getModelNumber(), dataDictQo.getBatchNumber(), dataDictQo.getMachineCode(), dataDictQo.getDictProductNumber(), dataDictQo.getDictChineseName()); | ||||
|         if(chineseName != null){ | ||||
|             return outputEncapsulationObject(PromptMessageEnum.DATA_EXIT,"该产品变量已存在,请勿重复添加!",locale); | ||||
|         }*/ | ||||
|         //DataDict byDictEnglishName = dataDictDao.findByDictEnglishName(dataDictQo.getDictEnglishName()); | ||||
|         DataDict englishName = dataDictDao.findByDictEnglishName(dataDictQo.getDictEnglishName()); | ||||
|         if(englishName != null){ | ||||
|             return outputEncapsulationObject(PromptMessageEnum.DATA_EXIT,"该产品变量已存在,请勿重复添加!",locale); | ||||
|         } | ||||
|         DataDict dataDict = new DataDict(); | ||||
|         dataDict.setDictChineseName(dataDictQo.getDictChineseName()); | ||||
|         dataDict.setDictEnglishName(dataDictQo.getDictEnglishName()); | ||||
|         dataDictDao.save(dataDict); | ||||
|         return outputEncapsulationObject(PromptMessageEnum.SUCCESS,"添加成功!",locale); | ||||
|     } | ||||
| } | ||||
| @@ -0,0 +1,57 @@ | ||||
| package com.xkrs.service.impl; | ||||
|  | ||||
| import com.xkrs.dao.DataDictDao; | ||||
| import com.xkrs.dao.DataSourceDao; | ||||
| import com.xkrs.encapsulation.PromptMessageEnum; | ||||
| import com.xkrs.model.entity.DataDict; | ||||
| import com.xkrs.model.entity.DataSource; | ||||
| import com.xkrs.model.qo.DataSourceQo; | ||||
| import com.xkrs.service.DataSourceService; | ||||
| import org.springframework.context.i18n.LocaleContextHolder; | ||||
| import org.springframework.stereotype.Service; | ||||
|  | ||||
| import javax.annotation.Resource; | ||||
| import java.util.Locale; | ||||
|  | ||||
| import static com.xkrs.encapsulation.OutputEncapsulation.outputEncapsulationObject; | ||||
|  | ||||
| /** | ||||
|  * @Author: XinYi Song | ||||
|  * @Date: 2022/1/19 16:43 | ||||
|  */ | ||||
| @Service | ||||
| public class DataSourceServiceImpl implements DataSourceService { | ||||
|  | ||||
|     @Resource | ||||
|     private DataSourceDao dataSourceDao; | ||||
|  | ||||
|     @Resource | ||||
|     private DataDictDao dataDictDao; | ||||
|  | ||||
|     /** | ||||
|      * 添加测量数据 | ||||
|      * @param dataSourceQo | ||||
|      * @return | ||||
|      */ | ||||
|     @Override | ||||
|     public String insertDataSource(DataSourceQo dataSourceQo) { | ||||
|         Locale locale = LocaleContextHolder.getLocale(); | ||||
|         DataDict byDictEnglishName = dataDictDao.findByDictEnglishName(dataSourceQo.getDataName()); | ||||
|         if(byDictEnglishName == null){ | ||||
|             return outputEncapsulationObject(PromptMessageEnum.DATA_NONE,"不存在该字典类型!",locale); | ||||
|         } | ||||
|         /*DataSource byDataName = dataSourceDao.findByDataName(dataSourceQo.getDataName()); | ||||
|         if(byDataName != null){ | ||||
|             return outputEncapsulationObject(PromptMessageEnum.DATA_EXIT,"该字典类型数据已添加,请勿重复添加!",locale); | ||||
|         }*/ | ||||
|         DataSource dataSource = new DataSource(); | ||||
|         dataSource.setDataModelNumber(dataSourceQo.getDataModelNumber()); | ||||
|         dataSource.setDataBatchNumber(dataSourceQo.getDataBatchNumber()); | ||||
|         dataSource.setDataMachineCode(dataSourceQo.getDataMachineCode()); | ||||
|         dataSource.setProductNumber(dataSourceQo.getProductNumber()); | ||||
|         dataSource.setDataName(dataSourceQo.getDataName()); | ||||
|         dataSource.setNumericalValue(dataSourceQo.getNumericalValue()); | ||||
|         dataSourceDao.save(dataSource); | ||||
|         return outputEncapsulationObject(PromptMessageEnum.SUCCESS,"添加成功!",locale); | ||||
|     } | ||||
| } | ||||
							
								
								
									
										97
									
								
								src/main/java/com/xkrs/service/impl/FileServiceImpl.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										97
									
								
								src/main/java/com/xkrs/service/impl/FileServiceImpl.java
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,97 @@ | ||||
| package com.xkrs.service.impl; | ||||
|  | ||||
| import com.xkrs.dao.DataDictDao; | ||||
| import com.xkrs.dao.DataSourceDao; | ||||
| import com.xkrs.dao.FileDao; | ||||
| import com.xkrs.encapsulation.PromptMessageEnum; | ||||
| import com.xkrs.model.entity.FileEntity; | ||||
| import com.xkrs.model.qo.FileQo; | ||||
| import com.xkrs.service.FileService; | ||||
| import com.xkrs.util.ExcelUploadUtil; | ||||
| import com.xkrs.util.ExportExcel; | ||||
| import org.apache.poi.openxml4j.exceptions.InvalidFormatException; | ||||
| import org.springframework.context.i18n.LocaleContextHolder; | ||||
| import org.springframework.stereotype.Service; | ||||
| import org.springframework.web.multipart.MultipartFile; | ||||
|  | ||||
| import javax.annotation.Resource; | ||||
| import javax.servlet.http.HttpServletResponse; | ||||
| import javax.transaction.Transactional; | ||||
| import java.io.IOException; | ||||
| import java.util.HashMap; | ||||
| import java.util.List; | ||||
| import java.util.Locale; | ||||
| import java.util.Map; | ||||
|  | ||||
| import static com.xkrs.encapsulation.OutputEncapsulation.outputEncapsulationObject; | ||||
|  | ||||
| /** | ||||
|  * @Author: XinYi Song | ||||
|  * @Date: 2022/1/20 15:24 | ||||
|  */ | ||||
| @Service | ||||
| public class FileServiceImpl implements FileService { | ||||
|  | ||||
|     @Resource | ||||
|     private FileDao fileDao; | ||||
|  | ||||
|     @Resource | ||||
|     private DataDictDao dataDictDao; | ||||
|  | ||||
|     @Resource | ||||
|     private DataSourceDao dataSourceDao; | ||||
|  | ||||
|     /** | ||||
|      * 添加模板信息 | ||||
|      * @param fileQo | ||||
|      * @return | ||||
|      */ | ||||
|     @Override | ||||
|     public String insertFileExcel(FileQo fileQo, MultipartFile fileExcel) throws IOException { | ||||
|         Locale locale = LocaleContextHolder.getLocale(); | ||||
|         FileEntity fileEntity = fileDao.findByFileModelNumberAndFileBatchNumberAndFileMachineCodeAndFileProductNumber(fileQo.getFileModelNumber(), fileQo.getFileBatchNumber(), fileQo.getFileMachineCode(), fileQo.getFileProductNumber()); | ||||
|         if(fileEntity != null){ | ||||
|             return outputEncapsulationObject(PromptMessageEnum.DATA_EXIT,"已存在该产品的模板!",locale); | ||||
|         } | ||||
|         if(fileExcel == null){ | ||||
|             return outputEncapsulationObject(PromptMessageEnum.DATA_NONE,"模板不能为空!",locale); | ||||
|         } | ||||
|         String file = ExcelUploadUtil.memoryFile(fileExcel); | ||||
|         FileEntity fileEntity1 = new FileEntity(); | ||||
|         fileEntity1.setFileModelNumber(fileQo.getFileModelNumber()); | ||||
|         fileEntity1.setFileBatchNumber(fileQo.getFileBatchNumber()); | ||||
|         fileEntity1.setFileMachineCode(fileQo.getFileMachineCode()); | ||||
|         fileEntity1.setFileProductNumber(fileQo.getFileProductNumber()); | ||||
|         fileEntity1.setFileUploadPath(file); | ||||
|  | ||||
|         fileDao.save(fileEntity1); | ||||
|         return outputEncapsulationObject(PromptMessageEnum.SUCCESS,"添加成功!",locale); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 导出excel | ||||
|      * @param fileQo | ||||
|      * @return | ||||
|      */ | ||||
|     @Transactional(rollbackOn = Exception.class) | ||||
|     @Override | ||||
|     public String exportExcel(FileQo fileQo) throws IOException, InvalidFormatException { | ||||
|         Locale locale = LocaleContextHolder.getLocale(); | ||||
|         FileEntity entity = fileDao.findByFileModelNumberAndFileBatchNumberAndFileMachineCodeAndFileProductNumber(fileQo.getFileModelNumber(), fileQo.getFileBatchNumber(), fileQo.getFileMachineCode(), fileQo.getFileProductNumber()); | ||||
|         if(entity == null){ | ||||
|             return outputEncapsulationObject(PromptMessageEnum.DATA_NONE,"暂时没有该产品的模板,请添加!",locale); | ||||
|         } | ||||
|         String fileUploadPath = entity.getFileUploadPath(); | ||||
|         List<Map<String, String>> maps = dataSourceDao.selectDataNameAndData(fileQo.getFileModelNumber(), fileQo.getFileBatchNumber(), fileQo.getFileMachineCode(), fileQo.getFileProductNumber()); | ||||
|         if(maps == null || maps.size() == 0){ | ||||
|             return outputEncapsulationObject(PromptMessageEnum.DATA_NONE,"暂时没有该产品的信息!",locale); | ||||
|         } | ||||
|         Map<String,String> map = new HashMap<String,String>(); | ||||
|         for(Map<String,String> stringMap : maps){ | ||||
|             map.put(stringMap.get("dataname"),stringMap.get("numericalvalue")); | ||||
|         } | ||||
|         String fill = ExportExcel.exportToProveExcel(map,fileUploadPath); | ||||
|         fileDao.updateFileDownloadPath(fileQo.getFileModelNumber(), fileQo.getFileBatchNumber(), fileQo.getFileMachineCode(), fileQo.getFileProductNumber(),fill); | ||||
|         return outputEncapsulationObject(PromptMessageEnum.SUCCESS,fill,locale); | ||||
|     } | ||||
| } | ||||
		Reference in New Issue
	
	Block a user