Procházet zdrojové kódy

请假/加油 编号,pc加油管理列表/付款

zxz před 2 roky
rodič
revize
941b47b6fd
13 změnil soubory, kde provedl 461 přidání a 21 odebrání
  1. 5 0
      winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/constant/StatusEnum.java
  2. 23 1
      winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/controller/FuelFillingInfoController.java
  3. 35 3
      winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/entity/FuelFillingInfo.java
  4. 23 0
      winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/mapper/FuelFillingInfoMapper.java
  5. 9 0
      winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/mapper/LeaveInfoMapper.java
  6. 24 1
      winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/IFuelFillingInfoService.java
  7. 9 0
      winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/ILeaveInfoService.java
  8. 5 0
      winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/FillingDetailInfoServiceImpl.java
  9. 163 16
      winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/FuelFillingInfoServiceImpl.java
  10. 49 0
      winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/LeaveInfoServiceImpl.java
  11. 3 0
      winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/ShortFillingInfoServiceImpl.java
  12. 102 0
      winsea-haixin-plugin-yiliangyiyun/src/main/resources/mapper/FuelFillingInfoMapper.xml
  13. 11 0
      winsea-haixin-plugin-yiliangyiyun/src/main/resources/mapper/LeaveInfoMapper.xml

+ 5 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/constant/StatusEnum.java

@@ -164,6 +164,11 @@ public enum StatusEnum {
     TRACK_END("3", "已结束", "track_end"),
     TRACK_REIMBURSEMENT("5", "已报销", "track_reimbursement"),
 
+    //申请状态
+    APPLY_ING("1", "已申请", "apply_ing"),
+    APPLY_FAIL("3", "已驳回", "apply_fail"),
+    APPLY_SUCCESS("5", "已通过", "apply_success"),
+
 
     ;
     @Getter

+ 23 - 1
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/controller/FuelFillingInfoController.java

@@ -2,6 +2,7 @@ package com.yh.saas.plugin.yiliangyiyun.controller;
 
 
 import com.baomidou.mybatisplus.plugins.Page;
+import com.yh.saas.plugin.yiliangyiyun.entity.CollectionWarehousingRecord;
 import com.yh.saas.plugin.yiliangyiyun.entity.FuelFillingInfo;
 import com.yh.saas.plugin.yiliangyiyun.service.IFuelFillingInfoService;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -31,7 +32,7 @@ public class FuelFillingInfoController {
         return fuelFillingInfoService.addFilling(fuelFillingInfo);
     }
     /**
-     * 记录长途查询
+     * 长途加油列表
      *
      * @param fuelFillingInfo
      * @return
@@ -50,5 +51,26 @@ public class FuelFillingInfoController {
     public FuelFillingInfo getFilling(@RequestParam String id) {
         return fuelFillingInfoService.getFilling(id);
     }
+
+    /**
+     * 加油管理列表(PC)
+     *
+     * @param fuelFillingInfo
+     * @return
+     */
+    @GetMapping("/selectFillingPc")
+    public Page<FuelFillingInfo> selectFillingPc(FuelFillingInfo fuelFillingInfo) {
+        return fuelFillingInfoService.selectFillingPc(fuelFillingInfo);
+    }
+
+    /**
+     * 加油管理付款
+     * @param fuelFillingInfo1
+     * @return
+     */
+    @PostMapping("/api/fillingPayMoney")
+    public String fillingPayMoney(@RequestBody FuelFillingInfo fuelFillingInfo1){
+        return fuelFillingInfoService.fillingPayMoney(fuelFillingInfo1);
+    }
 }
 

+ 35 - 3
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/entity/FuelFillingInfo.java

@@ -9,10 +9,12 @@ import com.baomidou.mybatisplus.annotations.TableField;
 import com.baomidou.mybatisplus.annotations.TableId;
 import com.baomidou.mybatisplus.annotations.TableName;
 import com.baomidou.mybatisplus.enums.IdType;
+import com.fasterxml.jackson.annotation.JsonFormat;
 import com.yh.saas.common.support.entity.BaseModel;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
+import org.springframework.format.annotation.DateTimeFormat;
 
 /**
  * <p>
@@ -155,6 +157,14 @@ public class FuelFillingInfo extends BaseModel<FuelFillingInfo> {
      * 行程状态标识
      */
     private String travelStatusFlag;
