This commit is contained in:
2022-03-10 11:53:03 +08:00
parent b74dd02f87
commit d6cda043fb
9 changed files with 264 additions and 51 deletions

View File

@ -43,6 +43,7 @@ public class DataSourceServiceImpl implements DataSourceService {
return outputEncapsulationObject(PromptMessageEnum.DATA_NONE, "不存在该字典类型!", locale);
}
DataSource dataSource = new DataSource();
initDataSource(dataSource);
dataSource.setLotNo(dataSourceQo.getLotNo());
dataSource.setMachineNo(dataSourceQo.getMachineNo());
dataSource.setMaterialNo(dataSourceQo.getMaterialNo());
@ -54,4 +55,17 @@ public class DataSourceServiceImpl implements DataSourceService {
dataSourceDao.save(dataSource);
return outputEncapsulationObject(PromptMessageEnum.SUCCESS, "添加成功!", locale);
}
private void initDataSource(DataSource dataSource) {
dataSource.setLotNo("");
dataSource.setMachineNo("");
dataSource.setMaterialNo("");
dataSource.setModelNo("");
dataSource.setMachineTypeNo("");
dataSource.setInspectionItemCode("");
dataSource.setCraftItemName("");
dataSource.setInspectValue("");
dataSource.setPicturePath("");
}
}

View File

@ -1,17 +1,22 @@
package com.xkrs.service.impl;
import com.xkrs.dao.DataSourceDao;
import com.xkrs.dao.PictureDao;
import com.xkrs.encapsulation.PromptMessageEnum;
import com.xkrs.model.entity.PictureEntity;
import com.xkrs.model.entity.DataSource;
import com.xkrs.model.qo.PictureQo;
import com.xkrs.service.PictureService;
import com.xkrs.util.DataSourceQuery;
import com.xkrs.util.ExcelUploadUtil;
import org.apache.http.util.TextUtils;
import org.springframework.context.i18n.LocaleContextHolder;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import javax.transaction.Transactional;
import java.io.IOException;
import java.util.List;
import java.util.Locale;
import static com.xkrs.encapsulation.OutputEncapsulation.outputEncapsulationObject;
@ -22,19 +27,41 @@ public class PictureServiceImpl implements PictureService {
@Resource
private PictureDao pictureDao;
@Resource
private DataSourceDao dataSourceDao;
@Resource
private DataSourceQuery dataSourceQuery;
@Override
@Transactional(rollbackOn = Exception.class)
public String insertPicture(PictureQo pictureQo, MultipartFile pictureFile) throws IOException {
Locale locale = LocaleContextHolder.getLocale();
String file = ExcelUploadUtil.memoryFile(pictureFile, 2);
PictureEntity pictureEntity = new PictureEntity();
pictureEntity.setLotNo(pictureQo.getLotNo());
pictureEntity.setMachineNo(pictureQo.getMachineNo());
pictureEntity.setMaterialNo(pictureQo.getMaterialNo());
pictureEntity.setModelNo(pictureQo.getModelNo());
pictureEntity.setMachineTypeNo(pictureQo.getMachineTypeNo());
pictureEntity.setCraftItemName(pictureQo.getCraftItemName());
pictureEntity.setPicturePath(file);
pictureDao.save(pictureEntity);
String filePath = ExcelUploadUtil.memoryFile(pictureFile, 2);
List<DataSource> dataSourceList = dataSourceQuery.selectDataSource(pictureQo.getLotNo(), pictureQo.getMachineNo(), pictureQo.getMaterialNo(), pictureQo.getModelNo(), pictureQo.getMachineTypeNo(), pictureQo.getCraftItemName());
if (dataSourceList == null || dataSourceList.isEmpty()) {
DataSource dataSource = new DataSource();
dataSource.setLotNo(pictureQo.getLotNo());
dataSource.setMachineNo(pictureQo.getMachineNo());
dataSource.setMaterialNo(pictureQo.getMaterialNo());
dataSource.setModelNo(pictureQo.getModelNo());
dataSource.setMachineTypeNo(pictureQo.getMachineTypeNo());
dataSource.setInspectionItemCode("");
dataSource.setCraftItemName(pictureQo.getCraftItemName());
dataSource.setInspectValue("");
dataSource.setPicturePath(filePath);
dataSourceDao.save(dataSource);
return outputEncapsulationObject(PromptMessageEnum.SUCCESS, "添加成功!", locale);
}
for (DataSource dataSource : dataSourceList) {
String newFilePath;
if (TextUtils.isEmpty(dataSource.getPicturePath())) {
newFilePath = filePath;
} else {
newFilePath = dataSource.getPicturePath() + "," + filePath;
}
dataSourceDao.updatePicturePath(dataSource.getLotNo(), dataSource.getMachineNo(), dataSource.getMaterialNo(), dataSource.getModelNo(), dataSource.getMachineTypeNo(), dataSource.getCraftItemName(), newFilePath);
}
return outputEncapsulationObject(PromptMessageEnum.SUCCESS, "添加成功!", locale);
}