车车 před 5 měsíci
rodič
revize
2c59a6aea5

+ 6 - 1
ktg-admin/src/main/resources/i18n/messages.properties

@@ -277,7 +277,7 @@ assert.login.face.identity.unknown=\u65E0\u6CD5\u6839\u636E\u4EBA\u8138\u786E\u5
 ##\u7F16\u7801\u89C4\u5219\u76F8\u5173
 assert.code.rule.input.char.not.null=\u7F16\u7801\u89C4\u5219\u4F20\u5165\u5B57\u7B26\u4E0D\u80FD\u4E3A\u7A7A\uFF01
 assert.code.rule.type.not.found=\u672A\u83B7\u53D6\u5230\u6307\u5B9A\u7C7B\u578B:[{0}] \u7684\u4E1A\u52A1\u7F16\u7801\u751F\u6210\u89C4\u5219
-assert.code.rule.result.record.not.found=\u672A\u67E5\u8BE2\u5230\u89C4\u5219 {[]} \u5BF9\u5E94\u7684\u7ED3\u679C\u8BB0\u5F55
+assert.code.rule.result.record.not.found=\u672A\u67E5\u8BE2\u5230\u89C4\u5219 [{0}] \u5BF9\u5E94\u7684\u7ED3\u679C\u8BB0\u5F55
 assert.code.rule.input.char.length.error=\u4F20\u5165\u5B57\u7B26\u7684\u957F\u5EA6\u9519\u8BEF\uFF01
 assert.code.rule.serial.number.component.unique=\u7F16\u7801\u89C4\u5219 [{0}] \u6D41\u6C34\u53F7\u65B9\u5F0F\u7684\u7EC4\u6210\u53EA\u80FD\u5B58\u5728\u4E00\u4E2A
 assert.code.rule.generated.code.empty=\u89C4\u5219\uFF1A[{0}] \u751F\u6210\u7684\u7F16\u7801\u4E3A\u7A7A\uFF01
@@ -381,6 +381,7 @@ assert.material.change.old.id.not.null=\u539F\u7269\u8D44ID\u4E0D\u80FD\u4E3A\u7
 assert.material.change.new.id.not.null=\u65B0\u7269\u8D44ID\u4E0D\u80FD\u4E3A\u7A7A\uFF0C\u82E5\u7269\u8D44\u4E0D\u53D8\u586B\u5199\u539F\u7269\u8D44ID\u5373\u53EF\uFF01
 assert.material.change.new.not.in.current.cabinet=\u65B0\u7269\u8D44\u4E0D\u5C5E\u4E8E\u5F53\u524D\u7269\u8D44\u67DC\uFF0C\u8BF7\u68C0\u67E5\u6570\u636E\uFF01
 assert.material.change.abnormal.replacement=\u5B58\u5728\u5F02\u5E38\u7684\u66FF\u6362\u7269\u8D44\uFF01
+assert.cabinet.material.not.exist=\u6570\u636E\u4E0D\u5B58\u5728
 
 # SOP\u76F8\u5173
 assert.sop.machinery.process.id.not.null=\u8BBE\u5907\u5DE5\u827Aid\u4E0D\u53EF\u4E3A\u7A7A\uFF01
@@ -519,3 +520,7 @@ SOP\u5217\u8868=SOP\u5217\u8868
 \u672A\u5F00\u59CB=\u672A\u5F00\u59CB
 \u5DF2\u53D6\u6D88=\u5DF2\u53D6\u6D88
 \u5DF2\u7ED3\u675F=\u5DF2\u7ED3\u675F
+\u5F85\u89E3\u9501=\u5F85\u89E3\u9501
+\u5F85\u4E0A\u9501=\u5F85\u4E0A\u9501
+\u505C\u7528=\u505C\u7528
+\u5F02\u5E38=\u5F02\u5E38

+ 65 - 1
ktg-admin/src/main/resources/i18n/messages_en_US.properties

@@ -277,7 +277,7 @@ assert.login.face.identity.unknown=Face unrecognized: Alternative login!
 ##\u7F16\u7801\u89C4\u5219\u76F8\u5173
 assert.code.rule.input.char.not.null=Rule input required!
 assert.code.rule.type.not.found=Rule type [{0}] missing!