+    /**
+     * 申请状态(1已申请3已驳回5已通过)
+     */
+    private String status;
+    /**
+     * 申请状态标识
+     */
+    private String statusFlag;
     /**
      * 审核状态
      */
@@ -183,9 +193,31 @@ public class FuelFillingInfo extends BaseModel<FuelFillingInfo> {
      * 加油信息列表
      */
     @TableField(exist = false)
-    private List<FuelFillingInfo> fillingFillingInfoList;
-
-
+    private List<FuelFillingInfo> fuelFillingInfoList;
+    /**
+     * 短途行程列表
+     */
+    @TableField(exist = false)
+    private List<ShortFillingInfo> shortFillingInfoList;
+    /**
+     * 开始时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    @TableField(exist = false)
+    private Date startDate;
+    /**
+     * 结束时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    @TableField(exist = false)
+    private Date endDate;
+    /**
+     * 模糊查询
+     */
+    @TableField(exist = false)
+    private String searchKeyWord;
     @Override
     protected Serializable pkVal() {
         return this.id;

+ 23 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/mapper/FuelFillingInfoMapper.java

@@ -2,6 +2,7 @@ package com.yh.saas.plugin.yiliangyiyun.mapper;
 
 import com.yh.saas.plugin.yiliangyiyun.entity.FuelFillingInfo;
 import com.baomidou.mybatisplus.mapper.BaseMapper;
+import com.yh.saas.plugin.yiliangyiyun.entity.LeaveInfo;
 
 import java.util.List;
 import java.util.Map;
@@ -30,4 +31,26 @@ public interface FuelFillingInfoMapper extends BaseMapper<FuelFillingInfo> {
      * @return
      */
     List<FuelFillingInfo> getListByCondition(Map<String, Object> pageView);
+    /**
+     * 根据条件查询加油管理列表总数
+     *
+     * @param pageView
+     * @return
+     */
+    Integer getCountByConditionPc(Map<String, Object> pageView);
+
+    /**
+     * 根据条件查询加油管理列表(PC)
+     *
+     * @param pageView
+     * @return
+     */
+    List<FuelFillingInfo> getListByConditionPc(Map<String, Object> pageView);
+    /**
+     * 根据条件查询加油编号列表
+     *
+     * @param pageView
+     * @return
+     */
+    List<FuelFillingInfo> getListByConditionFilling(Map<String, Object> pageView);
 }

+ 9 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/mapper/LeaveInfoMapper.java

@@ -3,6 +3,7 @@ package com.yh.saas.plugin.yiliangyiyun.mapper;
 import com.yh.saas.plugin.yiliangyiyun.entity.ClockInfo;
 import com.yh.saas.plugin.yiliangyiyun.entity.LeaveInfo;
 import com.baomidou.mybatisplus.mapper.BaseMapper;
+import com.yh.saas.plugin.yiliangyiyun.entity.QualityInspectionManagement;
 
 import java.util.List;
 import java.util.Map;
@@ -46,4 +47,12 @@ public interface LeaveInfoMapper extends BaseMapper<LeaveInfo> {
      * @return
      */
     List<LeaveInfo> getListByConditionPc(Map<String, Object> pageView);
+
+    /**
+     * 根据条件查询请假编号列表
+     *
+     * @param pageView
+     * @return
+     */
+    List<LeaveInfo> getListByConditionLeave(Map<String, Object> pageView);
 }

+ 24 - 1
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/IFuelFillingInfoService.java

@@ -1,8 +1,12 @@
 package com.yh.saas.plugin.yiliangyiyun.service;
 
 import com.baomidou.mybatisplus.plugins.Page;
+import com.yh.saas.plugin.yiliangyiyun.entity.CollectionWarehousingRecord;
 import com.yh.saas.plugin.yiliangyiyun.entity.FuelFillingInfo;
 import com.baomidou.mybatisplus.service.IService;
+import com.yh.saas.plugin.yiliangyiyun.entity.LeaveInfo;
+
+import java.util.List;
 
 /**
  * <p>
@@ -20,7 +24,7 @@ public interface IFuelFillingInfoService extends IService<FuelFillingInfo> {
      */
     String addFilling(FuelFillingInfo fuelFillingInfo);
     /**
-     * 长途加油信息查询
+     * 长途加油信息列表
      *
      * @param fuelFillingInfo
      * @return
@@ -31,4 +35,23 @@ public interface IFuelFillingInfoService extends IService<FuelFillingInfo> {
      * @param id
      */
     FuelFillingInfo getFilling(String id);
+    /**
+     * 加油管理列表(PC)
+     *
+     * @param fuelFillingInfo
+     * @return
+     */
+    Page<FuelFillingInfo> selectFillingPc(FuelFillingInfo fuelFillingInfo);
+
+    /**
+     * 加油管理-付款
+     * @param fuelFillingInfo1
+     */
+    String fillingPayMoney(FuelFillingInfo fuelFillingInfo1);
+    /**
+     * 查询加油编号
+     * @param
+     * @return
+     */
+    List<FuelFillingInfo> selectFillingNoList(FuelFillingInfo fuelFillingInfo);
 }

+ 9 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/ILeaveInfoService.java

@@ -4,6 +4,9 @@ import com.baomidou.mybatisplus.plugins.Page;
 import com.yh.saas.plugin.yiliangyiyun.entity.ClockInfo;
 import com.yh.saas.plugin.yiliangyiyun.entity.LeaveInfo;
 import com.baomidou.mybatisplus.service.IService;
+import com.yh.saas.plugin.yiliangyiyun.entity.QualityInspectionManagement;
+
+import java.util.List;
 
 /**
  * <p>
@@ -39,4 +42,10 @@ public interface ILeaveInfoService extends IService<LeaveInfo> {
      * @param id
      */
     LeaveInfo getLeaveInfo(String id);
+    /**
+     * 查询请假编号
+     * @param
+     * @return
+     */
+    List<LeaveInfo> selectLeaveNoList(LeaveInfo leaveInfo);
 }

