|
@@ -5,18 +5,20 @@ import cn.hutool.core.date.DateUtil;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
-import org.apache.commons.collections4.BagUtils;
|
|
|
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
+import org.jeecg.common.api.vo.Result;
|
|
|
+import org.jeecg.common.exception.JeecgBootException;
|
|
|
import org.jeecg.modules.itdmDataHistory.entity.ItdmWenxiang;
|
|
|
import org.jeecg.modules.itdmDataHistory.mapper.ItdmWenxiangMapper;
|
|
|
import org.jeecg.modules.itdmgongdanshuju.dto.ItdmGongdanDto;
|
|
|
import org.jeecg.modules.itdmgongdanshuju.dto.ItdmGongdanUploadDto;
|
|
|
import org.jeecg.modules.itdmgongdanshuju.entity.ItdmGongdanDetail;
|
|
|
+import org.jeecg.modules.itdmgongdanshuju.entity.ItdmGongdanImage;
|
|
|
import org.jeecg.modules.itdmgongdanshuju.entity.ItdmGongdanShuju;
|
|
|
import org.jeecg.modules.itdmgongdanshuju.mapper.ItdmGongdanDetail1Mapper;
|
|
|
+import org.jeecg.modules.itdmgongdanshuju.mapper.ItdmGongdanImageMapper;
|
|
|
import org.jeecg.modules.itdmgongdanshuju.mapper.ItdmGongdanShujuMapper;
|
|
|
-import org.jeecg.modules.itdmgongdanshuju.service.ItdmGongdanDetailService;
|
|
|
import org.jeecg.modules.itdmgongdanshuju.service.ItdmGongdanShujuService;
|
|
|
import org.springframework.beans.BeanUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
@@ -36,6 +38,7 @@ import java.util.stream.Collectors;
|
|
|
* @Version: V1.0
|
|
|
*/
|
|
|
@Service
|
|
|
+@SuppressWarnings("all")
|
|
|
public class ItdmGongdanShujuServiceImpl extends ServiceImpl<ItdmGongdanShujuMapper, ItdmGongdanShuju> implements ItdmGongdanShujuService {
|
|
|
|
|
|
@Autowired
|
|
@@ -46,16 +49,29 @@ public class ItdmGongdanShujuServiceImpl extends ServiceImpl<ItdmGongdanShujuMap
|
|
|
@Autowired
|
|
|
ItdmWenxiangMapper itdmWenxiangMapper;
|
|
|
|
|
|
+ @Autowired
|
|
|
+
|
|
|
+ private ItdmGongdanImageMapper gongdanImageMapper;
|
|
|
+
|
|
|
@Override
|
|
|
@Transactional
|
|
|
public Boolean generate(ItdmGongdanDto itdmGongdanDto) {
|
|
|
+ SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
|
|
|
+ List<ItdmGongdanShuju> detail = itdmGongdanShujuMapper.selectList(new QueryWrapper<ItdmGongdanShuju>()
|
|
|
+ .eq("wo_id", itdmGongdanDto.getWoId()).eq("shiyan_date_time", itdmGongdanDto.getRiqi()));
|
|
|
+
|
|
|
+ if (detail.size() > 0) {
|
|
|
+ throw new JeecgBootException("当前工单已有数据,不能重复生成数据");
|
|
|
+ }
|
|
|
+
|
|
|
try {
|
|
|
- List<ItdmGongdanDetail> itdmGongdanDetailList = itdmGongdanDetailMapper.selectList(new QueryWrapper<ItdmGongdanDetail>().eq("end_time", itdmGongdanDto.getShiyanJieshutime()).eq("start_time", itdmGongdanDto.getShiyanKaishitime()).eq("wo_id", itdmGongdanDto.getWoId()));
|
|
|
- ItdmGongdanDetail itdmGongdanDetail = itdmGongdanDetailList.get(0);
|
|
|
+ ItdmGongdanDetail itdmGongdanDetail = itdmGongdanDetailMapper.selectOne(Wrappers.lambdaQuery(ItdmGongdanDetail.class)
|
|
|
+ .eq(ItdmGongdanDetail::getWoId, itdmGongdanDto.getWoId()).eq(ItdmGongdanDetail::getShijiWorkDate, itdmGongdanDto.getRiqi()));
|
|
|
+
|
|
|
String startTime = itdmGongdanDto.getShiyanKaishitime();
|
|
|
String endTime = itdmGongdanDto.getShiyanJieshutime();
|
|
|
String shijiShebeiId = itdmGongdanDetail.getShijiShebeiId();
|
|
|
- String ShijiWorkDate = new SimpleDateFormat("yyyy-MM-dd").format(itdmGongdanDetail.getShijiWorkDate());
|
|
|
+ String ShijiWorkDate = itdmGongdanDto.getRiqi();
|
|
|
|
|
|
String startDateTime = ShijiWorkDate + " " + startTime + ":00";
|
|
|
String endDateTime = ShijiWorkDate + " " + startTime + ":00";
|
|
@@ -73,9 +89,10 @@ public class ItdmGongdanShujuServiceImpl extends ServiceImpl<ItdmGongdanShujuMap
|
|
|
ItdmGongdanShuju itdmGongdanShuju = new ItdmGongdanShuju();
|
|
|
itdmGongdanShuju.setShiyanType(itdmGongdanDto.getShiyanType());
|
|
|
itdmGongdanShuju.setPinci(itdmGongdanDto.getPinci());
|
|
|
+ itdmGongdanShuju.setShiyanDateTime(itdmGongdanDto.getRiqi());
|
|
|
+ itdmGongdanShuju.setWoId(itdmGongdanDto.getWoId());
|
|
|
+
|
|
|
|
|
|
- itdmGongdanDetail.setId(null);
|
|
|
- BeanUtils.copyProperties(itdmGongdanDetail, itdmGongdanShuju);
|
|
|
String shiyanTime = DateUtil.offsetMinute(date1, i * Integer.parseInt(itdmGongdanDto.getPinci())).toString().split(" ")[1];
|
|
|
shiyanTime = String.join(":", Arrays.asList(shiyanTime.split(":")).subList(0, 2));
|
|
|
|
|
@@ -83,11 +100,8 @@ public class ItdmGongdanShujuServiceImpl extends ServiceImpl<ItdmGongdanShujuMap
|
|
|
itdmGongdanShuju.setShiyanTime(shiyanTime);
|
|
|
|
|
|
if (b) {
|
|
|
- String[] endt = itdmGongdanShuju.getShiyanTime().split(",");
|
|
|
- endt[1] = "10";
|
|
|
- String nextDateTIme = String.join(":", endt);
|
|
|
ItdmWenxiang itdmWenxiang = itdmWenxiangMapper.selectOne(Wrappers.lambdaQuery(ItdmWenxiang.class).eq(ItdmWenxiang::getDeviceId, shijiShebeiId)
|
|
|
- .between(ItdmWenxiang::getCreateTime, ShijiWorkDate + " " + itdmGongdanShuju.getShiyanTime() + ":00", ShijiWorkDate + " " + nextDateTIme + ":00")
|
|
|
+ .between(ItdmWenxiang::getCreateTime, ShijiWorkDate + " " + itdmGongdanShuju.getShiyanTime() + ":00", ShijiWorkDate + " " + itdmGongdanShuju.getShiyanTime() + ":59")
|
|
|
.apply("limit 1"));
|
|
|
if (itdmWenxiang != null) {
|
|
|
itdmGongdanShuju.setShiyanWendu(itdmWenxiang.getTemperature().toEngineeringString());
|
|
@@ -105,7 +119,8 @@ public class ItdmGongdanShujuServiceImpl extends ServiceImpl<ItdmGongdanShujuMap
|
|
|
}
|
|
|
}
|
|
|
} catch (Exception e) {
|
|
|
- return false;
|
|
|
+ throw new JeecgBootException(e.getMessage(),e);
|
|
|
+
|
|
|
}
|
|
|
return true;
|
|
|
}
|
|
@@ -113,17 +128,49 @@ public class ItdmGongdanShujuServiceImpl extends ServiceImpl<ItdmGongdanShujuMap
|
|
|
|
|
|
@Override
|
|
|
public void upload(ItdmGongdanUploadDto upload) {
|
|
|
- ItdmGongdanShuju itdmGongdanShuju = itdmGongdanShujuMapper.selectOne(Wrappers.lambdaQuery(ItdmGongdanShuju.class)
|
|
|
- .eq(ItdmGongdanShuju::getWoId, upload.getWoId()).orderByAsc(ItdmGongdanShuju::getId)
|
|
|
- .apply("limit 1"));
|
|
|
- itdmGongdanShuju.setExtraPic(upload.getImages());
|
|
|
+
|
|
|
+ ItdmGongdanImage itdmGong = gongdanImageMapper.selectOne(Wrappers.lambdaQuery(ItdmGongdanImage.class).eq(ItdmGongdanImage::getWoId, upload.getWoId()));
|
|
|
|
|
|
|
|
|
- itdmGongdanShujuMapper.updateById(itdmGongdanShuju);
|
|
|
+ if (itdmGong == null) {
|
|
|
+ ItdmGongdanImage itdmGong1 = new ItdmGongdanImage();
|
|
|
+ itdmGong1.setWoId(upload.getWoId());
|
|
|
+ itdmGong1.setExtraPic(upload.getImages());
|
|
|
+ gongdanImageMapper.insert(itdmGong1);
|
|
|
+ }else{
|
|
|
+ itdmGong.setExtraPic(upload.getImages());
|
|
|
+ gongdanImageMapper.updateById(itdmGong);
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
+ @Override
|
|
|
+ public void editList(List<ItdmGongdanShuju> itdmGongdanShuju) {
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ for (ItdmGongdanShuju i : itdmGongdanShuju) {
|
|
|
+ if (StringUtils.isBlank(i.getId())) {
|
|
|
+ itdmGongdanShujuMapper.insert(i);
|
|
|
+ }else{
|
|
|
+ ItdmGongdanShuju selection = itdmGongdanShujuMapper.selectById(i.getId());
|
|
|
+ if (selection != null) {
|
|
|
+ selection.setShiyanWendu(i.getShiyanWendu());
|
|
|
+ selection.setShiyanShidu(i.getShiyanShidu());
|
|
|
+ itdmGongdanShujuMapper.updateById(selection);
|
|
|
+ }else{
|
|
|
+ itdmGongdanShujuMapper.deleteById(i.getId());
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
public static void main(String[] args) {
|
|
|
String shiyanTime = "10:20:30";
|
|
|
shiyanTime = String.join(":", Arrays.asList(shiyanTime.split(":")).subList(0, 2));
|