-assert.code.rule.result.record.not.found=Result record missing: {[]}!
+assert.code.rule.result.record.not.found=Result record missing: [{0}]!
 assert.code.rule.input.char.length.error=Input length mismatch!
 assert.code.rule.serial.number.component.unique=Single component rule: {0}!
 assert.code.rule.generated.code.empty=Empty generated code: [{0}]!
@@ -381,6 +381,7 @@ assert.material.change.old.id.not.null=Original material ID required!
 assert.material.change.new.id.not.null=New material ID required for replacement!
 assert.material.change.new.not.in.current.cabinet=New material not in current cabinet!
 assert.material.change.abnormal.replacement=Abnormal replacement detected!
+assert.cabinet.material.not.exist=Data missing!
 
 # SOP\u76F8\u5173
 assert.sop.machinery.process.id.not.null=Machinery process ID required!
@@ -519,3 +520,66 @@ SOP\u5217\u8868=SOP List
 \u672A\u5F00\u59CB=Pending
 \u5DF2\u53D6\u6D88=Cancelled
 \u5DF2\u7ED3\u675F=Closed
+\u5F85\u89E3\u9501=Pending Release
+\u5F85\u4E0A\u9501=Pending Lockout
+\u505C\u7528=Deactivated
+\u5F02\u5E38=Exception
+
+
+#\u516B\u5927\u6B65\u9AA4
+#pc
+\u8BC6\u522B\u6240\u8981\u5B8C\u6210\u7684\u5DE5\u4F5C\u5185\u5BB9=Identify Work Content
+\u5224\u65AD\u5DE5\u4F5C\u6240\u6D89\u53CA\u7684\u80FD\u91CF\u6E90\u53CA\u9694\u79BB\u65B9\u5F0F=Energy Isolation Method
+\u901A\u77E5\u6240\u6709\u53D7\u5F71\u54CD\u7684\u4EBA=Notify Personnel
+\u5982\u679C\u8BBE\u5907\u6B63\u5728\u8FD0\u884C\uFF0C\u6309\u6B63\u5E38\u64CD\u4F5C\u505C\u673A=Shutdown Operation
+\u4E0A\u9501\u5E76\u6302\u724C=Lockout Tagout
+\u53D6\u9501\u524D\u7684\u68C0\u67E5=Pre-Unlock Check
+\u62C6\u9664\u9501\u5177\uFF0C\u5E76\u628A\u9694\u79BB\u5F00\u5173\u6062\u590D\u5230\u6B63\u5E38\u4F4D\u7F6E=Unlock and Restore Switch
+
+#android
+\u8BC6\u522B\u5DE5\u4F5C\u5185\u5BB9=Identify Work Content
+\u80FD\u6E90\u9694\u79BB\u65B9\u5F0F=Energy Isolation Method
+\u901A\u77E5\u4EBA\u5458=Notify Personnel
+\u64CD\u4F5C\u505C\u673A=Shutdown Operation
+\u4E0A\u9501\u6302\u724C=Lockout Tagout
+\u80FD\u91CF\u9694\u79BB\u8BC1\u5B9E=Energy Isolation Verification
+\u53D6\u9501\u524D\u68C0\u67E5=Pre-Unlock Check
+\u62C6\u9501\u6062\u590D\u5F00\u5173=Unlock and Restore Switch
+
+#TicketOperLog
+\u542F\u52A8\u4F5C\u4E1A=Start Work Order
+\u4F5C\u4E1A=Work Order
+\u5DF2\u542F\u52A8=Initiated
+
+\u64CD\u4F5C\u786E\u8BA4=Confirm
+\u5DF2\u786E\u8BA4\u6267\u884C=Confirmed
+
+\u4EBA\u5458\u53D8\u52A8=Personnel Changes
+\u5DF2\u6DFB\u52A0\u4E0A\u9501\u4EBA=Supervisor Added
+\u5DF2\u6DFB\u52A0\u5171\u9501\u4EBA=Co-lock Added
+\u79FB\u9664\u52A0\u4E0A\u9501\u4EBA=Remove Supervisor
+\u79FB\u9664\u52A0\u5171\u9501\u4EBA=Remove Co-lock
+
+\u542F\u52A8\u4E0A\u9501=Start Lockout
+
+\u5B8C\u6210\u4E0A\u9501=Complete Lockout
+\u5DF2\u4E0A\u9501=Locked
+
+\u5DF2\u6DFB\u52A0\u5171\u9501=Co-lock Added
+\u6DFB\u52A0\u5171\u9501=Add Co-lock
+
+\u5DF2\u89E3\u9664\u5171\u9501=Co-lock Released
+\u89E3\u9664\u5171\u9501=Release Co-lock
+
+\u542F\u52A8\u89E3\u9501=Start Release
+
+\u5B8C\u6210\u89E3\u9501=Complete Release
+\u5DF2\u89E3\u9501=Released
+
+\u5DF2\u5B8C\u6210\u4F5C\u4E1A=Work Order Completed
+\u7ED3\u675F\u4F5C\u4E1A=Close Work Order
+
+\u5DF2\u53D6\u6D88\u4F5C\u4E1A=Work Order Cancelled
+\u53D6\u6D88\u4F5C\u4E1A=Cancel Work Order
+
+