+ 5 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/FillingDetailInfoServiceImpl.java

@@ -2,6 +2,7 @@ package com.yh.saas.plugin.yiliangyiyun.service.impl;
 
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.yh.saas.common.support.util.IdGenerator;
+import com.yh.saas.plugin.yiliangyiyun.constant.StatusEnum;
 import com.yh.saas.plugin.yiliangyiyun.entity.FillingDetailInfo;
 import com.yh.saas.plugin.yiliangyiyun.entity.FuelFillingInfo;
 import com.yh.saas.plugin.yiliangyiyun.entity.TranProcessInfo;
@@ -9,6 +10,7 @@ import com.yh.saas.plugin.yiliangyiyun.mapper.FillingDetailInfoMapper;
 import com.yh.saas.plugin.yiliangyiyun.service.IFillingDetailInfoService;
 import com.baomidou.mybatisplus.service.impl.ServiceImpl;
 import com.yh.saas.plugin.yiliangyiyun.service.IFuelFillingInfoService;
+import jdk.net.SocketFlow;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -53,6 +55,9 @@ public class FillingDetailInfoServiceImpl extends ServiceImpl<FillingDetailInfoM
         if(fuelFillingInfo != null){
             fuelFillingInfo.setTfc(fillingDetailInfo.getTfc());
             fuelFillingInfo.setTotalCost(fillingDetailInfo.getTotalCost());
+            //状态改为已申请
+            fuelFillingInfo.setStatusFlag(StatusEnum.APPLY_ING.getFlag());
+            fuelFillingInfo.setStatus(StatusEnum.APPLY_ING.getName());
             //更新主表数据
             fuelFillingInfoService.updateById(fuelFillingInfo);
         }

+ 163 - 16
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/FuelFillingInfoServiceImpl.java

@@ -3,19 +3,25 @@ package com.yh.saas.plugin.yiliangyiyun.service.impl;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.baomidou.mybatisplus.plugins.Page;
 import com.google.common.collect.Lists;
+import com.winsea.svc.base.workflow.entity.Workflow;
 import com.yh.saas.common.support.util.IdGenerator;
-import com.yh.saas.common.support.util.StringUtils;
 import com.yh.saas.plugin.yiliangyiyun.constant.StatusEnum;
-import com.yh.saas.plugin.yiliangyiyun.entity.FuelFillingInfo;
-import com.yh.saas.plugin.yiliangyiyun.entity.LeaveInfo;
-import com.yh.saas.plugin.yiliangyiyun.entity.StockPurchaseReceiptReport;
-import com.yh.saas.plugin.yiliangyiyun.entity.TrackDetailInfo;
+import com.yh.saas.plugin.yiliangyiyun.entity.*;
+import com.yh.saas.plugin.yiliangyiyun.exception.YException;
+import com.yh.saas.plugin.yiliangyiyun.exception.YExceptionEnum;
 import com.yh.saas.plugin.yiliangyiyun.mapper.FuelFillingInfoMapper;
