Browse Source

入库多选/借阅详情加开架/样式修改

master
xuhuajiao 2 years ago
parent
commit
f5257df10b
  1. 6
      src/api/archivesManage/outInStorage.js
  2. 4
      src/assets/styles/index.scss
  3. 2
      src/views/archivesManage/archivesList/module/archivesInfo/index.vue
  4. 2
      src/views/archivesManage/archivesSearch/index.vue
  5. 330
      src/views/archivesManage/lendManage/components/archiveDetail.vue
  6. 2
      src/views/archivesManage/lendManage/components/lendArchivesList.vue
  7. 367
      src/views/archivesManage/lendManage/lendQuery/index.vue
  8. 319
      src/views/archivesManage/lendManage/returnArchives/index.vue
  9. 13
      src/views/archivesManage/outInStorage/inStorage/index.vue
  10. 4
      src/views/archivesManage/outInStorage/inStorage/module/handDialog.vue
  11. 89
      src/views/archivesManage/outInStorage/inStorage/module/inDialog.vue
  12. 2
      src/views/storeManage/warehouse3D/deseCabinet/index.vue

6
src/api/archivesManage/outInStorage.js

@ -2,9 +2,9 @@ import request from '@/utils/request'
import qs from 'qs' import qs from 'qs'
// 入库 初始化档案盒装盒信息 // 入库 初始化档案盒装盒信息
export function initCaseByArchives(params) {
export function initCasesByArchives(params) {
return request({ return request({
url: 'api/storage/initCaseByArchives' + '?' + qs.stringify(params, { indices: false }),
url: 'api/storage/initCasesByArchives' + '?' + qs.stringify(params, { indices: false }),
method: 'get' method: 'get'
}) })
} }
@ -94,7 +94,7 @@ export function initStorageDetailes(params) {
} }
export default { export default {
initCaseByArchives,
initCasesByArchives,
isOccupy, isOccupy,
collect, collect,
grant, grant,

4
src/assets/styles/index.scss

@ -200,8 +200,8 @@ ul{
/**滚动条的宽度*/ /**滚动条的宽度*/
::-webkit-scrollbar { ::-webkit-scrollbar {
width: 4px;
height: 4px;
width: 8px;
height: 8px;
} }
//滚动条的滑块 //滚动条的滑块

2
src/views/archivesManage/archivesList/module/archivesInfo/index.vue

@ -157,8 +157,6 @@ export default {
// //
getDeviceListAll() { getDeviceListAll() {
const params = { const params = {
page: 0,
size: 10,
sort: 'sequence,asc', sort: 'sequence,asc',
storeroomId: 'D6490DA3D4261E8C26D0E3' storeroomId: 'D6490DA3D4261E8C26D0E3'
} }

2
src/views/archivesManage/archivesSearch/index.vue

@ -246,8 +246,6 @@ export default {
// //
getDeviceListAll() { getDeviceListAll() {
const params = { const params = {
page: 0,
size: 10,
sort: 'sequence,asc', sort: 'sequence,asc',
storeroomId: 'D6490DA3D4261E8C26D0E3' storeroomId: 'D6490DA3D4261E8C26D0E3'
} }

330
src/views/archivesManage/lendManage/components/archiveDetail.vue

@ -1,130 +1,200 @@
<template>
<div>
<el-dialog title="借阅详情" :visible.sync="detailVisible">
<span class="dialog-right-top" />
<span class="dialog-left-bottom" />
<div class="setting-dialog">
<div class="dpflex">
<p><span class="color-blue">单据号:</span><span class="color-white">{{ otherInfo.id }}</span></p>
<p><span class="color-blue">借阅人:</span><span class="color-white">{{ borrowerInfo.borrowerName }}</span></p>
<p><span class="color-blue">所属部门:</span><span class="color-white">{{ borrowerInfo.department }}</span></p>
<p><span class="color-blue">证件类型:</span><span class="color-white">{{ borrowerInfo.cardType }}</span></p>
<p><span class="color-blue">证件号码:</span><span class="color-white">{{ borrowerInfo.idcard }}</span></p>
<p><span class="color-blue">电话号码:</span><span class="color-white">{{ borrowerInfo.phone }}</span></p>
<p><span class="color-blue">借阅目的:</span><span class="color-white">{{ otherInfo.purpose }}</span></p>
<p><span class="color-blue">借阅日期:</span><span class="color-white">{{ lendDatesInfo }}</span></p>
<p><span class="color-blue">借阅状态:</span><span :class="borrowStyle(otherInfo.borrow_type)">{{ otherInfo.borrow_type | borrowStatus }}</span></p>
<p><span class="color-blue">操作时间:</span><span class="color-white">{{ otherInfo.create_time | parseTime }}</span></p>
</div>
<el-table :data="tableData" max-height="400px" style="margin-top:15px;">
<el-table-column type="index" label="序号" align="center" width="55" />
<el-table-column prop="categoryName" label="门类名称" align="center" min-width="120" />
<el-table-column prop="archiveNo" label="档号" align="center" width="160" show-overflow-tooltip />
<el-table-column prop="maintitle" label="题名" align="center" width="180" show-overflow-tooltip />
<el-table-column prop="caseName" label="盒名称" align="center" min-width="120" show-overflow-tooltip />
<el-table-column prop="folderLocationDetails" label="存放位置" align="center" min-width="260">
<template v-if="scope.row.folderLocationDetails !== null" slot-scope="scope">
<div v-if="scope.row.folderLocationDetails.includes(',')">
<el-tag
v-for="(item,index) in scope.row.folderLocationDetails.split(',')"
:key="index"
:type="item"
effect="dark"
>
{{ item }}
</el-tag>
</div>
<div v-else>
<el-tag effect="dark">{{ scope.row.folderLocationDetails }}</el-tag>
</div>
</template>
</el-table-column>
<el-table-column prop="borrowType" label="借阅状态" align="center" min-width="100">
<template slot-scope="scope">
<!-- 待借阅 / 逾期 have-lend / 待归还 / 已归还 has-return -->
<span :class="borrowStyle(scope.row.borrowType)" style="width:76px">{{ scope.row.borrowType | borrowStatus }}</span>
</template>
</el-table-column>
</el-table>
</div>
</el-dialog>
</div>
</template>
<script>
import { FetchInitBillDetails } from '@/api/archivesManage/lendManage'
import { lendingCrud } from '../mixins/lending'
import { parseTime } from '@/utils/index.js'
export default {
name: 'ArchiveDetail',
mixins: [lendingCrud],
data() {
return {
detailVisible: false,
rowData: {},
borrowerInfo: {},
otherInfo: {},
tableData: [],
lendDatesInfo: null
}
},
methods: {
getBillDetails() {
const params = {
'orderNo': this.rowData.orderNo
}
FetchInitBillDetails(params).then(data => {
this.otherInfo = data
this.borrowerInfo = data.borrower
this.tableData = data.borrowArchives
this.lendDatesInfo = parseTime(data.borrow_start, '{y}-{m}-{d}') + ' 至 ' + parseTime(data.borrow_end, '{y}-{m}-{d}')
})
}
}
}
</script>
<style lang="scss" scoped>
@import '~@/assets/styles/lend-manage.scss';
::v-deep .el-dialog__body{
padding: 20px 0 60px 0;
}
::v-deep .el-dialog{
width: 1100px;
}
::v-deep .el-dialog .el-dialog__header .el-dialog__close::before{
position: absolute;
right: -260px;
bottom: -10px;
}
.dpflex{
display: flex;
flex-wrap: wrap;
padding: 0 30px;
p{
display: flex;
align-items: center;
width: 33%;
height: 40px;
line-height: 40px;
span{
display: block;
line-height: 40px;
&.color-blue{
color: #3A99FD;
width: 70px;
text-align: right;
}
&.color-white{
color: white;
padding: 0 0 0 20px;
}
&.cell-lend{
margin-left: 20px;
width: 76px;
line-height: 24px;
}
}
}
}
</style>
<template>
<div>
<el-dialog title="借阅详情" :visible.sync="detailVisible">
<span class="dialog-right-top" />
<span class="dialog-left-bottom" />
<div class="setting-dialog">
<div class="dpflex">
<p><span class="color-blue">单据号:</span><span class="color-white">{{ otherInfo.id }}</span></p>
<p><span class="color-blue">借阅人:</span><span class="color-white">{{ borrowerInfo.borrowerName }}</span></p>
<p><span class="color-blue">所属部门:</span><span class="color-white">{{ borrowerInfo.department }}</span></p>
<p><span class="color-blue">证件类型:</span><span class="color-white">{{ borrowerInfo.cardType }}</span></p>
<p><span class="color-blue">证件号码:</span><span class="color-white">{{ borrowerInfo.idcard }}</span></p>
<p><span class="color-blue">电话号码:</span><span class="color-white">{{ borrowerInfo.phone }}</span></p>
<p><span class="color-blue">借阅目的:</span><span class="color-white">{{ otherInfo.purpose }}</span></p>
<p><span class="color-blue">借阅日期:</span><span class="color-white">{{ lendDatesInfo }}</span></p>
<p><span class="color-blue">借阅状态:</span><span :class="borrowStyle(otherInfo.borrow_type)">{{ otherInfo.borrow_type | borrowStatus }}</span></p>
<p><span class="color-blue">操作时间:</span><span class="color-white">{{ otherInfo.create_time | parseTime }}</span></p>
</div>
<el-table :data="tableData" max-height="400px" style="margin-top:15px;">
<el-table-column type="index" label="序号" align="center" width="55" />
<el-table-column prop="categoryName" label="门类名称" align="center" min-width="160" />
<el-table-column prop="archiveNo" label="档号" align="center" width="160" show-overflow-tooltip />
<el-table-column prop="maintitle" label="题名" align="center" width="180" show-overflow-tooltip />
<el-table-column prop="caseName" label="盒名称" align="center" min-width="120" show-overflow-tooltip />
<el-table-column prop="folderLocationDetails" label="存放位置" align="center" min-width="300">
<template v-if="scope.row.folderLocationDetails !== null" slot-scope="scope">
<div v-if="scope.row.folderLocationDetails.includes(',')">
<el-tag
v-for="(item,index) in scope.row.folderLocationDetails.split(',')"
:key="index"
:type="item"
effect="dark"
>
{{ item }}
</el-tag>
</div>
<div v-else>
<el-tag effect="dark">{{ scope.row.folderLocationDetails }}</el-tag>
</div>
</template>
</el-table-column>
<el-table-column prop="borrowType" label="借阅状态" align="center" min-width="100">
<template slot-scope="scope">
<!-- 待借阅 / 逾期 have-lend / 待归还 / 已归还 has-return -->
<span :class="borrowStyle(scope.row.borrowType)" style="width:76px">{{ scope.row.borrowType | borrowStatus }}</span>
</template>
</el-table-column>
<el-table-column v-if="isReturn" prop="borrowType" align="center" label="开架操作" min-width="100">
<template slot-scope="scope">
<el-button v-if="scope.row.folderLocationDetails" size="mini" type="primary" @click="openCol(scope.row.folderLocationDetails)">开架</el-button>
</template>
</el-table-column>
</el-table>
</div>
</el-dialog>
</div>
</template>
<script>
import { FetchInitBillDetails } from '@/api/archivesManage/lendManage'
import CallExternal from '@/api/storeManage/deviceManage/device'
import { lendingCrud } from '../mixins/lending'
import { parseTime } from '@/utils/index.js'
export default {
name: 'ArchiveDetail',
mixins: [lendingCrud],
props: {
isReturn: {
type: Boolean,
default: false
}
},
data() {
return {
detailVisible: false,
rowData: {},
borrowerInfo: {},
otherInfo: {},
tableData: [],
lendDatesInfo: null,
deviceData: null
}
},
methods: {
getBillDetails() {
const params = {
'orderNo': this.rowData.orderNo
}
FetchInitBillDetails(params).then(data => {
this.otherInfo = data
this.borrowerInfo = data.borrower
this.tableData = data.borrowArchives
this.lendDatesInfo = parseTime(data.borrow_start, '{y}-{m}-{d}') + ' 至 ' + parseTime(data.borrow_end, '{y}-{m}-{d}')
this.getDeviceListAll()
})
},
//
getDeviceListAll() {
const params = {
sort: 'sequence,asc',
storeroomId: 'D6490DA3D4261E8C26D0E3'
}
CallExternal.getDeviceList(params).then(data => {
data.content.map(item => {
if (item.deviceTypeId.name === '密集架') { //
this.deviceData = item
}
})
})
},
//
openCol(data) {
const loactionArray = data.split(' ')
const location = data.split(' ')[loactionArray.length - 1]
const pattern = /(\d+)区(\d+)列(\d+)节(\d+)层/
const matches = location.match(pattern)
let areaNumber
let colNumber
let leNumber
let divNumber
let zyNumber
if (matches !== null) {
areaNumber = matches[1]
colNumber = matches[2]
leNumber = matches[3]
divNumber = matches[4]
}
const last_char = location.length - 1
if (location[last_char] === '右') {
zyNumber = '2'
} else {
zyNumber = '1'
}
const params = {
deviceId: this.deviceData.id,
quNo: areaNumber, //
colNo: colNumber, //
leNo: leNumber, //
divNo: divNumber, //
zyNo: zyNumber // 1 2
}
CallExternal.FetchCallExternalOpenCol(params).then(res => {
if (res.success && res.success === '0') {
this.$message.success('开架执行成功')
} else {
this.$message.error(res.msg)
}
}).catch((error) => {
console.log(error)
this.$message.error('连接失败')
})
}
}
}
</script>
<style lang="scss" scoped>
@import '~@/assets/styles/lend-manage.scss';
::v-deep .el-dialog__body{
padding: 20px 0 60px 0;
}
::v-deep .el-dialog{
width: 1200px;
}
::v-deep .el-dialog .el-dialog__header .el-dialog__close::before{
position: absolute;
right: -280px;
bottom: -10px;
}
.dpflex{
display: flex;
flex-wrap: wrap;
padding: 0 30px;
p{
display: flex;
align-items: center;
width: 33%;
height: 40px;
line-height: 40px;
span{
display: block;
line-height: 40px;
&.color-blue{
color: #3A99FD;
width: 70px;
text-align: right;
}
&.color-white{
color: white;
padding: 0 0 0 20px;
}
&.cell-lend{
margin-left: 20px;
width: 76px;
line-height: 24px;
}
}
}
}
</style>

2
src/views/archivesManage/lendManage/components/lendArchivesList.vue

@ -155,8 +155,6 @@ export default {
// //
getDeviceListAll() { getDeviceListAll() {
const params = { const params = {
page: 0,
size: 10,
sort: 'sequence,asc', sort: 'sequence,asc',
storeroomId: 'D6490DA3D4261E8C26D0E3' storeroomId: 'D6490DA3D4261E8C26D0E3'
} }

367
src/views/archivesManage/lendManage/lendQuery/index.vue

@ -1,183 +1,184 @@
<template>
<div class="lend-query">
<div class="head-container head-archives clearfix">
<div class="archives-crud">
<el-button :loading="crud.downloadLoading" :disabled="!selections.length" size="mini" icon="el-icon-download" @click="downloadApi">导出</el-button>
</div>
<div class="head-search">
<el-select
v-model="borrowType"
class="filter-item"
style="width: 100px; height: 30px;margin-left:10px"
@change="crud.toQuery"
>
<el-option
v-for="item in lendStateOptions"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
<el-input v-model="lendQuery[lendSelect]" clearable size="small" placeholder="请输入关键词" style="width: 300px;" class="input-prepend filter-item" @clear="crud.toQuery" @keyup.enter.native="crud.toQuery">
<el-select slot="prepend" v-model="lendSelect" style="width: 90px">
<el-option
v-for="item in queryOption"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-input>
<rrOperation />
</div>
</div>
<!--表格渲染-->
<el-table
ref="table"
v-loading="crud.loading"
style="width: 100%"
height="calc(100vh - 356px)"
:data="crud.data"
:row-key="getRowKey"
@selection-change="selectionChangeHandler"
@row-click="clickRowHandler"
@row-dblclick="handleDbClick"
>
<el-table-column type="selection" :reserve-selection="true" align="center" width="55" />
<el-table-column type="index" label="序号" align="center" width="55" />
<el-table-column prop="borrowType" align="center" label="借阅状态" width="100">
<template slot-scope="scope">
<span :class="borrowStyle(scope.row.borrowType)" style="width:76px">{{ scope.row.borrowType }}</span>
</template>
</el-table-column>
<el-table-column prop="orderNo" align="center" label="单据号" width="140" />
<el-table-column prop="categoryName" align="center" label="门类名称" width="120" show-overflow-tooltip />
<el-table-column prop="archiveNo" align="center" label="档号" width="160" show-overflow-tooltip />
<el-table-column prop="maintitle" align="center" label="题名" min-width="180" show-overflow-tooltip />
<el-table-column prop="caseName" align="center" label="盒名称" width="120" show-overflow-tooltip />
<el-table-column prop="folderLocationDetails" align="center" label="存放位置" width="300">
<template v-if="scope.row.folderLocationDetails !== null" slot-scope="scope">
<div v-if="scope.row.folderLocationDetails.includes(',')">
<el-tag
v-for="(item,index) in scope.row.folderLocationDetails.split(',')"
:key="index"
:type="item"
effect="dark"
>
{{ item }}
</el-tag>
</div>
<div v-else>
<el-tag effect="dark">{{ scope.row.folderLocationDetails }}</el-tag>
</div>
</template>
</el-table-column>
<el-table-column prop="borrowerName" align="center" label="借阅人" width="100" />
<el-table-column prop="borrowDays" align="center" label="借阅时间" width="200">
<template slot-scope="scope">
<div>{{ scope.row.borrowType ==='待登记' ? '' : parseTime(scope.row.borrowStart, '{y}-{m}-{d}') + ' 至 ' + parseTime(scope.row.borrowEnd, '{y}-{m}-{d}') }}</div>
</template>
</el-table-column>
<el-table-column prop="purpose" align="center" label="借阅目的" width="100" />
<el-table-column prop="endTime" align="center" label="借出时间" width="120">
<template slot-scope="scope">
<div>{{ parseTime(scope.row.borrowStart, '{y}-{m}-{d}') }}</div>
</template>
</el-table-column>
<el-table-column prop="endTime" align="center" label="归还时间" width="160">
<template slot-scope="scope">
<div>{{ scope.row.endTime | parseTime }}</div>
</template>
</el-table-column>
</el-table>
<!-- 档案详情 -->
<archiveDetail ref="archiveDetailDom" />
<!-- 分页 -->
<pagination />
</div>
</template>
<script>
import CRUD, { presenter } from '@crud/crud'
import { lendingCrud } from '../mixins/lending'
import pagination from '@crud/Pagination'
import rrOperation from '@crud/RR.operation'
import archiveDetail from '../components/archiveDetail'
export default {
name: 'LendQuery',
components: { pagination, rrOperation, archiveDetail },
mixins: [presenter(), lendingCrud],
cruds() {
return CRUD({
url: 'api/borrow/initBorrowLog',
// crudMethod: caseCrudMethod,
title: '借还记录',
optShow: {
add: false,
edit: false,
del: false,
download: true,
group: false
},
sort: ['create_time,desc']
})
},
data() {
return {
selections: [],
lendStateOptions: [
{ value: '全部', label: '全部' },
{ value: '2', label: '待借阅' },
{ value: '3', label: '待归还' },
{ value: '5', label: '逾期' },
{ value: '4', label: '已归还' },
{ value: '-1', label: '异常' }
],
borrowType: '全部',
queryOption: [
{ value: 'orderNo', label: '单据号' },
{ value: 'borrowerName', label: '借阅人' },
{ value: 'archiveNo', label: '档号' },
{ value: 'maintitle', label: '题名' },
{ value: 'folderLocationDetails', label: '位置' },
{ value: 'caseName', label: '档案盒' }
]
}
},
mounted() {
},
methods: {
//
[CRUD.HOOK.beforeRefresh]() {
this.crud.query.borrowType = null
if (this.borrowType === '全部') {
this.crud.query.borrowType = null
} else {
this.crud.query.borrowType = this.borrowType
}
this.crud.query.orderNo = null
this.crud.query.borrowerName = null
this.crud.query.archiveNo = null
this.crud.query.maintitle = null
this.crud.query.folderLocationDetails = null
this.crud.query.caseName = null
this.crud.query[this.lendSelect] = this.lendQuery[this.lendSelect]
},
selectionChangeHandler(val) {
this.selections = val
},
clickRowHandler(row) {
this.$refs.table.toggleRowSelection(row)
}
}
}
</script>
<style rel="stylesheet/scss" lang="scss" scoped>
@import "~@/assets/styles/archives-manage.scss";
@import '~@/assets/styles/lend-manage.scss';
.head-archives{
padding: 20px;
}
</style>
<template>
<div class="lend-query">
<div class="head-container head-archives clearfix">
<div class="archives-crud">
<el-button :loading="crud.downloadLoading" :disabled="!selections.length" size="mini" icon="el-icon-download" @click="downloadApi">导出</el-button>
</div>
<div class="head-search">
<el-select
v-model="borrowType"
class="filter-item"
style="width: 100px; height: 30px;margin-left:10px"
@change="crud.toQuery"
>
<el-option
v-for="item in lendStateOptions"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
<el-input v-model="lendQuery[lendSelect]" clearable size="small" placeholder="请输入关键词" style="width: 300px;" class="input-prepend filter-item" @clear="crud.toQuery" @keyup.enter.native="crud.toQuery">
<el-select slot="prepend" v-model="lendSelect" style="width: 90px">
<el-option
v-for="item in queryOption"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-input>
<rrOperation />
</div>
</div>
<!--表格渲染-->
<el-table
ref="table"
v-loading="crud.loading"
style="width: 100%"
height="calc(100vh - 356px)"
:data="crud.data"
:row-key="getRowKey"
@selection-change="selectionChangeHandler"
@row-click="clickRowHandler"
@row-dblclick="handleDbClick"
>
<el-table-column type="selection" :reserve-selection="true" align="center" width="55" />
<el-table-column type="index" label="序号" align="center" width="55" />
<el-table-column prop="borrowType" align="center" label="借阅状态" width="100">
<template slot-scope="scope">
<span :class="borrowStyle(scope.row.borrowType)" style="width:76px">{{ scope.row.borrowType }}</span>
</template>
</el-table-column>
<el-table-column prop="orderNo" align="center" label="单据号" width="140" />
<el-table-column prop="categoryName" align="center" label="门类名称" width="120" show-overflow-tooltip />
<el-table-column prop="archiveNo" align="center" label="档号" width="160" show-overflow-tooltip />
<el-table-column prop="maintitle" align="center" label="题名" min-width="180" show-overflow-tooltip />
<el-table-column prop="caseName" align="center" label="盒名称" width="120" show-overflow-tooltip />
<el-table-column prop="folderLocationDetails" align="center" label="存放位置" width="300">
<template v-if="scope.row.folderLocationDetails !== null" slot-scope="scope">
<div v-if="scope.row.folderLocationDetails.includes(',')">
<el-tag
v-for="(item,index) in scope.row.folderLocationDetails.split(',')"
:key="index"
:type="item"
effect="dark"
>
{{ item }}
</el-tag>
</div>
<div v-else>
<el-tag effect="dark">{{ scope.row.folderLocationDetails }}</el-tag>
</div>
</template>
</el-table-column>
<el-table-column prop="borrowerName" align="center" label="借阅人" width="100" />
<el-table-column prop="borrowDays" align="center" label="借阅时间" width="200">
<template slot-scope="scope">
<div>{{ scope.row.borrowType ==='待登记' ? '' : parseTime(scope.row.borrowStart, '{y}-{m}-{d}') + ' 至 ' + parseTime(scope.row.borrowEnd, '{y}-{m}-{d}') }}</div>
</template>
</el-table-column>
<el-table-column prop="purpose" align="center" label="借阅目的" width="100" />
<el-table-column prop="endTime" align="center" label="借出时间" width="120">
<template slot-scope="scope">
<div>{{ parseTime(scope.row.borrowStart, '{y}-{m}-{d}') }}</div>
</template>
</el-table-column>
<el-table-column prop="endTime" align="center" label="归还时间" width="160">
<template slot-scope="scope">
<div>{{ scope.row.endTime | parseTime }}</div>
</template>
</el-table-column>
</el-table>
<!-- 档案详情 -->
<archiveDetail ref="archiveDetailDom" :is-return="isReturn" />
<!-- 分页 -->
<pagination />
</div>
</template>
<script>
import CRUD, { presenter } from '@crud/crud'
import { lendingCrud } from '../mixins/lending'
import pagination from '@crud/Pagination'
import rrOperation from '@crud/RR.operation'
import archiveDetail from '../components/archiveDetail'
export default {
name: 'LendQuery',
components: { pagination, rrOperation, archiveDetail },
mixins: [presenter(), lendingCrud],
cruds() {
return CRUD({
url: 'api/borrow/initBorrowLog',
// crudMethod: caseCrudMethod,
title: '借还记录',
optShow: {
add: false,
edit: false,
del: false,
download: true,
group: false
},
sort: ['create_time,desc']
})
},
data() {
return {
isReturn: false,
selections: [],
lendStateOptions: [
{ value: '全部', label: '全部' },
{ value: '2', label: '待借阅' },
{ value: '3', label: '待归还' },
{ value: '5', label: '逾期' },
{ value: '4', label: '已归还' },
{ value: '-1', label: '异常' }
],
borrowType: '全部',
queryOption: [
{ value: 'orderNo', label: '单据号' },
{ value: 'borrowerName', label: '借阅人' },
{ value: 'archiveNo', label: '档号' },
{ value: 'maintitle', label: '题名' },
{ value: 'folderLocationDetails', label: '位置' },
{ value: 'caseName', label: '档案盒' }
]
}
},
mounted() {
},
methods: {
//
[CRUD.HOOK.beforeRefresh]() {
this.crud.query.borrowType = null
if (this.borrowType === '全部') {
this.crud.query.borrowType = null
} else {
this.crud.query.borrowType = this.borrowType
}
this.crud.query.orderNo = null
this.crud.query.borrowerName = null
this.crud.query.archiveNo = null
this.crud.query.maintitle = null
this.crud.query.folderLocationDetails = null
this.crud.query.caseName = null
this.crud.query[this.lendSelect] = this.lendQuery[this.lendSelect]
},
selectionChangeHandler(val) {
this.selections = val
},
clickRowHandler(row) {
this.$refs.table.toggleRowSelection(row)
}
}
}
</script>
<style rel="stylesheet/scss" lang="scss" scoped>
@import "~@/assets/styles/archives-manage.scss";
@import '~@/assets/styles/lend-manage.scss';
.head-archives{
padding: 20px;
}
</style>

319
src/views/archivesManage/lendManage/returnArchives/index.vue

@ -1,159 +1,160 @@
<template>
<div class="to-lend">
<div class="head-container head-archives clearfix">
<div class="archives-crud">
<el-button size="mini" class="iconfont icon-guihuan-fanbai" :disabled="!selections.length" @click="handleReturn">归还</el-button>
<el-button :loading="crud.downloadLoading" :disabled="!selections.length" size="mini" icon="el-icon-download" @click="downloadApi">导出</el-button>
</div>
<div class="head-search">
<el-input v-model="lendQuery[lendSelect]" clearable size="small" placeholder="请输入关键词" style="width: 300px;" class="input-prepend filter-item" @clear="crud.toQuery" @keyup.enter.native="crud.toQuery">
<el-select slot="prepend" v-model="lendSelect" style="width: 90px">
<el-option
v-for="item in queryOption"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-input>
<rrOperation />
</div>
</div>
<!--表格渲染-->
<el-table
ref="table"
style="width:100%"
height="calc(100vh - 355px)"
:data="crud.data"
:row-key="getRowKey"
@selection-change="selectionChangeHandler"
@row-click="clickRowHandler"
@row-dblclick="handleDbClick"
>
<el-table-column type="selection" :reserve-selection="true" align="center" width="55" />
<el-table-column type="index" label="序号" align="center" width="55" />
<el-table-column prop="orderNo" align="center" label="单据号" width="140" />
<el-table-column prop="categoryName" align="center" label="门类名称" width="120" show-overflow-tooltip />
<el-table-column prop="archiveNo" align="center" label="档号" min-width="160" show-overflow-tooltip />
<el-table-column prop="maintitle" align="center" label="题名" min-width="180" show-overflow-tooltip />
<el-table-column prop="caseName" align="center" label="盒名称" width="120" show-overflow-tooltip />
<el-table-column prop="folderLocationDetails" align="center" label="存放位置" width="300">
<template v-if="scope.row.folderLocationDetails !== null" slot-scope="scope">
<div v-if="scope.row.folderLocationDetails.includes(',')">
<el-tag
v-for="(item,index) in scope.row.folderLocationDetails.split(',')"
:key="index"
:type="item"
effect="dark"
>
{{ item }}
</el-tag>
</div>
<div v-else>
<el-tag effect="dark">{{ scope.row.folderLocationDetails }}</el-tag>
</div>
</template>
</el-table-column>
<el-table-column prop="borrowerName" align="center" label="借阅人" width="100" />
<el-table-column prop="borrowDays" align="center" label="借阅时间" width="200">
<template slot-scope="scope">
<div>{{ parseTime(scope.row.borrowStart, '{y}-{m}-{d}') + ' 至 ' + parseTime(scope.row.borrowEnd, '{y}-{m}-{d}') }}</div>
</template>
</el-table-column>
<el-table-column prop="purpose" align="center" label="借阅目的" width="100" />
<el-table-column prop="borrowType" align="center" label="借阅状态" width="100">
<template slot-scope="scope">
<span :class="['cell-lend',scope.row.borrowType === '待归还'?'no-lend':'have-lend']" style="width:76px">{{ scope.row.borrowType }}</span>
</template>
</el-table-column>
<el-table-column prop="createBy" align="center" label="操作人" width="100" />
<el-table-column prop="createTime" align="center" label="操作时间" width="160">
<template slot-scope="scope">
<div>{{ scope.row.createTime | parseTime }}</div>
</template>
</el-table-column>
</el-table>
<!-- 归还失败 -->
<releaseAlarm ref="releaseAlarmDom" />
<!-- 档案详情 -->
<archiveDetail ref="archiveDetailDom" />
<!-- 分页 -->
<pagination />
</div>
</template>
<script>
import CRUD, { presenter } from '@crud/crud'
import { lendingCrud } from '../mixins/lending'
import pagination from '@crud/Pagination'
import rrOperation from '@crud/RR.operation'
import releaseAlarm from '../components/releaseAlarm'
import archiveDetail from '../components/archiveDetail'
export default {
name: 'ReturnArchives',
components: { pagination, rrOperation, archiveDetail, releaseAlarm },
mixins: [presenter(), lendingCrud],
cruds() {
return CRUD({
url: 'api/borrow/initReturnConfirmList',
// crudMethod: caseCrudMethod,
title: '归还确认',
optShow: {
add: false,
edit: false,
del: false,
download: true,
group: false
}
})
},
data() {
return {
selections: [],
queryOption: [
{ value: 'orderNo', label: '单据号' },
{ value: 'borrowerName', label: '借阅人' }
]
}
},
created() {
this.getBorrowRule()
},
mounted() {
},
methods: {
//
[CRUD.HOOK.beforeRefresh]() {
this.crud.query.orderNo = null
this.crud.query.borrowerName = null
this.crud.query[this.lendSelect] = this.lendQuery[this.lendSelect]
},
clickRowHandler(row) {
this.$refs.table.toggleRowSelection(row)
},
//
handleReturn() {
if (this.selections.length > 0) {
if (this.lineStateVal === 'offline') {
// 线
this.$refs.releaseAlarmDom.lendSelections = this.selections
this.$refs.releaseAlarmDom.getLendTid(1)
} else {
// 线
const params = this.selections.map(item => item.id)
this.confirmLendOrReturn(1, params, this.selections)
}
}
}
}
}
</script>
<style lang="scss" scoped>
@import "~@/assets/styles/archives-manage.scss";
@import '~@/assets/styles/lend-manage.scss';
.head-archives{
padding: 20px;
}
</style>
<template>
<div class="to-lend">
<div class="head-container head-archives clearfix">
<div class="archives-crud">
<el-button size="mini" class="iconfont icon-guihuan-fanbai" :disabled="!selections.length" @click="handleReturn">归还</el-button>
<el-button :loading="crud.downloadLoading" :disabled="!selections.length" size="mini" icon="el-icon-download" @click="downloadApi">导出</el-button>
</div>
<div class="head-search">
<el-input v-model="lendQuery[lendSelect]" clearable size="small" placeholder="请输入关键词" style="width: 300px;" class="input-prepend filter-item" @clear="crud.toQuery" @keyup.enter.native="crud.toQuery">
<el-select slot="prepend" v-model="lendSelect" style="width: 90px">
<el-option
v-for="item in queryOption"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-input>
<rrOperation />
</div>
</div>
<!--表格渲染-->
<el-table
ref="table"
style="width:100%"
height="calc(100vh - 355px)"
:data="crud.data"
:row-key="getRowKey"
@selection-change="selectionChangeHandler"
@row-click="clickRowHandler"
@row-dblclick="handleDbClick"
>
<el-table-column type="selection" :reserve-selection="true" align="center" width="55" />
<el-table-column type="index" label="序号" align="center" width="55" />
<el-table-column prop="orderNo" align="center" label="单据号" width="140" />
<el-table-column prop="categoryName" align="center" label="门类名称" width="120" show-overflow-tooltip />
<el-table-column prop="archiveNo" align="center" label="档号" min-width="160" show-overflow-tooltip />
<el-table-column prop="maintitle" align="center" label="题名" min-width="180" show-overflow-tooltip />
<el-table-column prop="caseName" align="center" label="盒名称" width="120" show-overflow-tooltip />
<el-table-column prop="folderLocationDetails" align="center" label="存放位置" width="300">
<template v-if="scope.row.folderLocationDetails !== null" slot-scope="scope">
<div v-if="scope.row.folderLocationDetails.includes(',')">
<el-tag
v-for="(item,index) in scope.row.folderLocationDetails.split(',')"
:key="index"
:type="item"
effect="dark"
>
{{ item }}
</el-tag>
</div>
<div v-else>
<el-tag effect="dark">{{ scope.row.folderLocationDetails }}</el-tag>
</div>
</template>
</el-table-column>
<el-table-column prop="borrowerName" align="center" label="借阅人" width="100" />
<el-table-column prop="borrowDays" align="center" label="借阅时间" width="200">
<template slot-scope="scope">
<div>{{ parseTime(scope.row.borrowStart, '{y}-{m}-{d}') + ' 至 ' + parseTime(scope.row.borrowEnd, '{y}-{m}-{d}') }}</div>
</template>
</el-table-column>
<el-table-column prop="purpose" align="center" label="借阅目的" width="100" />
<el-table-column prop="borrowType" align="center" label="借阅状态" width="100">
<template slot-scope="scope">
<span :class="['cell-lend',scope.row.borrowType === '待归还'?'no-lend':'have-lend']" style="width:76px">{{ scope.row.borrowType }}</span>
</template>
</el-table-column>
<el-table-column prop="createBy" align="center" label="操作人" width="100" />
<el-table-column prop="createTime" align="center" label="操作时间" width="160">
<template slot-scope="scope">
<div>{{ scope.row.createTime | parseTime }}</div>
</template>
</el-table-column>
</el-table>
<!-- 归还失败 -->
<releaseAlarm ref="releaseAlarmDom" />
<!-- 档案详情 -->
<archiveDetail ref="archiveDetailDom" :is-return="isReturn" />
<!-- 分页 -->
<pagination />
</div>
</template>
<script>
import CRUD, { presenter } from '@crud/crud'
import { lendingCrud } from '../mixins/lending'
import pagination from '@crud/Pagination'
import rrOperation from '@crud/RR.operation'
import releaseAlarm from '../components/releaseAlarm'
import archiveDetail from '../components/archiveDetail'
export default {
name: 'ReturnArchives',
components: { pagination, rrOperation, archiveDetail, releaseAlarm },
mixins: [presenter(), lendingCrud],
cruds() {
return CRUD({
url: 'api/borrow/initReturnConfirmList',
// crudMethod: caseCrudMethod,
title: '归还确认',
optShow: {
add: false,
edit: false,
del: false,
download: true,
group: false
}
})
},
data() {
return {
isReturn: true,
selections: [],
queryOption: [
{ value: 'orderNo', label: '单据号' },
{ value: 'borrowerName', label: '借阅人' }
]
}
},
created() {
this.getBorrowRule()
},
mounted() {
},
methods: {
//
[CRUD.HOOK.beforeRefresh]() {
this.crud.query.orderNo = null
this.crud.query.borrowerName = null
this.crud.query[this.lendSelect] = this.lendQuery[this.lendSelect]
},
clickRowHandler(row) {
this.$refs.table.toggleRowSelection(row)
},
//
handleReturn() {
if (this.selections.length > 0) {
if (this.lineStateVal === 'offline') {
// 线
this.$refs.releaseAlarmDom.lendSelections = this.selections
this.$refs.releaseAlarmDom.getLendTid(1)
} else {
// 线
const params = this.selections.map(item => item.id)
this.confirmLendOrReturn(1, params, this.selections)
}
}
}
}
}
</script>
<style lang="scss" scoped>
@import "~@/assets/styles/archives-manage.scss";
@import '~@/assets/styles/lend-manage.scss';
.head-archives{
padding: 20px;
}
</style>

13
src/views/archivesManage/outInStorage/inStorage/index.vue

@ -24,7 +24,7 @@
<rrOperation /> <rrOperation />
</div> </div>
<div> <div>
<el-button size="mini" class="orange-btn iconfont icon-ruku-fanbai" :disabled="!(selections.length===1)" @click="handleIn">入库</el-button>
<el-button size="mini" class="orange-btn iconfont icon-ruku-fanbai" :disabled="!selections.length" @click="handleIn">入库</el-button>
<el-button size="mini" class="green-btn iconfont icon-ruku-fanbai" :disabled="!selections.length" @click="handleHand">人工确认</el-button> <el-button size="mini" class="green-btn iconfont icon-ruku-fanbai" :disabled="!selections.length" @click="handleHand">人工确认</el-button>
</div> </div>
</div> </div>
@ -110,7 +110,7 @@ import pagination from '@crud/Pagination'
import detailDialog from '../module/detailDialog.vue' import detailDialog from '../module/detailDialog.vue'
import inDialog from './module/inDialog.vue' import inDialog from './module/inDialog.vue'
import handDialog from './module/handDialog.vue' import handDialog from './module/handDialog.vue'
import { initCaseByArchives, readyCollectConfirm, collectConfirm, initStorageDetailes } from '@/api/archivesManage/outInStorage'
import { initCasesByArchives, readyCollectConfirm, collectConfirm, initStorageDetailes } from '@/api/archivesManage/outInStorage'
// import { getDetail } from '../module/outIn' // import { getDetail } from '../module/outIn'
export default { export default {
name: 'InStorage', name: 'InStorage',
@ -192,12 +192,13 @@ export default {
}, },
// //
handleIn() { handleIn() {
if (this.selections[0].storageType === 0) {
const caseIds = this.selections.map(item => { return item.id })
const index = this.selections.every((item) => item.storageType === 0)
if (index) {
const params = { const params = {
caseId: this.selections[0].id
// caseId: '8A686B1E9F255DCBE6B262'
caseIds: caseIds
} }
initCaseByArchives(params).then(res => {
initCasesByArchives(params).then(res => {
this.$refs.inDialogDom.childData = res this.$refs.inDialogDom.childData = res
}) })
this.$refs.inDialogDom.dialogVisible = true this.$refs.inDialogDom.dialogVisible = true

4
src/views/archivesManage/outInStorage/inStorage/module/handDialog.vue

@ -10,10 +10,10 @@
<el-table ref="table" :data="tableData" style="width: 100%" height="325px" @row-click="clickRowHandler" @selection-change="selectionChangeHandler"> <el-table ref="table" :data="tableData" style="width: 100%" height="325px" @row-click="clickRowHandler" @selection-change="selectionChangeHandler">
<el-table-column type="selection" align="center" width="55" /> <el-table-column type="selection" align="center" width="55" />
<el-table-column type="index" align="center" label="序号" width="60" /> <el-table-column type="index" align="center" label="序号" width="60" />
<el-table-column prop="caseName" align="center" label="盒名称" width="100" />
<el-table-column prop="caseName" align="center" label="盒名称" width="200" />
<el-table-column prop="tid" align="center" label="TID" width="180" /> <el-table-column prop="tid" align="center" label="TID" width="180" />
<el-table-column prop="barcode" align="center" label="条形码" width="140" /> <el-table-column prop="barcode" align="center" label="条形码" width="140" />
<el-table-column prop="folderLocationDetails" align="center" label="存放位置" width="260">
<el-table-column prop="folderLocationDetails" align="center" label="存放位置" width="300">
<template v-if="scope.row.folderLocationDetails !== null" slot-scope="scope"> <template v-if="scope.row.folderLocationDetails !== null" slot-scope="scope">
<div v-if="scope.row.folderLocationDetails.includes(',')"> <div v-if="scope.row.folderLocationDetails.includes(',')">
<el-tag <el-tag

89
src/views/archivesManage/outInStorage/inStorage/module/inDialog.vue

@ -20,8 +20,8 @@
<!-- <button @click="test">测试</button> --> <!-- <button @click="test">测试</button> -->
<!-- 密集架 --> <!-- 密集架 -->
<ul v-if="cnName==='密集架'"> <ul v-if="cnName==='密集架'">
<li v-for="(eItem,index) in childData" :key="eItem.id" class="box">
<p class="case-name">盒名称{{ eItem.caseName }}</p>
<li v-for="(eItem,index) in mijiChild" :key="eItem.id" class="box">
<p class="case-name">盒名称<el-tag v-for="item in childData" :key="item.id">{{ item.caseName }}</el-tag></p>
<div class="frame-content head-container"> <div class="frame-content head-container">
<div class="frame-item"> <div class="frame-item">
<span>区号</span> <span>区号</span>
@ -29,25 +29,25 @@
</div> </div>
<div class="frame-item item-line"> <div class="frame-item item-line">
<span></span> <span></span>
<el-select v-model="childData[index].colNum" class="filter-item" style="width: 86px;" @change="selectChange(index,'col')">
<el-select v-model="mijiChild[index].colNum" class="filter-item" style="width: 86px;" @change="selectChange(index,'col')">
<el-option v-for="item in columnOptions" :key="item.value" :label="item.label" :value="item.value" /> <el-option v-for="item in columnOptions" :key="item.value" :label="item.label" :value="item.value" />
</el-select> </el-select>
</div> </div>
<div class="frame-item item-line"> <div class="frame-item item-line">
<span></span> <span></span>
<el-select v-model="childData[index].sectionNum" class="filter-item" style="width: 86px;" :disabled="childData[index].colNum === ''" @change="selectChange(index)">
<el-select v-model="mijiChild[index].sectionNum" class="filter-item" style="width: 86px;" :disabled="mijiChild[index].colNum === ''" @change="selectChange(index)">
<el-option v-for="item in partOptions" :key="item.value" :label="item.label" :value="item.value" /> <el-option v-for="item in partOptions" :key="item.value" :label="item.label" :value="item.value" />
</el-select> </el-select>
</div> </div>
<div class="frame-item item-line"> <div class="frame-item item-line">
<span></span> <span></span>
<el-select v-model="childData[index].levelNum" class="filter-item" style="width: 86px;" :disabled="childData[index].colNum === ''||childData[index].sectionNum === ''" @change="selectChange(index)">
<el-select v-model="mijiChild[index].levelNum" class="filter-item" style="width: 86px;" :disabled="mijiChild[index].colNum === ''||mijiChild[index].sectionNum === ''" @change="selectChange(index)">
<el-option v-for="item in rowOptions" :key="item.value" :label="item.label" :value="item.value" /> <el-option v-for="item in rowOptions" :key="item.value" :label="item.label" :value="item.value" />
</el-select> </el-select>
</div> </div>
<div class="frame-item item-line"> <div class="frame-item item-line">
<span>方向</span> <span>方向</span>
<el-select v-model="childData[index].direction" class="filter-item" style="width: 86px;" :disabled="childData[index].colNum === ''||childData[index].sectionNum === ''||childData[index].levelNum === ''" @change="selectChange(index)">
<el-select v-model="mijiChild[index].direction" class="filter-item" style="width: 86px;" :disabled="mijiChild[index].colNum === ''||mijiChild[index].sectionNum === ''||mijiChild[index].levelNum === ''" @change="selectChange(index)">
<el-option v-for="item in directionOptions" :key="item.value" :label="item.label" :value="item.value" /> <el-option v-for="item in directionOptions" :key="item.value" :label="item.label" :value="item.value" />
</el-select> </el-select>
</div> </div>
@ -60,7 +60,7 @@
<div> <div>
<p v-show="btnChecked[index]===2" class="success-msg"> <p v-show="btnChecked[index]===2" class="success-msg">
<i class="iconfont icon-tishichenggong" /> <i class="iconfont icon-tishichenggong" />
<span class="success-text">位置已核对成功,层位名称{{ fieldNum }}{{ childData[index].colNum }}{{ childData[index].sectionNum }}{{ childData[index].levelNum }}{{ (childData[index].direction==='1'? '左边':'')||(childData[index].direction==='2'?'右边':'') }}</span>
<span class="success-text">位置已核对成功,层位名称{{ fieldNum }}{{ mijiChild[index].colNum }}{{ mijiChild[index].sectionNum }}{{ mijiChild[index].levelNum }}{{ (mijiChild[index].direction==='1'? '左边':'')||(mijiChild[index].direction==='2'?'右边':'') }}</span>
</p> </p>
<p v-show="btnChecked[index]===3" class="fail-msg"> <p v-show="btnChecked[index]===3" class="fail-msg">
<i class="iconfont icon-tishijinggao" /> <i class="iconfont icon-tishijinggao" />
@ -146,6 +146,7 @@ export default {
dialogVisible: false, dialogVisible: false,
singleVisible: false, singleVisible: false,
childData: [], // childData: [], //
mijiChild: [],
fieldNum: 1, // fieldNum: 1, //
btnChecked: [], // btnChecked: [], //
columnOptions: [], // -,- columnOptions: [], // -,-
@ -170,20 +171,33 @@ export default {
handleNodeClick(data) { handleNodeClick(data) {
this.deviceId = data.id this.deviceId = data.id
this.cnName = data.deviceTypeId.name this.cnName = data.deviceTypeId.name
console.log(data)
this.mijiChild.push(this.childData[0])
// //
this.btnChecked = this.childArr(1) this.btnChecked = this.childArr(1)
this.isOccupy = this.childArr({}) this.isOccupy = this.childArr({})
const params = { deviceInfoId: data.id } const params = { deviceInfoId: data.id }
//
for (let index = 0; index < this.childData.length; index++) {
this.childData[index].colNum = ''
this.childData[index].sectionNum = ''
this.childData[index].levelNum = ''
this.childData[index].direction = ''
this.childData[index].cabLevel = ''
this.childData[index].cabCol = ''
if (this.deviceType === 1) {
//
for (let index = 0; index < this.mijiChild.length; index++) {
this.mijiChild[index].colNum = ''
this.mijiChild[index].sectionNum = ''
this.mijiChild[index].levelNum = ''
this.mijiChild[index].direction = ''
this.mijiChild[index].cabLevel = ''
this.mijiChild[index].cabCol = ''
}
} else {
//
for (let index = 0; index < this.childData.length; index++) {
this.childData[index].colNum = ''
this.childData[index].sectionNum = ''
this.childData[index].levelNum = ''
this.childData[index].direction = ''
this.childData[index].cabLevel = ''
this.childData[index].cabCol = ''
}
} }
// //
if (data.deviceTypeId.name === '密集架') { if (data.deviceTypeId.name === '密集架') {
this.deviceType = 1 this.deviceType = 1
@ -223,9 +237,18 @@ export default {
// ----- // -----
childArr(str) { childArr(str) {
const arr = [] const arr = []
for (let i = 0; i < this.childData.length; i++) {
arr.push(str)
if (this.deviceType === 1) {
for (let i = 0; i < this.mijiChild.length; i++) {
arr.push(str)
}
} else {
for (let i = 0; i < this.childData.length; i++) {
arr.push(str)
}
} }
// for (let i = 0; i < this.childData.length; i++) {
// arr.push(str)
// }
return JSON.parse(JSON.stringify(arr)) return JSON.parse(JSON.stringify(arr))
}, },
test() { test() {
@ -233,7 +256,12 @@ export default {
}, },
// //
async selectChange(index, position) { async selectChange(index, position) {
const obj = this.childData[index]
let obj
if (this.deviceType === 1) {
obj = this.mijiChild[index]
} else {
obj = this.childData[index]
}
// 2(9,10)5 // 2(9,10)5
// if (this.deviceType === 1 && position === 'col') { // if (this.deviceType === 1 && position === 'col') {
// if (obj.colNum > 8) { // if (obj.colNum > 8) {
@ -282,8 +310,15 @@ export default {
}) })
// //
if (res) { if (res) {
this.btnChecked[index] = 2
this.isOccupy[index] = res
if (this.deviceType === 1) {
this.childData.forEach((item, i) => {
this.isOccupy[i] = res
this.btnChecked[i] = 2
})
} else {
this.btnChecked[index] = 2
this.isOccupy[index] = res
}
} else { } else {
this.btnChecked[index] = 3 this.btnChecked[index] = 3
} }
@ -295,6 +330,7 @@ export default {
// const caseId = this.childData.map(item => item.id) // const caseId = this.childData.map(item => item.id)
this.crud.downloadLoading = true this.crud.downloadLoading = true
const params = [] const params = []
console.log('isOccupy2', this.isOccupy)
this.isOccupy.forEach((item, i) => { this.isOccupy.forEach((item, i) => {
const obj = {} const obj = {}
obj.caseId = this.childData[i].id obj.caseId = this.childData[i].id
@ -304,6 +340,7 @@ export default {
obj.shelfId = item.id obj.shelfId = item.id
params.push(obj) params.push(obj)
}) })
console.log('params', params)
collect(params).then(data => { collect(params).then(data => {
console.log(data, 'data') console.log(data, 'data')
if (data) { if (data) {
@ -317,6 +354,12 @@ export default {
}, },
handleClose() { handleClose() {
this.cnName = null this.cnName = null
this.mijiChild = []
this.childData = []
this.crud.downloadLoading = false
this.btnChecked = this.childArr(1)
this.isOccupy = this.childArr({})
this.crud.refresh()
}, },
open() { open() {
if (this.$refs.deviceTree) { if (this.$refs.deviceTree) {
@ -465,4 +508,8 @@ export default {
color: #fff; color: #fff;
font-size: 16px; font-size: 16px;
} }
.el-tag{
font-size: 14px;
margin-right: 4px;
}
</style> </style>

2
src/views/storeManage/warehouse3D/deseCabinet/index.vue

@ -177,8 +177,6 @@ export default {
getDeviceListAll() { getDeviceListAll() {
this.loading = true this.loading = true
const params = { const params = {
page: 0,
size: 10,
sort: 'sequence,asc', sort: 'sequence,asc',
storeroomId: this.storeroomId storeroomId: this.storeroomId
} }

Loading…
Cancel
Save