+ 4 - 0
ktg-iscs/src/main/java/com/ktg/iscs/domain/IsWorkstation.java

@@ -59,4 +59,8 @@ public class IsWorkstation extends BaseEntity
     @TableField(exist = false)
     private Long userId;
 
+    @TableField(exist = false)
+    @ApiModelProperty(value = "修改时排除父级选到自己")
+    private Long id;
+
 }

+ 3 - 0
ktg-iscs/src/main/java/com/ktg/iscs/domain/dto/hardware/GetListDTO.java

@@ -12,6 +12,9 @@ import lombok.Data;
 @Data
 public class GetListDTO {
 
+    @ApiModelProperty(value = "id-用于修改时排除父级选中自己")
+    private Long id;
+
     @ApiModelProperty(value = "硬件类型编码")
     private String hardwareTypeCode;
 

+ 21 - 0
ktg-iscs/src/main/java/com/ktg/iscs/domain/dto/ticket/KeyValueDTO.java

@@ -0,0 +1,21 @@
+package com.ktg.iscs.domain.dto.ticket;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+/**
+ * @author HP
+ */
+@Data
+@Accessors(chain = true)
+public class KeyValueDTO
+{
+
+    @ApiModelProperty(value = "key")
+    private String key;
+
+    @ApiModelProperty(value = "value")
+    private String value;
+
+}

+ 2 - 1
ktg-iscs/src/main/java/com/ktg/iscs/mapper/IsWorkstationMapper.java

@@ -67,5 +67,6 @@ public interface IsWorkstationMapper extends BaseMapperX<IsWorkstation>
 
     Page<IsWorkstation> getIsWorkstationPage(Page<IsWorkstation> page,
                                              @Param(value = "isWorkstation") IsWorkstation isWorkstation,
-                                             @Param(value = "ids") List<Long> ids);
+                                             @Param(value = "ids") List<Long> ids,
+                                             @Param(value = "id") Long id);
 }

+ 1 - 0
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsHardwareTypeServiceImpl.java

@@ -150,6 +150,7 @@ public class IsHardwareTypeServiceImpl extends ServiceImpl<IsHardwareTypeMapper,
                 .like(org.apache.commons.lang3.StringUtils.isNotBlank(getListDTO.getHardwareTypeName()), IsHardwareType::getHardwareTypeName, getListDTO.getHardwareTypeName())
                 .like(org.apache.commons.lang3.StringUtils.isNotBlank(getListDTO.getHardwareTypeCode()), IsHardwareType::getHardwareTypeCode, getListDTO.getHardwareTypeCode())
                 .eq(org.apache.commons.lang3.StringUtils.isNotBlank(getListDTO.getEnableFlag()), IsHardwareType::getEnableFlag, getListDTO.getEnableFlag())
+                .ne(getListDTO.getId() != null, IsHardwareType::getId, getListDTO.getId())
                 .orderByDesc(IsHardwareType::getId));
         return result;
     }

+ 12 - 0
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsJobTicketStepServiceImpl.java

@@ -16,6 +16,7 @@ import com.ktg.iscs.domain.vo.step.IsJobTicketStepVO;
 import com.ktg.iscs.mapper.IsJobTicketStepMapper;
 import com.ktg.iscs.service.*;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.i18n.LocaleContextHolder;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -135,6 +136,17 @@ public class IsJobTicketStepServiceImpl extends ServiceImpl<IsJobTicketStepMappe
                 stepVOList.get(7).setConflictJobNum(list.isEmpty() ? 0 : list.size());
             }
         }
