Commit 164c74de12f9926bfafca1753e61bbe62f6cb620
Merge remote-tracking branch 'origin/develop' into develop
Showing
4 changed files
with
124 additions
and
41 deletions
ant-design-vue-jeecg/src/views/system/report/ReportInventoryTransactionList.vue
@@ -9,21 +9,21 @@ | @@ -9,21 +9,21 @@ | ||
9 | <a-input placeholder="请输入物料编码" v-model="queryParam.materialCode"></a-input> | 9 | <a-input placeholder="请输入物料编码" v-model="queryParam.materialCode"></a-input> |
10 | </a-form-item> | 10 | </a-form-item> |
11 | </a-col> | 11 | </a-col> |
12 | - <a-col :xl="6" :lg="7" :md="8" :sm="24"> | ||
13 | - <a-form-item label="物料名称"> | ||
14 | - <a-input placeholder="请输入物料名称" v-model="queryParam.materialName"></a-input> | ||
15 | - </a-form-item> | ||
16 | - </a-col> | ||
17 | - <a-col :xl="6" :lg="7" :md="8" :sm="24"> | ||
18 | - <a-form-item label="物料规格"> | ||
19 | - <a-input placeholder="请输入物料规格" v-model="queryParam.materialSpec"></a-input> | ||
20 | - </a-form-item> | ||
21 | - </a-col> | ||
22 | - <a-col :xl="6" :lg="7" :md="8" :sm="24"> | ||
23 | - <a-form-item label="物料单位"> | ||
24 | - <a-input placeholder="请输入物料单位" v-model="queryParam.materialUnit"></a-input> | ||
25 | - </a-form-item> | ||
26 | - </a-col> | 12 | + <a-col :xl="6" :lg="7" :md="8" :sm="24"> |
13 | + <a-form-item label="物料名称"> | ||
14 | + <a-input placeholder="请输入物料名称" v-model="queryParam.materialName"></a-input> | ||
15 | + </a-form-item> | ||
16 | + </a-col> | ||
17 | + <a-col :xl="6" :lg="7" :md="8" :sm="24"> | ||
18 | + <a-form-item label="物料规格"> | ||
19 | + <a-input placeholder="请输入物料规格" v-model="queryParam.materialSpec"></a-input> | ||
20 | + </a-form-item> | ||
21 | + </a-col> | ||
22 | + <a-col :xl="6" :lg="7" :md="8" :sm="24"> | ||
23 | + <a-form-item label="物料单位"> | ||
24 | + <a-input placeholder="请输入物料单位" v-model="queryParam.materialUnit"></a-input> | ||
25 | + </a-form-item> | ||
26 | + </a-col> | ||
27 | <a-col :xl="12" :lg="14" :md="16" :sm="24"> | 27 | <a-col :xl="12" :lg="14" :md="16" :sm="24"> |
28 | <a-form-item label="创建日期"> | 28 | <a-form-item label="创建日期"> |
29 | <j-date :show-date="true" date-format="YYYY-MM-DD" placeholder="请选择开始时间" | 29 | <j-date :show-date="true" date-format="YYYY-MM-DD" placeholder="请选择开始时间" |
ant-design-vue-jeecg/src/views/system/task/AllTaskHeaderList.vue
@@ -83,9 +83,18 @@ | @@ -83,9 +83,18 @@ | ||
83 | 83 | ||
84 | <!-- 操作按钮区域 --> | 84 | <!-- 操作按钮区域 --> |
85 | <div class="table-operator"> | 85 | <div class="table-operator"> |
86 | -<!-- <a-button @click="createEmptyIn()" v-has="'taskHeader:emptyIn'" type="primary">空托入库</a-button>--> | ||
87 | -<!-- <a-button @click="createManyEmptyIn()" v-has="'taskHeader:manyEmptyIn'" type="primary">空托组入库</a-button>--> | ||
88 | -<!-- <a-button @click="openDemo()" type="primary">弹出demo</a-button>--> | 86 | + <a-button v-has="'taskHeader:emptyIn'" @click="createEmptyIn()" type="primary">空托入库</a-button> |
87 | + <a-button v-has="'taskHeader:manyEmptyIn'" @click="createManyEmptyIn()" type="primary">空托组入库</a-button> | ||
88 | + <a-button v-has="'taskHeader:quickReceipt'" @click="quickReceipt()" type="primary">快速入库</a-button> | ||
89 | + <a-button v-has="'taskHeader:callReceiptBox'" @click="callReceiptBox()" type="primary" >呼叫入库有货托盘</a-button> | ||
90 | + <a-button v-has="'taskHeader:callReceiptBox'" @click="callReceiptEmptyBox()" type="primary" >呼叫入库空托盘</a-button> | ||
91 | + <a-button v-has="'taskHeader:emptyOut'" @click="createEmptyOut()" type="primary">空托出库</a-button> | ||
92 | + <a-button v-has="'taskHeader:manyEmptyOut'" @click="batchCreateEmptyOut()" type="primary">批量空托出库</a-button> | ||
93 | + <a-button v-has="'taskHeader:manyEmptyOut'" @click="createManyEmptyOut()" type="primary">空托组出库</a-button> | ||
94 | + <a-button v-has="'taskHeader:callShipmentBox'" @click="callShipmentBox()" type="primary" >呼叫出库托盘</a-button> | ||
95 | + <a-button v-has="'taskHeader:checkOut'" @click="createCheckOut()" type="primary">出库查看</a-button> | ||
96 | + <a-button v-has="'taskHeader:transfer'" @click="createTransfer()" type="primary">移库任务</a-button> | ||
97 | + <a-button v-has="'taskHeader:overStation'" @click="createOverStation()" type="primary">跨站任务</a-button> | ||
89 | <j-super-query :fieldList="superFieldList" v-has="'taskHeader:superQuery'" @handleSuperQuery="handleSuperQuery"/> | 98 | <j-super-query :fieldList="superFieldList" v-has="'taskHeader:superQuery'" @handleSuperQuery="handleSuperQuery"/> |
90 | <a-button v-has="'taskHeader:export'" type="primary" icon="download" @click="handleExportXls('任务表')">导出</a-button> | 99 | <a-button v-has="'taskHeader:export'" type="primary" icon="download" @click="handleExportXls('任务表')">导出</a-button> |
91 | </div> | 100 | </div> |
@@ -178,7 +187,18 @@ | @@ -178,7 +187,18 @@ | ||
178 | <taskHeader-modal ref="modalForm" @ok="modalFormOk"></taskHeader-modal> | 187 | <taskHeader-modal ref="modalForm" @ok="modalFormOk"></taskHeader-modal> |
179 | <empty-in-task-modal ref="emptyInModal" @ok="modalFormOk"></empty-in-task-modal> | 188 | <empty-in-task-modal ref="emptyInModal" @ok="modalFormOk"></empty-in-task-modal> |
180 | <many-empty-in-task-modal ref="manyEmptyInModal" @ok="modalFormOk"></many-empty-in-task-modal> | 189 | <many-empty-in-task-modal ref="manyEmptyInModal" @ok="modalFormOk"></many-empty-in-task-modal> |
181 | - <MaterialTaskModal ref="materialTaskModal"></MaterialTaskModal> | 190 | + <MaterialTaskModal ref="materialTaskModal" @ok="modalFormOk"></MaterialTaskModal> |
191 | + <call-receipt-box-modal ref="modalForm5" @ok="modalFormOk"></call-receipt-box-modal> | ||
192 | + <call-receipt-empty-box-modal ref="modalForm6" @ok="modalFormOk"></call-receipt-empty-box-modal> | ||
193 | + | ||
194 | + <empty-out-task-modal ref="emptyOutModal" @ok="modalFormOk"></empty-out-task-modal> | ||
195 | + <batch-empty-out-task-modal ref="batchEmptyOutModal" @ok="modalFormOk"></batch-empty-out-task-modal> | ||
196 | + <many-empty-out-task-modal ref="manyEmptyOutModal" @ok="modalFormOk"></many-empty-out-task-modal> | ||
197 | + <call-shipment-box-modal ref="modalForm1" @ok="modalFormOk"></call-shipment-box-modal> | ||
198 | + <check-out-task-modal ref="checkOutModal" @ok="modalFormOk"></check-out-task-modal> | ||
199 | + <transfer-task-modal ref="transferModal" @ok="modalFormOk"></transfer-task-modal> | ||
200 | + <over-station-task-modal ref="overStationModal" @ok="modalFormOk"></over-station-task-modal> | ||
201 | + | ||
182 | </a-card> | 202 | </a-card> |
183 | </template> | 203 | </template> |
184 | 204 | ||
@@ -197,11 +217,24 @@ import EmptyInTaskModal from './modules/EmptyInTaskModal' | @@ -197,11 +217,24 @@ import EmptyInTaskModal from './modules/EmptyInTaskModal' | ||
197 | import ManyEmptyInTaskModal from "./modules/ManyEmptyInTaskModal"; | 217 | import ManyEmptyInTaskModal from "./modules/ManyEmptyInTaskModal"; |
198 | import {filterObj} from "@/utils/util"; | 218 | import {filterObj} from "@/utils/util"; |
199 | import MaterialTaskModal from "./modules/MaterialTaskModal"; | 219 | import MaterialTaskModal from "./modules/MaterialTaskModal"; |
220 | +import CallReceiptBoxModal from "@views/system/task/modules/CallReceiptBoxModal.vue"; | ||
221 | +import CallReceiptEmptyBoxModal from "@views/system/task/modules/CallReceiptEmptyBoxModal.vue"; | ||
222 | +import BatchEmptyOutTaskModal from "@views/system/task/modules/BatchEmptyOutTaskModal.vue"; | ||
223 | +import CallShipmentBoxModal from "@views/system/task/modules/CallShipmentBoxModal.vue"; | ||
224 | +import EmptyOutTaskModal from "@views/system/task/modules/EmptyOutTaskModal.vue"; | ||
225 | +import ManyEmptyOutTaskModal from "@views/system/task/modules/ManyEmptyOutTaskModal.vue"; | ||
226 | +import CheckOutTaskModal from "@views/system/task/modules/CheckOutTaskModal.vue"; | ||
227 | +import TransferTaskModal from "@views/system/task/modules/TransferTaskModal.vue"; | ||
228 | +import OverStationTaskModal from "@views/system/task/modules/OverStationTaskModal.vue"; | ||
200 | 229 | ||
201 | export default { | 230 | export default { |
202 | name: "AllTaskHeaderList", | 231 | name: "AllTaskHeaderList", |
203 | mixins: [JeecgListMixin], | 232 | mixins: [JeecgListMixin], |
204 | components: { | 233 | components: { |
234 | + OverStationTaskModal, TransferTaskModal, | ||
235 | + CheckOutTaskModal, | ||
236 | + ManyEmptyOutTaskModal, EmptyOutTaskModal, CallShipmentBoxModal, BatchEmptyOutTaskModal, | ||
237 | + CallReceiptEmptyBoxModal, CallReceiptBoxModal, | ||
205 | ManyEmptyInTaskModal, | 238 | ManyEmptyInTaskModal, |
206 | EmptyInTaskModal, | 239 | EmptyInTaskModal, |
207 | TaskDetailList, | 240 | TaskDetailList, |
@@ -500,17 +533,53 @@ export default { | @@ -500,17 +533,53 @@ export default { | ||
500 | } | 533 | } |
501 | }); | 534 | }); |
502 | }, | 535 | }, |
503 | - // createEmptyIn() { | ||
504 | - // this.$refs.emptyInModal.edit(); | ||
505 | - // this.$refs.emptyInModal.title = "创建空托盘入库"; | ||
506 | - // }, | ||
507 | - // createManyEmptyIn() { | ||
508 | - // this.$refs.manyEmptyInModal.edit(); | ||
509 | - // this.$refs.manyEmptyInModal.title = "创建空托盘组入库"; | ||
510 | - // }, | ||
511 | - // openDemo(){ | ||
512 | - // this.$refs.materialTaskModal.edit(); | ||
513 | - // }, | 536 | + createEmptyIn() { |
537 | + this.$refs.emptyInModal.edit(); | ||
538 | + this.$refs.emptyInModal.title = "创建空托盘入库"; | ||
539 | + }, | ||
540 | + createManyEmptyIn() { | ||
541 | + this.$refs.manyEmptyInModal.edit(); | ||
542 | + this.$refs.manyEmptyInModal.title = "创建空托盘组入库"; | ||
543 | + }, | ||
544 | + quickReceipt(){ | ||
545 | + this.$refs.materialTaskModal.edit(); | ||
546 | + }, | ||
547 | + callReceiptBox() { | ||
548 | + this.$refs.modalForm5.edit(); | ||
549 | + this.$refs.modalForm5.title = "呼叫入库有货托盘"; | ||
550 | + }, | ||
551 | + callReceiptEmptyBox() { | ||
552 | + this.$refs.modalForm6.edit(); | ||
553 | + this.$refs.modalForm6.title = "呼叫入库空托盘"; | ||
554 | + }, | ||
555 | + createEmptyOut() { | ||
556 | + this.$refs.emptyOutModal.edit(); | ||
557 | + this.$refs.emptyOutModal.title = "创建空托盘出库"; | ||
558 | + }, | ||
559 | + batchCreateEmptyOut() { | ||
560 | + this.$refs.batchEmptyOutModal.edit(); | ||
561 | + this.$refs.batchEmptyOutModal.title = "批量创建空托盘出库"; | ||
562 | + }, | ||
563 | + createManyEmptyOut() { | ||
564 | + this.$refs.manyEmptyOutModal.edit(); | ||
565 | + this.$refs.manyEmptyOutModal.title = "创建空托盘组出库"; | ||
566 | + }, | ||
567 | + callShipmentBox() { | ||
568 | + this.$refs.modalForm1.edit(); | ||
569 | + this.$refs.modalForm1.title = "呼叫出库托盘"; | ||
570 | + }, | ||
571 | + createCheckOut() { | ||
572 | + this.$refs.checkOutModal.edit(); | ||
573 | + this.$refs.checkOutModal.title = "创建出库查看任务"; | ||
574 | + }, | ||
575 | + createTransfer() { | ||
576 | + this.$refs.transferModal.edit(); | ||
577 | + this.$refs.transferModal.title = "创建移库任务"; | ||
578 | + }, | ||
579 | + createOverStation() { | ||
580 | + this.$refs.overStationModal.edit(); | ||
581 | + this.$refs.overStationModal.title = "创建跨站任务"; | ||
582 | + }, | ||
514 | solutionZoneCode(value) { | 583 | solutionZoneCode(value) { |
515 | var actions = [] | 584 | var actions = [] |
516 | Object.keys(this.zoneList).some((key) => { | 585 | Object.keys(this.zoneList).some((key) => { |
ant-design-vue-jeecg/src/views/user/LoginAccount.vue
@@ -7,8 +7,7 @@ | @@ -7,8 +7,7 @@ | ||
7 | </a-input> | 7 | </a-input> |
8 | </a-form-model-item> | 8 | </a-form-model-item> |
9 | <a-form-model-item required prop="password"> | 9 | <a-form-model-item required prop="password"> |
10 | - <a-input v-model="model.password" size="large" type="text" autocomplete="off" @input="maskPassword" | ||
11 | - placeholder="请输入密码 / 123456" > | 10 | + <a-input v-model="model.password" size="large" type="text" autocomplete="off" @input="maskPassword" placeholder="请输入密码" > |
12 | <a-icon slot="prefix" type="lock" :style="{ color: 'rgba(0,0,0,.25)' }"/> | 11 | <a-icon slot="prefix" type="lock" :style="{ color: 'rgba(0,0,0,.25)' }"/> |
13 | </a-input> | 12 | </a-input> |
14 | </a-form-model-item> | 13 | </a-form-model-item> |
@@ -105,14 +104,29 @@ export default { | @@ -105,14 +104,29 @@ export default { | ||
105 | }, | 104 | }, |
106 | 105 | ||
107 | maskPassword() { | 106 | maskPassword() { |
108 | - if (this.model.password.length<this.maskedPassword.length){ | ||
109 | - let len=this.maskedPassword.length-this.model.password.length | ||
110 | - this.maskedPassword=this.maskedPassword.substring(0,this.maskedPassword.length - len) | ||
111 | - }else{ | ||
112 | - this.maskedPassword = this.maskedPassword + this.model.password.substring(this.model.password.length - 1, this.model.password.length) | 107 | + //获取输入框的值 |
108 | + let value = this.model.password | ||
109 | + if (value != '') { | ||
110 | + //如果不为空,逐个字符判断是否为圆点 | ||
111 | + for (let i = 0; i < value.length; i++) { | ||
112 | + if (value.charAt(i) != '\u25CF') { | ||
113 | + //如果不是圆点,表示该字符为用户输入的值,放到真实值的对应位置 | ||
114 | + let char = value.charAt(i) | ||
115 | + this.maskedPassword = this.maskedPassword.slice(0, i) + char + this.maskedPassword.slice(i) | ||
116 | + //将该字符替换为圆点 | ||
117 | + value = value.slice(0, i) + '\u25CF' + value.slice(i + 1) | ||
118 | + } | ||
119 | + } | ||
120 | + //防止真实值和圆点的数量不对应。 | ||
121 | + this.maskedPassword = this.maskedPassword.slice(0, value.length) | ||
122 | + //将转换过的字符串显示给用户 | ||
123 | + this.model.password = value | ||
124 | + } else { | ||
125 | + //保持一致性 | ||
126 | + this.maskedPassword = '' | ||
113 | } | 127 | } |
114 | - this.model.password = '*'.repeat(this.model.password.length); | ||
115 | }, | 128 | }, |
129 | + | ||
116 | // 判断登录类型 | 130 | // 判断登录类型 |
117 | handleUsernameOrEmail(rule, value, callback) { | 131 | handleUsernameOrEmail(rule, value, callback) { |
118 | const regex = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\.[a-zA-Z0-9_-]{2,3}){1,2})$/; | 132 | const regex = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\.[a-zA-Z0-9_-]{2,3}){1,2})$/; |
huaheng-wms-core/src/main/java/org/jeecg/modules/wms/monitor/job/AutoDeleteTask.java
@@ -61,21 +61,21 @@ public class AutoDeleteTask implements Job { | @@ -61,21 +61,21 @@ public class AutoDeleteTask implements Job { | ||
61 | LambdaQueryWrapper<ReceiptHeader> receiptHeaderLambdaQueryWrapper = Wrappers.lambdaQuery(); | 61 | LambdaQueryWrapper<ReceiptHeader> receiptHeaderLambdaQueryWrapper = Wrappers.lambdaQuery(); |
62 | receiptHeaderLambdaQueryWrapper.eq(ReceiptHeader::getLastStatus, QuantityConstant.RECEIPT_HEADER_COMPLETED).isNull(ReceiptHeader::getReferCode); | 62 | receiptHeaderLambdaQueryWrapper.eq(ReceiptHeader::getLastStatus, QuantityConstant.RECEIPT_HEADER_COMPLETED).isNull(ReceiptHeader::getReferCode); |
63 | List<ReceiptHeader> receiptHeaderList = receiptHeaderService.list(receiptHeaderLambdaQueryWrapper); | 63 | List<ReceiptHeader> receiptHeaderList = receiptHeaderService.list(receiptHeaderLambdaQueryWrapper); |
64 | - log.info(String.format(" AutoDeleteReceiptTask 执行任务! receiptHeaderList :" + receiptHeaderList + "时间" + DateUtils.getTimestamp())); | 64 | + log.info(String.format(" AutoDeleteTask 执行任务! receiptHeaderList :" + receiptHeaderList + "时间" + DateUtils.getTimestamp())); |
65 | for (ReceiptHeader receiptHeader : receiptHeaderList) { | 65 | for (ReceiptHeader receiptHeader : receiptHeaderList) { |
66 | receiptHeaderService.delMain(String.valueOf(receiptHeader.getId()), QuantityConstant.WMS_COMPLETE_DELETE_RECEIPT); | 66 | receiptHeaderService.delMain(String.valueOf(receiptHeader.getId()), QuantityConstant.WMS_COMPLETE_DELETE_RECEIPT); |
67 | } | 67 | } |
68 | LambdaQueryWrapper<ShipmentHeader> shipmentHeaderLambdaQueryWrapper = Wrappers.lambdaQuery(); | 68 | LambdaQueryWrapper<ShipmentHeader> shipmentHeaderLambdaQueryWrapper = Wrappers.lambdaQuery(); |
69 | shipmentHeaderLambdaQueryWrapper.eq(ShipmentHeader::getLastStatus, QuantityConstant.SHIPMENT_HEADER_COMPLETED).isNull(ShipmentHeader::getReferCode); | 69 | shipmentHeaderLambdaQueryWrapper.eq(ShipmentHeader::getLastStatus, QuantityConstant.SHIPMENT_HEADER_COMPLETED).isNull(ShipmentHeader::getReferCode); |
70 | List<ShipmentHeader> shipmentHeaderList = shipmentHeaderService.list(shipmentHeaderLambdaQueryWrapper); | 70 | List<ShipmentHeader> shipmentHeaderList = shipmentHeaderService.list(shipmentHeaderLambdaQueryWrapper); |
71 | - log.info(String.format(" AutoDeleteReceiptTask 执行任务! shipmentHeaderList :" + shipmentHeaderList + "时间" + DateUtils.getTimestamp())); | 71 | + log.info(String.format(" AutoDeleteTask 执行任务! shipmentHeaderList :" + shipmentHeaderList + "时间" + DateUtils.getTimestamp())); |
72 | for (ShipmentHeader shipmentHeader : shipmentHeaderList) { | 72 | for (ShipmentHeader shipmentHeader : shipmentHeaderList) { |
73 | shipmentHeaderService.delMain(String.valueOf(shipmentHeader.getId()), QuantityConstant.WMS_COMPLETE_DELETE_RECEIPT); | 73 | shipmentHeaderService.delMain(String.valueOf(shipmentHeader.getId()), QuantityConstant.WMS_COMPLETE_DELETE_RECEIPT); |
74 | } | 74 | } |
75 | LambdaQueryWrapper<TaskHeader> taskHeaderLambdaQueryWrapper = Wrappers.lambdaQuery(); | 75 | LambdaQueryWrapper<TaskHeader> taskHeaderLambdaQueryWrapper = Wrappers.lambdaQuery(); |
76 | taskHeaderLambdaQueryWrapper.eq(TaskHeader::getStatus, QuantityConstant.TASK_STATUS_COMPLETED); | 76 | taskHeaderLambdaQueryWrapper.eq(TaskHeader::getStatus, QuantityConstant.TASK_STATUS_COMPLETED); |
77 | List<TaskHeader> taskHeaderList = taskHeaderService.list(taskHeaderLambdaQueryWrapper); | 77 | List<TaskHeader> taskHeaderList = taskHeaderService.list(taskHeaderLambdaQueryWrapper); |
78 | - log.info(String.format(" AutoDeleteReceiptTask 执行任务! taskHeaderList :" + taskHeaderList + "时间" + DateUtils.getTimestamp())); | 78 | + log.info(String.format(" AutoDeleteTask 执行任务! taskHeaderList :" + taskHeaderList + "时间" + DateUtils.getTimestamp())); |
79 | for (TaskHeader taskHeader : taskHeaderList) { | 79 | for (TaskHeader taskHeader : taskHeaderList) { |
80 | taskHeaderService.delMain(taskHeader.getId()); | 80 | taskHeaderService.delMain(taskHeader.getId()); |
81 | } | 81 | } |