瀏覽代碼

Merge branch 'yushun'

32197351@qq.com 2 年之前
父節點
當前提交
f703e33418

+ 74 - 0
itdmServer/module-iTDM/src/main/java/org/jeecg/modules/gongdandetail/controller/ItdmGongdanQuerenController.java

@@ -0,0 +1,74 @@
+package org.jeecg.modules.gongdandetail.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.aspect.annotation.AutoLog;
+import org.jeecg.common.system.base.controller.JeecgController;
+import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.modules.gongdandetail.service.IItdmGongdanQuerenService;
+import org.jeecg.modules.itdmGongdanDetail.entity.ItdmGongdanDetail;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletRequest;
+import java.text.ParseException;
+
+/**
+ * @Description: 工单detail
+ * @Author: jeecg-boot
+ * @Date: 2023-05-21
+ * @Version: V1.0
+ */
+@Api(tags = "工单detail")
+@RestController
+@RequestMapping("/gongdandetail/itdmGongdanDetail")
+@Slf4j
+public class ItdmGongdanQuerenController extends JeecgController<ItdmGongdanDetail, IItdmGongdanQuerenService> {
+    @Autowired
+    private IItdmGongdanQuerenService itdmGongdanDetailService;
+
+    /**
+     * 分页列表查询
+     *
+     * @param itdmGongdanDetail
+     * @param pageNo
+     * @param pageSize
+     * @param req
+     * @return
+     */
+    //@AutoLog(value = "工单detail-分页列表查询")
+    @ApiOperation(value = "工单detail-分页列表查询", notes = "工单detail-分页列表查询")
+    @GetMapping(value = "/list")
+    public Result<IPage<ItdmGongdanDetail>> queryPageList(ItdmGongdanDetail itdmGongdanDetail,
+                                                          @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
+                                                          @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
+                                                          HttpServletRequest req) {
+        QueryWrapper<ItdmGongdanDetail> queryWrapper = QueryGenerator.initQueryWrapper(itdmGongdanDetail, req.getParameterMap());
+        Page<ItdmGongdanDetail> page = new Page<ItdmGongdanDetail>(pageNo, pageSize);
+        IPage<ItdmGongdanDetail> pageList = itdmGongdanDetailService.page(page, queryWrapper);
+        return Result.OK(pageList);
+    }
+
+
+    /**
+     * 编辑
+     *
+     * @param itdmGongdanDetail
+     * @return
+     */
+    @AutoLog(value = "工单detail-编辑")
+    @ApiOperation(value = "工单detail-编辑", notes = "工单detail-编辑")
+    //@RequiresPermissions("org.jeecg.modules:itdm_gongdan_detail:edit")
+    @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST})
+    public Result<String> edit(@RequestBody ItdmGongdanDetail itdmGongdanDetail) throws ParseException {
+        itdmGongdanDetailService.queren(itdmGongdanDetail);
+        return Result.OK("编辑成功!");
+    }
+
+
+}

+ 18 - 0
itdmServer/module-iTDM/src/main/java/org/jeecg/modules/gongdandetail/service/IItdmGongdanQuerenService.java

@@ -0,0 +1,18 @@
+package org.jeecg.modules.gongdandetail.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.jeecg.modules.itdmGongdanDetail.entity.ItdmGongdanDetail;
+
+import java.text.ParseException;
+
+/**
+ * @Description: 工单detail
+ * @Author: jeecg-boot
+ * @Date:   2023-05-21
+ * @Version: V1.0
+ */
+public interface IItdmGongdanQuerenService extends IService<ItdmGongdanDetail> {
+
+
+    void queren(ItdmGongdanDetail itdmGongdanDetail) throws ParseException;
+}

+ 88 - 0
itdmServer/module-iTDM/src/main/java/org/jeecg/modules/gongdandetail/service/impl/ItdmGongdanQuerenServiceImpl.java

@@ -0,0 +1,88 @@
+package org.jeecg.modules.gongdandetail.service.impl;
+
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+
+import org.jeecg.modules.gongdandetail.service.IItdmGongdanQuerenService;
+import org.jeecg.modules.itdmGongdanDetail.entity.ItdmGongdanDetail;
+import org.jeecg.modules.itdmGongdanDetail.mapper.ItdmGongdanDetailMapper;
+import org.jeecg.modules.itdmGongdanMaster.entity.ItdmGongdanMaster;
+import org.jeecg.modules.itdmGongdanMaster.mapper.ItdmGongdanMasterMapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Comparator;
+import java.util.Date;
+import java.util.List;
+import java.util.Objects;
+import java.util.stream.Collectors;
+
+/**
+ * @Description: 工单detail
+ * @Author: jeecg-boot
+ * @Date: 2023-05-21
+ * @Version: V1.0
+ */
+@Service
+public class ItdmGongdanQuerenServiceImpl extends ServiceImpl<ItdmGongdanDetailMapper, ItdmGongdanDetail> implements IItdmGongdanQuerenService {
+
+
+    @Autowired
+    private ItdmGongdanMasterMapper masterMapper;
+
+    @Override
+    public void queren(ItdmGongdanDetail itdmGongdanDetail) throws ParseException {
+
+        ItdmGongdanDetail data = this.baseMapper.selectById(itdmGongdanDetail.getId());
+
+
+        SimpleDateFormat simpleDate = new SimpleDateFormat("yyyy-MM-dd");
+        SimpleDateFormat simpleDate1 = new SimpleDateFormat("yyyy-MM-dd HH:mm");
+
+        this.baseMapper.updateById(itdmGongdanDetail);
+
+        List<ItdmGongdanDetail> list = baseMapper.
+                selectList(Wrappers.lambdaQuery(ItdmGongdanDetail.class)
+                        .eq(ItdmGongdanDetail::getWoId, data.getWoId()).eq(ItdmGongdanDetail::getStatus, 0));
+
+
+        if (list.size() <= 1) {
+            // todo
+            ItdmGongdanMaster master = new ItdmGongdanMaster();
+            master.setId(data.getWoId());
+            master.setShijiEndDate(getMax(list, simpleDate, simpleDate1));
+            master.setShijiStartDate(getMin(list, simpleDate, simpleDate1));
+            masterMapper.updateById(master);
+        }
+
+
+    }
+
+
+    private Date getMax(List<ItdmGongdanDetail> list, SimpleDateFormat simpleDate, SimpleDateFormat simpleDate1) {
+
+
+        return list.stream().map(i -> getDateFormat(i, simpleDate, simpleDate1)).max(Comparator.reverseOrder()).orElse(null);
+    }
+
+
+    private Date getMin(List<ItdmGongdanDetail> list, SimpleDateFormat simpleDate, SimpleDateFormat simpleDate1) {
+
+
+        return list.stream().map(i -> getDateFormat(i, simpleDate, simpleDate1)).min(Comparator.reverseOrder()).orElse(null);
+    }
+
+
+    private Date getDateFormat(ItdmGongdanDetail getDateFormat, SimpleDateFormat simpleDate, SimpleDateFormat simpleDate1) {
+
+
+        try {
+            return simpleDate1.parse(simpleDate.format(getDateFormat.getShijiWorkDate()) + " " + getDateFormat.getShijiEndTime());
+        } catch (ParseException e) {
+            throw new RuntimeException(e);
+        }
+    }
+}