+import com.yh.saas.plugin.yiliangyiyun.service.IFillingDetailInfoService;
 import com.yh.saas.plugin.yiliangyiyun.service.IFuelFillingInfoService;
 import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import com.yh.saas.plugin.yiliangyiyun.service.INewWorkflowService;
+import com.yh.saas.plugin.yiliangyiyun.service.IShortFillingInfoService;
+import org.apache.commons.collections.CollectionUtils;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.text.SimpleDateFormat;
+import java.util.Date;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -33,30 +39,66 @@ public class FuelFillingInfoServiceImpl extends ServiceImpl<FuelFillingInfoMappe
 
     @Autowired
     private IFuelFillingInfoService fuelFillingInfoService;
+    @Autowired
+    private IFillingDetailInfoService fillingDetailInfoService;
+    @Autowired
+    private IShortFillingInfoService shortFillingInfoService;
+    @Autowired
+    private INewWorkflowService workflowService;
+
     /**
      * 添加长途加油信息
+     *
      * @param fuelFillingInfo
      * @return
      */
     @Override
     public String addFilling(FuelFillingInfo fuelFillingInfo) {
-        String id="";
+        String id = "";
         //判断开始/结束轨迹(0开始1结束)
-        if("0".equals(fuelFillingInfo.getTrackFlag())){
+        if ("0".equals(fuelFillingInfo.getTrackFlag())) {
             //新增主键id
             fuelFillingInfo.setId(IdGenerator.generateUUID());
             //行程状态改为已开始
             fuelFillingInfo.setTravelStatus(StatusEnum.TRACK_START.getName());
             fuelFillingInfo.setTravelStatusFlag(StatusEnum.TRACK_START.getFlag());
+
+            //获取当前年月日
+            SimpleDateFormat f = new SimpleDateFormat("yyyyMMdd");//设置日期格式
+            String date = f.format(new Date(System.currentTimeMillis()));
+            //查询信息数量包括已删除的集合
+            List<FuelFillingInfo> fuelFillingInfoList = this.selectFillingNoList(fuelFillingInfo);//调用Service中的方法
+            //生成请假编号
+            if (fuelFillingInfoList.size() > 0) {
+                //取第一条数据的编号
+                String n = fuelFillingInfoList.get(0).getFillingNo();
+                //截取编号后4位
+                int intNumber = Integer.parseInt(n.substring(13));
+                intNumber++;
+                String Number = String.valueOf(intNumber);
+                for (int i = 0; i < 4; i++) {
+                    Number = Number.length() < 4 ? "0" + Number : Number;
+                }
+                //编号自增
+                Number = "JY" + date + Number;
+                fuelFillingInfo.setFillingNo(Number);
+            } else {
+                //如果当天数据为空,生成第一条数据
+                String Number = "JY" + date + "0001";
+                fuelFillingInfo.setFillingNo(Number);
+            }
+            if (fuelFillingInfo.getFillingNo().contains("null")) {
+                throw new YException(YExceptionEnum.QUALITY_HAVE_ERROR);
+            }
+
             this.insert(fuelFillingInfo);
-            id=fuelFillingInfo.getId();
-        }
-        else{
+            id = fuelFillingInfo.getId();
+        } else {
             FuelFillingInfo fuelFillingInfo1 = fuelFillingInfoService.selectOne(new EntityWrapper<FuelFillingInfo>()
-                        .eq("comp_id",fuelFillingInfo.getCompId())
-                        .eq("common_id",fuelFillingInfo.getCommonId())
-                        .eq("car_no",fuelFillingInfo.getCarNo()));
-            if(fuelFillingInfo1 != null){
+                    .eq("comp_id", fuelFillingInfo.getCompId())
+                    .eq("common_id", fuelFillingInfo.getCommonId())
+                    .eq("car_no", fuelFillingInfo.getCarNo()));
+            if (fuelFillingInfo1 != null) {
                 //行程状态改为已结束
                 fuelFillingInfo1.setTravelStatusFlag(StatusEnum.TRACK_END.getFlag());
                 fuelFillingInfo1.setTravelStatus(StatusEnum.TRACK_END.getName());
@@ -66,7 +108,7 @@ public class FuelFillingInfoServiceImpl extends ServiceImpl<FuelFillingInfoMappe
                 fuelFillingInfo1.setDestinationLongitude(fuelFillingInfo.getDestinationLongitude());
                 fuelFillingInfo1.setDestinationLatitude(fuelFillingInfo.getDestinationLatitude());
                 this.updateById(fuelFillingInfo1);
-                id=fuelFillingInfo1.getId();
+                id = fuelFillingInfo1.getId();
             }
         }
         return id;
@@ -74,6 +116,7 @@ public class FuelFillingInfoServiceImpl extends ServiceImpl<FuelFillingInfoMappe
 
     /**
      * 长途加油记录查询
+     *
      * @param fuelFillingInfo
      * @return
      */
@@ -85,7 +128,7 @@ public class FuelFillingInfoServiceImpl extends ServiceImpl<FuelFillingInfoMappe
         //  公司ID
         pageView.put("compId", fuelFillingInfo.getCompId());
         pageView.put("commonId", fuelFillingInfo.getCommonId());
-        pageView.put("searchType",fuelFillingInfo.getSearchType());
+        pageView.put("searchType", fuelFillingInfo.getSearchType());
         pageView.put("pageSize", fuelFillingInfo.getPageSize());
         pageView.put("currentPage", fuelFillingInfo.getCurrentPage());
         // 查询总数
@@ -101,6 +144,7 @@ public class FuelFillingInfoServiceImpl extends ServiceImpl<FuelFillingInfoMappe
 
     /**
      * 查看长途加油信息
+     *
      * @param id
      * @return
      */
@@ -111,4 +155,107 @@ public class FuelFillingInfoServiceImpl extends ServiceImpl<FuelFillingInfoMappe
         return fuelFillingInfo;
     }
 
+    /**
+     * 加油管理列表(PC)
+     *
+     * @param fuelFillingInfo
+     * @return
+     */
+    @Override
+    public Page<FuelFillingInfo> selectFillingPc(FuelFillingInfo fuelFillingInfo) {
+        Map<String, Object> pageView = new HashMap<>();
+        pageView.put("startRecord", (fuelFillingInfo.getCurrentPage() - 1)
+                * fuelFillingInfo.getPageSize());
+        //  公司ID
+        pageView.put("compId", fuelFillingInfo.getCompId());
+        pageView.put("pageSize", fuelFillingInfo.getPageSize());
+        pageView.put("currentPage", fuelFillingInfo.getCurrentPage());
+        pageView.put("searchKeyWord", fuelFillingInfo.getSearchKeyWord());
+        pageView.put("startDate", fuelFillingInfo.getStartDate());
+        pageView.put("endDate", fuelFillingInfo.getEndDate());
+        // 查询总数
+        Integer dataCount = baseMapper.getCountByConditionPc(pageView);
+        List<FuelFillingInfo> dataList = baseMapper.getListByConditionPc(pageView);
+        if (!CollectionUtils.isEmpty(dataList)) {
+            for (FuelFillingInfo fuelFillingInfo1 : dataList) {
+                //加油明细列表
+                List<FillingDetailInfo> fillingDetailInfoList = fillingDetailInfoService.selectList(new EntityWrapper<FillingDetailInfo>()
+                        .eq("filling_id", fuelFillingInfo1.getId())
+                        .eq("delete_flag", "0"));
+                if (CollectionUtils.isNotEmpty(fillingDetailInfoList)) {
+                    fuelFillingInfo1.setFillingDetailInfoList(fillingDetailInfoList);
+                }
+                //短途行程列表
+                List<ShortFillingInfo> shortFillingInfoList = shortFillingInfoService.selectList(new EntityWrapper<ShortFillingInfo>()
+                        .eq("filling_id", fuelFillingInfo1.getId())
+                        .eq("delete_flag", "0"));
+                if (CollectionUtils.isNotEmpty(shortFillingInfoList)) {
+                    fuelFillingInfo1.setShortFillingInfoList(shortFillingInfoList);
+                }
+            }
+        }
+        Page<FuelFillingInfo> page = new Page<>();
+        page.setRecords(dataList == null ? Lists.newArrayList() : dataList);
+        page.setTotal(dataCount == null ? 0 : dataCount);
+        page.setCurrent(fuelFillingInfo.getCurrentPage());
+        page.setSize(fuelFillingInfo.getPageSize());
+        return page;
+    }
+
+    /**
+     * 加油管理-付款
+     *
+     * @param fuelFillingInfo1
+     * @return
+     */
+    @Override
+    public String fillingPayMoney(FuelFillingInfo fuelFillingInfo1) {
+        FuelFillingInfo fuelFillingInfo = fuelFillingInfoService.selectById(fuelFillingInfo1.getId());
+        if (fuelFillingInfo != null) {
+            //状态改为已报销
+            fuelFillingInfo.setTravelStatus(StatusEnum.TRACK_REIMBURSEMENT.getName());
+            fuelFillingInfo.setTravelStatusFlag(StatusEnum.TRACK_REIMBURSEMENT.getFlag());
+            //更新数据
+            fuelFillingInfoService.updateById(fuelFillingInfo);
+//            boolean isStartWorkflow = StringUtils.isBlank(fuelFillingInfo.getWorkflowId());
+//            // 不是退回的单子
+//            if (isStartWorkflow) {
+//                Workflow workflow = workflowService
+//                        .findLatestWorkflowByBusinessCodeByApp(fuelFillingInfo.getCompId(), "FILLINGFUKUAN-APPROVE");
+//                // 没配置审核流程,直接结束并处理信息
+//                if (workflow == null) {
+//                    throw new YException(YExceptionEnum.PURCHASE_ORDER_ERROR);
+//                }
+//                // 开启审核流
+//                else {
+//                    // 设置状态 已提交审核
+//                    fuelFillingInfo.setWorkflowId(workflow.getId());
+//                    fuelFillingInfoService.updateById(fuelFillingInfo);
+//                    workflowService.startInstance(workflow.getId(), fuelFillingInfo.getId());
+//                }
+//            }
+//            // 退回的单子 再启用
+//            else {
+//                fuelFillingInfoService.updateById(fuelFillingInfo);
+//                workflowService.activateInstance(fuelFillingInfo.getWorkflowId(), fuelFillingInfo.getId());
+//            }
+        }
+        return "OK";
+    }
+    /**
+     * 查询加油编号
+     *
+     * @param
+     * @return
+     */
+    @Override
+    public List<FuelFillingInfo> selectFillingNoList(FuelFillingInfo fuelFillingInfo) {
+        SimpleDateFormat f = new SimpleDateFormat("yyyyMMdd");//设置日期格式
+        String date = f.format(new Date(System.currentTimeMillis()));
+        Map<String, Object> pageView = new HashMap<>(7);
+        pageView.put("date", date);
+        pageView.put("compId", fuelFillingInfo.getCompId());
+        List<FuelFillingInfo> dataList = baseMapper.getListByConditionFilling(pageView);
+        return dataList;
+    }
 }

