石广澎
2023-11-29 20913c80c3f5fc8e533cb92b90e6f20bcd68e032
admin-web/src/views/stock/ledger/alertQuery/index.vue
@@ -16,61 +16,81 @@
        </el-card>
      </el-container>
    </el-container>
    <my-import
      :import-setting="importSetting"
      :dialog-show="importSetting.dialogShow"
      :dialog-title="importSetting.dialogTitle"
    />
  </div>
</template>
<script>
import MyTableV2 from "@/components/myTable/myTableV2";
import MyButton from "@/components/myButton/myButton";
import MyTableV2 from '@/components/myTable/myTableV2';
import MyButton from '@/components/myButton/myButton';
import SettingIplatform from '@/utils/settingIplatform';
import * as finsystenant from '@/api/baseSetting/finsystenant'
import myImport from '@/views/components/myImport'
import {getBaseUrl} from '@/utils/base';
import { selectTenantWarehouse, getCategorySelectTree } from '@/api/baseSetting/finsystenant';
import { getDicts } from '@/api/system/dict/data';
import * as finsystenant from '@/api/baseSetting/finsystenant';
import * as DateFormatter from '@/utils/DateFormatter';
export default {
  name: "index",
  components: {MyButton, MyTableV2, myImport},
  name: 'index',
  components: {MyButton, MyTableV2},
  data() {
    return {
      // 搜索框
      items: [
        {
          type: 'text',
          dataIndex: 'name',
          label: '物品名称',
          placeholder: '请输入',
          defaultValue: ''
        },
        {
          type: 'select',
          dataIndex: 'status',
          label: '规格型号',
          placeholder: '请选择',
          defaultValue: '',
          options: []
        },
        {
          type: 'select',
          dataIndex: 'status',
          type: 'cascader',
          dataIndex: 'categoryId',
          label: '分类',
          placeholder: '请选择',
          defaultValue: '',
          options: []
          options: [],
          cascader: [{key: 'baseGoodsModelsId', queryKey: 'goodsTemplatesId'}],
          optionsConfig: {
            label: 'label',
            value: 'id',
            url: SettingIplatform.apiBaseURL + '/pc/base/category/select/tree',
            props: {checkStrictly: false, emitPath: false, value: 'id'}
          },
        },
        {
          type: 'select',
          dataIndex: 'status',
          dataIndex: 'goodsTemplateId',
          label: '物品名称',
          placeholder: '请输入',
          defaultValue: '',
          options: [],
          cascader: [{key: 'baseGoodsModelsId', queryKey: 'goodsTemplatesId'}],
          optionsConfig: {
            label: 'goodsName',
            value: 'id',
            url: SettingIplatform.apiBaseURL + '/pc/base/goods/template/query/goodsTemplate',
          },
        },
        {
          type: 'select',
          dataIndex: 'baseGoodsModelsId',
          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: []
          options: [{
            label: 'A',
            value: '1'
          }, {
            label: 'B',
            value: '2'
          }, {
            label: 'C',
            value: '3'
          }],
        },
      ],
      // 树数据
@@ -80,25 +100,7 @@
        tenantId: null,
        userName: null,
        userPhone: null,
        status: 1
      },
      // 导入
      importSetting: {
          dialogTitle: '导入',
          dialogShow: false,
          fileSettings: {
              data: {},
              uploadUrl: getBaseUrl()+"/pc/fin/sys/tenant/import", // 上传地址
              accept: '.xls', // 格式
              type: 'text', // 回显形式
              loading: false // 导入效果
          },
          /* 模板下载 */
          templateSettings: {
              templateName: '导入模板.xls', // 名称
              templateUrl: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/getImportTemplate' // 下载地址
          },
          onSuccess: null
        status: 1,
      },
      editSetting: {
        title: '',
@@ -110,29 +112,49 @@
      table: {
        showIndex: true, // 是否显示序号
        expand: false, // 是否显示详情数据
        url: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/select/list', // 请求地址
        url: SettingIplatform.apiBaseURL + '/pc/warehouse/warning/getList', // 请求地址
        // 工具条
        tools: {
          columnsCtrl: {// 列控制按钮
            show: false
          columnsCtrl: {
            // 列控制按钮
            show: false,
          },
          generalExport: {// 通用导出按钮
            show: false
          generalExport: {
            // 通用导出按钮
            show: false,
          },
          // 自定义工具条按钮
          custom: [
          ]
          custom: [],
        },
        // 列信息
        columns: [
          {title: '物品名称', field: 'name', align: 'left',},
          {title: '规格型号', field: 'code', align: 'center'},
          {title: '单位', field: 'lv', align: 'center', },
          {title: '当前库存', field: 'lv', align: 'center', },
          {title: '保底库存', field: 'summary', align: 'left',},
          {title: '封顶库存', field: 'summary', align: 'left',},
          {title: '状态', field: 'summary', align: 'left',},
          {title: '预警时间', field: 'summary', align: 'left',},
          {title: '物品名称', field: 'baseGoodsTemplateName', align: 'left', minWidth: 140},
          {title: '规格型号', field: 'baseGoodsModelsName', align: 'left', minWidth: 130},
          {title: '单位', field: 'unit', align: 'center', width: 80},
          {title: '当前库存', field: 'warehouseCount', align: 'center', width: 130},
          {title: '保底库存', field: 'lowerLimit', align: 'center', width: 130},
          {title: '封顶库存', field: 'upperLimit', align: 'center', width: 130},
          {
            title: '状态',
            field: 'warningType',
            align: 'center',
            width: 90,
            formatter: (row) => {
              return {
                type: row.warningType == 1 ? 'warning' : 'danger',
                value: row.warningType == 1 ? '库存已超' : '预计缺货',
              }; //预警类型(1=库存已超;2=预计缺货)
            },
          },
          {
            title: '预警时间',
            field: 'warningTime',
            align: 'center',
            width: 160,
            formatter: (row) => {
              return {value: DateFormatter.LongToDateTime(row.warningTime)};
            },
          },
        ],
        paging: {
          show: true, // 显示分页
@@ -141,70 +163,43 @@
            small: false,
            pageNum: 1,
            pageSize: 10,
            total: 0
          }
        }
            total: 0,
          },
        },
      },
    }
    };
  },
  created() {
    this.initQuery();
  },
  methods: {
    initQuery() {
      getDicts('GOODS_PRICE').then((res) => {
        this.items.forEach((v) => {
          if (v.label == '类别') {
            v.options = res.map((v) => {
              v.label = v.dict_label;
              v.value = v.dict_value;
              return v;
            });
          }
        });
      });
      getCategorySelectTree().then((res) => {
        this.items.forEach((v) => {
          if (v.label == '分类') {
            v.options = res.map((item) => {
              item.label = item.label;
              item.vlaue = item.id;
              return item;
            });
          }
        });
      });
    },
    del(row) {
      this.$modal
        .confirm('是否确认删除名称为"' + row.name + '"的机构吗?')
        .then(function () {
          finsystenant.del({id: row.id}).then((res) => {
          .confirm('是否确认删除名称为"' + row.name + '"的机构吗?')
          .then(function () {
            finsystenant.del({id: row.id}).then((res) => {
            });
          })
          .then((res) => {
            this.$message.success('删除成功!');
            this.search();
          })
          .catch(() => {
          });
        })
        .then((res) => {
          this.$message.success('删除成功!');
          this.search()
        })
        .catch(() => {
        });
    },
    // 查询table列表
    search(pageNum) {
      if (pageNum != undefined) {
        this.$refs.myTable.search(pageNum)
        this.$refs.myTable.search(pageNum);
      } else {
        this.$refs.myTable.search()
        this.$refs.myTable.search();
      }
    },
    fifterForm(params) {
      this.filterFrom = Object.assign(this.filterFrom, params)
      this.search(1)
    }
  }
}
      this.filterFrom = Object.assign(this.filterFrom, params);
      this.search(1);
    },
  },
};
</script>
<style scoped>
</style>
<style scoped></style>