Ver código fonte

翻译 补充

车车 5 meses atrás
pai
commit
2e86b4f151
29 arquivos alterados com 585 adições e 426 exclusões
  1. 1 1
      ktg-admin/src/main/java/com/ktg/web/controller/iscs/ResApiController.java
  2. 104 6
      ktg-admin/src/main/resources/i18n/messages.properties
  3. 368 271
      ktg-admin/src/main/resources/i18n/messages_en_US.properties
  4. 4 4
      ktg-framework/src/main/java/com/ktg/framework/web/service/SysLoginService.java
  5. 0 28
      ktg-iscs/src/main/java/com/ktg/iscs/service/impl/HardwareApiServiceImpl.java
  6. 12 14
      ktg-iscs/src/main/java/com/ktg/iscs/service/impl/HardwareMaterialApiServiceImpl.java
  7. 1 1
      ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsHardwareTypeServiceImpl.java
  8. 0 7
      ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsIsolationPointServiceImpl.java
  9. 2 2
      ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsJobCardServiceImpl.java
  10. 2 2
      ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsJobTicketServiceImpl.java
  11. 1 1
      ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsJobTicketUserServiceImpl.java
  12. 12 12
      ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsKeyServiceImpl.java
  13. 6 6
      ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsLockServiceImpl.java
  14. 6 6
      ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsLockTypeServiceImpl.java
  15. 5 5
      ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsLocksetTypeServiceImpl.java
  16. 1 1
      ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsLotoSwitchMapServiceImpl.java
  17. 3 3
      ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsMailSendTaskItemServiceImpl.java
  18. 5 5
      ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsMailTemplateServiceImpl.java
  19. 3 3
      ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsMarsSopServiceImpl.java
  20. 8 8
      ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsMaterialsCabinetServiceImpl.java
  21. 3 4
      ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsMaterialsChangeRecordServiceImpl.java
  22. 7 7
      ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsMaterialsCheckPlanServiceImpl.java
  23. 3 2
      ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsMaterialsCheckRecordServiceImpl.java
  24. 3 3
      ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsMaterialsLoanServiceImpl.java
  25. 2 2
      ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsMaterialsPropertyServiceImpl.java
  26. 3 2
      ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsMaterialsPropertyValueServiceImpl.java
  27. 7 7
      ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsRfidTokenServiceImpl.java
  28. 6 6
      ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsSystemAttributeServiceImpl.java
  29. 7 7
      ktg-mes/src/main/java/com/ktg/mes/md/service/impl/MdItemServiceImpl.java

+ 1 - 1
ktg-admin/src/main/java/com/ktg/web/controller/iscs/ResApiController.java