+ 49 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/LeaveInfoServiceImpl.java

@@ -8,6 +8,7 @@ import com.winsea.svc.base.workflow.entity.Workflow;
 import com.yh.saas.common.support.util.IdGenerator;
 import com.yh.saas.plugin.yiliangyiyun.entity.ClockInfo;
 import com.yh.saas.plugin.yiliangyiyun.entity.LeaveInfo;
+import com.yh.saas.plugin.yiliangyiyun.entity.QualityInspectionManagement;
 import com.yh.saas.plugin.yiliangyiyun.exception.YException;
 import com.yh.saas.plugin.yiliangyiyun.exception.YExceptionEnum;
 import com.yh.saas.plugin.yiliangyiyun.mapper.LeaveInfoMapper;
@@ -60,6 +61,35 @@ public class LeaveInfoServiceImpl extends ServiceImpl<LeaveInfoMapper, LeaveInfo
         //新增主键id
         leaveInfo.setId(IdGenerator.generateUUID());
         leaveInfo.setClockId(ClockId);
+
+        //获取当前年月日
+        SimpleDateFormat f = new SimpleDateFormat("yyyyMMdd");//设置日期格式
+        String date = f.format(new Date(System.currentTimeMillis()));
+        //查询信息数量包括已删除的集合
+        List<LeaveInfo> leaveInfoList = this.selectLeaveNoList(leaveInfo);//调用Service中的方法
+        //生成请假编号
+        if (leaveInfoList.size() > 0) {
+            //取第一条数据的编号
+            String n = leaveInfoList.get(0).getLeaveNo();
+            //截取编号后4位
+            int intNumber = Integer.parseInt(n.substring(13));
+            intNumber++;
+            String Number = String.valueOf(intNumber);
+            for (int i = 0; i < 4; i++) {
+                Number = Number.length() < 4 ? "0" + Number : Number;
+            }
+            //编号自增
+            Number = "QJ" + date + Number;
+            leaveInfo.setLeaveNo(Number);
+        } else {
+            //如果当天数据为空,生成第一条数据
+            String Number = "QJ" + date + "0001";
+            leaveInfo.setLeaveNo(Number);
+        }
+        if (leaveInfo.getLeaveNo().contains("null")) {
+            throw new YException(YExceptionEnum.QUALITY_HAVE_ERROR);
+        }
+
         this.insert(leaveInfo);
         boolean isStartWorkflow = StringUtils.isBlank(leaveInfo.getWorkflowId());
         // 不是退回的单子
