feat: 部门物品
1、报废单列表
2、报废明细
3、退回单列表
4、退回明细
| | |
| | | // 列表 |
| | | export function scrappedList(params) { |
| | | return request({ |
| | | url: '/pc/l/wh/form/scrapped/list', |
| | | url: '/pc/l/wh/form/scrapped/deptList', |
| | | method: 'get', |
| | | params, |
| | | }); |
| | |
| | | params, |
| | | }); |
| | | } |
| | | // 部门物品报废单导出 |
| | | export function deptScrappedExport(params) { |
| | | return request({ |
| | | url: '/pc/l/wh/form/scrapped/deptList/export', |
| | | responseType: 'blob', // 指定响应数据类型为Blob |
| | | method: 'get', |
| | | params, |
| | | }); |
| | | } |
| | |
| | | background: #fff; |
| | | color: #0d997c; |
| | | } |
| | | |
| | | ::v-deep .el-submenu .el-menu-item{ |
| | | min-width: 0; |
| | | } |
| | | .cur-icon { |
| | | display: inline-block; |
| | | width: 10px; |
| | |
| | | this.total = res.totalRows; |
| | | this.loading = false; |
| | | }); |
| | | }, |
| | | fifterForm(params) { |
| | | this.filterFrom = Object.assign(this.filterFrom, params); |
| | | this.search(1); |
| | | }, |
| | | } |
| | | }, |
| | | }; |
| | | </script> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="card-end"> |
| | | <div v-for="(just, index) in item.formOutputTemplateInfoList" :key="index" class="item"> |
| | | <div class="name">{{ just.goodsName }}</div> |
| | | <div v-for="(just, index) in item.goods" :key="index" class="item"> |
| | | <div class="name">{{ just.baseGoodsTemplateName }}</div> |
| | | <div class="value-box"> |
| | | <div class="value-box-item"> |
| | | <span class="label">数量:</span> |
| | | <span class="value">{{ just.count }}</span> |
| | | <span class="value">{{ just.totalCount }}</span> |
| | | <span class="unit">{{ just.unit }}</span> |
| | | </div> |
| | | </div> |
| | |
| | | }, |
| | | }, |
| | | { |
| | | type: 'text', |
| | | dataIndex: 'operatorName', |
| | | label: '创建人', |
| | | placeholder: '请输入', |
| | | defaultValue: '', |
| | | }, |
| | | { |
| | | type: 'date-picker', |
| | | dataIndex: 'startTime', |
| | | label: '退回时间', |
| | |
| | | <script> |
| | | import {departmentListAll} from '@/api/system/deptment'; |
| | | import {goodsTemplate} from '@/api/baseSetting/finsystenant'; |
| | | import {scrappedAdd} from '@/api/stock/deptScrap'; |
| | | import {scrappedAdd} from '@/api/deptGoods/scrap'; |
| | | import {getTree} from '@/api/foudation/classification'; |
| | | import MyButton from '@/components/myButton/myButton'; |
| | | import winMd from '@/components/win/win-md'; |
| | |
| | | <el-col> |
| | | <!--列表--> |
| | | <div class="table-tool-bar" style="margin-bottom: 15px;"> |
| | | <my-button name="新增" @click="handleAdd" site="tools" size="medium" /> |
| | | <my-button name="新增" @click="handleAdd" site="tools" size="medium"/> |
| | | </div> |
| | | <div :style="{ 'overflow-y': 'auto', height: 'calc(100vh - 352px)' }" v-loading="loading"> |
| | | <el-row v-if="list.length" class="card" :gutter="5"> |
| | |
| | | <span class="value">{{ item.businessFormCode }}</span> |
| | | </div> |
| | | <div class="card-header-right"> |
| | | <el-button site="form" type="success" size="mini" @click="handleExport(item)" |
| | | >导出报废登记单</el-button |
| | | > |
| | | <el-button site="form" type="success" size="mini" |
| | | @click="handleExport('deptScrappedExport',`部门物品报废登记单-${item.businessFormCode}`,{id:item.id})" |
| | | >导出报废登记单 |
| | | </el-button |
| | | > |
| | | <el-button name="查看详情" site="form" type="info" size="mini" @click="handleDetail(item)" |
| | | >查看详情</el-button |
| | | >查看详情 |
| | | </el-button |
| | | > |
| | | </div> |
| | | </div> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="card-end"> |
| | | <div v-for="(just, index) in item.formOutputTemplateInfoList" :key="index" class="item"> |
| | | <div class="name">{{ just.goodsName }}</div> |
| | | <div v-for="(just, index) in item.goods" :key="index" class="item"> |
| | | <div class="name">{{ just.baseGoodsTemplateName }}</div> |
| | | <div class="value-box"> |
| | | <div class="value-box-item"> |
| | | <span class="label">数量:</span> |
| | | <span class="value">{{ just.count }}</span> |
| | | <span class="value">{{ just.totalCount }}</span> |
| | | <span class="unit">{{ just.unit }}</span> |
| | | </div> |
| | | </div> |
| | |
| | | <el-empty v-else description="暂无数据"></el-empty> |
| | | </div> |
| | | <el-pagination |
| | | :small="false" |
| | | :current-page="pageNum" |
| | | :page-sizes="[5, 10, 20, 50, 100, 200, 300, 400, 500]" |
| | | :page-size="pageSize" |
| | | layout="total, sizes, prev, pager, next, jumper" |
| | | :total="total" |
| | | @size-change="handleSizeChange" |
| | | @current-change="handleCurrentChange" |
| | | :small="false" |
| | | :current-page="pageNum" |
| | | :page-sizes="[5, 10, 20, 50, 100, 200, 300, 400, 500]" |
| | | :page-size="pageSize" |
| | | layout="total, sizes, prev, pager, next, jumper" |
| | | :total="total" |
| | | @size-change="handleSizeChange" |
| | | @current-change="handleCurrentChange" |
| | | /> |
| | | </el-col> |
| | | </el-row> |
| | | </el-card> |
| | | </el-container> |
| | | <!--添加/编辑弹窗--> |
| | | <edit v-if="editSetting.show" :setting="editSetting" ref="editRef" @close="editSetting.show=false" @search="refreshData"></edit> |
| | | <detail v-if="detailSetting.show" :setting="detailSetting" @close="detailSetting.show=false" ref="detailRef"></detail> |
| | | <edit v-if="editSetting.show" :setting="editSetting" ref="editRef" @close="editSetting.show=false" |
| | | @search="refreshData"></edit> |
| | | <detail v-if="detailSetting.show" :setting="detailSetting" @close="detailSetting.show=false" |
| | | ref="detailRef"></detail> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import {outputList} from '@/api/stock/accessStock'; |
| | | import MyButton from '@/components/myButton/myButton'; |
| | | import myImport from '@/views/components/myImport'; |
| | | import edit from './edit'; |
| | |
| | | import listPage from '@/views/mixins/listPage' |
| | | import {getUserDetail} from "@/utils/auth"; |
| | | import SettingIplatform from "@/utils/settingIplatform"; |
| | | import {scrappedList} from '@/api/deptGoods/scrap'; |
| | | |
| | | export default { |
| | | name: 'index', |
| | | mixins: [listPage], |
| | | components: { MyButton, myImport, edit, detail }, |
| | | components: {MyButton, myImport, edit, detail}, |
| | | data() { |
| | | return { |
| | | list: [], |
| | |
| | | }, |
| | | }, |
| | | { |
| | | type: 'text', |
| | | dataIndex: 'operatorName', |
| | | label: '创建人', |
| | | placeholder: '请输入', |
| | | defaultValue: '', |
| | | }, |
| | | { |
| | | type: 'date-picker', |
| | | dataIndex: 'startTime', |
| | | label: '报废时间', |
| | |
| | | ], |
| | | }; |
| | | }, |
| | | created() { |
| | | this.fetchData() |
| | | }, |
| | | methods: { |
| | | fetchData() { |
| | | this.loading = true; |
| | | outputList({ |
| | | scrappedList({ |
| | | pageNum: this.pageNum, |
| | | pageSize: this.pageSize, |
| | | ...this.filterFrom, |