Prechádzať zdrojové kódy

Merge remote-tracking branch 'origin/master' into master

laoyao 3 rokov pred
rodič
commit
76d9af3e54
11 zmenil súbory, kde vykonal 114 pridanie a 42 odobranie
  1. 63 0
      imcs-admin-boot/imcs-business-biz/src/main/java/com/github/zuihou/business/classSchedule/service/impl/ScheduleFrequencyServiceImpl.java
  2. 2 1
      imcs-admin-boot/imcs-business-biz/src/main/resources/mapper_business/base/productionResourceCenter/ZZoneMapper.xml
  3. 6 4
      imcs-admin-boot/imcs-business-controller/src/main/java/com/github/zuihou/business/controller/classSchedule/ScheduleUserChangeController.java
  4. 1 1
      imcs-admin-boot/imcs-business-controller/src/main/java/com/github/zuihou/business/controller/productionResourceCenter/RepairController.java
  5. 15 0
      imcs-admin-boot/imcs-business-controller/src/main/java/com/github/zuihou/business/controller/productionResourceCenter/ZZoneController.java
  6. 1 1
      imcs-admin-boot/imcs-business-entity/src/main/java/com/github/zuihou/business/classSchedule/dto/ScheduleUserChangePageDTO.java
  7. 1 18
      imcs-admin-boot/imcs-business-entity/src/main/java/com/github/zuihou/business/classSchedule/entity/ScheduleUserChange.java
  8. 3 0
      imcs-admin-boot/imcs-business-entity/src/main/java/com/github/zuihou/business/productionResourceCenter/dto/ZZonePageDTO.java
  9. 4 0
      imcs-admin-boot/imcs-business-entity/src/main/java/com/github/zuihou/business/productionResourceCenter/dto/ZZoneSaveDTO.java
  10. 3 0
      imcs-admin-boot/imcs-business-entity/src/main/java/com/github/zuihou/business/productionResourceCenter/dto/ZZoneUpdateDTO.java
  11. 15 17
      imcs-admin-boot/imcs-business-entity/src/main/java/com/github/zuihou/business/productionResourceCenter/entity/ZZone.java

+ 63 - 0
imcs-admin-boot/imcs-business-biz/src/main/java/com/github/zuihou/business/classSchedule/service/impl/ScheduleFrequencyServiceImpl.java

@@ -14,18 +14,22 @@ import com.github.zuihou.base.service.SuperServiceImpl;
 
 import com.github.zuihou.common.constant.CodeRuleModule;
 import com.github.zuihou.common.constant.DictionaryType;
+import com.github.zuihou.common.util.DateUtil;
 import com.github.zuihou.database.mybatis.conditions.Wraps;
 import com.github.zuihou.database.mybatis.conditions.query.LbqWrapper;
 import com.github.zuihou.injection.annonation.InjectionResult;
 import com.github.zuihou.model.RemoteData;
 import com.github.zuihou.tenant.service.CodeRuleService;
 import com.github.zuihou.utils.BeanPlusUtil;
+import com.github.zuihou.utils.DateUtils;
 import com.github.zuihou.utils.StrPool;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import java.util.Arrays;
+import java.util.Date;
 import java.util.List;
 import java.util.Map;
 
@@ -68,7 +72,10 @@ public class ScheduleFrequencyServiceImpl extends SuperServiceImpl<ScheduleFrequ
     @Override
     @Transactional(rollbackFor = Exception.class)
     public ScheduleFrequency save(ScheduleFrequencySaveDTO data) {
+        // 校验班次是否已经存在
         isFalse(check(data), "班次名称已存在,请重新输入");
+        // 班次日期是否重叠
+        isFalse(checkScheduleFrequencyTime(data), "班次名称日期与其他班次日期有重叠,请重新输入");
 
         ScheduleFrequency scheduleFrequency = BeanPlusUtil.toBean(data, ScheduleFrequency.class);
         //根据编码规则
@@ -78,6 +85,62 @@ public class ScheduleFrequencyServiceImpl extends SuperServiceImpl<ScheduleFrequ
         return scheduleFrequency;
     }
 
