| | |
| | | <template> |
| | | <div ref="boxOutWrap" class="boxOutWrap"> |
| | | <div ref="boxForm" class="boxForm"> |
| | | <a-card :bordered="false" :bodyStyle="tstyle"> |
| | | <div ref="boxOutWrap" class="boxOutWrap"> |
| | | <div ref="boxForm" class="boxForm"> |
| | | <a-card :bordered="false" :bodyStyle="tstyle"> |
| | | |
| | | <div class="table-page-search-wrapper" v-if="hasPerm('WmsArea:page')"> |
| | | <a-form layout="inline"> |
| | | <a-row :gutter="48"> |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="库区编码"> |
| | | <a-input v-model="queryParam.areaCode" allow-clear placeholder="请输入库区编码"/> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="仓库编号"> |
| | | <a-input v-model="queryParam.warehouseCode" allow-clear placeholder="请输入仓库编号"/> |
| | | </a-form-item> |
| | | </a-col><template v-if="advanced"> |
| | | <a-col :md="8" :sm="24"> |
| | | <div class="table-page-search-wrapper" v-if="hasPerm('WmsArea:page')"> |
| | | <a-form layout="inline"> |
| | | <a-row :gutter="48"> |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="库区编码"> |
| | | <a-input v-model="queryParam.areaCode" allow-clear placeholder="请输入库区编码" /> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="仓库编号"> |
| | | <a-input v-model="queryParam.warehouseCode" allow-clear placeholder="请输入仓库编号" /> |
| | | </a-form-item> |
| | | </a-col> |
| | | <template v-if="advanced"> |
| | | <!-- <a-col :md="8" :sm="24"> |
| | | <a-form-item label="仓库名称"> |
| | | <a-input v-model="queryParam.warehouseName" allow-clear placeholder="请输入仓库名称"/> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="库区名称"> |
| | | <a-input v-model="queryParam.areaName" allow-clear placeholder="请输入库区名称"/> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="库区描述"> |
| | | <a-input v-model="queryParam.areaDesc" allow-clear placeholder="请输入库区描述"/> |
| | | </a-form-item> |
| | | </a-col><a-col :md="8" :sm="24"> |
| | | <a-form-item label="库区状态"> |
| | | <a-input-number v-model="queryParam.areaStatus" style="width: 100%" allow-clear placeholder="请输入库区状态"/> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="ERP代码"> |
| | | <a-input v-model="queryParam.erpCode" allow-clear placeholder="请输入ERP代码"/> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="所属仓库"> |
| | | <a-input v-model="queryParam.warehouseId" allow-clear placeholder="请输入所属仓库"/> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="零件级管控"> |
| | | <a-select :allowClear="true" style="width: 100%" v-model="queryParam.isBarcodeLevelControl" placeholder="请选择零件级管控"> |
| | | <a-select-option v-for="(item,index) in isBarcodeLevelControlData" :key="index" :value="item.code">{{ item.name }}</a-select-option> |
| | | </a-select> |
| | | </a-form-item> |
| | | </a-col> |
| | | |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="检验先进先出"> |
| | | <a-select :allowClear="true" style="width: 100%" v-model="queryParam.isFIFO" placeholder="请选择检验先进先出"> |
| | | <a-select-option v-for="(item,index) in isFIFOData" :key="index" :value="item.code">{{ item.name }}</a-select-option> |
| | | </a-select> |
| | | </a-form-item> |
| | | </a-col> |
| | | |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="零件级管控"> |
| | | <a-select :allowClear="true" style="width: 100%" v-model="queryParam.isPartLevelControl" placeholder="请选择零件级管控"> |
| | | <a-select-option v-for="(item,index) in isPartLevelControlData" :key="index" :value="item.code">{{ item.name }}</a-select-option> |
| | | </a-select> |
| | | </a-form-item> |
| | | </a-col> |
| | | |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="允许混淆"> |
| | | <a-select :allowClear="true" style="width: 100%" v-model="queryParam.isAllowConfusion" placeholder="请选择允许混淆"> |
| | | <a-select-option v-for="(item,index) in isAllowConfusionData" :key="index" :value="item.code">{{ item.name }}</a-select-option> |
| | | </a-select> |
| | | </a-form-item> |
| | | </a-col> |
| | | |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="允许负库存"> |
| | | <a-select :allowClear="true" style="width: 100%" v-model="queryParam.isAllowNegativeInventory" placeholder="请选择允许负库存"> |
| | | <a-select-option v-for="(item,index) in isAllowNegativeInventoryData" :key="index" :value="item.code">{{ item.name }}</a-select-option> |
| | | </a-select> |
| | | </a-form-item> |
| | | </a-col> |
| | | |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="是否虚拟"> |
| | | <a-select :allowClear="true" style="width: 100%" v-model="queryParam.isVirtually" placeholder="请选择是否虚拟"> |
| | | <a-select-option v-for="(item,index) in isVirtuallyData" :key="index" :value="item.code">{{ item.name }}</a-select-option> |
| | | </a-select> |
| | | </a-form-item> |
| | | </a-col> |
| | | |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="是否禁用"> |
| | | <a-select :allowClear="true" style="width: 100%" v-model="queryParam.isDisabled" placeholder="请选择是否禁用"> |
| | | <a-select-option v-for="(item,index) in isDisabledData" :key="index" :value="item.code">{{ item.name }}</a-select-option> |
| | | </a-select> |
| | | </a-form-item> |
| | | </a-col> |
| | | <!--年月日时分秒--> |
| | | <!--时间范围--> |
| | | </a-col> --> |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="库区名称"> |
| | | <a-input v-model="queryParam.areaName" allow-clear placeholder="请输入库区名称" /> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="库区描述"> |
| | | <a-input v-model="queryParam.areaDesc" allow-clear placeholder="请输入库区描述" /> |
| | | </a-form-item> |
| | | </a-col> |
| | | <!-- <a-col :md="8" :sm="24"> |
| | | <a-form-item label="库区状态"> |
| | | <a-input-number v-model="queryParam.areaStatus" style="width: 100%" allow-clear |
| | | placeholder="请输入库区状态" /> |
| | | </a-form-item> |
| | | </a-col> --> |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="ERP库存地"> |
| | | <a-input v-model="queryParam.erpCode" allow-clear placeholder="请输入ERP库存地" /> |
| | | </a-form-item> |
| | | </a-col><a-col :md="8" :sm="24"> |
| | | <a-form-item label="所属仓库"> |
| | | <a-select :allowClear="true" style="width: 100%" v-model="queryParam.warehouseId" |
| | | placeholder="请选择所属仓库"> |
| | | <a-select-option v-for="(item, index) in warehouseIdData" :key="index" |
| | | :value="item.code">{{ item.name }}</a-select-option> |
| | | </a-select> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="零件级管控"> |
| | | <a-select :allowClear="true" style="width: 100%" |
| | | v-model="queryParam.isBarcodeLevelControl" placeholder="请选择零件级管控"> |
| | | <a-select-option v-for="(item, index) in isBarcodeLevelControlData" :key="index" |
| | | :value="item.code">{{ item.name }}</a-select-option> |
| | | </a-select> |
| | | </a-form-item> |
| | | </a-col> |
| | | |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="创建时间"> |
| | | <a-range-picker style="width: 100%" :placeholder="['开始时间', '结束时间']" :show-time="{ |
| | | format: 'HH:mm:ss', defaultValue: [moment('00:00:00', 'HH:mm:ss'),moment('23:59:59', 'HH:mm:ss')]}" v-model="queryParam.createdTime" value-format="YYYY-MM-DD HH:mm:ss" format="YYYY-MM-DD HH:mm:ss" @change="onChangecreatedTime"/> |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="检验先进先出"> |
| | | <a-select :allowClear="true" style="width: 100%" v-model="queryParam.isFIFO" |
| | | placeholder="请选择检验先进先出"> |
| | | <a-select-option v-for="(item, index) in isFIFOData" :key="index" |
| | | :value="item.code">{{ item.name }}</a-select-option> |
| | | </a-select> |
| | | </a-form-item> |
| | | </a-col> |
| | | |
| | | </a-form-item> |
| | | </a-col> |
| | | <!--年月日时分秒--> |
| | | <!--时间范围--> |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="零件级管控"> |
| | | <a-select :allowClear="true" style="width: 100%" |
| | | v-model="queryParam.isPartLevelControl" placeholder="请选择零件级管控"> |
| | | <a-select-option v-for="(item, index) in isPartLevelControlData" :key="index" |
| | | :value="item.code">{{ item.name }}</a-select-option> |
| | | </a-select> |
| | | </a-form-item> |
| | | </a-col> |
| | | |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="更新时间"> |
| | | <a-range-picker style="width: 100%" :placeholder="['开始时间', '结束时间']" :show-time="{ |
| | | format: 'HH:mm:ss', defaultValue: [moment('00:00:00', 'HH:mm:ss'),moment('23:59:59', 'HH:mm:ss')]}" v-model="queryParam.updatedTime" value-format="YYYY-MM-DD HH:mm:ss" format="YYYY-MM-DD HH:mm:ss" @change="onChangeupdatedTime"/> |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="允许混淆"> |
| | | <a-select :allowClear="true" style="width: 100%" |
| | | v-model="queryParam.isAllowConfusion" placeholder="请选择允许混淆"> |
| | | <a-select-option v-for="(item, index) in isAllowConfusionData" :key="index" |
| | | :value="item.code">{{ item.name }}</a-select-option> |
| | | </a-select> |
| | | </a-form-item> |
| | | </a-col> |
| | | |
| | | </a-form-item> |
| | | </a-col> |
| | | |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="创建者名称"> |
| | | <a-input v-model="queryParam.createdUserName" allow-clear placeholder="请输入创建者名称"/> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="修改者名称"> |
| | | <a-input v-model="queryParam.updatedUserName" allow-clear placeholder="请输入修改者名称"/> |
| | | </a-form-item> |
| | | </a-col> </template> |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="允许负库存"> |
| | | <a-select :allowClear="true" style="width: 100%" |
| | | v-model="queryParam.isAllowNegativeInventory" placeholder="请选择允许负库存"> |
| | | <a-select-option v-for="(item, index) in isAllowNegativeInventoryData" |
| | | :key="index" :value="item.code">{{ item.name }}</a-select-option> |
| | | </a-select> |
| | | </a-form-item> |
| | | </a-col> |
| | | |
| | | <a-col :md="8" :sm="24" > |
| | | <span class="table-page-search-submitButtons"> |
| | | <a-button type="primary" @click="$refs.table.refresh(true)" >查询</a-button> |
| | | <a-button style="margin-left: 8px" @click="() => queryParam = {}">重置</a-button> |
| | | <a @click="toggleAdvanced" style="margin-left: 8px"> {{ advanced ? '收起' : '展开' }} |
| | | <a-icon :type="advanced ? 'up' : 'down'"/> |
| | | </a> |
| | | </span> |
| | | </a-col> |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="是否虚拟"> |
| | | <a-select :allowClear="true" style="width: 100%" v-model="queryParam.isVirtually" |
| | | placeholder="请选择是否虚拟"> |
| | | <a-select-option v-for="(item, index) in isVirtuallyData" :key="index" |
| | | :value="item.code">{{ item.name }}</a-select-option> |
| | | </a-select> |
| | | </a-form-item> |
| | | </a-col> |
| | | |
| | | </a-row> |
| | | </a-form> |
| | | </div> |
| | | </a-card> |
| | | </div> |
| | | <a-card :bordered="false"> |
| | | <s-table |
| | | ref="table" |
| | | :columns="columns" |
| | | :data="loadData" |
| | | :alert="true" |
| | | @changeTablePage="pageInfo = $event" |
| | | :scroll="{x: true,y:tableHeight}" |
| | | :rowKey="(record) => record.id" |
| | | :rowSelection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"> |
| | | <template class="table-operator" slot="operator" v-if="hasPerm('WmsArea:add')" > |
| | | <div ref="actionBar" class="actionBar"> |
| | | <a-button type="info" v-if="hasPerm('sysExcelTemplate:importExcel')" icon="upload" @click="$refs.excelForm.index()"> |
| | | 导入 |
| | | </a-button> |
| | | <a-button type="info" v-if="hasPerm('WmsArea:exportExcel')" icon="download" @click="WmsAreaToExcel()"> |
| | | 导出 |
| | | </a-button> |
| | | <a-button type="primary" v-if="hasPerm('WmsArea:add')" icon="plus" @click="$refs.addForm.add()">新增库区信息</a-button> |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="是否禁用"> |
| | | <a-select :allowClear="true" style="width: 100%" v-model="queryParam.isDisabled" |
| | | placeholder="请选择是否禁用"> |
| | | <a-select-option v-for="(item, index) in isDisabledData" :key="index" |
| | | :value="item.code">{{ item.name }}</a-select-option> |
| | | </a-select> |
| | | </a-form-item> |
| | | </a-col> |
| | | <!--年月日时分秒--> |
| | | <!--时间范围--> |
| | | |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="创建时间"> |
| | | <a-range-picker style="width: 100%" :placeholder="['开始时间', '结束时间']" :show-time="{ |
| | | format: 'HH:mm:ss', defaultValue: [moment('00:00:00', 'HH:mm:ss'), moment('23:59:59', 'HH:mm:ss')] |
| | | }" v-model="queryParam.createdTime" value-format="YYYY-MM-DD HH:mm:ss" format="YYYY-MM-DD HH:mm:ss" |
| | | @change="onChangecreatedTime" /> |
| | | |
| | | </a-form-item> |
| | | </a-col> |
| | | <!--年月日时分秒--> |
| | | <!--时间范围--> |
| | | |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="更新时间"> |
| | | <a-range-picker style="width: 100%" :placeholder="['开始时间', '结束时间']" :show-time="{ |
| | | format: 'HH:mm:ss', defaultValue: [moment('00:00:00', 'HH:mm:ss'), moment('23:59:59', 'HH:mm:ss')] |
| | | }" v-model="queryParam.updatedTime" value-format="YYYY-MM-DD HH:mm:ss" format="YYYY-MM-DD HH:mm:ss" |
| | | @change="onChangeupdatedTime" /> |
| | | |
| | | </a-form-item> |
| | | </a-col> |
| | | |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="创建人"> |
| | | <a-input v-model="queryParam.createdUserName" allow-clear placeholder="请输入创建人" /> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="修改人"> |
| | | <a-input v-model="queryParam.updatedUserName" allow-clear placeholder="请输入修改人" /> |
| | | </a-form-item> |
| | | </a-col> </template> |
| | | |
| | | <a-col :md="8" :sm="24"> |
| | | <span class="table-page-search-submitButtons"> |
| | | <a-button type="primary" @click="$refs.table.refresh(true)">查询</a-button> |
| | | <a-button style="margin-left: 8px" @click="() => queryParam = {}">重置</a-button> |
| | | <a @click="toggleAdvanced" style="margin-left: 8px"> {{ advanced ? '收起' : '展开' }} |
| | | <a-icon :type="advanced ? 'up' : 'down'" /> |
| | | </a> |
| | | </span> |
| | | </a-col> |
| | | |
| | | </a-row> |
| | | </a-form> |
| | | </div> |
| | | </a-card> |
| | | </div> |
| | | </template> |
| | | <span slot="isBarcodeLevelControlscopedSlots" slot-scope="text"> |
| | | <div v-if="text===true "> |
| | | <a-tag color="green">是</a-tag> |
| | | </div> |
| | | <div v-else-if="text==false"> |
| | | <a-tag color="volcano">否</a-tag> |
| | | </div> |
| | | <div v-else=""></div> |
| | | </span> |
| | | <span slot="isFIFOscopedSlots" slot-scope="text"> |
| | | <div v-if="text===true "> |
| | | <a-tag color="green">是</a-tag> |
| | | </div> |
| | | <div v-else-if="text==false"> |
| | | <a-tag color="volcano">否</a-tag> |
| | | </div> |
| | | <div v-else=""></div> |
| | | </span> |
| | | <span slot="isPartLevelControlscopedSlots" slot-scope="text"> |
| | | <div v-if="text===true "> |
| | | <a-tag color="green">是</a-tag> |
| | | </div> |
| | | <div v-else-if="text==false"> |
| | | <a-tag color="volcano">否</a-tag> |
| | | </div> |
| | | <div v-else=""></div> |
| | | </span> |
| | | <span slot="isAllowConfusionscopedSlots" slot-scope="text"> |
| | | <div v-if="text===true "> |
| | | <a-tag color="green">是</a-tag> |
| | | </div> |
| | | <div v-else-if="text==false"> |
| | | <a-tag color="volcano">否</a-tag> |
| | | </div> |
| | | <div v-else=""></div> |
| | | </span> |
| | | <span slot="isAllowNegativeInventoryscopedSlots" slot-scope="text"> |
| | | <div v-if="text===true "> |
| | | <a-tag color="green">是</a-tag> |
| | | </div> |
| | | <div v-else-if="text==false"> |
| | | <a-tag color="volcano">否</a-tag> |
| | | </div> |
| | | <div v-else=""></div> |
| | | </span> |
| | | <span slot="isVirtuallyscopedSlots" slot-scope="text"> |
| | | <div v-if="text===true "> |
| | | <a-tag color="green">是</a-tag> |
| | | </div> |
| | | <div v-else-if="text==false"> |
| | | <a-tag color="volcano">否</a-tag> |
| | | </div> |
| | | <div v-else=""></div> |
| | | </span> |
| | | <span slot="isDisabledscopedSlots" slot-scope="text"> |
| | | <div v-if="text===true "> |
| | | <a-tag color="green">是</a-tag> |
| | | </div> |
| | | <div v-else-if="text==false"> |
| | | <a-tag color="volcano">否</a-tag> |
| | | </div> |
| | | <div v-else=""></div> |
| | | </span> |
| | | <span slot="action" slot-scope="text, record"> |
| | | |
| | | <a v-if="hasPerm('WmsArea:edit')" @click="$refs.editForm.edit(record)">编辑</a> |
| | | <a-divider type="vertical" v-if="hasPerm('WmsArea:edit') & hasPerm('WmsArea:delete')"/> |
| | | <a-popconfirm v-if="hasPerm('WmsArea:delete')" placement="topRight" title="确认删除?" @confirm="() => WmsAreaDelete(record)"> |
| | | <a>删除</a> |
| | | </a-popconfirm> |
| | | </span> |
| | | </s-table> |
| | | <add-form ref="addForm" @ok="handleOk" /> |
| | | <edit-form ref="editForm" @ok="handleOk" /> |
| | | <excel-form ref="excelForm" @ok="handleOk" /> |
| | | </a-card> |
| | | </div> |
| | | <a-card :bordered="false"> |
| | | <s-table ref="table" :columns="columns" :data="loadData" :alert="true" @changeTablePage="pageInfo = $event" |
| | | :scroll="{ x: true, y: tableHeight }" :rowKey="(record) => record.id" |
| | | :rowSelection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"> |
| | | <template class="table-operator" slot="operator" v-if="hasPerm('WmsArea:add')"> |
| | | <div ref="actionBar" class="actionBar"> |
| | | <a-button type="info" v-if="hasPerm('sysExcelTemplate:importExcel')" icon="upload" |
| | | @click="$refs.excelForm.index()"> |
| | | 导入 |
| | | </a-button> |
| | | <a-button type="info" v-if="hasPerm('WmsArea:exportExcel')" icon="download" |
| | | @click="WmsAreaToExcel()"> |
| | | 导出 |
| | | </a-button> |
| | | <a-button type="primary" v-if="hasPerm('WmsArea:add')" icon="plus" |
| | | @click="$refs.addForm.add()">新增库区信息</a-button> |
| | | </div> |
| | | </template> |
| | | <span slot="warehouseIdscopedSlots" slot-scope="text"> |
| | | {{ 'area_type' | dictType(text) }} |
| | | </span> |
| | | <span slot="isBarcodeLevelControlscopedSlots" slot-scope="text"> |
| | | <div v-if="text === true"> |
| | | <a-tag color="green">是</a-tag> |
| | | </div> |
| | | <div v-else-if="text == false"> |
| | | <a-tag color="volcano">否</a-tag> |
| | | </div> |
| | | <div v-else=""></div> |
| | | </span> |
| | | <span slot="isFIFOscopedSlots" slot-scope="text"> |
| | | <div v-if="text === true"> |
| | | <a-tag color="green">是</a-tag> |
| | | </div> |
| | | <div v-else-if="text == false"> |
| | | <a-tag color="volcano">否</a-tag> |
| | | </div> |
| | | <div v-else=""></div> |
| | | </span> |
| | | <span slot="isPartLevelControlscopedSlots" slot-scope="text"> |
| | | <div v-if="text === true"> |
| | | <a-tag color="green">是</a-tag> |
| | | </div> |
| | | <div v-else-if="text == false"> |
| | | <a-tag color="volcano">否</a-tag> |
| | | </div> |
| | | <div v-else=""></div> |
| | | </span> |
| | | <span slot="isAllowConfusionscopedSlots" slot-scope="text"> |
| | | <div v-if="text === true"> |
| | | <a-tag color="green">是</a-tag> |
| | | </div> |
| | | <div v-else-if="text == false"> |
| | | <a-tag color="volcano">否</a-tag> |
| | | </div> |
| | | <div v-else=""></div> |
| | | </span> |
| | | <span slot="isAllowNegativeInventoryscopedSlots" slot-scope="text"> |
| | | <div v-if="text === true"> |
| | | <a-tag color="green">是</a-tag> |
| | | </div> |
| | | <div v-else-if="text == false"> |
| | | <a-tag color="volcano">否</a-tag> |
| | | </div> |
| | | <div v-else=""></div> |
| | | </span> |
| | | <span slot="isVirtuallyscopedSlots" slot-scope="text"> |
| | | <div v-if="text === true"> |
| | | <a-tag color="green">是</a-tag> |
| | | </div> |
| | | <div v-else-if="text == false"> |
| | | <a-tag color="volcano">否</a-tag> |
| | | </div> |
| | | <div v-else=""></div> |
| | | </span> |
| | | <span slot="isDisabledscopedSlots" slot-scope="text"> |
| | | <div v-if="text === true"> |
| | | <a-tag color="green">是</a-tag> |
| | | </div> |
| | | <div v-else-if="text == false"> |
| | | <a-tag color="volcano">否</a-tag> |
| | | </div> |
| | | <div v-else=""></div> |
| | | </span> |
| | | <span slot="action" slot-scope="text, record"> |
| | | |
| | | <a v-if="hasPerm('WmsArea:edit')" @click="$refs.editForm.edit(record)">编辑</a> |
| | | <a-divider type="vertical" v-if="hasPerm('WmsArea:edit') & hasPerm('WmsArea:delete')" /> |
| | | <a-popconfirm v-if="hasPerm('WmsArea:delete')" placement="topRight" title="确认删除?" |
| | | @confirm="() => WmsAreaDelete(record)"> |
| | | <a>删除</a> |
| | | </a-popconfirm> |
| | | </span> |
| | | </s-table> |
| | | <add-form ref="addForm" @ok="handleOk" /> |
| | | <edit-form ref="editForm" @ok="handleOk" /> |
| | | <excel-form ref="excelForm" @ok="handleOk" /> |
| | | </a-card> |
| | | </div> |
| | | </template> |
| | | <script> |
| | | import { STable } from '@/components' |
| | | import moment from 'moment' |
| | | import { WmsAreaPage, WmsAreaDelete, WmsAreaToExcel } from '@/api/modular/main/WmsBase/WmsAreaManage' |
| | | //自定义table高度 |
| | | import setTableHtMixin from '@/mixins/handleTableHt.js' |
| | | import addForm from './addForm.vue' |
| | | import { exportExcel } from '@/utils/exportToExcel' |
| | | import { downloadFile } from '@/utils/util' |
| | | import editForm from './editForm.vue' |
| | | import excelForm from './excelForm.vue' |
| | | export default { |
| | | import { STable } from '@/components' |
| | | import moment from 'moment' |
| | | import { WmsAreaPage, WmsAreaDelete, WmsAreaToExcel } from '@/api/modular/main/WmsBase/WmsAreaManage' |
| | | //自定义table高度 |
| | | import setTableHtMixin from '@/mixins/handleTableHt.js' |
| | | import addForm from './addForm.vue' |
| | | import { exportExcel } from '@/utils/exportToExcel' |
| | | import { downloadFile } from '@/utils/util' |
| | | import editForm from './editForm.vue' |
| | | import excelForm from './excelForm.vue' |
| | | |
| | | import { WmsWarehousePage, WmsWarehouseDelete, WmsWarehouseToExcel } from '@/api/modular/main/WmsBase/WmsWarehouseManage' |
| | | |
| | | export default { |
| | | mixins: [setTableHtMixin], |
| | | components: { |
| | | STable, |
| | | addForm, |
| | | editForm, |
| | | excelForm |
| | | STable, |
| | | addForm, |
| | | editForm, |
| | | excelForm |
| | | }, |
| | | data () { |
| | | return { |
| | | advanced: false, // 高级搜索 展开/关闭 |
| | | queryParam: {}, |
| | | pageInfo: { |
| | | current: 1, |
| | | pageSize: 10 |
| | | }, |
| | | columns: [ |
| | | { |
| | | title:'序号', |
| | | width: '60px', |
| | | align: 'center', |
| | | customRender: (text, record, index) => `${index + 1 + (this.pageInfo.current - 1) * this.pageInfo.pageSize}` |
| | | data() { |
| | | return { |
| | | advanced: false, // 高级搜索 展开/关闭 |
| | | queryParam: {}, |
| | | pageInfo: { |
| | | current: 1, |
| | | pageSize: 10 |
| | | }, |
| | | columns: [ |
| | | { |
| | | title: '序号', |
| | | width: '60px', |
| | | align: 'center', |
| | | customRender: (text, record, index) => `${index + 1 + (this.pageInfo.current - 1) * this.pageInfo.pageSize}` |
| | | }, |
| | | { |
| | | title: '库区编码', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'areaCode' |
| | | }, |
| | | { |
| | | title: '仓库编号', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'warehouseCode' |
| | | }, |
| | | { |
| | | title: '仓库名称', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'warehouseName' |
| | | }, |
| | | { |
| | | title: '库区名称', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'areaName' |
| | | }, |
| | | { |
| | | title: '库区描述', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'areaDesc' |
| | | }, |
| | | { |
| | | title: '库区状态', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'areaStatus' |
| | | }, |
| | | { |
| | | title: 'ERP库存地', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'erpCode' |
| | | }, |
| | | // { |
| | | // title: '所属仓库', |
| | | // align: 'center', |
| | | // customHeaderCell: () => { |
| | | // return { |
| | | // style: { |
| | | // 'min-width': '120px'//最小列宽设置 |
| | | // } |
| | | // } |
| | | // }, |
| | | // customCell: () => { |
| | | // return { |
| | | // style: { |
| | | // 'min-width': '120px'//最小列宽设置 |
| | | // } |
| | | // } |
| | | // }, |
| | | // sorter: true, |
| | | // dataIndex: 'warehouseId', |
| | | // scopedSlots: { customRender: 'warehouseIdscopedSlots' } |
| | | // }, |
| | | { |
| | | title: '零件级管控', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'isBarcodeLevelControl', |
| | | scopedSlots: { customRender: 'isBarcodeLevelControlscopedSlots' } |
| | | }, |
| | | { |
| | | title: '检验先进先出', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'isFIFO', |
| | | scopedSlots: { customRender: 'isFIFOscopedSlots' } |
| | | }, |
| | | { |
| | | title: '零件级管控', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'isPartLevelControl', |
| | | scopedSlots: { customRender: 'isPartLevelControlscopedSlots' } |
| | | }, |
| | | { |
| | | title: '允许混淆', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'isAllowConfusion', |
| | | scopedSlots: { customRender: 'isAllowConfusionscopedSlots' } |
| | | }, |
| | | { |
| | | title: '允许负库存', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'isAllowNegativeInventory', |
| | | scopedSlots: { customRender: 'isAllowNegativeInventoryscopedSlots' } |
| | | }, |
| | | { |
| | | title: '是否虚拟', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'isVirtually', |
| | | scopedSlots: { customRender: 'isVirtuallyscopedSlots' } |
| | | }, |
| | | { |
| | | title: '是否禁用', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'isDisabled', |
| | | scopedSlots: { customRender: 'isDisabledscopedSlots' } |
| | | }, |
| | | { |
| | | title: '创建时间', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'createdTime' |
| | | }, |
| | | { |
| | | title: '更新时间', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'updatedTime' |
| | | }, |
| | | { |
| | | title: '创建人', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'createdUserName' |
| | | }, |
| | | { |
| | | title: '修改人', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'updatedUserName' |
| | | } |
| | | ], |
| | | tstyle: { 'padding-bottom': '0px', 'margin-bottom': '10px' }, |
| | | // 加载数据方法 必须为 Promise 对象 |
| | | loadData: parameter => { |
| | | return WmsAreaPage(Object.assign(parameter, this.switchingDate())).then((res) => { |
| | | return res.data |
| | | }) |
| | | }, |
| | | warehouseIdData: [], |
| | | selectedRowKeys: [], |
| | | selectedRows: [] |
| | | } |
| | | }, |
| | | { |
| | | title: '库区编码', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'areaCode' |
| | | }, |
| | | { |
| | | title: '仓库编号', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'warehouseCode' |
| | | }, |
| | | { |
| | | title: '仓库名称', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'warehouseName' |
| | | }, |
| | | { |
| | | title: '库区名称', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'areaName' |
| | | }, |
| | | { |
| | | title: '库区描述', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'areaDesc' |
| | | }, |
| | | { |
| | | title: '库区状态', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'areaStatus' |
| | | }, |
| | | { |
| | | title: 'ERP代码', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'erpCode' |
| | | }, |
| | | { |
| | | title: '所属仓库', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'warehouseId' |
| | | }, |
| | | { |
| | | title: '零件级管控', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'isBarcodeLevelControl', |
| | | scopedSlots: { customRender: 'isBarcodeLevelControlscopedSlots' } |
| | | }, |
| | | { |
| | | title: '检验先进先出', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'isFIFO', |
| | | scopedSlots: { customRender: 'isFIFOscopedSlots' } |
| | | }, |
| | | { |
| | | title: '零件级管控', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'isPartLevelControl', |
| | | scopedSlots: { customRender: 'isPartLevelControlscopedSlots' } |
| | | }, |
| | | { |
| | | title: '允许混淆', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'isAllowConfusion', |
| | | scopedSlots: { customRender: 'isAllowConfusionscopedSlots' } |
| | | }, |
| | | { |
| | | title: '允许负库存', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'isAllowNegativeInventory', |
| | | scopedSlots: { customRender: 'isAllowNegativeInventoryscopedSlots' } |
| | | }, |
| | | { |
| | | title: '是否虚拟', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'isVirtually', |
| | | scopedSlots: { customRender: 'isVirtuallyscopedSlots' } |
| | | }, |
| | | { |
| | | title: '是否禁用', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'isDisabled', |
| | | scopedSlots: { customRender: 'isDisabledscopedSlots' } |
| | | }, |
| | | { |
| | | title: '创建时间', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'createdTime' |
| | | }, |
| | | { |
| | | title: '更新时间', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'updatedTime' |
| | | }, |
| | | { |
| | | title: '创建者名称', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'createdUserName' |
| | | }, |
| | | { |
| | | title: '修改者名称', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'updatedUserName' |
| | | } |
| | | ], |
| | | tstyle: { 'padding-bottom': '0px', 'margin-bottom': '10px' }, |
| | | // 加载数据方法 必须为 Promise 对象 |
| | | loadData: parameter => { |
| | | return WmsAreaPage(Object.assign(parameter, this.switchingDate())).then((res) => { |
| | | return res.data |
| | | }) |
| | | }, |
| | | selectedRowKeys: [], |
| | | selectedRows: [] |
| | | } |
| | | }, |
| | | created () { |
| | | if (this.hasPerm('WmsArea:edit') || this.hasPerm('WmsArea:delete')) { |
| | | this.columns.push({ |
| | | title: '操作', |
| | | width: '150px', |
| | | dataIndex: 'action', |
| | | scopedSlots: { customRender: 'action' } |
| | | }) |
| | | } |
| | | const path = this.$route.path |
| | | const columnStr = window.localStorage.getItem(path) |
| | | if(columnStr) { |
| | | var _columns = JSON.parse(columnStr) |
| | | this.columns.forEach(element => { |
| | | var fObj = _columns.find((item, index) => { |
| | | return item.dataIndex === element.dataIndex; |
| | | }) |
| | | if(fObj!=undefined && fObj!=null){ |
| | | element.checked=fObj.checked; |
| | | } |
| | | }); |
| | | } |
| | | const isBarcodeLevelControlOption = this.$options |
| | | this.isBarcodeLevelControlData = isBarcodeLevelControlOption.filters['dictData']('yes_true_false') |
| | | const isFIFOOption = this.$options |
| | | this.isFIFOData = isFIFOOption.filters['dictData']('yes_true_false') |
| | | const isPartLevelControlOption = this.$options |
| | | this.isPartLevelControlData = isPartLevelControlOption.filters['dictData']('yes_true_false') |
| | | const isAllowConfusionOption = this.$options |
| | | this.isAllowConfusionData = isAllowConfusionOption.filters['dictData']('yes_true_false') |
| | | const isAllowNegativeInventoryOption = this.$options |
| | | this.isAllowNegativeInventoryData = isAllowNegativeInventoryOption.filters['dictData']('yes_true_false') |
| | | const isVirtuallyOption = this.$options |
| | | this.isVirtuallyData = isVirtuallyOption.filters['dictData']('yes_true_false') |
| | | const isDisabledOption = this.$options |
| | | this.isDisabledData = isDisabledOption.filters['dictData']('yes_true_false') |
| | | created() { |
| | | if (this.hasPerm('WmsArea:edit') || this.hasPerm('WmsArea:delete')) { |
| | | this.columns.push({ |
| | | title: '操作', |
| | | width: '150px', |
| | | dataIndex: 'action', |
| | | scopedSlots: { customRender: 'action' } |
| | | }) |
| | | } |
| | | const path = this.$route.path |
| | | const columnStr = window.localStorage.getItem(path) |
| | | if (columnStr) { |
| | | var _columns = JSON.parse(columnStr) |
| | | this.columns.forEach(element => { |
| | | var fObj = _columns.find((item, index) => { |
| | | return item.dataIndex === element.dataIndex; |
| | | }) |
| | | if (fObj != undefined && fObj != null) { |
| | | element.checked = fObj.checked; |
| | | } |
| | | }); |
| | | } |
| | | // const warehouseIdOption = this.$options |
| | | // this.warehouseIdData = warehouseIdOption.filters['dictData']('area_type') |
| | | const isBarcodeLevelControlOption = this.$options |
| | | this.isBarcodeLevelControlData = isBarcodeLevelControlOption.filters['dictData']('yes_true_false') |
| | | const isFIFOOption = this.$options |
| | | this.isFIFOData = isFIFOOption.filters['dictData']('yes_true_false') |
| | | const isPartLevelControlOption = this.$options |
| | | this.isPartLevelControlData = isPartLevelControlOption.filters['dictData']('yes_true_false') |
| | | const isAllowConfusionOption = this.$options |
| | | this.isAllowConfusionData = isAllowConfusionOption.filters['dictData']('yes_true_false') |
| | | const isAllowNegativeInventoryOption = this.$options |
| | | this.isAllowNegativeInventoryData = isAllowNegativeInventoryOption.filters['dictData']('yes_true_false') |
| | | const isVirtuallyOption = this.$options |
| | | this.isVirtuallyData = isVirtuallyOption.filters['dictData']('yes_true_false') |
| | | const isDisabledOption = this.$options |
| | | this.isDisabledData = isDisabledOption.filters['dictData']('yes_true_false') |
| | | |
| | | this.handleTableHt() //设置主表表格高度 |
| | | window.addEventListener( |
| | | 'resize', |
| | | () => { |
| | | this.handleTableHt() // 监听屏幕大小改变表格高度 |
| | | }, |
| | | false |
| | | ) |
| | | |
| | | this.handleTableHt() //设置主表表格高度 |
| | | window.addEventListener( |
| | | 'resize', |
| | | () => { |
| | | this.handleTableHt() // 监听屏幕大小改变表格高度 |
| | | }, |
| | | false |
| | | ) |
| | | |
| | | |
| | | WmsWarehousePage().then((d) => { |
| | | this.warehouseIdData = d.data.rows || [] |
| | | this.$refs.addForm.warehouseIdData = d.data.rows || [] |
| | | }).catch(() => { |
| | | }) |
| | | |
| | | |
| | | }, |
| | | methods: { |
| | | moment, |
| | | /** |
| | | * 查询参数组装 |
| | | */ |
| | | switchingDate () { |
| | | const obj = JSON.parse(JSON.stringify(this.queryParam)) |
| | | return obj |
| | | }, |
| | | WmsAreaDelete (record) { |
| | | WmsAreaDelete(record).then((res) => { |
| | | if (res.success) { |
| | | this.$message.success('删除成功') |
| | | this.$refs.table.refresh() |
| | | } else { |
| | | this.$message.error('删除失败') // + res.message |
| | | } |
| | | }) |
| | | }, |
| | | moment, |
| | | /** |
| | | * 查询参数组装 |
| | | */ |
| | | switchingDate() { |
| | | const obj = JSON.parse(JSON.stringify(this.queryParam)) |
| | | return obj |
| | | }, |
| | | WmsAreaDelete(record) { |
| | | WmsAreaDelete(record).then((res) => { |
| | | if (res.success) { |
| | | this.$message.success('删除成功') |
| | | this.$refs.table.refresh() |
| | | } else { |
| | | this.$message.error('删除失败') // + res.message |
| | | } |
| | | }) |
| | | }, |
| | | |
| | | |
| | | WmsAreaToExcel() { |
| | | this.loading = true |
| | | let entozh = {}; |
| | | const path = this.$route.path; |
| | | if (window.localStorage.getItem(path)) { |
| | | JSON.parse(window.localStorage.getItem(path)).forEach(item => { |
| | | if (item.dataIndex != 'action' && item.checked) { |
| | | entozh[item.dataIndex] = item.title |
| | | } |
| | | }) |
| | | } else { //直接点导出 |
| | | this.columns.forEach(item => { |
| | | if (item.dataIndex != 'action') { |
| | | entozh[item.dataIndex] = item.title |
| | | } |
| | | }) |
| | | } |
| | | WmsAreaPage(Object.assign({ pageSize: 100000, pageIndex: 1 }, this.queryParam)).then((res) => { |
| | | this.loading = false; |
| | | //需要截取日期的字段 |
| | | var arrDataCutout = this.columns.filter(v => v.customCutout == true); |
| | | res.data.rows.forEach(item => { |
| | | var arrKeys = Object.keys(item); |
| | | arrKeys.forEach(key => { |
| | | var strFieldDic = key + 'Data'; |
| | | //枚举转值 |
| | | if (this[strFieldDic] && this[strFieldDic].length > 0) { |
| | | let arrFieldDic = this[strFieldDic].filter(v => String(v.code) == String(item[key])); |
| | | if (arrFieldDic.length > 0) { |
| | | item[key] = arrFieldDic[0]?.name || '没有枚举值'; |
| | | } |
| | | } |
| | | // 日期截取 |
| | | if (arrDataCutout.length > 0) { |
| | | arrDataCutout.forEach(itemIn => { |
| | | if (key == itemIn.dataIndex && item[key]) { |
| | | item[key] = item[key].split(" ")[0] |
| | | } |
| | | }) |
| | | } |
| | | }); |
| | | }) |
| | | exportExcel(res.data.rows, entozh, "xlsx", `${this.$route.meta.title}`) |
| | | }).catch((err) => { |
| | | this.loading = false |
| | | this.$message.error('下载错误:获取文件流错误' + err) |
| | | }) |
| | | }, |
| | | WmsAreaToExcel() { |
| | | this.loading = true |
| | | let entozh = {}; |
| | | const path = this.$route.path; |
| | | if (window.localStorage.getItem(path)) { |
| | | JSON.parse(window.localStorage.getItem(path)).forEach(item => { |
| | | if (item.dataIndex != 'action' && item.checked) { |
| | | entozh[item.dataIndex] = item.title |
| | | } |
| | | }) |
| | | } else { //直接点导出 |
| | | this.columns.forEach(item => { |
| | | if (item.dataIndex != 'action') { |
| | | entozh[item.dataIndex] = item.title |
| | | } |
| | | }) |
| | | } |
| | | WmsAreaPage(Object.assign({ pageSize: 100000, pageIndex: 1 }, this.queryParam)).then((res) => { |
| | | this.loading = false; |
| | | //需要截取日期的字段 |
| | | var arrDataCutout = this.columns.filter(v => v.customCutout == true); |
| | | res.data.rows.forEach(item => { |
| | | var arrKeys = Object.keys(item); |
| | | arrKeys.forEach(key => { |
| | | var strFieldDic = key + 'Data'; |
| | | //枚举转值 |
| | | if (this[strFieldDic] && this[strFieldDic].length > 0) { |
| | | let arrFieldDic = this[strFieldDic].filter(v => String(v.code) == String(item[key])); |
| | | if (arrFieldDic.length > 0) { |
| | | item[key] = arrFieldDic[0]?.name || '没有枚举值'; |
| | | } |
| | | } |
| | | // 日期截取 |
| | | if (arrDataCutout.length > 0) { |
| | | arrDataCutout.forEach(itemIn => { |
| | | if (key == itemIn.dataIndex && item[key]) { |
| | | item[key] = item[key].split(" ")[0] |
| | | } |
| | | }) |
| | | } |
| | | }); |
| | | }) |
| | | exportExcel(res.data.rows, entozh, "xlsx", `${this.$route.meta.title}`) |
| | | }).catch((err) => { |
| | | this.loading = false |
| | | this.$message.error('下载错误:获取文件流错误' + err) |
| | | }) |
| | | }, |
| | | |
| | | |
| | | toggleAdvanced () { |
| | | this.advanced = !this.advanced |
| | | this.handleTableHt() //设置主表表格高度 |
| | | }, |
| | | onChangecreatedTime(date, dateString) { |
| | | this.queryParam.createdTime = dateString |
| | | }, |
| | | onChangeupdatedTime(date, dateString) { |
| | | this.queryParam.updatedTime = dateString |
| | | }, |
| | | handleOk () { |
| | | this.$refs.table.refresh() |
| | | }, |
| | | onSelectChange (selectedRowKeys, selectedRows) { |
| | | this.selectedRowKeys = selectedRowKeys |
| | | this.selectedRows = selectedRows |
| | | toggleAdvanced() { |
| | | this.advanced = !this.advanced |
| | | this.handleTableHt() //设置主表表格高度 |
| | | }, |
| | | onChangecreatedTime(date, dateString) { |
| | | this.queryParam.createdTime = dateString |
| | | }, |
| | | onChangeupdatedTime(date, dateString) { |
| | | this.queryParam.updatedTime = dateString |
| | | }, |
| | | handleOk() { |
| | | this.$refs.table.refresh() |
| | | }, |
| | | onSelectChange(selectedRowKeys, selectedRows) { |
| | | this.selectedRowKeys = selectedRowKeys |
| | | this.selectedRows = selectedRows |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | <style lang="less"> |
| | | .table-operator { |
| | | margin-bottom: 18px; |
| | | } |
| | | button { |
| | | margin-right: 8px; |
| | | } |
| | | .table-operator { |
| | | margin-bottom: 18px; |
| | | } |
| | | |
| | | button { |
| | | margin-right: 8px; |
| | | } |
| | | </style> |