+        // 国际化
+        if ("en_US".equals(LocaleContextHolder.getLocale().toString())) {
+            for (IsJobTicketStepVO datum : stepVOList) {
+                try {
+                    datum.setStepContent(MessageUtils.message(datum.getStepContent()));
+                }catch(Exception e) {}
+                try {
+                    datum.setAndroidStepContent(MessageUtils.message(datum.getAndroidStepContent()));
+                }catch(Exception e) {}
+            }
+        }
         return stepVOList;
     }
 

+ 65 - 9
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsTicketOperLogServiceImpl.java

@@ -7,11 +7,14 @@ import com.ktg.common.utils.DateUtils;
 import com.ktg.common.utils.SecurityUtils;
 import com.ktg.framework.websocket.WebSocketJobTicketLog;
 import com.ktg.iscs.domain.IsTicketOperLog;
+import com.ktg.iscs.domain.dto.ticket.KeyValueDTO;
 import com.ktg.iscs.mapper.IsTicketOperLogMapper;
 import com.ktg.iscs.service.IIsTicketOperLogService;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.i18n.LocaleContextHolder;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
 import java.util.Date;
 
 /**
@@ -32,9 +35,61 @@ public class IsTicketOperLogServiceImpl extends ServiceImpl<IsTicketOperLogMappe
                 .eq(isTicketOperLog.getOperationType() != null, IsTicketOperLog::getOperationType, isTicketOperLog.getOperationType())
                 .eq(isTicketOperLog.getTicketId() != null, IsTicketOperLog::getTicketId, isTicketOperLog.getTicketId())
                 .orderByAsc(IsTicketOperLog::getOperationId));
+        // 国际化
+        if (!result.getRecords().isEmpty() && "en_US".equals(LocaleContextHolder.getLocale().toString())) {
+            for (IsTicketOperLog record : result.getRecords()) {
+                for (KeyValueDTO keyValueDTO : getLogIn88()) {
+                    if (record.getOperationContent().contains(keyValueDTO.getKey())) {
+                        record.setOperationContent(record.getOperationContent().replace(keyValueDTO.getKey(), keyValueDTO.getValue()));
+                    }
+                }
+            }
+        }
         return result;
     }
 
+
+    private static ArrayList<KeyValueDTO> getLogIn88() {
+        ArrayList<KeyValueDTO> keyValueDTOS = new ArrayList<>();
+        keyValueDTOS.add(new KeyValueDTO().setKey("启动作业").setValue("Start Work Order"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("作业").setValue("Work Order"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("已启动").setValue("Initiated"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("操作确认").setValue("Confirm"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("已确认执行").setValue("Confirmed"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("人员变动").setValue("Personnel Changes"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("已添加上锁人").setValue("Supervisor Added"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("已添加共锁人").setValue("Co-lock Added"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("移除加上锁人").setValue("Remove Supervisor"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("移除加共锁人").setValue("Remove Co-lock"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("启动上锁").setValue("Start Lockout"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("完成上锁").setValue("Complete Lockout"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("已上锁").setValue("Locked"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("已添加共锁").setValue("Co-lock Added"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("添加共锁").setValue("Add Co-lock"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("已解除共锁").setValue("Co-lock Released"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("解除共锁").setValue("Release Co-lock"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("启动解锁").setValue("Start Release"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("完成解锁").setValue("Complete Release"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("已解锁").setValue("Released"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("已完成作业").setValue("Work Order Completed"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("结束作业").setValue("Close Work Order"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("已取消作业").setValue("Work Order Cancelled"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("取消作业").setValue("Cancel Work Order"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("上锁挂牌").setValue("LOTO"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("能量隔离证实").setValue("Energy Isolation Verified"));
+
+        keyValueDTOS.add(new KeyValueDTO().setKey("识别工作内容").setValue("Task Verification"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("能量源隔离方式").setValue("Isolation Method"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("通知人员").setValue("Notify Personnel"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("操作停机").setValue("Operation Shutdown"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("上锁挂牌").setValue("LOTO"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("能量隔离证实").setValue("Energy Isolation Verified"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("取锁前检查").setValue("Pre-Removal Check"));
+        keyValueDTOS.add(new KeyValueDTO().setKey("拆锁恢复开关").setValue("Remove Lock & Restore Power"));
+        return keyValueDTOS;
+    }
+
+
     @Override
     public Boolean addLog1(Long jobId, String jobName) {
         Date date = new Date();
@@ -47,7 +102,7 @@ public class IsTicketOperLogServiceImpl extends ServiceImpl<IsTicketOperLogMappe
         isTicketOperLog.setOperationTime(date);
         isTicketOperLog.setOperationUserId(userId);
         isTicketOperLog.setOperationUserName(username);
-        isTicketOperLog.setOperationContent("启动作业:" + DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, date) + " 作业[" +  jobName + "]已启动。");
+        isTicketOperLog.setOperationContent("启动作业:" + DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, date) + " 作业[" + jobName + "]已启动。");
         save(isTicketOperLog);
         WebSocketJobTicketLog.sendMessage(String.valueOf(jobId), isTicketOperLog.toString());
         return true;
@@ -63,7 +118,7 @@ public class IsTicketOperLogServiceImpl extends ServiceImpl<IsTicketOperLogMappe
         isTicketOperLog.setOperationTime(date);
         isTicketOperLog.setOperationUserId(userId);
         isTicketOperLog.setOperationUserName(userName);
-        isTicketOperLog.setOperationContent("操作确认:" + DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, date) + "[" + userName +"]已确认执行[" +  title + "]。");
+        isTicketOperLog.setOperationContent("操作确认:" + DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, date) + "[" + userName + "]已确认执行[" + title + "]。");
         save(isTicketOperLog);
         WebSocketJobTicketLog.sendMessage(String.valueOf(jobId), isTicketOperLog.toString());
         return true;
@@ -73,6 +128,7 @@ public class IsTicketOperLogServiceImpl extends ServiceImpl<IsTicketOperLogMappe
      * 人员变动
      * type 0移除 1添加
      * lockType 0上锁人 1共锁人
+     *
      * @return
      */
     @Override
