石广澎
2024-01-05 b2429057ae17e9f5b357435b0bff5f6cc0040b69
admin-web/src/views/stock/ledger/inventoryAlert/index.vue
@@ -10,14 +10,19 @@
          <el-row style="margin-top: 15px">
            <el-col>
              <!--列表-->
              <my-table-v2 ref="myTable" :filter="filterFrom" :table="table" />
              <my-table-v2 ref="myTable" :filter="filterFrom" :table="table"/>
            </el-col>
          </el-row>
          <!--添加/编辑弹窗-->
          <edit v-if="editSetting.show" :setting="editSetting" @close="editSetting.show = false" @search="search" />
          <edit v-if="editSetting.show" :setting="editSetting" @close="editSetting.show = false" @search="search"/>
        </el-card>
      </el-container>
    </el-container>
    <my-import
        :import-setting="importSetting"
        :dialog-show="importSetting.dialogShow"
        :dialog-title="importSetting.dialogTitle"
    />
  </div>
</template>
@@ -27,15 +32,13 @@
import SettingIplatform from '@/utils/settingIplatform';
import edit from './edit';
import myImport from '@/views/components/myImport';
import { getBaseUrl } from '@/utils/base';
import { selectTenantWarehouse, treeList } from '@/api/baseSetting/finsystenant';
import {warningConfigGetDel} from '@/api/stock/ledger'
import { getDicts } from '@/api/system/dict/data';
import { mapGetters } from 'vuex';
import {getBaseUrl} from '@/utils/base';
import {warningConfigGetDel} from '@/api/stock/ledger';
import {mapGetters} from 'vuex';
export default {
  name: 'index',
  components: { MyButton, MyTableV2, edit },
  components: {MyButton, MyTableV2, edit, myImport},
  data() {
    return {
      // 搜索框
@@ -47,8 +50,11 @@
          placeholder: '请选择',
          defaultValue: '',
          options: [],
          cascader: [{key:'warehouseId',queryKey: 'agencyId'},{key:'goodsTemplateId',queryKey: 'agencyId'}],
          optionsConfig: { url: '/pc/fin/sys/tenant/select/tree_fin_tenant', props: null },
          cascader: [
            {key: 'warehouseId', queryKey: 'agencyId'},
            {key: 'baseGoodsTemplateId', queryKey: 'agencyId'},
          ],
          optionsConfig: {url: '/pc/fin/sys/tenant/select/tree_fin_tenant', props: null},
        },
        {
          type: 'select',
@@ -60,17 +66,31 @@
          optionsConfig: {
            label: 'warehouseName',
            value: 'id',
            url: SettingIplatform.apiBaseURL + '/pc/base/warehouse/select/tenant_warehouse'
            url: SettingIplatform.apiBaseURL + '/pc/base/warehouse/select/tenant_warehouse',
          },
        },
        {
          type: 'cascader',
          dataIndex: 'categoryId',
          label: '分类',
          placeholder: '请选择',
          defaultValue: '',
          options: [],
          optionsConfig: {
            label: 'label',
            value: 'id',
            url: SettingIplatform.apiBaseURL + '/pc/base/category/select/tree',
            props: {checkStrictly: false, emitPath: false, value: 'id'}
          },
          cascader: [{key:'baseGoodsTemplateId',queryKey: 'categoryId'}],
        },
        {
          type: 'select',
          dataIndex: 'goodsTemplateId',
          dataIndex: 'baseGoodsTemplateId',
          label: '物品名称',
          placeholder: '请输入',
          defaultValue: '',
          options: [],
          cascader: [{key:'categoryId',queryKey: 'goodsTemplatesId'}],
          optionsConfig: {
            label: 'goodsName',
            value: 'id',
@@ -79,33 +99,40 @@
        },
        {
          type: 'select',
          dataIndex: 'categoryId',
          label: '分类',
          placeholder: '请选择',
          defaultValue: '',
          options: [],
          optionsConfig: {
            label: 'modelName',
            value: 'id',
            url: SettingIplatform.apiBaseURL + '/pc/base/goods/models/query/goodsModel'
          },
        },
        {
          type: 'select',
          dataIndex: 'costType',
          label: '类别',
          placeholder: '请选择',
          defaultValue: '',
          options: [],
          optionsConfig: {
            label: 'dict_label',
            value: 'dict_value',
            url: SettingIplatform.apiBaseURL + '/permit/dict/data/type/GOODS_PRICE',
          },
          options: [{
            label: 'A',
            value: '1'
          }, {
            label: 'B',
            value: '2'
          }, {
            label: 'C',
            value: '3'
          }],
        },
      ],
      // 树数据
      treeDataList: [],
      // 导入
      importSetting: {
        dialogTitle: '导入',
        dialogShow: false,
        fileSettings: {
          data: {},
          uploadUrl: getBaseUrl() + "/pc/warehouse/warningConfig/import", // 上传地址
          accept: '.xls', // 格式
          type: 'text', // 回显形式
          loading: false // 导入效果
        },
        /* 模板下载 */
        templateSettings: {
          templateName: '导入模板.xls', // 名称
          templateUrl: SettingIplatform.apiBaseURL + '/pc/warehouse/warningConfig/getWarnConfImportTemplate' // 下载地址
        },
        onSuccess: null
      },
      // 搜索条件
      filterFrom: {
        warehouseType: 0,
@@ -140,23 +167,23 @@
              },
            },
            {
              name: '导出',
              name: '导入',
              click: () => {
                this.handleExport();
                this.importOrg();
              },
            },
          ],
        },
        // 列信息
        columns: [
          { title: '机构', field: 'agencyName', align: 'left' },
          { title: '仓库', field: 'warehouseName', align: 'center' },
          { title: '分类', field: 'categoryName', align: 'center' },
          { title: '所属类别', field: 'costType', align: 'center' },
          { title: '物品名称', field: 'goodsName', align: 'left' },
          { title: '规格型号', field: 'modelName', align: 'left' },
          { title: '保底库存', field: 'lowerLimit', align: 'left' },
          { title: '封顶库存', field: 'upperLimit', align: 'left' },
          {title: '机构', field: 'agencyName', align: 'left', minWidth: 130},
          {title: '仓库', field: 'warehouseName', align: 'left', minWidth: 130},
          {title: '分类', field: 'categoryName', align: 'left', minWidth: 130},
          {title: '所属类别', field: 'costType', align: 'center', width: 80},
          {title: '物品名称', field: 'goodsName', align: 'left', minWidth: 130},
          {title: '规格型号', field: 'modelName', align: 'left', minWidth: 130},
          {title: '保底库存', field: 'lowerLimit', align: 'center', width: 100},
          {title: '封顶库存', field: 'upperLimit', align: 'center', width: 100},
        ],
        // 操作信息
        operation: {
@@ -198,7 +225,7 @@
  methods: {
    del(row) {
      this.$modal.confirm('是否确认删除此条的数据吗?').then(() => {
        warningConfigGetDel({ id: row.id }).then((res) => {
        warningConfigGetDel({id: row.id}).then((res) => {
          this.$message.success('删除成功!');
          this.search();
        });
@@ -216,10 +243,23 @@
      this.editSetting.title = '编辑';
      this.editSetting.show = true;
    },
    // 导入
    importOrg() {
      this.importSetting.dialogShow = true;
      this.importSetting.onSuccess = (response, callBack) => {
        if (response.code === 1) {
          this.$message.success(response.msg);
          this.search(1);
        } else {
          this.$message.warning(response.msg);
        }
        callBack();
      };
    },
    // 查询table列表
    search(pageNum) {
      if (pageNum != undefined) {
        this.$refs.myTable.search(pageNum);
        this.$refs.myTable.search({pageNum});
      } else {
        this.$refs.myTable.search();
      }