石广澎
2023-12-12 1822fb1b8dc476bdb3270d0dd0cd79cbbc02ae2c
admin-web/src/views/foundation/material/index.vue
@@ -13,11 +13,13 @@
              <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"/>
        </el-card>
      </el-container>
    </el-container>
    <!--添加/编辑弹窗-->
    <edit v-if="editSetting.show" :setting="editSetting" @close="editSetting.show = false" @search="search"/>
    <!--规格-->
    <specs v-if="specsSetting.show" :setting="specsSetting" @close="specsSetting.show = false" @search="search"></specs>
    <my-import
      :import-setting="importSetting"
      :dialog-show="importSetting.dialogShow"
@@ -27,81 +29,62 @@
</template>
<script>
import * as DateFormatter from '@/utils/DateFormatter';
import myTree from '@/components/myTree/index'
import MyTableV2 from "@/components/myTable/myTableV2";
import MyButton from "@/components/myButton/myButton";
import SettingIplatform from '@/utils/settingIplatform';
import edit from './edit'
import * as finsystenant from '@/api/baseSetting/finsystenant'
import {updStatus,delGoods} from '@/api/foudation/material'
import myImport from '@/views/components/myImport'
import {getBaseUrl} from '@/utils/base';
import Specs from "@/views/foundation/material/specs/list.vue";
export default {
  name: "index",
  components: {MyButton, MyTableV2, edit, myTree, myImport},
  components: {Specs, MyButton, MyTableV2, edit, myTree, myImport},
  data() {
    return {
      // 搜索框
      items: [
        {
          type: 'text',
          dataIndex: 'goods_Name',
          dataIndex: 'goodsName',
          label: '物品名称',
          placeholder: '请输入',
          defaultValue: ''
        },
        {
          type: 'text',
          dataIndex: 'goods_Code',
          dataIndex: 'goodsCode',
          label: '物品编号',
          placeholder: '请输入',
          defaultValue: ''
        },
        {
          type: 'select',
          dataIndex: 'status',
          dataIndex: 'classification',
          label: '类别',
          placeholder: '请选择',
          defaultValue: '1',
          defaultValue: '',
          options: [
            {
              label: 'A',
              value: '1'
              value: 'A'
            },
            {
              label: 'B',
              value: '2'
              value: 'B'
            },
            {
              label: 'C',
              value: '3'
              value: 'C'
            }
          ]
        },
        {
          type: 'select',
          dataIndex: 'status',
          label: '采购类别',
          placeholder: '请选择',
          defaultValue: '1',
          options: [
            {
              label: '全部',
              value: '1'
            },
            {
              label: '自采',
              value: '2'
            },
            {
              label: '集采',
              value: '3'
            }
          ]
        },
        {
          type: 'select',
          dataIndex: 'status',
          dataIndex: 'states',
          label: '状态',
          placeholder: '请选择',
          defaultValue: '1',
@@ -122,7 +105,7 @@
        tenantId: null,
        userName: null,
        userPhone: null,
        status: 1
        states: 1
      },
      // 导入
      importSetting: {
@@ -130,7 +113,7 @@
          dialogShow: false,
          fileSettings: {
              data: {},
              uploadUrl: getBaseUrl()+"/pc/fin/sys/tenant/import", // 上传地址
              uploadUrl: getBaseUrl()+"/pc/base/goods/template/import", // 上传地址
              accept: '.xls', // 格式
              type: 'text', // 回显形式
              loading: false // 导入效果
@@ -138,7 +121,7 @@
          /* 模板下载 */
          templateSettings: {
              templateName: '导入模板.xls', // 名称
              templateUrl: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/getImportTemplate' // 下载地址
              templateUrl: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/getImportTemplate?type=goods' // 下载地址
          },
          onSuccess: null
      },
@@ -148,11 +131,16 @@
        orgId: '',
        show: false,
      },
      specsSetting: {
        title: '',
        id: '',
        show: false,
      },
      // 表格数据
      table: {
        showIndex: true, // 是否显示序号
        expand: false, // 是否显示详情数据
        url: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/select/list', // 请求地址
        url: SettingIplatform.apiBaseURL + '/pc/base/goods/template/list', // 请求地址
        // 工具条
        tools: {
          columnsCtrl: {// 列控制按钮
@@ -179,19 +167,19 @@
        },
        // 列信息
        columns: [
          {title: '物品编号', field: 'goods_Code', align: 'center'},
          {title: '物品名称', field: 'goods_Name', align: 'center'},
          {title: '分类', field: 'classification', align: 'center'},
          {title: '类别', field: 'states', align: 'center'},
          {title: '采购类型', field: 'category_id', align: 'center'},
          {title: '所属机构', field: 'agency_Name', align: 'center'},
          {title: '物品编号', field: 'goodsCode', align: 'center', width: 120},
          {title: '物品名称', field: 'goodsName', align: 'left', minWidth: 140},
          {title: '分类', field: 'categoryName', align: 'left', minWidth: 140},
          {title: '类别', field: 'classification', align: 'center', width: 80},
          // {title: '采购类型', field: 'categoryId', align: 'center'},
          {title: '所属机构', field: 'agencyName', align: 'left', minWidth: 140},
          {
            title: '创建时间',
            field: 'create_Date',
            field: 'createDate',
            align: 'center',
            width: 160,
            formatter: (row) => {
              return {value: DateFormatter.LongToDateTime(row.create_Date)};
              return {value: DateFormatter.LongToDateTime(row.createDate)};
            },
          },
          {
@@ -201,7 +189,7 @@
            width: 100,
            switch: row => {
              const result = {}
              if (row.status == 1) {
              if (row.states == 1) {
                Object.assign(result, {
                  value: true, // 开
                  label: '是', // 开的描述
@@ -225,7 +213,7 @@
        // 操作信息
        operation: {
          show: true, // 显示操作列
          width: '150', // 列宽
          width: 250, // 列宽
          attr: [
            {
              title: '编辑',
@@ -241,8 +229,9 @@
            },
            {
              title: '规格型号',
              type: 'primary',
              events: (row) => {
                this.showAudit(row);
                this.showSpecs(row);
              },
            },
          ],
@@ -278,13 +267,13 @@
    },
    updState(row) {
      let vm = this
      let text = row.status == 0 ? "启用" : "禁用";
      vm.$modal.confirm('确认要' + text + '"' + row.name + '"吗?').then(function () {
      let text = row.states == 0 ? "启用" : "禁用";
      vm.$modal.confirm('确认要' + text + '"' + row.goodsName + '"吗?').then(function () {
        let params = Object.assign({}, row)
        params.status = row.status == 1 ? 0 : 1
        finsystenant.edit(params).then(res => {
        params.states = row.states == 1 ? 0 : 1
        updStatus(params).then(res => {
          if (res) {
            row.status = row.status === 1 ? 0 : 1
            row.states = row.states === 1 ? 0 : 1
            vm.$modal.msgSuccess(text + "成功");
            vm.search()
          }
@@ -293,9 +282,9 @@
    },
    del(row) {
      this.$modal
        .confirm('是否确认删除名称为"' + row.name + '"的机构吗?')
        .confirm('是否确认删除名称为"' + row.goodsName + '"的机构吗?')
        .then(function () {
          finsystenant.del({id: row.id}).then((res) => {
          delGoods({id: row.id}).then((res) => {
          });
        })
        .then((res) => {
@@ -310,16 +299,13 @@
      //   this.$message.warning('请先选择左侧机构')
      // } else {
        this.editSetting.id = null;
        this.editSetting.info = null;
        this.editSetting.title = '新增';
        this.editSetting.show = true;
      // }
    },
    showAudit(row) {
      this.editSetting.id = row.id;
      this.editSetting.info = JSON.stringify(row);
      this.editSetting.title = '编辑';
      this.editSetting.show = true;
    showSpecs(row) {
      this.specsSetting.id = row.id;
      this.specsSetting.show = true;
    },
    // 查询table列表
    search(pageNum) {