@@ -87,7 +143,7 @@ public class IsTicketOperLogServiceImpl extends ServiceImpl<IsTicketOperLogMappe
         isTicketOperLog.setOperationTime(date);
         isTicketOperLog.setOperationUserId(userId);
         isTicketOperLog.setOperationUserName(username);
-        isTicketOperLog.setOperationContent("⼈员变动:" + DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, date) + "[" + username +"]已" + type + lockType + "[" +lockUser + "]。");
+        isTicketOperLog.setOperationContent("⼈员变动:" + DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, date) + "[" + username + "]已" + type + lockType + "[" + lockUser + "]。");
         save(isTicketOperLog);
         WebSocketJobTicketLog.sendMessage(String.valueOf(jobId), isTicketOperLog.toString());
         return true;
@@ -105,7 +161,7 @@ public class IsTicketOperLogServiceImpl extends ServiceImpl<IsTicketOperLogMappe
         isTicketOperLog.setOperationTime(date);
         isTicketOperLog.setOperationUserId(userId);
         isTicketOperLog.setOperationUserName(username);
-        isTicketOperLog.setOperationContent("启动上锁:" + DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, date) + "[" + username +"]启动上锁。");
+        isTicketOperLog.setOperationContent("启动上锁:" + DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, date) + "[" + username + "]启动上锁。");
         save(isTicketOperLog);
         WebSocketJobTicketLog.sendMessage(String.valueOf(jobId), isTicketOperLog.toString());
         return true;
@@ -123,7 +179,7 @@ public class IsTicketOperLogServiceImpl extends ServiceImpl<IsTicketOperLogMappe
         isTicketOperLog.setOperationTime(date);
         isTicketOperLog.setOperationUserId(userId);
         isTicketOperLog.setOperationUserName(username);
-        isTicketOperLog.setOperationContent("完成上锁:" + DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, date) + "[" + username +"]完成上锁," + pointNames + "已上锁。");
+        isTicketOperLog.setOperationContent("完成上锁:" + DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, date) + "[" + username + "]完成上锁," + pointNames + "已上锁。");
         save(isTicketOperLog);
         WebSocketJobTicketLog.sendMessage(String.valueOf(jobId), isTicketOperLog.toString());
         return true;
@@ -177,7 +233,7 @@ public class IsTicketOperLogServiceImpl extends ServiceImpl<IsTicketOperLogMappe
         isTicketOperLog.setOperationTime(date);
         isTicketOperLog.setOperationUserId(userId);
         isTicketOperLog.setOperationUserName(username);