@@ -166,8 +196,10 @@ public class LeaveInfoServiceImpl extends ServiceImpl<LeaveInfoMapper, LeaveInfo
         page.setSize(leaveInfo.getPageSize());
         return page;
     }
+
     /**
      * 查看请假信息
+     *
      * @param id
      * @return
      */
@@ -184,4 +216,21 @@ public class LeaveInfoServiceImpl extends ServiceImpl<LeaveInfoMapper, LeaveInfo
         }
         return leaveInfo;
     }
+
+    /**
+     * 查询请假编号
+     *
+     * @param
+     * @return
+     */
+    @Override
+    public List<LeaveInfo> selectLeaveNoList(LeaveInfo leaveInfo) {
+        SimpleDateFormat f = new SimpleDateFormat("yyyyMMdd");//设置日期格式
+        String date = f.format(new Date(System.currentTimeMillis()));
+        Map<String, Object> pageView = new HashMap<>(7);
+        pageView.put("date", date);
+        pageView.put("compId", leaveInfo.getCompId());
+        List<LeaveInfo> dataList = baseMapper.getListByConditionLeave(pageView);
+        return dataList;
+    }
 }

+ 3 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/ShortFillingInfoServiceImpl.java

@@ -147,6 +147,9 @@ public class ShortFillingInfoServiceImpl extends ServiceImpl<ShortFillingInfoMap
         }
         fuelFillingInfo.setCompId(shortFillingInfoList.get(0).getCompId());
         fuelFillingInfo.setStrokeType("3");