@@ -86,7 +86,7 @@ public class ResApiController extends BaseController
     public CommonResult<Boolean> updateIsCheckTask(@RequestBody @Parameter(name = "isCheckTask", description = "修改数据类,放到body") IsCheckTask isCheckTask)
     {
         // 1.检查数据
-        Assert.notNull(isCheckTask.getCheckId(), "checkId不可为空!");
+        Assert.notNull(isCheckTask.getCheckId(), MessageUtils.message("assert.res.api.check.id.not.null"));
         IsCheckTask checkTask = iIsCheckTaskService.getById(isCheckTask.getCheckId());
         Assert.notNull(checkTask, MessageUtils.message("assert.business.data.not.exist"));
         // 2.开始更新操作

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

@@ -13,12 +13,9 @@ user.password.delete=\u5BF9\u4E0D\u8D77\uFF0C\u60A8\u7684\u8D26\u53F7\u5DF2\u88A
 user.blocked=\u7528\u6237\u5DF2\u5C01\u7981\uFF0C\u8BF7\u8054\u7CFB\u7BA1\u7406\u5458
 role.blocked=\u89D2\u8272\u5DF2\u5C01\u7981\uFF0C\u8BF7\u8054\u7CFB\u7BA1\u7406\u5458
 user.logout.success=\u9000\u51FA\u6210\u529F
-
 length.not.valid=\u957F\u5EA6\u5FC5\u987B\u5728{min}\u5230{max}\u4E2A\u5B57\u7B26\u4E4B\u95F4
-
 user.username.not.valid=* 2\u523020\u4E2A\u6C49\u5B57\u3001\u5B57\u6BCD\u3001\u6570\u5B57\u6216\u4E0B\u5212\u7EBF\u7EC4\u6210\uFF0C\u4E14\u5FC5\u987B\u4EE5\u975E\u6570\u5B57\u5F00\u5934
 user.password.not.valid=* 5-50\u4E2A\u5B57\u7B26
-
 user.email.not.valid=\u90AE\u7BB1\u683C\u5F0F\u9519\u8BEF
 user.mobile.phone.number.not.valid=\u624B\u673A\u53F7\u683C\u5F0F\u9519\u8BEF
 user.login.success=\u767B\u5F55\u6210\u529F
@@ -101,9 +98,13 @@ security.util.get.user.id.error=\u83B7\u53D6\u7528\u6237ID\u5F02\u5E38
 security.util.get.dept.id.error=\u83B7\u53D6\u90E8\u95E8ID\u5F02\u5E38
 security.util.get.user.account.error=\u83B7\u53D6\u7528\u6237\u8D26\u6237\u5F02\u5E38
 security.util.get.user.info.error=\u83B7\u53D6\u7528\u6237\u4FE1\u606F\u5F02\u5E38
+
+
 ##\u516B\u3001CommonResult \u6210\u529F\u6D88\u606F
 common.result.success.device.info= \u8BBE\u5907\u4FE1\u606F:{0}
 common.result.success.import.data=\u5BFC\u5165\u6210\u529F\uFF0C\u5171\u5BFC\u5165 {0} \u6761\u6570\u636E
+
+
 ##\u4E5D\u3001Assert \u53C2\u6570\u6821\u9A8C\u63D0\u793A
 ##\u901A\u7528\u63D0\u793A
 assert.common.delete.select.data=\u8BF7\u9009\u62E9\u9700\u8981\u5220\u9664\u7684\u6570\u636E\uFF01
@@ -269,6 +270,7 @@ assert.face.get.feature.fail=\u83B7\u53D6\u4EBA\u8138\u7279\u5F81\u503C\u5931\u8
 assert.face.not.recognized=\u672A\u8BC6\u522B\u5230\u4EBA\u8138\uFF01
 assert.face.comparison.error=\u4EBA\u8138\u5BF9\u6BD4\u5F02\u5E38 {0}\uFF01
 assert.face.info.not.null=\u4EBA\u8138\u4FE1\u606F\u4E0D\u80FD\u4E3A\u7A7A\uFF01
+assert.face.data.not.exist=\u4EBA\u8138\u5E93\u4E2D\u6682\u65E0\u60A8\u7684\u4EBA\u8138\u4FE1\u606F\uFF01
 ##\u767B\u5F55\u76F8\u5173
 assert.login.fingerprint.identity.unknown=\u65E0\u6CD5\u6839\u636E\u6307\u7EB9\u786E\u5B9A\u60A8\u7684\u8EAB\u4EFD\uFF0C\u8BF7\u901A\u8FC7\u5176\u5B83\u65B9\u5F0F\u767B\u5F55\uFF01
 assert.login.face.identity.unknown=\u65E0\u6CD5\u6839\u636E\u4EBA\u8138\u786E\u5B9A\u60A8\u7684\u8EAB\u4EFD\uFF0C\u8BF7\u901A\u8FC7\u5176\u5B83\u65B9\u5F0F\u767B\u5F55\uFF01
@@ -305,8 +307,6 @@ assert.business.loto.serial.no.not.null=\u9501\u5B9A\u7AD9\u5E8F\u5217\u53F7\u4E
 assert.business.point.serial.no.not.null=\u70B9\u4F4D\u5E8F\u5217\u53F7\u4E0D\u53EF\u4E3A\u7A7A\uFF01
 assert.business.nfc.no.lock.info.found=\u901A\u8FC7NFC\u67E5\u8BE2\u4E0D\u5230\u76F8\u5173\u6302\u9501\u4FE1\u606F\uFF01
 assert.business.multiple.faces.recognized.adjust=\u8BC6\u522B\u5230\u591A\u5F20\u4EBA\u8138\uFF0C\u8BF7\u91CD\u65B0\u8C03\u6574\u4F4D\u7F6E\uFF01
-
-
 assert.business.task.name.not.null=\u4EFB\u52A1\u540D\u79F0\u4E0D\u53EF\u4E3A\u7A7A!
 assert.business.key.required=\u8BF7\u4F20\u5165KEY
 assert.business.config.param.not.exist=\u8BE5\u914D\u7F6E\u53C2\u6570\u4E0D\u5B58\u5728\uFF01
@@ -329,7 +329,6 @@ assert.business.cabinet.code.not.exist=\u7269\u8D44\u67DCCODE\u4E0D\u5B58\u5728
 assert.business.recipient.not.exist=\u63A5\u6536\u4EBA\u4E0D\u5B58\u5728!
 assert.business.key.info.not.null=\u94A5\u5319\u4FE1\u606F\u4E0D\u53EF\u4E3A\u7A7A!
 assert.business.no.corresponding.accessory.info=\u65E0\u5BF9\u5E94\u7684\u8F85\u4EF6\u4FE1\u606F!
-
 assert.business.please.select.personnel.info=\u8BF7\u9009\u62E9\u4EBA\u5458\u4FE1\u606F\uFF01
 assert.business.please.configure.person.post.first=\u8BF7\u5148\u7ED9\u8BE5\u4EBA\u5458\u914D\u7F6E\u5C97\u4F4D\u4FE1\u606F\uFF01
 assert.business.step.id.not.null=\u6B65\u9AA4ID\u4E0D\u53EF\u4E3A\u7A7A\uFF01
@@ -340,3 +339,102 @@ assert.business.at.least.one.co.locker.required=\u8BF7\u81F3\u5C11\u8BBE\u5B9A\u
 assert.business.work.permit.step.lost.check.data=\u8BE5\u4F5C\u4E1A\u7968\u6B65\u9AA4\u5DF2\u4E22\u5931\uFF0C\u8BF7\u68C0\u67E5\u6570\u636E\uFF01
 assert.business.input.fingerprint.not.null=\u8F93\u5165\u7684\u6307\u7EB9\u4E0D\u80FD\u4E3A\u7A7A\uFF01
 assert.business.no.fingerprint.in.database=\u6307\u7EB9\u5E93\u4E2D\u6682\u65E0\u60A8\u7684\u6307\u7EB9\u4FE1\u606F\uFF01
+
+
+# \u90AE\u4EF6\u4EFB\u52A1\u76F8\u5173
+assert.mail.task.receive.user.not.null=\u6536\u53D6\u7528\u6237\u4E0D\u80FD\u4E3A\u7A7A
+assert.mail.task.template.not.null=\u90AE\u4EF6\u6A21\u677F\u4E0D\u80FD\u4E3A\u7A7A
+assert.mail.task.scheduled.send.time.not.null=\u8BA1\u5212\u53D1\u9001\u65F6\u95F4\u4E0D\u80FD\u4E3A\u7A7A
+
+# \u4F5C\u4E1A\u7968\u76F8\u5173
+assert.job.ticket.step6.executed.cannot.change.user=\u60A8\u5DF2\u6267\u884C\u5B8C\u7B2C6\u6B65\uFF0C\u65E0\u6CD5\u66F4\u6362\u4EBA\u5458\uFF01
+assert.job.ticket.process.not.null=\u5DE5\u827A\u4E0D\u53EF\u4E3A\u7A7A\uFF01
+assert.job.ticket.unfinished.step.cannot.complete=\u5B58\u5728\u672A\u5B8C\u6210\u7684\u6B65\u9AA4\uFF0C\u6682\u4E0D\u53EF\u5B8C\u6210\uFF01
+
+# \u7269\u8D44\u67DC\u76F8\u5173
+assert.material.cabinet.identity.required=\u8BF7\u544A\u8BC9\u6211\u7269\u8D44\u67DC\u8EAB\u4EFD (cabinetId / cabinetCode)!
+assert.material.cabinet.code.not.blank=\u7269\u8D44\u67DC\u5B50code\u4E0D\u80FD\u4E3A\u7A7A\uFF01
+assert.material.cabinet.no.materials=\u7269\u8D44\u4E2D\u65E0\u7269\u8D44\uFF01
+assert.material.cabinet.not.null=\u7269\u8D44\u67DC\u4E0D\u80FD\u4E3A\u7A7A\uFF01
+assert.material.cabinet.code.required=\u7F16\u7801\u4E0D\u80FD\u4E3A\u7A7A\uFF01
+assert.material.cabinet.code.already.used=\u8BE5\u7F16\u7801\u5DF2\u88AB\u4F7F\u7528\uFF0C\u8BF7\u91CD\u65B0\u586B\u5199\uFF01
+assert.material.cabinet.name.already.used=\u8BE5\u7269\u8D44\u67DC\u540D\u79F0\u5DF2\u88AB\u4F7F\u7528\uFF0C\u8BF7\u91CD\u65B0\u586B\u5199\uFF01
+assert.material.cabinet.has.materials.cannot.delete=\u7269\u8D44\u67DC\u4E0B\u5B58\u5728\u6240\u5C5E\u7269\u8D44\uFF0C\u8BF7\u5148\u6E05\u7406\u7269\u8D44\uFF01
+
+# \u68C0\u67E5\u8BA1\u5212\u76F8\u5173
+assert.material.check.plan.date.not.null=\u68C0\u67E5\u65E5\u671F\u4E0D\u53EF\u4E3A\u7A7A\uFF01
+assert.material.check.plan.inspector.not.null=\u68C0\u67E5\u5458\u4E0D\u53EF\u4E3A\u7A7A\uFF01
+assert.material.check.plan.select.cabinet.required=\u8BF7\u9009\u62E9\u9700\u8981\u68C0\u67E5\u7684\u67DC\u5B50\uFF01
+assert.material.check.plan.name.already.used=\u8BE5\u540D\u79F0\u5DF2\u88AB\u4F7F\u7528\uFF01
+assert.material.check.plan.id.not.null=\u68C0\u67E5\u8BA1\u5212ID\u4E0D\u80FD\u4E3A\u7A7A\uFF01
+assert.material.check.plan.duplicate.record=\u5B58\u5728\u91CD\u590D\u63D0\u4EA4\u68C0\u67E5\u8BB0\u5F55\uFF0C\u8BF7\u68C0\u67E5\uFF01
+assert.material.check.record.id.not.null=\u8BB0\u5F55id\u4E0D\u80FD\u4E3A\u7A7A\uFF01
+assert.material.check.plan.plan.id.not.null=\u8BA1\u5212id\u4E0D\u80FD\u7A7A\uFF01
+assert.material.check.plan.no.data.to.submit=\u6682\u65E0\u68C0\u67E5\u6570\u636E\u9700\u8981\u63D0\u4EA4\uFF01
+assert.material.check.plan.unchecked.materials=\u5B58\u5728\u672A\u68C0\u67E5\u7684\u7269\u8D44\uFF0C\u8BF7\u91CD\u65B0\u76D8\u67E5\uFF01
+
+# \u7269\u8D44\u76F8\u5173
+assert.material.id.not.null=\u7269\u8D44id\u4E0D\u80FD\u4E3A\u7A7A\uFF01
+assert.material.loan.restitution.user.id.not.null=\u5F52\u8FD8\u4EBAid\u4E0D\u80FD\u4E3A\u7A7A\uFF01
+assert.material.loan.restitution.cabinet.id.not.null=\u5F52\u8FD8\u67DCid\u4E0D\u80FD\u4E3A\u7A7A\uFF01
+assert.material.change.old.id.not.null=\u539F\u7269\u8D44ID\u4E0D\u80FD\u4E3A\u7A7A\uFF01
+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
+
+# SOP\u76F8\u5173
+assert.sop.machinery.process.id.not.null=\u8BBE\u5907\u5DE5\u827Aid\u4E0D\u53EF\u4E3A\u7A7A\uFF01
+assert.sop.already.exists=\u8BE5SOP\u5DF2\u5B58\u5728\uFF01
+assert.sop.import.material.data.not.null=\u5BFC\u5165\u7269\u6599\u4EA7\u54C1\u6570\u636E\u4E0D\u80FD\u4E3A\u7A7A\uFF01
+
+# \u94A5\u5319\u76F8\u5173
+assert.key.name.not.blank=\u540D\u79F0\u4E0D\u80FD\u4E3A\u7A7A\uFF01
+assert.key.name.already.used=\u8BE5\u94A5\u5319\u540D\u79F0\u5DF2\u88AB\u4F7F\u7528\uFF01
+assert.key.code.already.used=\u8BE5\u94A5\u5319\u7F16\u7801\u5DF2\u88AB\u4F7F\u7528\uFF01
+assert.key.mac.already.used=\u8BE5MAC\u5DF2\u88AB\u4F7F\u7528\uFF01
+assert.key.nfc.required=\u8BF7\u7ED9\u6211\u94A5\u5319\u7684nfc\uFF01
+assert.key.mac.address.required=\u8BF7\u7ED9\u6211\u94A5\u5319\u7684mac\u5730\u5740\uFF01
+assert.key.nfc.already.exists=\u8BE5nfc\u7684\u94A5\u5319\u5DF2\u5B58\u5728\uFF01
+assert.key.mac.already.exists=\u8BE5mac\u7684\u94A5\u5319\u5DF2\u5B58\u5728\uFF01
+
+# \u5DE5\u5361\u76F8\u5173
+assert.job.card.nfc.required=\u8BF7\u7ED9\u6211\u5DE5\u5361\u7684nfc\uFF01
+assert.job.card.nfc.already.exists=\u8BE5nfc\u7684\u5DE5\u5361\u5DF2\u5B58\u5728\uFF01
+
+# \u6302\u9501\u76F8\u5173
+assert.lock.name.already.used=\u8BE5\u6302\u9501\u540D\u79F0\u5DF2\u88AB\u4F7F\u7528\uFF01
+assert.lock.code.already.used=\u8BE5\u6302\u9501\u7F16\u7801\u5DF2\u88AB\u4F7F\u7528\uFF01
+assert.lock.nfc.required=\u8BF7\u7ED9\u6211\u6302\u9501\u7684nfc\uFF01
+assert.lock.nfc.already.exists=\u8BE5nfc\u7684\u6302\u9501\u5DF2\u5B58\u5728\uFF01
+
+# \u6302\u9501\u7C7B\u578B\u76F8\u5173
+assert.lock.type.name.already.used=\u8BE5\u6302\u9501\u7C7B\u578B\u540D\u79F0\u5DF2\u88AB\u4F7F\u7528\uFF01
+assert.lock.type.code.already.used=\u8BE5\u6302\u9501\u7C7B\u578B\u7F16\u7801\u5DF2\u88AB\u4F7F\u7528\uFF01
+assert.lock.type.has.subtype.cannot.delete=\u9009\u4E2D\u7684\u7C7B\u522B\u4E0B\u5B58\u5728\u5B50\u7C7B\uFF0C\u4E0D\u53EF\u5220\u9664\uFF01
+assert.lock.type.in.use.by.isolation.point.cannot.delete=\u9009\u4E2D\u7684\u7C7B\u522B\u4E0B\u6709\u88AB\u9694\u79BB\u70B9\u6B63\u5728\u4F7F\u7528\u7684\uFF0C\u4E0D\u53EF\u5220\u9664\uFF01
+
+# \u9501\u5177\u7C7B\u578B\u76F8\u5173
+assert.lockset.type.name.already.used=\u8BE5\u9501\u5177\u7C7B\u578B\u540D\u79F0\u5DF2\u88AB\u4F7F\u7528\uFF01
+assert.lockset.type.code.already.used=\u8BE5\u9501\u5177\u7C7B\u578B\u7F16\u7801\u5DF2\u88AB\u4F7F\u7528\uFF01
+assert.lockset.type.remove.subset.first=\u8BF7\u5148\u79FB\u9664\u5B50\u96C6
+
+# RFID\u76F8\u5173
+assert.rfid.token.already.exists=\u8BE5RFID\u5DF2\u5B58\u5728\uFF01
+assert.rfid.token.in.use.by.isolation.point.cannot.delete=\u5B58\u5728\u6B63\u5728\u88AB\u9694\u79BB\u70B9\u4F7F\u7528\u7684RFID\uFF0C\u4E0D\u53EF\u5220\u9664\uFF01
+assert.rfid.token.required=\u8BF7\u7ED9\u6211RFID\uFF01
+
+# \u90AE\u4EF6\u6A21\u677F\u76F8\u5173
+assert.mail.template.code.not.blank=\u6A21\u677F\u7F16\u7801\u4E0D\u80FD\u4E3A\u7A7A\uFF01
+assert.mail.template.code.already.used=\u8BE5\u6A21\u677F\u7F16\u7801\u5DF2\u5B58\u5728\uFF01
+assert.mail.template.id.not.null=\u6A21\u677Fid\u4E0D\u80FD\u4E3A\u7A7A\uFF01
+
+# \u7CFB\u7EDF\u5C5E\u6027\u76F8\u5173
+assert.system.attribute.value.not.blank=\u952E\u503C\u4E0D\u53EF\u4E3A\u7A7A
+assert.system.attribute.key.already.used=\u5F53\u524D\u952E\u540D\u5DF2\u5B58\u5728\uFF01
+assert.system.attribute.key.not.blank=\u952E\u540D\u4E0D\u53EF\u4E3A\u7A7A
+
+# \u5F00\u5173\u5E03\u5C40\u76F8\u5173
+assert.loto.switch.map.id.not.null=\u5F00\u5173\u5E03\u5C40ID\u4E0D\u80FD\u4E3A\u7A7A\uFF01
+
+# \u5176\u4ED6
+assert.res.api.check.id.not.null=checkId\u4E0D\u53EF\u4E3A\u7A7A\uFF01

+ 368 - 271
ktg-admin/src/main/resources/i18n/messages_en_US.properties

@@ -1,343 +1,440 @@
 #test
-no.exit.key=The key information does not exist
+no.exit.key=Key information not found
 
 #\u9519\u8BEF\u6D88\u606F
 not.null=* Required
-user.jcaptcha.error=Verification code error
-user.jcaptcha.expire=Verification code has expired
-user.not.exists=User does not exist/Incorrect password
-user.password.not.match=User does not exist/Incorrect password
+user.jcaptcha.error=Invalid verification code
+user.jcaptcha.expire=Verification code expired
+user.not.exists=User not found/Password incorrect
+user.password.not.match=User not found/Password incorrect
 user.password.retry.limit.count=Incorrect password entered {0} times
-user.password.retry.limit.exceed=Incorrect password entered {0} times, account locked for 10 minutes
-user.password.delete=Sorry, your account has been deleted
-user.blocked=User has been blocked, please contact the administrator
-role.blocked=Role has been blocked, please contact the administrator
+user.password.retry.limit.exceed=Account locked for 10 minutes after {0} failed attempts
+user.password.delete=Your account has been deleted
+user.blocked=Contact administrator: Account blocked
+role.blocked=Contact administrator: Role blocked
 user.logout.success=Logout successful
-
-length.not.valid=Length must be between {min} and {max} characters
-
-user.username.not.valid=* Composed of 2-20 Chinese characters, letters, numbers or underscores, and must start with a non-digit
+length.not.valid=Length between {min} and {max} characters
+user.username.not.valid=* 2-20 alphanumeric/underscore (non-numeric start)
 user.password.not.valid=* 5-50 characters
-
 user.email.not.valid=Invalid email format
-user.mobile.phone.number.not.valid=Invalid mobile phone number format
+user.mobile.phone.number.not.valid=Invalid phone number format
 user.login.success=Login successful
 user.register.success=Registration successful
-user.notfound=Please log in again
-user.forcelogout=Forced logout by administrator, please log in again
-user.unknown.error=Unknown error, please log in again
+user.notfound=Session expired. Please login again
+user.forcelogout=Admin forced logout. Re-login required
+user.unknown.error=System error. Please re-login
 
 ##\u6587\u4EF6\u4E0A\u4F20\u6D88\u606F
-upload.exceed.maxSize=The size of the uploaded file exceeds the limit!<br/>The maximum allowed file size is: {0}MB!
-upload.filename.exceed.length=The maximum length of the uploaded file name is {0} characters
+upload.exceed.maxSize=File size exceeds limit!<br/>Max: {0}MB
+upload.filename.exceed.length=Filename max {0} characters
 
 ##\u6743\u9650
-no.permission=You do not have permission to access the data, please contact the administrator to add permission [{0}]
-no.create.permission=You do not have permission to create data, please contact the administrator to add permission [{0}]
-no.update.permission=You do not have permission to modify data, please contact the administrator to add permission [{0}]
-no.delete.permission=You do not have permission to delete data, please contact the administrator to add permission [{0}]
-no.export.permission=You do not have permission to export data, please contact the administrator to add permission [{0}]
-no.view.permission=You do not have permission to view data, please contact the administrator to add permission [{0}]
+no.permission=No data permission. Contact admin: [{0}]
+no.create.permission=No create permission. Contact admin: [{0}]
+no.update.permission=No update permission. Contact admin: [{0}]
+no.delete.permission=No delete permission. Contact admin: [{0}]
+no.export.permission=No export permission. Contact admin: [{0}]
+no.view.permission=No view permission. Contact admin: [{0}]
 
 
 ##\u56DB\u3001\u5168\u5C40\u5F02\u5E38\u5904\u7406\u5668
-exception.auth.no.permission=No permission, please contact the administrator for authorization
-exception.demo.mode.not.allow=Demo mode, operation not allowed
+exception.auth.no.permission=Access denied. Contact administrator
+exception.demo.mode.not.allow=Demo mode: Operation disabled
 
 ##\u4E94\u3001AjaxResult \u9ED8\u8BA4\u6D88\u606F
 ajax.result.success=Operation successful
 ajax.result.error=Operation failed
 
 ##\u516D\u3001Controller \u7528\u6237\u7BA1\u7406\u76F8\u5173\u63D0\u793A
-user.add.fail.login.account.exist=Failed to add user '{0}', login account already exists
-user.add.fail.phone.exist=Failed to add user '{0}', mobile phone number already exists
-user.add.fail.email.exist=Failed to add user '{0}', email account already exists
-user.update.fail.phone.exist=Failed to update user '{0}', mobile phone number already exists
-user.update.fail.email.exist=Failed to update user '{0}', email account already exists
-user.update.user.detail.exception=Error updating personal information. Please contact the administrator.
+user.add.fail.login.account.exist=Username '{0}' already exists
+user.add.fail.phone.exist=Phone '{0}' already registered
+user.add.fail.email.exist=Email '{0}' already registered
+user.update.fail.phone.exist=Phone conflict: '{0}' in use
+user.update.fail.email.exist=Email conflict: '{0}' in use
+user.update.user.detail.exception=Profile update failed. Contact admin
 
 
 ##\u4E03\u3001Service \u5F02\u5E38\u63D0\u793A
 ##\u7528\u6237\u670D\u52A1
-user.service.import.data.not.null=Imported user data cannot be empty!
-user.service.operate.super.admin.not.allow=Operation on super administrator user is not allowed
-user.service.access.data.no.permission=No permission to access user data!
+user.service.import.data.not.null=Import data cannot be empty!
+user.service.operate.super.admin.not.allow=Super admin operation prohibited
+user.service.access.data.no.permission=Unauthorized user data access
 ##\u5C97\u4F4D\u670D\u52A1
-post.service.delete.assigned.not.allow={0} has been assigned and cannot be deleted
+post.service.delete.assigned.not.allow={0} assigned. Deletion blocked
 ##\u89D2\u8272\u670D\u52A1
-role.service.operate.super.admin.not.allow=Operation on super administrator role is not allowed
-role.service.access.data.no.permission=No permission to access role data!
-role.service.delete.assigned.not.allow={0} has been assigned and cannot be deleted
+role.service.operate.super.admin.not.allow=Super role modification prohibited
+role.service.access.data.no.permission=Unauthorized role access
+role.service.delete.assigned.not.allow={0} assignment exists. Deletion blocked
 ##\u914D\u7F6E\u670D\u52A1
-config.service.built.in.param.delete.not.allow=Built-in parameter [{0}] cannot be deleted
+config.service.built.in.param.delete.not.allow=Built-in parameter [{0}] protected
 ##\u5B57\u5178\u7C7B\u578B\u670D\u52A1
-dict.type.service.delete.assigned.not.allow={0} has been assigned and cannot be deleted
+dict.type.service.delete.assigned.not.allow={0} referenced. Deletion blocked
 ##\u90E8\u95E8\u670D\u52A1
-dept.service.access.data.no.permission=No permission to access department data!
-dept.service.add.disabled.not.allow=Department is disabled, new additions are not allowed
+dept.service.access.data.no.permission=Department access denied
+dept.service.add.disabled.not.allow=Department inactive: Add prohibited
 ##\u4EE3\u7801\u751F\u6210\u670D\u52A1
 code.gen.service.import.fail=Import failed: {0}
-code.gen.service.render.template.fail=Template rendering failed, table name: {0}
-code.gen.service.sync.data.fail.table.not.exist=Data synchronization failed, original table structure does not exist
-code.gen.service.tree.code.field.not.null=Tree code field cannot be empty
-code.gen.service.tree.parent.code.field.not.null=Tree parent code field cannot be empty
-code.gen.service.tree.name.field.not.null=Tree name field cannot be empty
-code.gen.service.sub.table.name.not.null=The table name of the associated sub-table cannot be empty
-code.gen.service.sub.table.fk.name.not.null=The foreign key name associated with the sub-table cannot be empty
+code.gen.service.render.template.fail=Template render failed: Table {0}
+code.gen.service.sync.data.fail.table.not.exist=Sync failed: Table missing
+code.gen.service.tree.code.field.not.null=Tree code field required
+code.gen.service.tree.parent.code.field.not.null=Parent tree code required
+code.gen.service.tree.name.field.not.null=Tree name field required
+code.gen.service.sub.table.name.not.null=Child table name required
+code.gen.service.sub.table.fk.name.not.null=Foreign key required for child table
 ##\u7528\u6237\u8BE6\u60C5\u670D\u52A1
-user.detail.service.login.user.not.exist=Logged-in user: {0} does not exist
-user.detail.service.account.deleted=Sorry, your account: {0} has been deleted
-user.detail.service.account.disabled=Sorry, your account: {0} has been disabled
-user.detail.service.account.blacklisted=Sorry, your account: {0} has been added to the blacklist of the {1} module and cannot log in temporarily!
-user.detail.service.account.lack.role.permission=Sorry, your account: {0} lacks role permissions and cannot log in temporarily. Please go to role or basic data configuration!
+user.detail.service.login.user.not.exist=User {0} not found
+user.detail.service.account.deleted=Account {0} deleted
+user.detail.service.account.disabled=Account {0} suspended
+user.detail.service.account.blacklisted=Blocked from {1} module: Account {0}
+user.detail.service.account.lack.role.permission=Missing role permissions: Account {0}
 ##\u79FB\u52A8\u7AEF\u767B\u5F55\u670D\u52A1
-mobile.login.service.sys.config.register.role.code.not.config=Please maintain the registered user role code [register_role_code] in the data dictionary [sys_config]
-mobile.login.service.sys.config.register.dept.code.not.config=Please maintain the registered user department code [register_dept_code] in the data dictionary [sys_config]
-mobile.login.service.sys.config.register.post.code.not.config=Please maintain the registered user post code [register_post_code] in the data dictionary [sys_config]
+mobile.login.service.sys.config.register.role.code.not.config=Configure register_role_code in sys_config
+mobile.login.service.sys.config.register.dept.code.not.config=Configure register_dept_code in sys_config
+mobile.login.service.sys.config.register.post.code.not.config=Configure register_post_code in sys_config
 ##\u9650\u6D41\u670D\u52A1
-limit.service.access.too.frequent=Access is too frequent, please try again later
+limit.service.access.too.frequent=Request throttled. Try later
 ##\u5B89\u5168\u5DE5\u5177
-security.util.get.user.id.error=Exception when obtaining user ID
-security.util.get.dept.id.error=Exception when obtaining department ID
-security.util.get.user.account.error=Exception when obtaining user account
-security.util.get.user.info.error=Exception when obtaining user information
+security.util.get.user.id.error=User ID retrieval failed
+security.util.get.dept.id.error=Department ID retrieval failed
+security.util.get.user.account.error=Account retrieval failed
+security.util.get.user.info.error=User info retrieval failed
+
+
 ##\u516B\u3001CommonResult \u6210\u529F\u6D88\u606F
-common.result.success.device.info=Device information: {0}
-common.result.success.import.data=Import successful, a total of {0} data records imported
+common.result.success.device.info= Device:{0}
+common.result.success.import.data=Imported {0} records
+
+
 ##\u4E5D\u3001Assert \u53C2\u6570\u6821\u9A8C\u63D0\u793A
 ##\u901A\u7528\u63D0\u793A
-assert.common.delete.select.data=Please select the data to be deleted!
-assert.common.param.id.not.null=ID cannot be empty!
-assert.common.param.primary.key.id.not.null=Primary key ID cannot be empty!
-assert.common.param.invalid=Invalid parameter!
+assert.common.delete.select.data=Select records to delete!
+assert.common.param.id.not.null=ID required!
+assert.common.param.primary.key.id.not.null=Primary key required!
+assert.common.param.invalid=Invalid parameters!
 ##\u4F5C\u4E1A\u7968\u76F8\u5173
-assert.work.order.info.not.exist=Work order information does not exist!
-assert.work.order.data.lost=Work order data is lost!
-assert.work.order.id.not.null=Work order ID cannot be empty!
-assert.work.order.current.id.not.null=Current work order ID cannot be empty!
-assert.work.order.step.six.cannot.cancel=This work order has been executed to the sixth step and cannot be canceled!
-assert.work.order.wait.lock.complete=Please wait for the locking of work order [{0}] to complete!
-assert.work.order.specify=Please specify which work order!
-assert.work.order.job.id.not.null=Job ID cannot be empty!
-assert.work.order.device.taken.cannot.operate=The equipment for the work order has been taken, operation not allowed!
-assert.work.order.not.started.cannot.co.lock=This work order has not started, do not co-lock!
-assert.work.order.already.co.locked.cannot.repeat=You have already co-locked, do not repeat co-locking!
-assert.work.order.not.co.locked.cannot.unlock=You have not co-locked yet, do not unlock!
-assert.work.order.already.unlocked.cannot.repeat=You have already unlocked, do not repeat unlocking!
-assert.work.order.code.not.null=Work order number cannot be empty!
-assert.work.order.name.not.null=Work order name cannot be empty!
-assert.work.order.select.isolation.point=Please select an isolation point!
-assert.work.order.person.info.not.null=Personnel information cannot be empty!
-assert.work.order.point.info.not.null=Point information cannot be empty!
+assert.work.order.info.not.exist=Work order not found!
+assert.work.order.data.lost=Work order data corrupt!
+assert.work.order.id.not.null=Work order ID required!
+assert.work.order.current.id.not.null=Current work order ID required!
+assert.work.order.step.six.cannot.cancel=Step 6: Cancellation prohibited
+assert.work.order.wait.lock.complete=Wait for lock completion: [{0}]
+assert.work.order.specify=Specify work order!
+assert.work.order.job.id.not.null=Job ID required!
+assert.work.order.device.taken.cannot.operate=Device allocated: Operation blocked
+assert.work.order.not.started.cannot.co.lock=Work order not started: Group lock invalid
+assert.work.order.already.co.locked.cannot.repeat=Group lock active: Duplication prevented
+assert.work.order.not.co.locked.cannot.unlock=No group lock: Unlock aborted
+assert.work.order.already.unlocked.cannot.repeat=Already unlocked: Operation ignored
+assert.work.order.code.not.null=Work order code required!
+assert.work.order.name.not.null=Work order name required!
+assert.work.order.select.isolation.point=Select isolation points!
+assert.work.order.person.info.not.null=Personnel info required!
+assert.work.order.point.info.not.null=Point information missing!
 ##\u94A5\u5319\u76F8\u5173
-assert.key.data.lost=Key data is lost!
-assert.key.nfc.no.corresponding.info=This NFC has no corresponding key information
-assert.key.specify.nfc=Please specify the NFC of the key!
-assert.key.nfc.not.null=Key NFC cannot be empty!
-assert.key.nfc.corresponding.info.not.exist={0} corresponding key information does not exist!
+assert.key.data.lost=Key data corruption!
+assert.key.nfc.no.corresponding.info=NFC tag unrecognized
+assert.key.specify.nfc=Specify key NFC!
+assert.key.nfc.not.null=Key NFC required!
+assert.key.nfc.corresponding.info.not.exist=Key not found: {0}
 ##\u6302\u9501\u76F8\u5173
-assert.lock.data.lost=Padlock data is lost!
-assert.lock.nfc.no.corresponding.info=This NFC has no corresponding padlock information!
-assert.lock.nfc.not.null=The padlock's NFC cannot be empty!
-assert.lock.nfc.corresponding.data.not.exist={0} corresponding padlock data does not exist!
-assert.lock.nfc.missing=Padlock NFC is missing!
-assert.lock.specify.nfc=Please specify the NFC of the padlock!
-assert.lock.name.already.taken={0} has been taken out!
-assert.lock.point.error.duplicate=Point padlock error, duplicate point [{0}]. Please use multiple locks to complete the locking of duplicate points!
-assert.lock.take.at.least.one=Please take out at least one padlock!
+assert.lock.data.lost=Lock data corrupt!
+assert.lock.nfc.no.corresponding.info=NFC tag unrecognized
+assert.lock.nfc.not.null=Lock NFC required!
+assert.lock.nfc.corresponding.data.not.exist=Lock not found: {0}
+assert.lock.nfc.missing=Lock NFC missing!
+assert.lock.specify.nfc=Specify lock NFC!
+assert.lock.name.already.taken={0} currently in use!
+assert.lock.point.error.duplicate=Duplicate lock point [{0}]. Complete multi-lock first!
+assert.lock.take.at.least.one=Remove minimum one lock!
 ##\u786C\u4EF6\u76F8\u5173
-assert.hardware.serial.no.corresponding.info=This serial number has no corresponding hardware information!
-assert.hardware.lock.no.init.data.for.update=No initialization data available for updating this padlock
-assert.hardware.accessory.no.init.data.for.update=No initialization data available for updating this accessory
-assert.hardware.code.not.null=Hardware code cannot be empty!
-assert.hardware.name.not.null=Hardware name cannot be empty!
-assert.hardware.code.already.used={0} is already in use!
-assert.hardware.specify.return.location=Please specify where to return it!
-assert.hardware.specify.return.cabinet=Please specify which cabinet to return it to!
+assert.hardware.serial.no.corresponding.info=Serial number unrecognized
+assert.hardware.lock.no.init.data.for.update=Lock initialization missing
+assert.hardware.accessory.no.init.data.for.update=Accessory initialization missing
+assert.hardware.code.not.null=Hardware code required!
+assert.hardware.name.not.null=Hardware name required!
+assert.hardware.code.already.used={0} already in use!
+assert.hardware.specify.return.location=Specify return location!
+assert.hardware.specify.return.cabinet=Specify storage cabinet!
 ##\u9694\u79BB\u70B9\u76F8\u5173
-assert.isolation.point.nfc.no.corresponding.info=This NFC has no corresponding isolation point information
-assert.isolation.point.name.used.by.sop.cannot.delete=Point {0} is being used by SOP and cannot be deleted!
-assert.isolation.point.used.by.loto.cannot.delete={0} is being used by the {1} lockout station. Please unbind it from the lockout station first!
-assert.isolation.point.name.not.null=Isolation point name cannot be empty!
-assert.isolation.point.code.name.not.null=Isolation point code name cannot be empty!
-assert.isolation.point.id.not.null=Isolation point ID cannot be empty!
-assert.isolation.point.name.already.used=This isolation point name is already in use!
-assert.isolation.point.nfc.already.used=This NFC is already in use!
-assert.isolation.point.code.already.used=This code is already in use!
-assert.isolation.point.serial.no.already.used=This serial number is already in use!
-assert.isolation.point.query.error=Error querying isolation point information!
+assert.isolation.point.nfc.no.corresponding.info=NFC tag unrecognized
+assert.isolation.point.name.used.by.sop.cannot.delete={0} linked to SOP: Deletion blocked
+assert.isolation.point.used.by.loto.cannot.delete={0} used by {1} station: Unbind first
+assert.isolation.point.name.not.null=Isolation point name required!
+assert.isolation.point.code.name.not.null=Code/Name required!
+assert.isolation.point.id.not.null=Isolation point ID required!
+assert.isolation.point.name.already.used=Name already exists!
+assert.isolation.point.nfc.already.used=NFC already assigned!
+assert.isolation.point.code.already.used=Code already in use!
+assert.isolation.point.serial.no.already.used=Serial number duplicate!
+assert.isolation.point.query.error=Query failed!
 ##\u8F85\u4EF6\u76F8\u5173
-assert.accessory.nfc.no.corresponding.info=This NFC has no corresponding accessory information
-assert.accessory.nfc.missing=Accessory NFC is missing!
-assert.accessory.take.at.least.one=Please take out at least one accessory!
+assert.accessory.nfc.no.corresponding.info=NFC tag unrecognized
+assert.accessory.nfc.missing=Accessory NFC missing!
+assert.accessory.take.at.least.one=Remove minimum one accessory!
 ##\u5C97\u4F4D\u76F8\u5173
-assert.post.info.not.exist=Post information does not exist!
-assert.post.name.not.null=Post name cannot be empty!
-assert.post.name.already.used=This post name is already in use!
-assert.post.id.not.null=Post ID cannot be empty!
-assert.post.not.null=Post cannot be empty!
-assert.post.used.by.user.cannot.delete=The post is being used by users and cannot be deleted!
-assert.post.has.children.cannot.delete=The post has sub-posts and cannot be deleted!
+assert.post.info.not.exist=Position not found!
+assert.post.name.not.null=Position name required!
+assert.post.name.already.used=Name already exists!
+assert.post.id.not.null=Position ID required!
+assert.post.not.null=Position required!
+assert.post.used.by.user.cannot.delete=Assigned to users: Deletion blocked
+assert.post.has.children.cannot.delete=Sub positions exist: Deletion blocked
 ##SOP \u76F8\u5173
-assert.sop.data.not.exist=SOP data does not exist!
-assert.sop.id.not.null=sopId cannot be empty!
-assert.sop.name.not.null=SOP name cannot be empty!
-assert.sop.code.name.not.null=SOP code name cannot be empty!
-assert.sop.code.already.used=This SOP code is already in use!
-assert.sop.sort.data.not.null=Sorting data cannot be empty!
+assert.sop.data.not.exist=SOP not found!
+assert.sop.id.not.null=SOP ID required!
+assert.sop.name.not.null=SOP name required!
+assert.sop.code.name.not.null=Code/Name required!
+assert.sop.code.already.used=Code already exists!
+assert.sop.sort.data.not.null=Sort order required!
 ##\u8BBE\u5907\u5DE5\u827A\u76F8\u5173
-assert.machinery.process.info.not.exist=Equipment process information does not exist!
-assert.machinery.process.name.not.null=Name cannot be empty!
-assert.machinery.process.parent.id.not.null=Parent ID cannot be empty!
-assert.machinery.process.name.already.used=[{0}] name is already used by a process/equipment, please re-enter!
-assert.machinery.process.select.isolation.point=Please select an isolation point!
+assert.machinery.process.info.not.exist=Process not found!
+assert.machinery.process.name.not.null=Name required!
+assert.machinery.process.parent.id.not.null=Parent ID required!
+assert.machinery.process.name.already.used=[{0}] exists in processes/equipment!
+assert.machinery.process.select.isolation.point=Select isolation points!
 ##\u5DE5\u4F5C\u533A\u57DF\u76F8\u5173
-assert.work.area.name.not.null=Work area name cannot be empty!
-assert.work.area.code.name.not.null=Work area code name cannot be empty!
-assert.work.area.id.not.null=Work area ID cannot be empty!
-assert.work.area.code.already.used=This work area code is already in use!
-assert.work.area.has.isolation.point.cannot.delete={0} has isolation points and cannot be deleted temporarily!
-assert.work.area.pass.id=Please pass the work area ID
+assert.work.area.name.not.null=Area name required!
+assert.work.area.code.name.not.null=Code/Name required!
+assert.work.area.id.not.null=Area ID required!
+assert.work.area.code.already.used=Code already exists!
+assert.work.area.has.isolation.point.cannot.delete={0} contains points: Deletion blocked
+assert.work.area.pass.id=Pass area ID!
 ##\u9501\u63A7\u67DC / \u7269\u8D44\u67DC\u76F8\u5173
-assert.cabinet.lock.id.not.null=Lock cabinet ID cannot be empty!
-assert.cabinet.material.code.not.null=Material cabinet code cannot be empty!
-assert.cabinet.material.info.not.exist=Material cabinet information does not exist!
-assert.cabinet.material.code.identity.unrecognized=Unable to recognize the identity of the {0} material cabinet!
-assert.cabinet.not.exist=Cabinet does not exist!
-assert.cabinet.material.specify=Please specify which material cabinet this is!
-assert.cabinet.code.not.null=cabinetCode cannot be empty!
-assert.cabinet.material.no.inspection.plan=There is currently no inspection plan for you for this material cabinet!
-assert.cabinet.material.no.executable.inspection.plan=There is no inspection plan for you to execute for the current material cabinet!
-assert.cabinet.clear.position.info.first=Please clear the position information under the cabinet first!
-assert.cabinet.code.already.used=This code is already in use, please replace it!
-assert.cabinet.name.already.used=This name is already in use, please replace it!
-assert.cabinet.electric.id.not.null=Electrical cabinet ID cannot be empty!
-assert.cabinet.electric.pass.id=Please pass the electrical cabinet ID
-assert.cabinet.name.not.null=Name cannot be empty!
-assert.cabinet.name.already.used.retry=This name is already in use, please re-enter!
+assert.cabinet.lock.id.not.null=Cabinet lock ID required!
+assert.cabinet.material.code.not.null=Material cabinet code required!
+assert.cabinet.material.info.not.exist=Cabinet not found!
+assert.cabinet.material.code.identity.unrecognized=Unknown cabinet: {0}!
+assert.cabinet.not.exist=Cabinet missing!
+assert.cabinet.material.specify=Specify material cabinet!
+assert.cabinet.code.not.null=Cabinet code required!
+assert.cabinet.material.no.inspection.plan=No inspection plans assigned!
+assert.cabinet.material.no.executable.inspection.plan=No active inspection plans!
+assert.cabinet.clear.position.info.first=Clear compartments first!
+assert.cabinet.code.already.used=Code already exists!
+assert.cabinet.name.already.used=Name already exists!
+assert.cabinet.electric.id.not.null=Electrical cabinet ID required!
+assert.cabinet.electric.pass.id=Pass electrical cabinet ID!
+assert.cabinet.name.not.null=Name required!
+assert.cabinet.name.already.used.retry=Name exists. Try different!
 ##\u7269\u8D44\u76F8\u5173
-assert.material.rfid.not.null=Material RFID cannot be empty!
-assert.material.rfid.not.found=No material found via RFID: {0}!
-assert.material.cabinet.code.not.found=No material cabinet information found via material cabinet code: {0}!
-assert.material.put.new.in.cabinet=Please put new materials in this cabinet!
-assert.material.original.not.exist=Original material does not exist
-assert.material.new.not.exist=New material does not exist
-assert.material.code.already.used=This material code is already in use!
-assert.material.rfid.already.used=This RFID is already in use!
-assert.material.not.exist=This material does not exist!
-assert.material.specify.rfid=Please specify the material's RFID!
-assert.material.specify.borrow.or.return=Please specify whether to borrow or return!
-assert.material.rfid.already.borrowed={0} material is already in borrowed status and cannot be borrowed again!
-assert.material.rfid.already.in.cabinet={0} material is already in the cabinet and cannot be put in again!
-assert.material.cabinet.info.not.null=Material cabinet information cannot be empty!
-assert.material.select=Please select materials
-assert.material.old.id.not.null=Old material ID cannot be empty!
-assert.material.new.rfid.not.null=New material RFID cannot be empty!
-assert.material.to.replace.not.taken=The material to be replaced has not been taken out!
-assert.material.has.cabinet.cannot.replace=This material has an associated cabinet and cannot be replaced!
-assert.material.replace.abnormal=The material to be replaced is abnormal and cannot be replaced!
-assert.material.no.maintain.or.replace=No materials to be maintained or replaced have been confirmed!
-assert.material.import.data.not.null=Imported material data cannot be empty!
+assert.material.rfid.not.null=Material RFID required!
+assert.material.rfid.not.found=Material not found: RFID {0}!
+assert.material.cabinet.code.not.found=Cabinet not found: Code {0}!
+assert.material.put.new.in.cabinet=Add new materials to cabinet!
+assert.material.original.not.exist=Original material missing!
+assert.material.new.not.exist=New material missing!
+assert.material.code.already.used=Code already exists!
+assert.material.rfid.already.used=RFID already assigned!
+assert.material.not.exist=Material not found!
+assert.material.specify.rfid=Specify material RFID!
+assert.material.specify.borrow.or.return=Specify borrow/return action!
+assert.material.rfid.already.borrowed={0} already borrowed!
+assert.material.rfid.already.in.cabinet={0} already stored!
+assert.material.cabinet.info.not.null=Cabinet info required!
+assert.material.select=Select materials!
+assert.material.old.id.not.null=Old material ID required!
+assert.material.new.rfid.not.null=New material RFID required!
+assert.material.to.replace.not.taken=Original material not removed!
+assert.material.has.cabinet.cannot.replace=Still stored: Replacement blocked!
+assert.material.replace.abnormal=Replacement failed!
+assert.material.no.maintain.or.replace=No repair/replacement specified!
+assert.material.import.data.not.null=Import data required!
 ##\u7269\u8D44\u5206\u7C7B\u76F8\u5173
-assert.material.category.has.materials.cannot.delete={0} category has materials and cannot be deleted!
-assert.material.category.has.children.cannot.delete={0} category has subcategories and cannot be deleted!
-assert.material.category.code.already.used=This material category code is already in use!
-assert.material.category.borrow.duration.gte.reminder=The borrowing duration must be greater than or equal to the reminder duration!
+assert.material.category.has.materials.cannot.delete={0} contains items: Deletion blocked!
+assert.material.category.has.children.cannot.delete={0} has subcategories: Deletion blocked!
+assert.material.category.code.already.used=Category code exists!
+assert.material.category.borrow.duration.gte.reminder=Borrow duration >= reminder period!
 ##\u7535\u673A\u76F8\u5173
-assert.motor.data.not.exist=This motor data does not exist!
-assert.motor.map.primary.key.not.null=Map primary key cannot be empty
+assert.motor.data.not.exist=Motor data missing!
+assert.motor.map.primary.key.not.null=Map primary key required!
 ##\u5730\u56FE\u76F8\u5173
-assert.map.data.parse.fail=Map data parsing failed!
-assert.map.provide.loto.cabinet.serial.no=Please provide the LOTO cabinet serial number!
+assert.map.data.parse.fail=Map parsing failed!
+assert.map.provide.loto.cabinet.serial.no=Provide LOTO cabinet serial!
 ##\u68C0\u67E5\u8BA1\u5212\u76F8\u5173
-assert.inspection.plan.configure.template=Please configure the material inspection plan template in the basic data!
-assert.inspection.plan.id.not.null=Inspection plan planId cannot be empty!
+assert.inspection.plan.configure.template=Configure inspection template in base data!
+assert.inspection.plan.id.not.null=Plan ID required!
 ##\u6307\u7EB9\u76F8\u5173
-assert.fingerprint.specify.user=Please specify which user's fingerprint this is!
-assert.fingerprint.group.not.null=Fingerprint group cannot be empty!
-assert.fingerprint.entry.limit.reached=The fingerprint entry limit for this person has been reached, maximum {0} entries!
-assert.fingerprint.unrecognizable.retry=This file fingerprint is unrecognizable, please re-enter!
-assert.fingerprint.similarity.low.retry=The fingerprint similarity is too low, please re-enter!
-assert.fingerprint.info.not.null=Fingerprint information cannot be empty!
+assert.fingerprint.specify.user=Link fingerprint to user!
+assert.fingerprint.group.not.null=Fingerprint group required!
+assert.fingerprint.entry.limit.reached=Max {0} prints reached!
+assert.fingerprint.unrecognizable.retry=Unreadable print: Re-scan!
+assert.fingerprint.similarity.low.retry=Low similarity: Re-enroll!
+assert.fingerprint.info.not.null=Print data required!
 ##\u4EBA\u8138\u76F8\u5173
-assert.face.specify.user=Please specify which user's face this is!
-assert.face.entry.limit.reached=The face entry limit for this person has been reached, maximum {0} entries!
-assert.face.file.parse.fail=Face file parsing failed!
-assert.face.upload.file=Please upload a face file!
-assert.face.get.fail=Failed to obtain face!
-assert.face.get.feature.fail=Failed to obtain face feature value!
-assert.face.not.recognized=No face recognized!
-assert.face.comparison.error=Face comparison error {0}!
-assert.face.info.not.null=Face information cannot be empty!
+assert.face.specify.user=Link face to user!
+assert.face.entry.limit.reached=Max {0} faces stored!
+assert.face.file.parse.fail=Face file corrupt!
+assert.face.upload.file=Upload face image!
+assert.face.get.fail=Face retrieval failed!
+assert.face.get.feature.fail=Feature extraction failed!
+assert.face.not.recognized=Face not recognized!
+assert.face.comparison.error=Comparison error: {0}!
+assert.face.info.not.null=Face data required!
+assert.face.data.not.exist=No Face Data Found!
 ##\u767B\u5F55\u76F8\u5173
-assert.login.fingerprint.identity.unknown=Unable to confirm your identity via fingerprint, please log in through other methods!
-assert.login.face.identity.unknown=Unable to confirm your identity via face recognition, please log in through other methods!
+assert.login.fingerprint.identity.unknown=Fingerprint unrecognized: Alternative login!
+assert.login.face.identity.unknown=Face unrecognized: Alternative login!
 ##\u7F16\u7801\u89C4\u5219\u76F8\u5173
-assert.code.rule.input.char.not.null=The input character for the coding rule cannot be empty!
-assert.code.rule.type.not.found=Business coding generation rule for the specified type: [{0}] not found
-assert.code.rule.result.record.not.found=Result record corresponding to rule {[]} not found
-assert.code.rule.input.char.length.error=Incorrect length of input character!
-assert.code.rule.serial.number.component.unique=There can only be one serial number component in the coding rule [{0}]
-assert.code.rule.generated.code.empty=The code generated by rule: [{0}] is empty!
-assert.code.rule.generated.code.exceed.max.length=The generated code [{0}] exceeds the maximum length configured in the rule: [{1}]
+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.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}]!
+assert.code.rule.generated.code.exceed.max.length=Code [{0}] too long: Max {1} chars!
 ##\u4E1A\u52A1\u7F16\u7801\u76F8\u5173