-        isTicketOperLog.setOperationContent("启动解锁:" + DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, date) + "[" + username +"]启动解锁。");
+        isTicketOperLog.setOperationContent("启动解锁:" + DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, date) + "[" + username + "]启动解锁。");
         save(isTicketOperLog);
         WebSocketJobTicketLog.sendMessage(String.valueOf(jobId), isTicketOperLog.toString());
         return true;
@@ -195,7 +251,7 @@ public class IsTicketOperLogServiceImpl extends ServiceImpl<IsTicketOperLogMappe
         isTicketOperLog.setOperationTime(date);
         isTicketOperLog.setOperationUserId(userId);
         isTicketOperLog.setOperationUserName(username);
-        isTicketOperLog.setOperationContent("完成解锁:" + DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, date) + "[" + username +"]完成解锁," + pointNames + "已解锁。");
+        isTicketOperLog.setOperationContent("完成解锁:" + DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, date) + "[" + username + "]完成解锁," + pointNames + "已解锁。");
         save(isTicketOperLog);
         WebSocketJobTicketLog.sendMessage(String.valueOf(jobId), isTicketOperLog.toString());
         return true;
@@ -213,7 +269,7 @@ public class IsTicketOperLogServiceImpl extends ServiceImpl<IsTicketOperLogMappe
         isTicketOperLog.setOperationTime(date);
         isTicketOperLog.setOperationUserId(userId);
         isTicketOperLog.setOperationUserName(username);
-        isTicketOperLog.setOperationContent("结束作业:" + DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, date) + "[" + username +"]已完成作业[" + jobName + "]。");
+        isTicketOperLog.setOperationContent("结束作业:" + DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, date) + "[" + username + "]已完成作业[" + jobName + "]。");
         save(isTicketOperLog);
         WebSocketJobTicketLog.sendMessage(String.valueOf(jobId), isTicketOperLog.toString());
         return true;
@@ -231,7 +287,7 @@ public class IsTicketOperLogServiceImpl extends ServiceImpl<IsTicketOperLogMappe
         isTicketOperLog.setOperationTime(date);
         isTicketOperLog.setOperationUserId(userId);
         isTicketOperLog.setOperationUserName(username);
-        isTicketOperLog.setOperationContent("取消作业:" + DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, date) + "[" + username +"]已取消作业[" + jobName + "]。");
+        isTicketOperLog.setOperationContent("取消作业:" + DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, date) + "[" + username + "]已取消作业[" + jobName + "]。");
         save(isTicketOperLog);
         WebSocketJobTicketLog.sendMessage(String.valueOf(jobId), isTicketOperLog.toString());
         return true;

+ 1 - 1
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsWorkstationServiceImpl.java

@@ -151,6 +151,6 @@ public class IsWorkstationServiceImpl extends ServiceImpl<IsWorkstationMapper, I
                 }
             }
         }
-        return isWorkstationMapper.getIsWorkstationPage(page, isWorkstation, workstationIds);
+        return isWorkstationMapper.getIsWorkstationPage(page, isWorkstation, workstationIds, isWorkstation.getId());
     }
 }

+ 3 - 0
ktg-iscs/src/main/resources/mapper/IsWorkstationMapper.xml

@@ -122,6 +122,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="isWorkstation.status != null and isWorkstation.status.trim != ''">
                 and w.status = #{isWorkstation.status}
             </if>
+            <if test="isWorkstation.id != null">
+                and w.workstation_id != #{isWorkstation.id}
+            </if>
             <if test="isWorkstation.parentId != null">
                 and w.parent_id = #{isWorkstation.parentId}
             </if>

+ 2 - 1
ktg-system/src/main/resources/mapper/system/SysDeptMapper.xml

@@ -69,7 +69,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 
 	<select id="hasChildByDeptId" parameterType="Long" resultType="int">
 		select count(1) from sys_dept
-		where del_flag = '0' and parent_id = #{deptId} order by parent_id desc offset 0 rows fetch next 1 rows only
+		where del_flag = '0' and parent_id = #{deptId}
+		<!--order by parent_id desc offset 0 rows fetch next 1 rows only -->
 	</select>
 
 	<select id="selectChildrenDeptById" parameterType="Long" resultMap="SysDeptResult">