+        //状态改为已申请
+        fuelFillingInfo.setStatus(StatusEnum.APPLY_ING.getName());
+        fuelFillingInfo.setStatusFlag(StatusEnum.APPLY_ING.getFlag());
         fuelFillingInfo.setWarehouseName(shortFillingInfo.getWarehouseName());
         fuelFillingInfoService.insert(fuelFillingInfo);
         return "OK";

+ 102 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/resources/mapper/FuelFillingInfoMapper.xml

@@ -79,4 +79,106 @@
             LIMIT ${startRecord}, ${pageSize}
         </if>
     </select>
+
+    <!-- 获得加油管理列表总数 -->
+    <select id="getCountByConditionPc" parameterType="Map" resultType="java.lang.Integer">
+        SELECT
+        COUNT(ff.id)
+        FROM fuel_filling_info ff
+        left join filling_detail_info fd on ff.id = fd.filling_id and fd.delete_flag = '0'
+        left join track_detail_info td on ff.id = td.filling_id and td.delete_flag = '0'
+        left join short_filling_info sf on ff.id = sf.filling_id and sf.delete_flag = '0'
+        WHERE
+        ff.comp_id = #{compId}
+        and ff.delete_flag = '0'
+        <if test="startDate != null">
+            AND (DATE_FORMAT(ff.create_date,"%Y%m%d") &gt;=
+            DATE_FORMAT(#{startDate},"%Y%m%d"))
+        </if>
+        <if test="endDate != null">
+            AND (DATE_FORMAT(ff.create_date,"%Y%m%d") &lt;=
+            DATE_FORMAT(#{endDate},"%Y%m%d"))
+        </if>
+        <if test="searchKeyWord != null and searchKeyWord != ''">
+            AND (lower(ff.driver_name) like lower(CONCAT('%',#{searchKeyWord},'%'))
+            OR (lower(ff.car_no) like lower(CONCAT('%',#{searchKeyWord},'%'))
+            OR (lower(ff.warehouse_name) like lower(CONCAT('%',#{searchKeyWord},'%')))
+        </if>
+        <if test="strokeType != null and strokeType != ''">
+            AND ff.stroke_type = #{strokeType}
+        </if>
+--         GROUP BY ff.id
+    </select>
+    <!-- 加油管理列表查询 -->
+    <select id="getListByConditionPc" parameterType="Map"
+            resultType="com.yh.saas.plugin.yiliangyiyun.entity.FuelFillingInfo">
+        SELECT
+        ff.id,
+        ff.comp_id as compId,
+        ff.common_id as commonId,
+        ff.driver_name as driverName,
+        ff.car_no as carNo,
+        ff.filling_no as fillingNo,
+        ff.amount_requested as amountRequested,
+        ff.warehouse_name as warehouseName,
+        ff.total_mileage as totalMileage,
+        ff.origin_province as originProvince,
+        ff.origin_city as originCity,
+        ff.approve_status as approveStatus,
+        ff.create_date as createDate,
+        ff.origin_area as originArea,
+        ff.origin_longitude as originLongitude,
+        ff.origin_latitude as originLatitude,
+        ff.destination_province as destinationProvince,
+        ff.destination_city as destinationCity,
+        ff.destination_area as destinationArea,
+        ff.destination_longitude as destinationLongitude,
+        ff.destination_latitude as destinationLatitude,
+        ff.total_cost as totalCost,
+        ff.tfc,
+        ff.travel_status as travelStatus,
+        ff.travel_status_flag as travelStatusFlag,
+        fd.oil_consumption as oilConsumption,
+        fd.current_oil_price as currentOilPrice,
+        fd.current_consumption as currentConsumption,
+        fd.address_url as addressUrl
+        FROM fuel_filling_info ff
+        left join filling_detail_info fd on ff.id = fd.filling_id and fd.delete_flag = '0'
+        left join track_detail_info td on ff.id = td.filling_id and td.delete_flag = '0'
+        left join short_filling_info sf on ff.id = sf.filling_id and sf.delete_flag = '0'
+        WHERE
+        ff.comp_id = #{compId}
+        and ff.delete_flag = '0'
+        <if test="startDate != null">
+            AND (DATE_FORMAT(ff.create_date,"%Y%m%d") &gt;=
+            DATE_FORMAT(#{startDate},"%Y%m%d"))
+        </if>
+        <if test="endDate != null">
+            AND (DATE_FORMAT(ff.create_date,"%Y%m%d") &lt;=
+            DATE_FORMAT(#{endDate},"%Y%m%d"))
+        </if>
+        <if test="searchKeyWord != null and searchKeyWord != ''">
+            AND (lower(ff.driver_name) like lower(CONCAT('%',#{searchKeyWord},'%'))
+            OR (lower(ff.car_no) like lower(CONCAT('%',#{searchKeyWord},'%'))
+            OR (lower(ff.warehouse_name) like lower(CONCAT('%',#{searchKeyWord},'%')))
+        </if>
+        <if test="strokeType != null and strokeType != ''">
+            AND ff.stroke_type = #{strokeType}
+        </if>
+        GROUP BY ff.id
+        ORDER BY ff.create_date DESC
+        <if test="currentPage != null and currentPage != ''">
+            LIMIT ${startRecord}, ${pageSize}
+        </if>
+    </select>
+    <!-- 获得加油编号列表 -->
+    <select id="getListByConditionFilling" parameterType="Map"
+            resultType="com.yh.saas.plugin.yiliangyiyun.entity.FuelFillingInfo">
+        SELECT filling_no from fuel_filling_info
+        WHERE comp_id = #{compId}
+        <if test="date != null and date != ''">
+            AND (lower(filling_no) like lower(CONCAT('JY',#{date},'%')))
+        </if>
+        ORDER BY filling_no DESC
+    </select>
 </mapper>

+ 11 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/resources/mapper/LeaveInfoMapper.xml

@@ -106,4 +106,15 @@
             LIMIT ${startRecord}, ${pageSize}
         </if>
     </select>
+
+    <!-- 获得请假编号列表 -->
+    <select id="getListByConditionLeave" parameterType="Map"
+            resultType="com.yh.saas.plugin.yiliangyiyun.entity.LeaveInfo">
+        SELECT leave_no from leave_info
+        WHERE comp_id = #{compId}
+            <if test="date != null and date != ''">
+                AND (lower(leave_no) like lower(CONCAT('QJ',#{date},'%')))
+            </if>
+        ORDER BY leave_no DESC
+    </select>
 </mapper>