-assert.business.code.max.length.less.than.sum=The maximum length {0} is less than the sum of segment lengths {1}, please expand the maximum length!
+assert.business.code.max.length.less.than.sum=Max length {0} < segment sum {1}!
 ##\u6587\u4EF6\u4E0A\u4F20\u76F8\u5173
-assert.file.upload.param.invalid=Invalid parameter!
+assert.file.upload.param.invalid=Invalid upload parameters!
 ##\u7EDF\u8BA1\u76F8\u5173
-assert.statistics.type.not.null=Type cannot be empty!
+assert.statistics.type.not.null=Statistic type required!
 ##\u7528\u6237\u76F8\u5173
-assert.user.data.duplicate.name.modify=Duplicate user names exist in the user data, please modify!
-assert.user.not.exist.in.system=This user does not exist in the system!
-assert.user.work.card.not.bound=This work card is not bound to a user!
-assert.user.employee.card.no.work.task=The employee bound to this employee card has no work tasks temporarily!
-assert.user.operate.co.lock.status.not.null=The co-lock/unlock status of the operation cannot be empty!
-assert.user.work.card.nfc.not.null=Work card NFC cannot be empty!
+assert.user.data.duplicate.name.modify=Duplicate names detected: Modify!
+assert.user.not.exist.in.system=User not in system!
+assert.user.work.card.not.bound=Card not linked to user!
+assert.user.employee.card.no.work.task=No tasks assigned!
+assert.user.operate.co.lock.status.not.null=Lock status required!
+assert.user.work.card.nfc.not.null=Card NFC required!
 ##\u5B57\u5178\u6570\u636E\u76F8\u5173