+    /**
+     * 判断时间是否有交集
+     * @param data
+     * @return
+     */
+    private boolean checkScheduleFrequencyTime(ScheduleFrequencySaveDTO data) {
+        boolean flag = false;
+        List<String> frequencyTypes = Arrays.asList("01,02,03".split(","));
+        List<ScheduleFrequency> frequencys = baseMapper.selectList(Wraps.<ScheduleFrequency>lbQ().in(ScheduleFrequency::getName,frequencyTypes ));
+        for(ScheduleFrequency scheduleFrequency : frequencys){
+            String endDateOne;
+            if("1".equals(scheduleFrequency.getAccossDay())){
+                String[] times = scheduleFrequency.getEndTime().split(":");
+                endDateOne = String.valueOf(24 + Integer.valueOf(times[0])) + times[1];
+            }else{
+                endDateOne=scheduleFrequency.getEndTime();
+            }
+
+            String endDateTwo;
+            if("1".equals(data.getAccossDay())){
+                String[] times = data.getEndTime().split(":");
+                endDateTwo = String.valueOf(24 + Integer.valueOf(times[0])) + times[1];
+            }else{
+                endDateTwo=data.getEndTime();
+            }
+
+            if(IsInterSection(scheduleFrequency.getStartTime(),endDateOne,data.getStartTime(),endDateTwo)){
+                flag = true;
+                break;
+            }
+        }
+        return flag;
+    }
+
+    private static Boolean IsInterSection(String startDateOne, String endDateOne, String startDateTwo, String endDateTwo)
+    {
+        String maxStartDate = startDateOne;
+        if(maxStartDate.compareTo(startDateTwo)<0)
+        {
+            maxStartDate = startDateTwo;
+        }
+
+        String minEndDate = endDateOne;
+        if(endDateTwo.compareTo(minEndDate) < 0)
+        {
+            minEndDate = endDateTwo;
+        }
+        if(maxStartDate.compareTo(minEndDate)  < 0 )
+        {
+            return true;
+        }
+        else {
+            return  false;
+        }
+    }
+
     @Override
     @Transactional(rollbackFor = Exception.class)
     public ScheduleFrequency update(ScheduleFrequencyUpdateDTO data) {

+ 2 - 1
imcs-admin-boot/imcs-business-biz/src/main/resources/mapper_business/base/productionResourceCenter/ZZoneMapper.xml

@@ -11,6 +11,7 @@
         <result column="update_user" jdbcType="BIGINT" property="updateUser"/>
         <result column="run_mode" jdbcType="VARCHAR" property="runMode"/>
         <result column="layout_map" jdbcType="VARCHAR" property="layoutMap"/>
+        <result column="org_id" jdbcType="VARCHAR" property="orgId"/>
         <result column="no" jdbcType="VARCHAR" property="no"/>
         <result column="name" jdbcType="VARCHAR" property="name"/>
         <result column="remark" jdbcType="VARCHAR" property="remark"/>
@@ -25,7 +26,7 @@
         select
         <include refid="Base_Column_List"/>
         from (SELECT
-        z.*,productionResourceName,a.productionResourceCount, u.name as createUserName,u.org_id,f.url as img_url
+        z.*,productionResourceName,a.productionResourceCount, u.name as createUserName,f.url as img_url
         FROM
         imcs_z_zone z
         LEFT JOIN (

+ 6 - 4
imcs-admin-boot/imcs-business-controller/src/main/java/com/github/zuihou/business/controller/classSchedule/ScheduleUserChangeController.java

@@ -15,6 +15,7 @@ import java.util.Map;
 import java.util.stream.Collectors;
 import com.github.zuihou.base.controller.SuperController;
 import com.github.zuihou.base.R;
+import com.github.zuihou.common.util.StringUtil;
 import com.github.zuihou.database.mybatis.conditions.query.LbqWrapper;
 import com.github.zuihou.database.mybatis.conditions.query.QueryWrap;
 import com.github.zuihou.log.annotation.SysLog;
@@ -23,6 +24,7 @@ import com.github.zuihou.security.model.SysUser;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 import com.github.zuihou.security.annotation.PreAuth;
@@ -54,10 +56,10 @@ public class ScheduleUserChangeController extends SuperController<ScheduleUserCh
         ScheduleUserChange bean = BeanUtil.toBean(data, ScheduleUserChange.class);
         //Wraps.lbQ(station); 这种写法值 不能和  ${ew.customSqlSegment} 一起使用
         // ${ew.customSqlSegment} 语法一定要手动eq like 等
-        wrapper.like(ScheduleUserChange::getApplyDesc, bean.getApplyDesc())
-                .eq(ScheduleUserChange::getApplyTime, bean.getApplyTime())
-                .eq(ScheduleUserChange::getAuditStatus, bean.getAuditStatus())
-                .orderByDesc(ScheduleUserChange::getCreateTime);
+        wrap.like(StringUtils.isNotBlank(bean.getApplyDesc()) ,"applyDesc", bean.getApplyDesc())
+//                .eq(ScheduleUserChange::getApplyTime, bean.getApplyTime())
+                .eq(StringUtils.isNotBlank(bean.getAuditStatus()),"audit_status", bean.getAuditStatus())
+                .orderByDesc("create_time");
         IPage<ScheduleUserChange> list = baseService.pageList(page, wrapper);
         System.out.println(list);
 

+ 1 - 1
imcs-admin-boot/imcs-business-controller/src/main/java/com/github/zuihou/business/controller/productionResourceCenter/RepairController.java

@@ -50,7 +50,7 @@ public class RepairController extends SuperController<RepairService,Long, Repair
         LbqWrapper<Repair> wrapper = wrap.lambda();
         wrap.like(StringUtils.isNotEmpty(data.getCode()),"code",data.getCode());
         wrap.like(StringUtils.isNotEmpty(data.getProductionresourceName()),"productionresourceName",data.getProductionresourceName());
-        wrap.eq(null != data.getProductionLineId(),"productionLineId",data.getProductionLineId());
+        wrap.eq(null != data.getProductionLineId() && data.getProductionLineId() > 0,"productionLineId",data.getProductionLineId());
         Repair repair = BeanUtil.toBean(data, Repair.class);
         //Wraps.lbQ(station); 这种写法值 不能和  ${ew.customSqlSegment} 一起使用
         // ${ew.customSqlSegment} 语法一定要手动eq like 等

+ 15 - 0
imcs-admin-boot/imcs-business-controller/src/main/java/com/github/zuihou/business/controller/productionResourceCenter/ZZoneController.java

@@ -10,6 +10,7 @@ import com.github.zuihou.business.productionResourceCenter.dto.ZZoneUpdateDTO;
 import com.github.zuihou.business.productionResourceCenter.dto.ZZonePageDTO;
 import com.github.zuihou.business.productionResourceCenter.service.ZZoneService;
 
+import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -20,6 +21,7 @@ import com.github.zuihou.database.mybatis.conditions.query.LbqWrapper;
 import com.github.zuihou.database.mybatis.conditions.query.QueryWrap;
 import com.github.zuihou.log.annotation.SysLog;
 import com.github.zuihou.tenant.entity.Productionresource;
+import com.qiniu.common.Zone;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
@@ -63,6 +65,19 @@ public class ZZoneController extends SuperController<ZZoneService, Long, ZZone,
         return success(baseService.list());
     }
 
+    @ApiOperation(value = "查询区域管理", notes = "查询区域管理")
+    @GetMapping("/allSelect")
+    public R<List<ZZone>> allSelect() {
+        List<ZZone> zZones = new ArrayList<>();
+        ZZone zone = new ZZone();
+        zone.setId(new Long(0));
+        zone.setName("全部");
+        zZones.add(zone);
+        List<ZZone> zones = baseService.list();
+        zZones.addAll(zones);
+        return success(zZones);
+    }
+
     @Override
     public R<ZZone> handlerSave(ZZoneSaveDTO model) {
         ZZone zZone = baseService.save(model);

+ 1 - 1
imcs-admin-boot/imcs-business-entity/src/main/java/com/github/zuihou/business/classSchedule/dto/ScheduleUserChangePageDTO.java

@@ -80,6 +80,6 @@ public class ScheduleUserChangePageDTO implements Serializable {
      */
     @ApiModelProperty(value = "审核人姓名")
     @Length(max = 32, message = "审核人姓名长度不能超过32")
-    private String auditUserName;
+    private String applyDesc;
 
 }

+ 1 - 18
imcs-admin-boot/imcs-business-entity/src/main/java/com/github/zuihou/business/classSchedule/entity/ScheduleUserChange.java

@@ -46,6 +46,7 @@ import static com.github.zuihou.utils.DateUtils.*;
 @TableName("imcs_s_schedule_user_change")
 @ApiModel(value = "ScheduleUserChange", description = "换班")
 @AllArgsConstructor
+@Builder
 public class ScheduleUserChange extends Entity<Long> {
 
     private static final long serialVersionUID = 1L;
@@ -123,22 +124,4 @@ public class ScheduleUserChange extends Entity<Long> {
     @TableField(exist = false)
     private String changeDictionary;
 
-    @Builder
-    public ScheduleUserChange(Long id, LocalDateTime createTime, Long createUser, LocalDateTime updateTime, Long updateUser,
-                    Long applyUserId, String applyTime, Long changeUserId, String changeTime, String auditStatus,
-                    Long auditUser, LocalDateTime auditTime) {
-        this.id = id;
-        this.createTime = createTime;
-        this.createUser = createUser;
-        this.updateTime = updateTime;
-        this.updateUser = updateUser;
-        this.applyUserId = applyUserId;
-        this.applyTime = applyTime;
-        this.changeUserId = changeUserId;
-        this.changeTime = changeTime;
-        this.auditStatus = auditStatus;
-        this.auditUser = auditUser;
-        this.auditTime = auditTime;
-    }
-
 }

+ 3 - 0
imcs-admin-boot/imcs-business-entity/src/main/java/com/github/zuihou/business/productionResourceCenter/dto/ZZonePageDTO.java

@@ -77,4 +77,7 @@ public class ZZonePageDTO implements Serializable {
     @Length(max = 4, message = "状态(1-启用0-停用)长度不能超过4")
     private String status;
 
+    @ApiModelProperty(value = "部门ID")
+    private Long orgId;
+
 }

+ 4 - 0
imcs-admin-boot/imcs-business-entity/src/main/java/com/github/zuihou/business/productionResourceCenter/dto/ZZoneSaveDTO.java

@@ -1,5 +1,6 @@
 package com.github.zuihou.business.productionResourceCenter.dto;
 
+import cn.afterturn.easypoi.excel.annotation.Excel;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
@@ -72,4 +73,7 @@ public class ZZoneSaveDTO implements Serializable {
     @Length(max = 255, message = "布局图长度不能超过255")
     private String layoutMap;
 
+    @ApiModelProperty(value = "部门ID")
+    private Long orgId;
+
 }

+ 3 - 0
imcs-admin-boot/imcs-business-entity/src/main/java/com/github/zuihou/business/productionResourceCenter/dto/ZZoneUpdateDTO.java

@@ -90,4 +90,7 @@ public class ZZoneUpdateDTO implements Serializable {
 
     @ApiModelProperty(value = "生产资源列表")
     private List<String> resourceList;
+
+    @ApiModelProperty(value = "部门ID")
+    private Long orgId;
 }

+ 15 - 17
imcs-admin-boot/imcs-business-entity/src/main/java/com/github/zuihou/business/productionResourceCenter/entity/ZZone.java

@@ -1,30 +1,22 @@
 package com.github.zuihou.business.productionResourceCenter.entity;
 
 import cn.afterturn.easypoi.excel.annotation.Excel;
-import cn.afterturn.easypoi.excel.annotation.ExcelEntity;
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableName;
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
 import com.github.zuihou.base.entity.Entity;
-import com.baomidou.mybatisplus.annotation.TableField;
+import com.github.zuihou.injection.annonation.InjectionField;
+import com.github.zuihou.model.RemoteData;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
-import javax.validation.constraints.NotEmpty;
-import javax.validation.constraints.NotNull;
+import lombok.*;
+import lombok.experimental.Accessors;
 import org.hibernate.validator.constraints.Length;
-import org.hibernate.validator.constraints.Range;
+
 import java.time.LocalDateTime;
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-import lombok.NoArgsConstructor;
-import lombok.ToString;
-import lombok.experimental.Accessors;
-import com.github.zuihou.common.constant.DictionaryType;
-import static com.github.zuihou.utils.DateUtils.DEFAULT_DATE_TIME_FORMAT;
 
 import static com.baomidou.mybatisplus.annotation.SqlCondition.LIKE;
+import static com.github.zuihou.common.constant.InjectionFieldConstants.ORG_ID_CLASS;
+import static com.github.zuihou.common.constant.InjectionFieldConstants.ORG_ID_METHOD;
 
 /**
  * <p>
@@ -95,6 +87,11 @@ public class ZZone extends Entity<Long> {
     @Excel(name = "布局图")
     private String layoutMap;
 
+    @ApiModelProperty(value = "部门ID")
+    @TableField(value = "org_id", condition = LIKE)
+    @Excel(name = "部门ID")
+    private Long orgId;
+
     @TableField(exist=false)
     private String imgUrl;
 
@@ -110,7 +107,7 @@ public class ZZone extends Entity<Long> {
 
     @Builder
     public ZZone(Long id, LocalDateTime createTime, Long createUser, LocalDateTime updateTime, Long updateUser, 
-                    String no, String name, String remark) {
+                    String no, String name, String remark, Long orgId) {
         this.id = id;
         this.createTime = createTime;
         this.createUser = createUser;
@@ -119,6 +116,7 @@ public class ZZone extends Entity<Long> {
         this.no = no;
         this.name = name;
         this.remark = remark;
+        this.orgId = orgId;
     }
 
 }