-assert.dict.data.key.value.exist=The key value: {0} already exists under this dictionary type, please re-enter!
+assert.dict.data.key.value.exist=Value exists: {0}!
 ##\u5176\u4ED6\u4E1A\u52A1\u903B\u8F91
 assert.business.no.data.received=No data received!
-assert.business.specify.isolation.point.info=Please provide isolation point information!
-assert.business.specify.lock.or.unlock=Please specify whether to lock or unlock!
-assert.business.specify.task.status=Please specify the current status of the task!
-assert.business.point.switch.data.not.null=Point switch data cannot be empty!
-assert.business.loto.serial.no.not.null=Lockout station serial number cannot be empty!
-assert.business.point.serial.no.not.null=Point serial number cannot be empty!
-assert.business.nfc.no.lock.info.found=No relevant padlock information found via NFC!
-assert.business.multiple.faces.recognized.adjust=Multiple faces recognized, please readjust the position!
+assert.business.specify.isolation.point.info=Specify isolation points!
+assert.business.specify.lock.or.unlock=Specify lock/unlock action!
+assert.business.specify.task.status=Specify task status!
+assert.business.point.switch.data.not.null=Switch data required!
+assert.business.loto.serial.no.not.null=LOTO serial required!
+assert.business.point.serial.no.not.null=Point serial required!
+assert.business.nfc.no.lock.info.found=No lock found via NFC!
+assert.business.multiple.faces.recognized.adjust=Multiple faces detected: Re-position!
+assert.business.task.name.not.null=Task name required!
+assert.business.key.required=Specify KEY!
+assert.business.config.param.not.exist=Config parameter missing!
+assert.business.email.param.missing.check=Email params missing!
+assert.business.step4.executed.cannot.change.locker=Step 4 completed: Locker change blocked!
+assert.business.card.no.required=Enter card number!
+assert.business.card.not.exist=Card not found!
+assert.business.no.associated.user=No linked user!
+assert.business.please.login.first=Login required!
+assert.business.user.not.exist=User not found!
+assert.business.user.not.bound.card=User-card link missing!
+assert.business.card.invalid=Invalid card!
+assert.business.current.user.info.not.exist=User profile missing!
+assert.business.data.not.exist=Data not found!
+assert.business.current.task.param.missing=Task parameters missing!
+assert.business.task.not.exist=Task not found!
+assert.business.template.code.not.null=Template code required!
+assert.business.type.not.null=Type required!
+assert.business.cabinet.code.not.exist=Cabinet code invalid!
+assert.business.recipient.not.exist=Recipient missing!
+assert.business.key.info.not.null=Key info required!
+assert.business.no.corresponding.accessory.info=Accessory not found!
+assert.business.please.select.personnel.info=Select personnel!
+assert.business.please.configure.person.post.first=Assign position first!
+assert.business.step.id.not.null=Step ID required!
+assert.business.status.not.null=Status required!
+assert.business.please.execute.previous.step.first=Complete previous step!
+assert.business.please.set.locker.first=Designate locker!
+assert.business.at.least.one.co.locker.required=Minimum one co-locker!
+assert.business.work.permit.step.lost.check.data=Step loss detected: Review data!
+assert.business.input.fingerprint.not.null=Fingerprint required!
+assert.business.no.fingerprint.in.database=No prints enrolled!
+
+
+# \u90AE\u4EF6\u4EFB\u52A1\u76F8\u5173
+assert.mail.task.receive.user.not.null=Recipient required!
+assert.mail.task.template.not.null=Email template required!
+assert.mail.task.scheduled.send.time.not.null=Scheduled send time required!
+
+# \u4F5C\u4E1A\u7968\u76F8\u5173
+assert.job.ticket.step6.executed.cannot.change.user=User cannot be changed after step 6 execution!
+assert.job.ticket.process.not.null=Process required!
+assert.job.ticket.unfinished.step.cannot.complete=Completion blocked by unfinished steps!
+
+# \u7269\u8D44\u67DC\u76F8\u5173
+assert.material.cabinet.identity.required=Cabinet ID or code required!
+assert.material.cabinet.code.not.blank=Cabinet code required!
+assert.material.cabinet.no.materials=No materials in cabinet!
+assert.material.cabinet.not.null=Cabinet required!
+assert.material.cabinet.code.required=Code required!
+assert.material.cabinet.code.already.used=Code already in use!
+assert.material.cabinet.name.already.used=Cabinet name already exists!
+assert.material.cabinet.has.materials.cannot.delete=Cannot delete cabinet with materials present!
+
+# \u68C0\u67E5\u8BA1\u5212\u76F8\u5173
+assert.material.check.plan.date.not.null=Inspection date required!
+assert.material.check.plan.inspector.not.null=Inspector required!
+assert.material.check.plan.select.cabinet.required=Cabinet selection required!
+assert.material.check.plan.name.already.used=Name already exists!
+assert.material.check.plan.id.not.null=Check plan ID required!
+assert.material.check.plan.duplicate.record=Duplicate record detected!
+assert.material.check.record.id.not.null=Record ID required!
+assert.material.check.plan.plan.id.not.null=Plan ID required!
+assert.material.check.plan.no.data.to.submit=No data to submit!
+assert.material.check.plan.unchecked.materials=Uninspected materials found!
+
+# \u7269\u8D44\u76F8\u5173
+assert.material.id.not.null=Material ID required!
+assert.material.loan.restitution.user.id.not.null=Return user ID required!
+assert.material.loan.restitution.cabinet.id.not.null=Return cabinet ID required!
+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!
+
+# SOP\u76F8\u5173
+assert.sop.machinery.process.id.not.null=Machinery process ID required!
+assert.sop.already.exists=SOP already exists!
+assert.sop.import.material.data.not.null=Import data required!
+
+# \u94A5\u5319\u76F8\u5173
+assert.key.name.not.blank=Key name required!
+assert.key.name.already.used=Key name already in use!
+assert.key.code.already.used=Key code already in use!
+assert.key.mac.already.used=MAC address already in use!
+assert.key.nfc.required=NFC required for key!
+assert.key.mac.address.required=MAC address required for key!
+assert.key.nfc.already.exists=Key with NFC already exists!
+assert.key.mac.already.exists=Key with MAC already exists!
+
+# \u5DE5\u5361\u76F8\u5173
+assert.job.card.nfc.required=NFC required for job card!
+assert.job.card.nfc.already.exists=Job card with NFC already exists!
+
+# \u6302\u9501\u76F8\u5173
+assert.lock.name.already.used=Padlock name already in use!
+assert.lock.code.already.used=Padlock code already in use!
+assert.lock.nfc.required=NFC required for padlock!
+assert.lock.nfc.already.exists=Padlock with NFC already exists!
+
+# \u6302\u9501\u7C7B\u578B\u76F8\u5173
+assert.lock.type.name.already.used=Padlock type name already exists!
+assert.lock.type.code.already.used=Padlock type code already in use!
+assert.lock.type.has.subtype.cannot.delete=Cannot delete type with subtypes!
+assert.lock.type.in.use.by.isolation.point.cannot.delete=Type in use by isolation points!
+
+# \u9501\u5177\u7C7B\u578B\u76F8\u5173
+assert.lockset.type.name.already.used=Lockset type name already exists!
+assert.lockset.type.code.already.used=Lockset type code already in use!
+assert.lockset.type.remove.subset.first=Remove subset first!
+
+# RFID\u76F8\u5173
+assert.rfid.token.already.exists=RFID token already exists!
+assert.rfid.token.in.use.by.isolation.point.cannot.delete=Token in use by isolation points!
+assert.rfid.token.required=RFID token required!
 
+# \u90AE\u4EF6\u6A21\u677F\u76F8\u5173
+assert.mail.template.code.not.blank=Template code required!
+assert.mail.template.code.already.used=Template code already exists!
+assert.mail.template.id.not.null=Template ID required!
 
-assert.business.task.name.not.null=Task name cannot be empty!
-assert.business.key.required=Please pass the key
-assert.business.config.param.not.exist=This configuration parameter does not exist!
-assert.business.email.param.missing.check=Email parameter is missing, please check!
-assert.business.step4.executed.cannot.change.locker=You have completed Step 4 and cannot change the locker!
-assert.business.card.no.required=Please enter the card number!
-assert.business.card.not.exist=The card does not exist!
-assert.business.no.associated.user=No associated user!
-assert.business.please.login.first=Please log in first!
-assert.business.user.not.exist=The user does not exist!
-assert.business.user.not.bound.card=The user has not bound a card!
-assert.business.card.invalid=This card is invalid!
-assert.business.current.user.info.not.exist=Current user information does not exist!
-assert.business.data.not.exist=The data does not exist!
-assert.business.current.task.param.missing=Current task is missing parameters
-assert.business.task.not.exist=This task does not exist
-assert.business.template.code.not.null=templateCode cannot be empty!
-assert.business.type.not.null=type cannot be empty!
-assert.business.cabinet.code.not.exist=Material cabinet code does not exist
-assert.business.recipient.not.exist=The recipient does not exist!
-assert.business.key.info.not.null=Key information cannot be empty!
-assert.business.no.corresponding.accessory.info=No corresponding accessory information!
+# \u7CFB\u7EDF\u5C5E\u6027\u76F8\u5173
+assert.system.attribute.value.not.blank=Attribute value required!
+assert.system.attribute.key.already.used=Attribute key already exists!
+assert.system.attribute.key.not.blank=Attribute key required!
 
+# \u5F00\u5173\u5E03\u5C40\u76F8\u5173
+assert.loto.switch.map.id.not.null=Switch map ID required!
 
-assert.business.please.select.personnel.info=Please select personnel information!
-assert.business.please.configure.person.post.first=Please configure post information for this personnel first!
-assert.business.step.id.not.null=Step ID cannot be empty!
-assert.business.status.not.null=Status cannot be empty!
-assert.business.please.execute.previous.step.first=Please execute the previous step first!
-assert.business.please.set.locker.first=Please set the locker first!
-assert.business.at.least.one.co.locker.required=Please set at least one co-locker!
-assert.business.work.permit.step.lost.check.data=This work permit step has been lost, please check the data!
-assert.business.input.fingerprint.not.null=The input fingerprint cannot be empty!
-assert.business.no.fingerprint.in.database=There is no your fingerprint information in the fingerprint database!
+# \u5176\u4ED6
+assert.res.api.check.id.not.null=Check ID required!

+ 4 - 4
ktg-framework/src/main/java/com/ktg/framework/web/service/SysLoginService.java

@@ -258,11 +258,11 @@ public class SysLoginService {
     }
 
     public AjaxResult loginByFace(MultipartFile file) throws IOException {
-        Assert.isTrue(file.getSize() > 0, "输入的人脸不能为空!");
+        Assert.isTrue(file.getSize() > 0, MessageUtils.message("assert.face.info.not.null"));
         // 获取所有的用户人脸
         List<SysUserCharacteristic> list = iSysUserCharacteristicService.list(Wrappers.<SysUserCharacteristic>lambdaQuery()
                 .eq(SysUserCharacteristic::getType, "2"));
-        Assert.isFalse(list.isEmpty(), "人脸库中暂无您的人脸信息!");
+        Assert.isFalse(list.isEmpty(), MessageUtils.message("assert.face.data.not.exist"));
         List<String> collect = list.stream().map(SysUserCharacteristic::getContent).collect(Collectors.toList());
         // List<FaceCutVO> bean = BeanUtils.toBean(list, FaceCutVO.class);
         // 通过人脸获取最相似的用户
@@ -293,11 +293,11 @@ public class SysLoginService {
 
     public AjaxResult loginByArcFace(MultipartFile file) throws IOException {
 
-        Assert.isTrue(file.getSize() > 0, "输入的人脸不能为空!");
+        Assert.isTrue(file.getSize() > 0, MessageUtils.message("assert.face.info.not.null"));
         // 获取所有的用户人脸
         List<SysUserCharacteristic> list = iSysUserCharacteristicService.list(Wrappers.<SysUserCharacteristic>lambdaQuery()
                 .eq(SysUserCharacteristic::getType, "2"));
-        Assert.isFalse(list.isEmpty(), "人脸库中暂无您的人脸信息!");
+        Assert.isFalse(list.isEmpty(), MessageUtils.message("assert.face.data.not.exist"));
         List<String> collect = list.stream().map(SysUserCharacteristic::getContent).collect(Collectors.toList());
         // 通过人脸获取最相似的用户
         // FaceMatchVO faceMatchVO = ArcSoftMothodUtil.completableFutureComparison(file, collect);

+ 0 - 28
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/HardwareApiServiceImpl.java

@@ -348,34 +348,6 @@ public class HardwareApiServiceImpl implements HardwareApiService {
         isJobTicketService.updateTicketProgress(reqVO);
 
 
-        /*int size = list.size();
-        List<String> nfcList = list.stream().map(TakeTicketLockDTO::getLockNfc).collect(Collectors.toList());
-        Assert.isFalse(nfcList.isEmpty() || size != nfcList.size(), "钥匙NFC不可为空!");
-        // 1.查询挂锁信息
-        List<IsLock> lockList = iIsLockService.list(Wrappers.<IsLock>lambdaQuery()
-                .in(IsLock::getLockNfc, nfcList));
-        Assert.isFalse(lockList.isEmpty(), MessageUtils.message("assert.business.nfc.no.lock.info.found"));
-        // 2.获取本次作业票产生的和挂锁关联的数据,因为取挂锁可能分批,多以按顺序更新关联数据的前几个
-        List<IsJobTicketLock> jobTicketLockList = iIsJobTicketLockService.list(Wrappers.<IsJobTicketLock>lambdaQuery()
-                .eq(IsJobTicketLock::getTicketId, list.get(0).getTicketId())
-                .isNull(IsJobTicketLock::getLockId)
-                .orderByAsc(IsJobTicketLock::getRecordId)
-                .last("limit" + size));
-        // 3.把查出来的锁id放到对应的dto中,组装查出来的IsJobTicketLock数据
-        for (int i = 0; i < list.size(); i++) {
-            for (IsLock isLock : lockList) {
-                if (list.get(i).getLockNfc().equals(isLock.getLockNfc())) {
-                    list.get(i).setLockId(isLock.getLockId());
-                }
-            }
-            // 3.1组装更新的数据
-            IsJobTicketLock isJobTicketLock = jobTicketLockList.get(i);
-            isJobTicketLock.setLockId(list.get(i).getLockId());
-            isJobTicketLock.setFromHardwareId(list.get(i).getFromHardwareId());
-            isJobTicketLock.setLockStatus(LockStatusEnum.NOT_LOCK.status);
-        }
-        // 4.开始批量更新
-        iIsJobTicketLockService.updateBatchById(jobTicketLockList);*/
         return true;
     }
 

+ 12 - 14
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/HardwareMaterialApiServiceImpl.java

@@ -414,7 +414,7 @@ public class HardwareMaterialApiServiceImpl implements HardwareMaterialApiServic
 
     @Override
     public Boolean updateMaterialsReplace(ReplaceMaterialsDTO dto) {
-        Assert.notBlank(dto.getCabinetCode(), "物资柜不能为空!");
+        Assert.notBlank(dto.getCabinetCode(), MessageUtils.message("assert.material.cabinet.not.null"));
         IsMaterialsCabinet cabinetByCode = iIsMaterialsCabinetService.getCabinetByCode(dto.getCabinetCode());
         // 1.开始解绑
         if (!dto.getUnbindMaterialRfidList().isEmpty()) {
@@ -436,7 +436,6 @@ public class HardwareMaterialApiServiceImpl implements HardwareMaterialApiServic
 
     @Override
     public Boolean insertCabinetOpenTimeout(OpenTimeoutDTO dto) {
-        // Assert.notNull(dto.getLoanFromId(), "物资柜不能为空");
         if (dto.getLoanFromId() != null) {
         } else {
             Assert.notBlank(dto.getLoanFromCode(), "物资柜code不能空!");
@@ -455,7 +454,6 @@ public class HardwareMaterialApiServiceImpl implements HardwareMaterialApiServic
 
     @Override
     public Boolean updateCabinetOpenTimeout(OpenTimeoutDTO dto) {
-        // Assert.notNull(dto.getLoanFromId(), "物资柜不能为空");
         if (dto.getLoanFromId() != null) {
         } else {
             Assert.notBlank(dto.getLoanFromCode(), "物资柜code不能空!");
@@ -517,7 +515,7 @@ public class HardwareMaterialApiServiceImpl implements HardwareMaterialApiServic
 
     @Override
     public List<CabinetMaterialVO> selectMaterialsByCabinetId(Long cabinetId, String cabinetCode) {
-        Assert.isFalse(cabinetId == null && StringUtils.isBlank(cabinetCode), "请告诉我物资柜身份(cabinetId / cabinetCode)!");
+        Assert.isFalse(cabinetId == null && StringUtils.isBlank(cabinetCode), MessageUtils.message("assert.material.cabinet.identity.required"));
         if (cabinetId != null) {
         } else {
             IsMaterialsCabinet one = iIsMaterialsCabinetService.getOne(Wrappers.<IsMaterialsCabinet>lambdaQuery()
@@ -639,8 +637,8 @@ public class HardwareMaterialApiServiceImpl implements HardwareMaterialApiServic
 
     @Override
     public CabinetMaterialsVO selectCabinetMaterials(CabinetRfidListDTO dto) {
-        Assert.notBlank(dto.getCabinetCode(), "物资柜子code不能为空!");
-        Assert.isFalse(dto.getList().isEmpty(), "物资中无物资!");
+        Assert.notBlank(dto.getCabinetCode(), MessageUtils.message("assert.material.cabinet.code.not.blank"));
+        Assert.isFalse(dto.getList().isEmpty(), MessageUtils.message("assert.material.cabinet.no.materials"));
         IsMaterialsCabinet cabinet = iIsMaterialsCabinetService.getCabinetByCode(dto.getCabinetCode());
         Assert.isFalse(cabinet == null, MessageUtils.message("assert.business.cabinet.code.not.exist",dto.getCabinetCode()));
         List<IsMaterials> list = iIsMaterialsService.list(Wrappers.<IsMaterials>lambdaQuery()
@@ -1053,16 +1051,16 @@ public class HardwareMaterialApiServiceImpl implements HardwareMaterialApiServic
             Long userId = SecurityUtils.getUserId();
             // 0.检查是否已经提交,如果已经提交则不允许再次提交
             List<Long> cabinetIds = dto.getList().stream().map(IsMaterialsCheckRecord::getCabinetId).distinct().collect(Collectors.toList());
-            Assert.isFalse(cabinetIds.isEmpty(), "物资柜不能为空!");
-            Assert.notNull(dto.getList().get(0).getPlanId(), "检查计划ID不能为空!");
+            Assert.isFalse(cabinetIds.isEmpty(), MessageUtils.message("assert.material.cabinet.not.null"));
+            Assert.notNull(dto.getList().get(0).getPlanId(), MessageUtils.message("assert.material.check.plan.id.not.null"));
             List<IsMaterialsPlanCabinet> list1 = iIsMaterialsPlanCabinetService.list(Wrappers.<IsMaterialsPlanCabinet>lambdaQuery()
                     .eq(IsMaterialsPlanCabinet::getPlanId, dto.getList().get(0).getPlanId())
                     .in(IsMaterialsPlanCabinet::getCabinetId, cabinetIds)
                     .eq(IsMaterialsPlanCabinet::getSubmit, "1"));
-            Assert.isTrue(list1.isEmpty(), "存在重复提交检查记录,请检查!");
+            Assert.isTrue(list1.isEmpty(), MessageUtils.message("assert.material.check.plan.duplicate.record"));
 
             for (IsMaterialsCheckRecord isMaterialsCheckRecord : dto.getList()) {
-                Assert.notNull(isMaterialsCheckRecord.getRecordId(), "记录id不能为空!");
+                Assert.notNull(isMaterialsCheckRecord.getRecordId(), MessageUtils.message("assert.material.check.record.id.not.null"));
                 isMaterialsCheckRecord.setCheckDate(new Date());
                 isMaterialsCheckRecord.setCheckUserId(userId);
                 isMaterialsCheckRecordService.updateById(isMaterialsCheckRecord);
@@ -1074,7 +1072,7 @@ public class HardwareMaterialApiServiceImpl implements HardwareMaterialApiServic
     @Transactional
     @Override
     public Boolean insertSubmitPlan(SubmitPlanDTO dto) {
-        Assert.notNull(dto.getPlanId(), "计划id不能空!");
+        Assert.notNull(dto.getPlanId(), MessageUtils.message("assert.material.check.plan.plan.id.not.null"));
         Assert.notBlank(dto.getCabinetCode(), MessageUtils.message("assert.cabinet.material.code.not.null"));
         IsMaterialsCabinet cabinetByCode = iIsMaterialsCabinetService.getCabinetByCode(dto.getCabinetCode());
         Assert.isFalse(cabinetByCode == null, MessageUtils.message("assert.cabinet.material.info.not.exist"));
@@ -1082,9 +1080,9 @@ public class HardwareMaterialApiServiceImpl implements HardwareMaterialApiServic
         List<IsMaterialsCheckRecord> list = isMaterialsCheckRecordService.list(Wrappers.<IsMaterialsCheckRecord>lambdaQuery()
                 .eq(IsMaterialsCheckRecord::getCabinetId, cabinetByCode.getCabinetId())
                 .eq(IsMaterialsCheckRecord::getPlanId, dto.getPlanId()));
-        Assert.isFalse(list.isEmpty(), "暂无检查数据需要提交!");
+        Assert.isFalse(list.isEmpty(), MessageUtils.message("assert.material.check.plan.no.data.to.submit"));
         List<IsMaterialsCheckRecord> collect = list.stream().filter(o -> o.getStatus() == null || StringUtils.isBlank(o.getStatus())).collect(Collectors.toList());
-        Assert.isTrue(collect.isEmpty(), "存在未检查的物资,请重新盘查!");
+        Assert.isTrue(collect.isEmpty(), MessageUtils.message("assert.material.check.plan.unchecked.materials"));
         // 2.检查签名是否上传
         IsMaterialsPlanCabinet one = iIsMaterialsPlanCabinetService.getOne(Wrappers.<IsMaterialsPlanCabinet>lambdaQuery()
                 .eq(IsMaterialsPlanCabinet::getCabinetId, cabinetByCode.getCabinetId())
@@ -1182,7 +1180,7 @@ public class HardwareMaterialApiServiceImpl implements HardwareMaterialApiServic
             bingdingList = iIsMaterialsService.getMaterialListByRfid(dto.getBindingMaterialRfidList());
             // Assert.isFalse(bingdingList.size() != dto.getBindingMaterialRfidList().size(), "缺邵需要绑定的物资");
             for (IsMaterials materials : bingdingList) {
-                Assert.isTrue(materials.getStatus().equals("0"), "存在异常的替换物资!");
+                Assert.isTrue("0".equals(materials.getStatus()), MessageUtils.message("assert.material.change.abnormal.replacement"));
                 IsMaterialsChangeRecord isMaterialsChangeRecord = new IsMaterialsChangeRecord();
                 isMaterialsChangeRecord.setNewMaterialsId(materials.getMaterialsId());
                 isMaterialsChangeRecord.setNewMaterialsRfid(materials.getMaterialsRfid());

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

@@ -119,7 +119,7 @@ public class IsHardwareTypeServiceImpl extends ServiceImpl<IsHardwareTypeMapper,
         }
         // 判断下面有没有子类,有则不能删除
         List<IsHardwareType> hardwareTypeList = list(Wrappers.<IsHardwareType>lambdaQuery().in(IsHardwareType::getParentTypeId, longIds));
-        Assert.isTrue(hardwareTypeList.isEmpty(), "选中的类别下存在子类,不可删除!");
+        Assert.isTrue(hardwareTypeList.isEmpty(), MessageUtils.message("assert.lock.type.has.subtype.cannot.delete"));
         return isHardwareTypeMapper.deleteIsHardwareTypeByIds(longIds);
     }
 

+ 0 - 7
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsIsolationPointServiceImpl.java

@@ -187,13 +187,6 @@ public class IsIsolationPointServiceImpl extends ServiceImpl<IsIsolationPointMap
         }
         // 检查电柜有没有配置该隔离点,如果还在配置中,需要先从电柜解除绑定
         for (Long longId : longIds) {
-            /*String usePoint = '"' + "pointId" + '"' + ": " + '"' + longId + '"' + ",";
-            List<IsLotoStation> list = iIsLotoStationService.list(Wrappers.<IsLotoStation>lambdaQuery()
-                    .like(IsLotoStation::getMap, usePoint));
-            if (!list.isEmpty()) {
-                IsIsolationPoint isolationPoint = getById(longId);
-                Assert.isTrue(false, isolationPoint.getPointName() + "正在被" + list.get(0).getLotoName() + "锁定站使用,请先从锁定站解除绑定!");
-            }*/
             // 清理is_map_point
             iIsMapPointService.remove(Wrappers.<IsMapPoint>lambdaQuery()
                     .and(item -> item.eq(IsMapPoint::getMapType, "2")

+ 2 - 2
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsJobCardServiceImpl.java

@@ -202,11 +202,11 @@ public class IsJobCardServiceImpl extends ServiceImpl<IsJobCardMapper, IsJobCard
 
     @Override
     public Boolean insertIsJobCardByCabinet(IsJobCard isJobCard) {
-        Assert.isFalse(StringUtils.isBlank(isJobCard.getCardNfc()), "请给我工卡的nfc!");
+        Assert.isFalse(StringUtils.isBlank(isJobCard.getCardNfc()), MessageUtils.message("assert.job.card.nfc.required"));
         // 0.检查挂锁的nfc是否存在,存在就不允许添加
         List<IsJobCard> list = list(Wrappers.<IsJobCard>lambdaQuery()
                 .eq(IsJobCard::getCardNfc, isJobCard.getCardNfc()));
-        Assert.isTrue(list.isEmpty(), "该nfc的工卡已存在!");
+        Assert.isTrue(list.isEmpty(), MessageUtils.message("assert.job.card.nfc.already.exists"));
         // 2.自动生成编码
         String cardCode = autoCodeUtil.genSerialCode("CARD_CODE", null);
         isJobCard.setCardCode(cardCode);

+ 2 - 2
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsJobTicketServiceImpl.java

@@ -236,7 +236,7 @@ public class IsJobTicketServiceImpl extends ServiceImpl<IsJobTicketMapper, IsJob
     public Boolean insertJobByMachinery(AddMarsJobDTO dto) {
         // 1.断言判断必填
         Assert.notNull(dto.getWorkstationId(), MessageUtils.message("assert.post.not.null"));
-        Assert.notNull(dto.getMachineryId(), "工艺不可为空!");
+        Assert.notNull(dto.getMachineryId(), MessageUtils.message("assert.job.ticket.process.not.null"));
         // 1.1自动生成名称
         String jobName = generateJobName(dto.getWorkstationId(), dto.getMachineryId(), dto.getSopId(), null);
         // 1.2获取隔离点数据
@@ -862,7 +862,7 @@ public class IsJobTicketServiceImpl extends ServiceImpl<IsJobTicketMapper, IsJob
         List<IsJobTicketStep> list = iIsJobTicketStepService.list(Wrappers.<IsJobTicketStep>lambdaQuery()
                 .eq(IsJobTicketStep::getTicketId, isJobTicket.getTicketId())
                 .ne(IsJobTicketStep::getStepStatus, 1));
-        Assert.isTrue(list.isEmpty(), "存在未完成的步骤,暂不可完成!");
+        Assert.isTrue(list.isEmpty(), MessageUtils.message("assert.job.ticket.unfinished.step.cannot.complete"));
         // 2.既然走到这了,说明可以完成了
         update(Wrappers.<IsJobTicket>lambdaUpdate().eq(IsJobTicket::getTicketId, isJobTicket.getTicketId())
                 .set(IsJobTicket::getTicketStatus, FINISHED.status)

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

@@ -74,7 +74,7 @@ public class IsJobTicketUserServiceImpl extends ServiceImpl<IsJobTicketUserMappe
         IsJobTicketStep step6 = iIsJobTicketStepService.getOne(Wrappers.<IsJobTicketStep>lambdaQuery()
                 .eq(IsJobTicketStep::getTicketId, dto.getTicketId())
                 .eq(IsJobTicketStep::getStepIndex, 6));
-        Assert.isFalse("1".equals(step6.getStepStatus()), "您已执行完第6步,无法更换人员!");
+        Assert.isFalse("1".equals(step6.getStepStatus()), MessageUtils.message("assert.job.ticket.step6.executed.cannot.change.user"));
         // 原来的人员结构
         List<IsJobTicketUser> list = list(Wrappers.<IsJobTicketUser>lambdaQuery().eq(IsJobTicketUser::getTicketId, dto.getTicketId()));
         ArrayList<IsJobTicketUser> isJobTicketUsers = Lists.newArrayList(list);

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

@@ -70,13 +70,13 @@ public class IsKeyServiceImpl extends ServiceImpl<IsKeyMapper, IsKey> implements
     @Override
     public int insertIsKey(IsKey isKey)
     {
-        Assert.notBlank(isKey.getKeyName(), "名称不能为空!");
+        Assert.notBlank(isKey.getKeyName(), MessageUtils.message("assert.key.name.not.blank"));
         // 1.检查钥匙名称是否重复
         List<IsKey> list = list(Wrappers.<IsKey>lambdaQuery().eq(IsKey::getKeyName, isKey.getKeyName()));
-        Assert.isFalse(!list.isEmpty(), "该钥匙名称已被使用!");
+        Assert.isFalse(!list.isEmpty(), MessageUtils.message("assert.key.name.already.used"));
         // 2.检查钥匙编码是否重复
         List<IsKey> isKeys = list(Wrappers.<IsKey>lambdaQuery().eq(IsKey::getKeyCode, isKey.getKeyCode()));
-        Assert.isFalse(!isKeys.isEmpty(), "该钥匙编码已被使用!");
+        Assert.isFalse(!isKeys.isEmpty(), MessageUtils.message("assert.key.code.already.used"));
         // 3.检查nfc是否重复
         if (StringUtils.isNotBlank(isKey.getKeyNfc())) {
             List<IsKey> isKeys1 = list(Wrappers.<IsKey>lambdaQuery().eq(IsKey::getKeyNfc, isKey.getKeyNfc()));
@@ -85,7 +85,7 @@ public class IsKeyServiceImpl extends ServiceImpl<IsKeyMapper, IsKey> implements
         // 4.检查MAC是否重复
         if (StringUtils.isNotBlank(isKey.getMacAddress())) {
             List<IsKey> isKeys2 = list(Wrappers.<IsKey>lambdaQuery().eq(IsKey::getMacAddress, isKey.getMacAddress()));
-            Assert.isFalse(!isKeys2.isEmpty(), "该MAC已被使用!");
+            Assert.isFalse(!isKeys2.isEmpty(), MessageUtils.message("assert.key.mac.already.used"));
         }
         isKey.setCreateTime(DateUtils.getNowDate());
         return isKeyMapper.insertIsKey(isKey);
@@ -101,16 +101,16 @@ public class IsKeyServiceImpl extends ServiceImpl<IsKeyMapper, IsKey> implements
     public int updateIsKey(IsKey isKey)
     {
         // 1.检查钥匙名称是否重复
-        Assert.notBlank(isKey.getKeyName(), "名称不能为空!");
+        Assert.notBlank(isKey.getKeyName(), MessageUtils.message("assert.key.name.not.blank"));
         List<IsKey> list = list(Wrappers.<IsKey>lambdaQuery()
                 .eq(IsKey::getKeyName, isKey.getKeyName())
                 .ne(IsKey::getKeyId, isKey.getKeyId()));
-        Assert.isFalse(!list.isEmpty(), "该钥匙名称已被使用!");
+        Assert.isFalse(!list.isEmpty(), MessageUtils.message("assert.key.name.already.used"));
         // 2.检查钥匙编码是否重复
         List<IsKey> isKeys = list(Wrappers.<IsKey>lambdaQuery()
                 .eq(IsKey::getKeyCode, isKey.getKeyCode())
                 .ne(IsKey::getKeyId, isKey.getKeyId()));
-        Assert.isFalse(!isKeys.isEmpty(), "该钥匙编码已被使用!");
+        Assert.isFalse(!isKeys.isEmpty(), MessageUtils.message("assert.key.code.already.used"));
         // 3.检查nfc是否重复
         if (StringUtils.isNotBlank(isKey.getKeyNfc())) {
             List<IsKey> isKeys1 = list(Wrappers.<IsKey>lambdaQuery()
@@ -123,7 +123,7 @@ public class IsKeyServiceImpl extends ServiceImpl<IsKeyMapper, IsKey> implements
             List<IsKey> isKeys2 = list(Wrappers.<IsKey>lambdaQuery()
                     .eq(IsKey::getMacAddress, isKey.getMacAddress())
                     .ne(IsKey::getKeyId, isKey.getKeyId()));
-            Assert.isFalse(!isKeys2.isEmpty(), "该MAC已被使用!");
+            Assert.isFalse(!isKeys2.isEmpty(), MessageUtils.message("assert.key.mac.already.used"));
         }
         isKey.setUpdateTime(DateUtils.getNowDate());
         return isKeyMapper.updateIsKey(isKey);
@@ -162,16 +162,16 @@ public class IsKeyServiceImpl extends ServiceImpl<IsKeyMapper, IsKey> implements
 
     @Override
     public Boolean insertIsKeyByCabinet(IsKey isKey) {
-        Assert.isFalse(StringUtils.isBlank(isKey.getKeyNfc()), "请给我钥匙的nfc!");
-        Assert.isFalse(StringUtils.isBlank(isKey.getMacAddress()), "请给我钥匙的mac地址!");
+        Assert.isFalse(StringUtils.isBlank(isKey.getKeyNfc()), MessageUtils.message("assert.key.nfc.required"));
+        Assert.isFalse(StringUtils.isBlank(isKey.getMacAddress()), MessageUtils.message("assert.key.mac.address.required"));
         // 0.检查钥匙的nfc是否存在,存在就不允许添加
         List<IsKey> list = list(Wrappers.<IsKey>lambdaQuery()
                 .eq(IsKey::getKeyNfc, isKey.getKeyNfc()));
-        Assert.isTrue(list.isEmpty(), "该nfc的钥匙已存在!");
+        Assert.isTrue(list.isEmpty(), MessageUtils.message("assert.key.nfc.already.exists"));
         // 0.1检查mac是否重复
         List<IsKey> list1 = list(Wrappers.<IsKey>lambdaQuery()
                 .eq(IsKey::getMacAddress, isKey.getMacAddress()));
-        Assert.isTrue(list1.isEmpty(), "该mac的钥匙已存在!");
+        Assert.isTrue(list1.isEmpty(), MessageUtils.message("assert.key.mac.already.exists"));
         // 1.自动生成名称
         String keyName = "钥匙-" + isKey.getKeyNfc();
         // 2.自动生成编码

+ 6 - 6
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsLockServiceImpl.java

@@ -79,10 +79,10 @@ public class IsLockServiceImpl extends ServiceImpl<IsLockMapper, IsLock> impleme
     {
         // 1.检查挂锁名称是否重复
         List<IsLock> lockList = list(Wrappers.<IsLock>lambdaQuery().eq(IsLock::getLockName, isLock.getLockName()));
-        Assert.isFalse(!lockList.isEmpty(), "该挂锁名称已被使用!");
+        Assert.isFalse(!lockList.isEmpty(), MessageUtils.message("assert.lock.name.already.used"));
         // 2.检查挂锁编码是否重复
         List<IsLock> locks = list(Wrappers.<IsLock>lambdaQuery().eq(IsLock::getLockCode, isLock.getLockCode()));
-        Assert.isFalse(!locks.isEmpty(), "该挂锁编码已被使用!");
+        Assert.isFalse(!locks.isEmpty(), MessageUtils.message("assert.lock.code.already.used"));
         isLock.setCreateTime(DateUtils.getNowDate());
         return isLockMapper.insertIsLock(isLock);
     }
@@ -100,12 +100,12 @@ public class IsLockServiceImpl extends ServiceImpl<IsLockMapper, IsLock> impleme
         List<IsLock> lockList = list(Wrappers.<IsLock>lambdaQuery()
                 .eq(IsLock::getLockName, isLock.getLockName())
                 .ne(IsLock::getLockId, isLock.getLockId()));
-        Assert.isFalse(!lockList.isEmpty(), "该挂锁名称已被使用!");
+        Assert.isFalse(!lockList.isEmpty(), MessageUtils.message("assert.lock.name.already.used"));
         // 2.检查挂锁编码是否重复
         List<IsLock> locks = list(Wrappers.<IsLock>lambdaQuery()
                 .eq(IsLock::getLockCode, isLock.getLockCode())
                 .ne(IsLock::getLockId, isLock.getLockId()));
-        Assert.isFalse(!locks.isEmpty(), "该挂锁编码已被使用!");
+        Assert.isFalse(!locks.isEmpty(), MessageUtils.message("assert.lock.code.already.used"));
         isLock.setUpdateTime(DateUtils.getNowDate());
         return isLockMapper.updateIsLock(isLock);
     }
@@ -143,11 +143,11 @@ public class IsLockServiceImpl extends ServiceImpl<IsLockMapper, IsLock> impleme
 
     @Override
     public Boolean insertIsLockByCabinet(IsLock isLock) {
-        Assert.isFalse(StringUtils.isBlank(isLock.getLockNfc()), "请给我挂锁的nfc!");
+        Assert.isFalse(StringUtils.isBlank(isLock.getLockNfc()), MessageUtils.message("assert.lock.nfc.required"));
         // 0.检查挂锁的nfc是否存在,存在就不允许添加
         List<IsLock> list = list(Wrappers.<IsLock>lambdaQuery()
                 .eq(IsLock::getLockNfc, isLock.getLockNfc()));
-        Assert.isTrue(list.isEmpty(), "该nfc的挂锁已存在!");
+        Assert.isTrue(list.isEmpty(), MessageUtils.message("assert.lock.nfc.already.exists"));
         // 1.自动生成名称
         String lockName = "挂锁-" + isLock.getLockNfc();
         // 2.自动生成编码

+ 6 - 6
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsLockTypeServiceImpl.java

@@ -68,11 +68,11 @@ public class IsLockTypeServiceImpl extends ServiceImpl<IsLockTypeMapper, IsLockT
         // 1.检查挂锁类型名称是否重复
         List<IsLockType> list = list(Wrappers.<IsLockType>lambdaQuery()
                 .eq(IsLockType::getLockTypeName, isLockType.getLockTypeName()));
-        Assert.isFalse(!list.isEmpty(), "该挂锁类型名称已被使用!");
+        Assert.isFalse(!list.isEmpty(), MessageUtils.message("assert.lock.type.name.already.used"));
         // 2.检查挂锁类型编码是否重复
         List<IsLockType> isLockTypes = list(Wrappers.<IsLockType>lambdaQuery()
                 .eq(IsLockType::getLockTypeCode, isLockType.getLockTypeCode()));
-        Assert.isFalse(!isLockTypes.isEmpty(), "该挂锁类型编码已被使用!");
+        Assert.isFalse(!isLockTypes.isEmpty(), MessageUtils.message("assert.lock.type.code.already.used"));
         isLockType.setCreateTime(DateUtils.getNowDate());
         return isLockTypeMapper.insertIsLockType(isLockType);
     }
@@ -90,12 +90,12 @@ public class IsLockTypeServiceImpl extends ServiceImpl<IsLockTypeMapper, IsLockT
         List<IsLockType> list = list(Wrappers.<IsLockType>lambdaQuery()
                 .eq(IsLockType::getLockTypeName, isLockType.getLockTypeName())
                 .ne(IsLockType::getLockTypeId, isLockType.getLockTypeId()));
-        Assert.isFalse(!list.isEmpty(), "该挂锁类型名称已被使用!");
+        Assert.isFalse(!list.isEmpty(), MessageUtils.message("assert.lock.type.name.already.used"));
         // 2.检查挂锁类型编码是否重复
         List<IsLockType> isLockTypes = list(Wrappers.<IsLockType>lambdaQuery()
                 .eq(IsLockType::getLockTypeCode, isLockType.getLockTypeCode())
                 .ne(IsLockType::getLockTypeId, isLockType.getLockTypeId()));
-        Assert.isFalse(!isLockTypes.isEmpty(), "该挂锁类型编码已被使用!");
+        Assert.isFalse(!isLockTypes.isEmpty(), MessageUtils.message("assert.lock.type.code.already.used"));
         isLockType.setUpdateTime(DateUtils.getNowDate());
         return isLockTypeMapper.updateIsLockType(isLockType);
     }
@@ -113,11 +113,11 @@ public class IsLockTypeServiceImpl extends ServiceImpl<IsLockTypeMapper, IsLockT
         Long[] longIds = Convert.toLongArray(lockTypeIds);
         // 判断下面有没有子类,有则不能删除
         List<IsLockType> lockTypeList = list(Wrappers.<IsLockType>lambdaQuery().in(IsLockType::getParentTypeId, longIds));
-        Assert.isTrue(lockTypeList.isEmpty(), "选中的类别下存在子类,不可删除!");
+        Assert.isTrue(lockTypeList.isEmpty(), MessageUtils.message("assert.lock.type.has.subtype.cannot.delete"));
         // 判断有没有点位使用该类别,有的话不能删
         List<IsIsolationPoint> pointList = iIsIsolationPointService.list(Wrappers.<IsIsolationPoint>lambdaQuery()
                 .in(IsIsolationPoint::getLockTypeId, longIds));
-        Assert.isTrue(pointList.isEmpty(), "选中的类别下有被隔离点正在使用的,不可删除!");
+        Assert.isTrue(pointList.isEmpty(), MessageUtils.message("assert.lock.type.in.use.by.isolation.point.cannot.delete"));
         return isLockTypeMapper.deleteIsLockTypeByLockTypeIds(longIds);
     }
 

+ 5 - 5
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsLocksetTypeServiceImpl.java

@@ -64,11 +64,11 @@ public class IsLocksetTypeServiceImpl extends ServiceImpl<IsLocksetTypeMapper, I
         // 1.检查锁具类型名称是否重复
         List<IsLocksetType> list = list(Wrappers.<IsLocksetType>lambdaQuery()
                 .eq(IsLocksetType::getLocksetTypeName, isLocksetType.getLocksetTypeName()));
-        Assert.isFalse(!list.isEmpty(), "该锁具类型名称已被使用!");
+        Assert.isFalse(!list.isEmpty(), MessageUtils.message("assert.lockset.type.name.already.used"));
         // 2.检查锁具类型编码是否重复
         List<IsLocksetType> isLocksetTypes = list(Wrappers.<IsLocksetType>lambdaQuery()
                 .eq(IsLocksetType::getLocksetTypeCode, isLocksetType.getLocksetTypeCode()));
-        Assert.isFalse(!isLocksetTypes.isEmpty(), "该锁具类型编码已被使用!");
+        Assert.isFalse(!isLocksetTypes.isEmpty(), MessageUtils.message("assert.lockset.type.code.already.used"));
         isLocksetType.setCreateTime(DateUtils.getNowDate());
         return isLocksetTypeMapper.insertIsLocksetType(isLocksetType);
     }
@@ -86,12 +86,12 @@ public class IsLocksetTypeServiceImpl extends ServiceImpl<IsLocksetTypeMapper, I
         List<IsLocksetType> list = list(Wrappers.<IsLocksetType>lambdaQuery()
                 .eq(IsLocksetType::getLocksetTypeName, isLocksetType.getLocksetTypeName())
                 .ne(IsLocksetType::getLocksetTypeId, isLocksetType.getLocksetTypeId()));
-        Assert.isFalse(!list.isEmpty(), "该锁具类型名称已被使用!");
+        Assert.isFalse(!list.isEmpty(), MessageUtils.message("assert.lockset.type.name.already.used"));
         // 2.检查锁具类型编码是否重复
         List<IsLocksetType> isLocksetTypes = list(Wrappers.<IsLocksetType>lambdaQuery()
                 .eq(IsLocksetType::getLocksetTypeCode, isLocksetType.getLocksetTypeCode())
                 .ne(IsLocksetType::getLocksetTypeId, isLocksetType.getLocksetTypeId()));
-        Assert.isFalse(!isLocksetTypes.isEmpty(), "该锁具类型编码已被使用!");
+        Assert.isFalse(!isLocksetTypes.isEmpty(), MessageUtils.message("assert.lockset.type.code.already.used"));
         isLocksetType.setUpdateTime(DateUtils.getNowDate());
         return isLocksetTypeMapper.updateIsLocksetType(isLocksetType);
     }
@@ -110,7 +110,7 @@ public class IsLocksetTypeServiceImpl extends ServiceImpl<IsLocksetTypeMapper, I
         // 检查有没有子集
         List<IsLocksetType> list = list(Wrappers.<IsLocksetType>lambdaQuery()
                 .in(IsLocksetType::getParentTypeId, longIds));
-        Assert.isTrue(list.isEmpty(), "请先移除子集");
+        Assert.isTrue(list.isEmpty(), MessageUtils.message("assert.lockset.type.remove.subset.first"));
         return isLocksetTypeMapper.deleteIsLocksetTypeByLocksetTypeIds(longIds);
     }
 

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

@@ -100,7 +100,7 @@ public class IsLotoSwitchMapServiceImpl extends ServiceImpl<IsLotoSwitchMapMappe
 
     @Override
     public Boolean updatePointsBindingSwitchMap(SwitchBindingPointDTO dto) {
-        Assert.notNull(dto.getSwitchMapId(), "开关布局ID不能为空!");
+        Assert.notNull(dto.getSwitchMapId(), MessageUtils.message("assert.loto.switch.map.id.not.null"));
         if (!dto.getBindingPointIds().isEmpty()) {
             // 开始绑定
             iIsIsolationPointService.update(Wrappers.<IsIsolationPoint>lambdaUpdate()

+ 3 - 3
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsMailSendTaskItemServiceImpl.java

@@ -43,9 +43,9 @@ public class IsMailSendTaskItemServiceImpl extends ServiceImpl<IsMailSendTaskIte
     @Override
     public Boolean insertIsMailSendTaskItem(IsMailSendTaskItem taskItem, HashMap<String, String> map) {
         // 1.断言告警
-        Assert.notNull(taskItem.getSendToUserId(), "收取用户不能为空");
-        Assert.notNull(taskItem.getEmailTemplateId(), "邮件模板不能为空");
-        Assert.notNull(taskItem.getScheduledSendTime(), "计划发送时间不能为空");
+        Assert.notNull(taskItem.getSendToUserId(), MessageUtils.message("assert.mail.task.receive.user.not.null"));
+        Assert.notNull(taskItem.getEmailTemplateId(), MessageUtils.message("assert.mail.task.template.not.null"));
+        Assert.notNull(taskItem.getScheduledSendTime(), MessageUtils.message("assert.mail.task.scheduled.send.time.not.null"));
         SysUser user = iSysUserService.getById(taskItem.getSendToUserId());
         Assert.isFalse(user == null, MessageUtils.message("assert.business.recipient.not.exist"));
         // 2.根据模板获取邮件内容

+ 5 - 5
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsMailTemplateServiceImpl.java

@@ -46,20 +46,20 @@ public class IsMailTemplateServiceImpl extends ServiceImpl<IsMailTemplateMapper,
 
     @Override
     public Boolean insertIsMailTemplate(IsMailTemplate isMailTemplate) {
-        Assert.notBlank(isMailTemplate.getTemplateCode(), "模板编码不能为空!");
+        Assert.notBlank(isMailTemplate.getTemplateCode(), MessageUtils.message("assert.material.cabinet.code.required"));
         List<IsMailTemplate> list = list(Wrappers.<IsMailTemplate>lambdaQuery().eq(IsMailTemplate::getTemplateCode, isMailTemplate.getTemplateCode()));
-        Assert.isTrue(list.isEmpty(), "该模板编码已存在!");
+        Assert.isTrue(list.isEmpty(), MessageUtils.message("assert.mail.template.code.already.used"));
         return save(isMailTemplate);
     }
 
     @Override
     public Boolean updateIsMailTemplate(IsMailTemplate isMailTemplate) {
-        Assert.notNull(isMailTemplate.getTemplateId(), "模板id不能为空!");
-        Assert.notBlank(isMailTemplate.getTemplateCode(), "模板编码不能为空!");
+        Assert.notNull(isMailTemplate.getTemplateId(), MessageUtils.message("assert.mail.template.id.not.null"));
+        Assert.notBlank(isMailTemplate.getTemplateCode(), MessageUtils.message("assert.material.cabinet.code.required"));
         List<IsMailTemplate> list = list(Wrappers.<IsMailTemplate>lambdaQuery()
                 .eq(IsMailTemplate::getTemplateCode, isMailTemplate.getTemplateCode())
                 .ne(IsMailTemplate::getTemplateId, isMailTemplate.getTemplateId()));
-        Assert.isTrue(list.isEmpty(), "该模板编码已存在!");
+        Assert.isTrue(list.isEmpty(), MessageUtils.message("assert.mail.template.code.already.used"));
         return updateById(isMailTemplate);
     }
 

+ 3 - 3
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsMarsSopServiceImpl.java

@@ -114,7 +114,7 @@ public class IsMarsSopServiceImpl extends ServiceImpl<IsSopMapper, IsSop> implem
         Assert.notNull(dto.getSopId(), MessageUtils.message("assert.sop.id.not.null"));
         Assert.isTrue(StringUtils.isNotBlank(dto.getSopName()), MessageUtils.message("assert.sop.name.not.null"));
         // 1.判断工艺必选
-        Assert.notNull(dto.getMachineryId(), "设备工艺id不可为空!");
+        Assert.notNull(dto.getMachineryId(), MessageUtils.message("assert.sop.machinery.process.id.not.null"));
         // 1.1开始生成默认名称
         String sopName = generateName(dto.getWorkstationId(), dto.getMachineryId(), dto.getSopType(), dto.getSopId());
         dto.setSopName(sopName);
@@ -161,7 +161,7 @@ public class IsMarsSopServiceImpl extends ServiceImpl<IsSopMapper, IsSop> implem
         List<IsSop> listName = list(Wrappers.<IsSop>lambdaQuery()
                 .eq(IsSop::getSopName, sopName)
                 .ne(sopId != null, IsSop::getSopId, sopId));
-        Assert.isTrue(listName.isEmpty(), "该SOP已存在!");
+        Assert.isTrue(listName.isEmpty(), MessageUtils.message("assert.sop.already.exists"));
         return sopName;
     }
 
@@ -232,7 +232,7 @@ public class IsMarsSopServiceImpl extends ServiceImpl<IsSopMapper, IsSop> implem
 
     @Override
     public String importSop(List<ImportSopVO> itemList, boolean updateSupport, String operName) {
-        Assert.notNull(itemList, "导入物料产品数据不能为空!");
+        Assert.notNull(itemList, MessageUtils.message("assert.sop.import.material.data.not.null"));
         int successNum = 0;
         int failureNum = 0;
         StringBuilder successMsg = new StringBuilder();

+ 8 - 8
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsMaterialsCabinetServiceImpl.java

@@ -72,15 +72,15 @@ public class IsMaterialsCabinetServiceImpl extends ServiceImpl<IsMaterialsCabine
     @Override
     public int insertIsMaterialsCabinet(IsMaterialsCabinet isMaterialsCabinet)
     {
-        Assert.notBlank(isMaterialsCabinet.getCabinetCode(), "编码不能为空!");
+        Assert.notBlank(isMaterialsCabinet.getCabinetCode(), MessageUtils.message("assert.material.cabinet.code.required"));
         // 判断编码重复
         List<IsMaterialsCabinet> list = list(Wrappers.<IsMaterialsCabinet>lambdaQuery()
                 .eq(IsMaterialsCabinet::getCabinetCode, isMaterialsCabinet.getCabinetCode()));
-        Assert.isTrue(list.isEmpty(), "该编码已被使用,请重新填写!");
+        Assert.isTrue(list.isEmpty(), MessageUtils.message("assert.material.cabinet.code.already.used"));
         // 判断名称重复
         List<IsMaterialsCabinet> list1 = list(Wrappers.<IsMaterialsCabinet>lambdaQuery()
                 .eq(IsMaterialsCabinet::getCabinetName, isMaterialsCabinet.getCabinetName()));
-        Assert.isTrue(list1.isEmpty(), "该物资柜名称已被使用,请重新填写!");
+        Assert.isTrue(list1.isEmpty(), MessageUtils.message("assert.material.cabinet.name.already.used"));
         isMaterialsCabinet.setCreateTime(DateUtils.getNowDate());
         return isMaterialsCabinetMapper.insertIsMaterialsCabinet(isMaterialsCabinet);
     }
@@ -94,17 +94,17 @@ public class IsMaterialsCabinetServiceImpl extends ServiceImpl<IsMaterialsCabine
     @Override
     public int updateIsMaterialsCabinet(IsMaterialsCabinet isMaterialsCabinet)
     {
-        Assert.notNull(isMaterialsCabinet.getCabinetId(), "主键不能为空!");
+        Assert.notNull(isMaterialsCabinet.getCabinetId(), MessageUtils.message("assert.common.param.primary.key.id.not.null"));
         // 判断编码重复
         List<IsMaterialsCabinet> list = list(Wrappers.<IsMaterialsCabinet>lambdaQuery()
                 .eq(IsMaterialsCabinet::getCabinetCode, isMaterialsCabinet.getCabinetCode())
                 .ne(IsMaterialsCabinet::getCabinetId, isMaterialsCabinet.getCabinetId()));
-        Assert.isTrue(list.isEmpty(), "该编码已被使用,请重新填写!");
+        Assert.isTrue(list.isEmpty(), MessageUtils.message("assert.material.cabinet.code.already.used"));
         // 判断名称重复
         List<IsMaterialsCabinet> list1 = list(Wrappers.<IsMaterialsCabinet>lambdaQuery()
                 .eq(IsMaterialsCabinet::getCabinetName, isMaterialsCabinet.getCabinetName())
                 .ne(IsMaterialsCabinet::getCabinetId, isMaterialsCabinet.getCabinetId()));
-        Assert.isTrue(list1.isEmpty(), "该物资柜名称已被使用,请重新填写!");
+        Assert.isTrue(list1.isEmpty(), MessageUtils.message("assert.material.cabinet.name.already.used"));
         isMaterialsCabinet.setUpdateTime(DateUtils.getNowDate());
         return isMaterialsCabinetMapper.updateIsMaterialsCabinet(isMaterialsCabinet);
     }
@@ -123,7 +123,7 @@ public class IsMaterialsCabinetServiceImpl extends ServiceImpl<IsMaterialsCabine
         // 检查物资柜下面有没有物资,有物资就不可以删除
         List<IsMaterials> list = iIsMaterialsService.list(Wrappers.<IsMaterials>lambdaQuery()
                 .in(IsMaterials::getMaterialsCabinetId, longIds));
-        Assert.isFalse(!list.isEmpty(), "物资柜下存在所属物资,请先清理物资!");
+        Assert.isFalse(!list.isEmpty(), MessageUtils.message("assert.material.cabinet.has.materials.cannot.delete"));
         return isMaterialsCabinetMapper.deleteIsMaterialsCabinetByCabinetIds(longIds);
     }
 
@@ -200,7 +200,7 @@ public class IsMaterialsCabinetServiceImpl extends ServiceImpl<IsMaterialsCabine
 
     @Override
     public Boolean updateMaterialsBindingRemove(BindingMaterialsDTO dto) {
-        Assert.notNull(dto.getCabinetId(), "物资柜不能为空!");
+        Assert.notNull(dto.getCabinetId(), MessageUtils.message("assert.material.cabinet.not.null"));
         // 1.开始解绑
         if (!dto.getUnbindMaterialIds().isEmpty()) {
             iIsMaterialsService.update(Wrappers.<IsMaterials>lambdaUpdate()

+ 3 - 4
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsMaterialsChangeRecordServiceImpl.java

@@ -43,9 +43,8 @@ public class IsMaterialsChangeRecordServiceImpl extends ServiceImpl<IsMaterialsC
 
     @Override
     public Boolean insertIsMaterialsChangeRecord(IsMaterialsChangeRecord changeRecord) {
-        // Assert.notNull(changeRecord.getCheckRecordId(), "检查记录的ID不能为空!");
-        Assert.notNull(changeRecord.getOldMaterialsId(), "原物资ID不能为空!");
-        Assert.notNull(changeRecord.getNewMaterialsId(), "新物资ID不能为空,若物资不变填写原物资ID即可!");
+        Assert.notNull(changeRecord.getOldMaterialsId(), MessageUtils.message("assert.material.change.old.id.not.null"));
+        Assert.notNull(changeRecord.getNewMaterialsId(), MessageUtils.message("assert.material.change.new.id.not.null"));
         Assert.isFalse(changeRecord.getNewMaterialsId().equals(changeRecord.getOldMaterialsId())
                 && changeRecord.getNewMaterialsRfid().equals(changeRecord.getOldMaterialsRfid()),
                 "物资更换数据相同,更换失败!");
@@ -69,7 +68,7 @@ public class IsMaterialsChangeRecordServiceImpl extends ServiceImpl<IsMaterialsC
             Assert.isFalse(newMaterials == null, MessageUtils.message("assert.material.new.not.exist"));
             // 检测新物资有没有绑定该物资柜,那现在绑定下,如果已经绑定,判断是否跟原来的一样,不一样直接报错
             if (newMaterials.getMaterialsCabinetId() != null && newMaterials.getMaterialsCabinetId() != 0) {
-                Assert.isTrue(oldMaterials.getMaterialsCabinetId().equals(newMaterials.getMaterialsCabinetId()), "新物资不属于当前物资柜,请检查数据!");
+                Assert.isTrue(oldMaterials.getMaterialsCabinetId().equals(newMaterials.getMaterialsCabinetId()), MessageUtils.message("assert.material.change.new.not.in.current.cabinet"));
             } else {
                 // 如果新物资的物资柜属性是空的,现在绑定下
                 iIsMaterialsService.update(Wrappers.<IsMaterials>lambdaUpdate()

+ 7 - 7
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsMaterialsCheckPlanServiceImpl.java

@@ -83,9 +83,9 @@ public class IsMaterialsCheckPlanServiceImpl extends ServiceImpl<IsMaterialsChec
     @Override
     public Boolean insertIsMaterialsCheckPlan(AddCheckPlanDTO dto) {
         // 1.断言检测
-        Assert.notNull(dto.getPlanDate(), "检查日期不可为空!");
-        Assert.notNull(dto.getCheckUserId(), "检查员不可为空!");
-        Assert.isFalse(dto.getCabinetIds().isEmpty(), "请选择需要检查的柜子!");
+        Assert.notNull(dto.getPlanDate(), MessageUtils.message("assert.material.check.plan.date.not.null"));
+        Assert.notNull(dto.getCheckUserId(), MessageUtils.message("assert.material.check.plan.inspector.not.null"));
+        Assert.isFalse(dto.getCabinetIds().isEmpty(), MessageUtils.message("assert.material.check.plan.select.cabinet.required"));
         // 2.开始新增计划
         IsMaterialsCheckPlan materialsCheckPlan = BeanUtils.toBean(dto, IsMaterialsCheckPlan.class);
         // 2.1开始生成文件名称尾缀
@@ -174,13 +174,13 @@ public class IsMaterialsCheckPlanServiceImpl extends ServiceImpl<IsMaterialsChec
     public Boolean updateIsMaterialsCheckPlan(AddCheckPlanDTO dto) {
         // 1.断言检测
         Assert.notNull(dto.getPlanId(), MessageUtils.message("assert.common.param.id.not.null"));
-        Assert.notNull(dto.getPlanDate(), "检查日期不可为空!");
-        Assert.notNull(dto.getCheckUserId(), "检查员不可为空!");
-        Assert.isFalse(dto.getCabinetIds().isEmpty(), "请选择需要检查的柜子!");
+        Assert.notNull(dto.getPlanDate(), MessageUtils.message("assert.material.check.plan.date.not.null"));
+        Assert.notNull(dto.getCheckUserId(), MessageUtils.message("assert.material.check.plan.inspector.not.null"));
+        Assert.isFalse(dto.getCabinetIds().isEmpty(), MessageUtils.message("assert.material.check.plan.select.cabinet.required"));
         List<IsMaterialsCheckPlan> list = list(Wrappers.<IsMaterialsCheckPlan>lambdaQuery()
                 .eq(IsMaterialsCheckPlan::getPlanName, dto.getPlanName())
                 .ne(IsMaterialsCheckPlan::getPlanId, dto.getPlanId()));
-        Assert.isTrue(list.isEmpty(), "该名称已被使用!");
+        Assert.isTrue(list.isEmpty(), MessageUtils.message("assert.material.check.plan.name.already.used"));
         // 2.开始新增计划
         IsMaterialsCheckPlan materialsCheckPlan = BeanUtils.toBean(dto, IsMaterialsCheckPlan.class);
         updateById(materialsCheckPlan);

+ 3 - 2
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsMaterialsCheckRecordServiceImpl.java

@@ -4,6 +4,7 @@ import cn.hutool.core.lang.Assert;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ktg.common.utils.MessageUtils;
 import com.ktg.common.utils.SecurityUtils;
 import com.ktg.common.utils.StringUtils;
 import com.ktg.iscs.domain.IsMaterials;
@@ -61,12 +62,12 @@ public class IsMaterialsCheckRecordServiceImpl extends ServiceImpl<IsMaterialsCh
                     .eq(IsMaterialsCheckRecord::getPlanId, dto.getList().get(0).getPlanId())
                     .isNotNull(IsMaterialsCheckRecord::getStatus)
                     .in(IsMaterialsCheckRecord::getCabinetId, cabinetIds));
-            Assert.isTrue(oldRecords.isEmpty(), "存在重复提的提交检查记录,请检查!");
+            Assert.isTrue(oldRecords.isEmpty(), MessageUtils.message("assert.material.check.plan.duplicate.record"));
             // 因为硬件逻辑更改,生成了初始化数据,可能会干扰,所以先清除,排除干扰
             remove(Wrappers.<IsMaterialsCheckRecord>lambdaQuery().eq(IsMaterialsCheckRecord::getPlanId, dto.getList().get(0).getPlanId()));
             for (IsMaterialsCheckRecord isMaterialsCheckRecord : dto.getList()) {
                 Assert.notNull(isMaterialsCheckRecord.getPlanId(), "计划id不能为空!");
-                Assert.notNull(isMaterialsCheckRecord.getMaterialsId(), "物资id不能为空!");
+                Assert.notNull(isMaterialsCheckRecord.getMaterialsId(), MessageUtils.message("assert.material.id.not.null"));
                 isMaterialsCheckRecord.setCheckDate(new Date());
                 isMaterialsCheckRecord.setCheckUserId(userId);
                 save(isMaterialsCheckRecord);

+ 3 - 3
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsMaterialsLoanServiceImpl.java

@@ -502,9 +502,9 @@ public class IsMaterialsLoanServiceImpl extends ServiceImpl<IsMaterialsLoanMappe
     @Override
     public Boolean returnIsMaterialsLoan(ReturnLoanDTO dto) {
         // try {
-        Assert.notNull(dto.getMaterialsId(), "物资id不能为空!");
-        Assert.notNull(dto.getRestitutionUserId(), "归还人id不能为空!");
-        Assert.notNull(dto.getRestitutionToId(), "归还柜id不能为空!");
+        Assert.notNull(dto.getMaterialsId(), MessageUtils.message("assert.material.id.not.null"));
+        Assert.notNull(dto.getRestitutionUserId(), MessageUtils.message("assert.material.loan.restitution.user.id.not.null"));
+        Assert.notNull(dto.getRestitutionToId(), MessageUtils.message("assert.material.loan.restitution.cabinet.id.not.null"));
         // 1.查询物资信息
         IsMaterials materials = isMaterialsService.getById(dto.getMaterialsId());
         // 0.检查借出数据

+ 2 - 2
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsMaterialsPropertyServiceImpl.java

@@ -59,7 +59,7 @@ public class IsMaterialsPropertyServiceImpl extends ServiceImpl<IsMaterialsPrope
     public Boolean insertIsMaterialsProperty(IsMaterialsProperty isMaterialsProperty) {
         List<IsMaterialsProperty> list = list(Wrappers.<IsMaterialsProperty>lambdaQuery()
                 .eq(IsMaterialsProperty::getPropertyName, isMaterialsProperty.getPropertyName()));
-        Assert.isTrue(list.isEmpty(), "该名称已被使用!");
+        Assert.isTrue(list.isEmpty(), MessageUtils.message("assert.material.check.plan.name.already.used"));
         return save(isMaterialsProperty);
     }
 
@@ -68,7 +68,7 @@ public class IsMaterialsPropertyServiceImpl extends ServiceImpl<IsMaterialsPrope
         List<IsMaterialsProperty> list = list(Wrappers.<IsMaterialsProperty>lambdaQuery()
                 .eq(IsMaterialsProperty::getPropertyName, isMaterialsProperty.getPropertyName())
                 .ne(IsMaterialsProperty::getPropertyId, isMaterialsProperty.getPropertyId()));
-        Assert.isTrue(list.isEmpty(), "该名称已被使用!");
+        Assert.isTrue(list.isEmpty(), MessageUtils.message("assert.material.check.plan.name.already.used"));
         return updateById(isMaterialsProperty);
     }
 

+ 3 - 2
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsMaterialsPropertyValueServiceImpl.java

@@ -4,6 +4,7 @@ import cn.hutool.core.lang.Assert;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ktg.common.utils.MessageUtils;
 import com.ktg.iscs.domain.IsMaterialsPropertyValue;
 import com.ktg.iscs.mapper.IsMaterialsPropertyValueMapper;
 import com.ktg.iscs.service.IIsMaterialsPropertyValueService;
@@ -35,7 +36,7 @@ public class IsMaterialsPropertyValueServiceImpl extends ServiceImpl<IsMaterials
         List<IsMaterialsPropertyValue> list = list(Wrappers.<IsMaterialsPropertyValue>lambdaQuery()
                 .eq(IsMaterialsPropertyValue::getPropertyId, isMaterialsPropertyValue.getPropertyId())
                 .eq(IsMaterialsPropertyValue::getValueName, isMaterialsPropertyValue.getValueName()));
-        Assert.isTrue(list.isEmpty(), "该名称已被使用!");
+        Assert.isTrue(list.isEmpty(), MessageUtils.message("assert.material.check.plan.name.already.used"));
         return save(isMaterialsPropertyValue);
     }
 
@@ -45,7 +46,7 @@ public class IsMaterialsPropertyValueServiceImpl extends ServiceImpl<IsMaterials
                 .eq(IsMaterialsPropertyValue::getPropertyId, isMaterialsPropertyValue.getPropertyId())
                 .eq(IsMaterialsPropertyValue::getValueName, isMaterialsPropertyValue.getValueName())
                 .ne(IsMaterialsPropertyValue::getRecordId, isMaterialsPropertyValue.getRecordId()));
-        Assert.isTrue(list.isEmpty(), "该名称已被使用!");
+        Assert.isTrue(list.isEmpty(), MessageUtils.message("assert.material.check.plan.name.already.used"));
         return updateById(isMaterialsPropertyValue);
     }
 

+ 7 - 7
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsRfidTokenServiceImpl.java

@@ -52,12 +52,12 @@ public class IsRfidTokenServiceImpl extends ServiceImpl<IsRfidTokenMapper, IsRfi
         if (StringUtils.isNotBlank(isRfidToken.getRfidCode())) {
             List<IsRfidToken> list = list(Wrappers.<IsRfidToken>lambdaQuery()
                     .eq(IsRfidToken::getRfidCode, isRfidToken.getRfidCode()));
-            Assert.isTrue(list.isEmpty(), "该编码已被使用!");
+            Assert.isTrue(list.isEmpty(), MessageUtils.message("assert.material.cabinet.code.already.used"));
         }
         // 检查rfid重复
         List<IsRfidToken> list1 = list(Wrappers.<IsRfidToken>lambdaQuery()
                 .eq(IsRfidToken::getRfid, isRfidToken.getRfid()));
-        Assert.isTrue(list1.isEmpty(), "该RFID已存在!");
+        Assert.isTrue(list1.isEmpty(), MessageUtils.message("assert.rfid.token.already.exists"));
         return save(isRfidToken);
     }
 
@@ -69,13 +69,13 @@ public class IsRfidTokenServiceImpl extends ServiceImpl<IsRfidTokenMapper, IsRfi
             List<IsRfidToken> list = list(Wrappers.<IsRfidToken>lambdaQuery()
                     .eq(IsRfidToken::getRfidCode, isRfidToken.getRfidCode())
                     .ne(IsRfidToken::getRfidId, isRfidToken.getRfidId()));
-            Assert.isTrue(list.isEmpty(), "该编码已被使用!");
+            Assert.isTrue(list.isEmpty(), MessageUtils.message("assert.material.cabinet.code.already.used"));
         }
         // 检查rfid重复
         List<IsRfidToken> list1 = list(Wrappers.<IsRfidToken>lambdaQuery()
                 .eq(IsRfidToken::getRfid, isRfidToken.getRfid())
                 .ne(IsRfidToken::getRfidId, isRfidToken.getRfidId()));
-        Assert.isTrue(list1.isEmpty(), "该RFID已存在!");
+        Assert.isTrue(list1.isEmpty(), MessageUtils.message("assert.rfid.token.already.exists"));
         return updateById(isRfidToken);
     }
 
@@ -86,17 +86,17 @@ public class IsRfidTokenServiceImpl extends ServiceImpl<IsRfidTokenMapper, IsRfi
         // 查询有没有正在使用的点位,如果有则不能删除
         List<IsIsolationPoint> list = iIsIsolationPointService.list(Wrappers.<IsIsolationPoint>lambdaQuery()
                 .in(IsIsolationPoint::getRfidId, longIds));
-        Assert.isTrue(list.isEmpty(), "存在正在被隔离点使用的RFID,不可删除!");
+        Assert.isTrue(list.isEmpty(), MessageUtils.message("assert.rfid.token.in.use.by.isolation.point.cannot.delete"));
         return removeBatchByIds(Arrays.asList(longIds));
     }
 
     @Override
     public Boolean insertIsRfidTokenByCabinet(IsRfidToken isRfidToken) {
-        Assert.isFalse(StringUtils.isBlank(isRfidToken.getRfid()), "请给我RFID!");
+        Assert.isFalse(StringUtils.isBlank(isRfidToken.getRfid()), MessageUtils.message("assert.rfid.token.required"));
         // 检查rfid重复
         List<IsRfidToken> list1 = list(Wrappers.<IsRfidToken>lambdaQuery()
                 .eq(IsRfidToken::getRfid, isRfidToken.getRfid()));
-        Assert.isTrue(list1.isEmpty(), "该RFID已存在!");
+        Assert.isTrue(list1.isEmpty(), MessageUtils.message("assert.rfid.token.already.exists"));
         // 2.自动生成编码
         String rfidCode = autoCodeUtil.genSerialCode("RFID_CODE", null);
         isRfidToken.setRfidCode(rfidCode);

+ 6 - 6
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsSystemAttributeServiceImpl.java

@@ -96,12 +96,12 @@ public class IsSystemAttributeServiceImpl extends ServiceImpl<IsSystemAttributeM
 
     @Override
     public Boolean insertIsSystemAttribute(IsSystemAttribute isSystemAttribute) {
-        Assert.notBlank(isSystemAttribute.getSysAttrKey(), "键名不可为空");
-        Assert.notBlank(isSystemAttribute.getSysAttrValue(), "键值不可为空");
+        Assert.notBlank(isSystemAttribute.getSysAttrKey(), MessageUtils.message("assert.system.attribute.key.not.blank"));
+        Assert.notBlank(isSystemAttribute.getSysAttrValue(), MessageUtils.message("assert.system.attribute.value.not.blank"));
         // 1.判断键名不可重复
         List<IsSystemAttribute> list = list(Wrappers.<IsSystemAttribute>lambdaQuery()
                 .eq(IsSystemAttribute::getSysAttrKey, isSystemAttribute.getSysAttrKey()));
-        Assert.isTrue(list.isEmpty(), "当前键名已存在!");
+        Assert.isTrue(list.isEmpty(), MessageUtils.message("assert.system.attribute.key.already.used"));
         save(isSystemAttribute);
         // 2.开始缓存
         String key = SYS_ATTR + isSystemAttribute.getSysAttrKey();
@@ -112,13 +112,13 @@ public class IsSystemAttributeServiceImpl extends ServiceImpl<IsSystemAttributeM
     @Override
     public Boolean updateIsSystemAttribute(IsSystemAttribute isSystemAttribute) {
         Assert.notNull(isSystemAttribute.getSysAttrId(), MessageUtils.message("assert.common.param.id.not.null"));
-        Assert.notBlank(isSystemAttribute.getSysAttrKey(), "键名不可为空");
-        Assert.notBlank(isSystemAttribute.getSysAttrValue(), "键值不可为空");
+        Assert.notBlank(isSystemAttribute.getSysAttrKey(), MessageUtils.message("assert.system.attribute.key.not.blank"));
+        Assert.notBlank(isSystemAttribute.getSysAttrValue(), MessageUtils.message("assert.system.attribute.value.not.blank"));
         // 1.判断键名不可重复
         List<IsSystemAttribute> list = list(Wrappers.<IsSystemAttribute>lambdaQuery()
                 .eq(IsSystemAttribute::getSysAttrKey, isSystemAttribute.getSysAttrKey())
                 .ne(IsSystemAttribute::getSysAttrId, isSystemAttribute.getSysAttrId()));
-        Assert.isTrue(list.isEmpty(), "当前键名已存在!");
+        Assert.isTrue(list.isEmpty(), MessageUtils.message("assert.system.attribute.key.already.used"));
         // 2.1因为不知道会不会改键名,所以不管怎么样都把之前的缓存删掉重新插
         IsSystemAttribute byId = getById(isSystemAttribute.getSysAttrId());
         redisCache.deleteObject(SYS_ATTR + byId.getSysAttrKey());

+ 7 - 7
ktg-mes/src/main/java/com/ktg/mes/md/service/impl/MdItemServiceImpl.java

@@ -1,15 +1,15 @@
 package com.ktg.mes.md.service.impl;
 
+import com.ktg.common.constant.UserConstants;
 import com.ktg.common.core.domain.entity.ItemType;
 import com.ktg.common.exception.ServiceException;
-import com.ktg.common.utils.bean.BeanValidators;
-import com.ktg.mes.md.domain.MdVendor;
-import com.ktg.mes.md.mapper.ItemTypeMapper;
-import com.ktg.mes.md.service.IMdItemService;
-import com.ktg.common.constant.UserConstants;
+import com.ktg.common.utils.MessageUtils;
 import com.ktg.common.utils.StringUtils;
+import com.ktg.common.utils.bean.BeanValidators;
 import com.ktg.mes.md.domain.MdItem;
+import com.ktg.mes.md.mapper.ItemTypeMapper;
 import com.ktg.mes.md.mapper.MdItemMapper;
+import com.ktg.mes.md.service.IMdItemService;
 import com.ktg.mes.wm.utils.WmBarCodeUtil;
 import com.ktg.system.strategy.AutoCodeUtil;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -54,9 +54,9 @@ public class MdItemServiceImpl implements IMdItemService {
 
     @Override
     public String importItem(List<MdItem> itemList, Boolean isUpdateSupport, String operName) {
-        if (StringUtils.isNull(itemList) || itemList.size() == 0)
+        if (StringUtils.isNull(itemList) || itemList.isEmpty())
         {
-            throw new ServiceException("导入物料产品数据不能为空!");
+            throw new ServiceException(MessageUtils.message("assert.sop.import.material.data.not.null"));
         }
         int successNum = 0;
         int failureNum = 0;