永康嘉持电器有限公司前端
小小儁爺
2024-12-30 ff2f7d7bad0132c130c305364a863ff446e926b2
src/views/basicSettings/contactUnitList.vue
@@ -7,8 +7,10 @@
          <div style="margin: 20px 10px 0 10px;display: flex;justify-content: space-between;">
            <div style="display: flex;">
              <div style="width: 5px;height: 100%;border-radius: 5px;"
                :style="{background:$store.state.settings.theme}" />
              <div
                style="width: 5px;height: 100%;border-radius: 5px;"
                :style="{background:$store.state.settings.theme}"
              />
              <div style="margin-left: 8px;">往来单位</div>
            </div>
@@ -20,19 +22,36 @@
          </div>
          <el-tree ref="treeLeftRef" style="padding: 10px;overflow: auto" :style="{height:(tableHeight+222)+'px'}"
            :data="treeLeft" node-key="code" highlight-current :props="defaultPropsLeft" :default-expand-all="true"
            :expand-on-click-node="false" @node-click="getTCunstomerData">
          <el-tree
            ref="treeLeftRef"
            style="padding: 10px;overflow: auto"
            :style="{height:(tableHeight+222)+'px'}"
            :data="treeLeft"
            node-key="code"
            highlight-current
            :props="defaultPropsLeft"
            :default-expand-all="true"
            :expand-on-click-node="false"
            @node-click="getTCunstomerData"
          >
            <span slot-scope="{ node, data }" class="custom-tree-node">
              <span v-if="!data.isEdit">{{ data.name }}</span>
              <span v-if="!data.isEdit">
                <el-tooltip v-del-tab-index class="item" effect="dark" content="编辑" placement="top">
                  <i v-if="data.code!=='-1'" class="el-icon-edit" style="margin-right:10px;color: #999"
                    @click.stop="treeEditClick(node,data,'edit')" />
                  <i
                    v-if="data.code!=='-1'"
                    class="el-icon-edit"
                    style="margin-right:10px;color: #999"
                    @click.stop="treeEditClick(node,data,'edit')"
                  />
                </el-tooltip>
                <el-tooltip v-del-tab-index class="item" effect="dark" content="删除" placement="top">
                  <i v-if="data.code!=='-1'" class="el-icon-delete" style="margin-right: 4px;color: #999"
                    @click.stop="treeDeleteClick(node,data)" />
                  <i
                    v-if="data.code!=='-1'"
                    class="el-icon-delete"
                    style="margin-right: 4px;color: #999"
                    @click.stop="treeDeleteClick(node,data)"
                  />
                </el-tooltip>
              </span>
            </span>
@@ -43,8 +62,12 @@
          <div class="bodyTopButtonGroup" style="justify-content: space-between">
            <el-button v-waves type="primary" icon="el-icon-circle-plus-outline" @click="add('add')">新增</el-button>
            <div style="display: flex">
              <el-button v-waves type="success" icon="el-icon-download"
                @click="$router.push('./../systemSetting/dataImport?fileCode=5')">导入</el-button>
              <el-button
                v-waves
                type="success"
                icon="el-icon-download"
                @click="$router.push('./../systemSetting/dataImport?fileCode=5')"
              >导入</el-button>
              <el-button v-waves icon="el-icon-refresh-right" @click="syncERP">同步往来单位</el-button>
            </div>
@@ -81,10 +104,16 @@
                <!--                  <el-input v-model="form.username" placeholder="请输入" style="width: 200px" />-->
                <!--                </el-form-item>-->
              </div>
              <div class="bodySearchReset"
                :style="{marginLeft:$store.state.app.sidebar.opened? $store.state.settings.menuIsHorizontal?'15%':'3%':'10%'}">
                <el-button v-waves type="primary" icon="el-icon-search"
                  @click="getTCunstomerData($refs.treeLeftRef.getCurrentNode())">查询
              <div
                class="bodySearchReset"
                :style="{marginLeft:$store.state.app.sidebar.opened? $store.state.settings.menuIsHorizontal?'15%':'3%':'10%'}"
              >
                <el-button
                  v-waves
                  type="primary"
                  icon="el-icon-search"
                  @click="getTCunstomerData($refs.treeLeftRef.getCurrentNode())"
                >查询
                </el-button>
                <el-button v-waves type="info" icon="el-icon-refresh" @click="reset">重置</el-button>
              </div>
@@ -107,10 +136,19 @@
          </div>
          <div class="elTableDiv">
            <el-table ref="tableDataRef" class="tableFixed" :data="tableData"
              :height="isExpandForm?tableHeight:(tableHeight+80)+'px'" border row-class-name="custom-row"
              :style="{width: 100+'%',height:isExpandForm?tableHeight:(tableHeight+80)+'px',}" highlight-current-row
              :header-cell-style="this.$headerCellStyle" :cell-style="this.$cellStyle" @sort-change="sortChange">
            <el-table
              ref="tableDataRef"
              class="tableFixed"
              :data="tableData"
              :height="isExpandForm?tableHeight:(tableHeight+80)+'px'"
              border
              row-class-name="custom-row"
              :style="{width: 100+'%',height:isExpandForm?tableHeight:(tableHeight+80)+'px',}"
              highlight-current-row
              :header-cell-style="this.$headerCellStyle"
              :cell-style="this.$cellStyle"
              @sort-change="sortChange"
            >
              <!--            prop="RowNum"-->
              <el-table-column prop="rowNum" width="50" fixed label="序号" />
              <el-table-column prop="code" label="往来单位编码" sortable="custom" />
@@ -152,8 +190,11 @@
                <template slot-scope="{row}">
                  <div class="operationClass">
                    <el-tooltip class="item" effect="dark" content="编辑" placement="top">
                      <i class="el-icon-edit-outline" :style="{color:$store.state.settings.theme}"
                        @click="edit('edit',row)" />
                      <i
                        class="el-icon-edit-outline"
                        :style="{color:$store.state.settings.theme}"
                        @click="edit('edit',row)"
                      />
                    </el-tooltip>
                    <el-tooltip v-del-tab-index class="item" effect="dark" content="删除" placement="top">
                      <i class="el-icon-delete" :style="{color:$store.state.settings.theme}" @click="del(row)" />
@@ -165,17 +206,31 @@
          </div>
          <!--分页-->
          <pagination :total="total" :page.sync="form.page" :limit.sync="form.rows" align="right"
            layout="total,prev, pager, next,sizes,jumper" popper-class="select_bottom"
            @pagination="getTCunstomerData($refs.treeLeftRef.getCurrentNode())" />
          <pagination
            :total="total"
            :page.sync="form.page"
            :limit.sync="form.rows"
            align="right"
            layout="total,prev, pager, next,sizes,jumper"
            popper-class="select_bottom"
            @pagination="getTCunstomerData($refs.treeLeftRef.getCurrentNode())"
          />
        </div>
      </div>
    </div>
    <!--    往来类别新增修改-->
    <el-dialog v-el-drag-dialog :title="operation==='add'?'新增':'编辑'" :visible.sync="dialogClassVisible" width="800px"
      :close-on-click-modal="false" top="15vh" @closed="handleClassClose" @close="handleClassClose">
    <el-dialog
      v-el-drag-dialog
      :title="operation==='add'?'新增':'编辑'"
      :visible.sync="dialogClassVisible"
      width="800px"
      :close-on-click-modal="false"
      top="15vh"
      @closed="handleClassClose"
      @close="handleClassClose"
    >
      <el-form ref="dialogClassForm" inline :rules="dialogClassFormRules" :model="dialogClassForm" label-width="80px">
        <el-form-item label="分类编码" prop="customerclasscode">
          <el-input v-model="dialogClassForm.customerclasscode" :disabled="operation!=='add'" style="width: 200px" />
@@ -184,8 +239,13 @@
          <el-input v-model="dialogClassForm.customerclassname" style="width: 200px" />
        </el-form-item>
        <el-form-item label="上级分类">
          <el-select v-model="dialogClassForm.parentcode" style="width:200px" placeholder="请选择"
            :popper-append-to-body="false" clearable>
          <el-select
            v-model="dialogClassForm.parentcode"
            style="width:200px"
            placeholder="请选择"
            :popper-append-to-body="false"
            clearable
          >
            <el-option v-for="item in treeLeftArr" :key="item.code" :label="item.name" :value="item.code" />
          </el-select>
        </el-form-item>
@@ -194,15 +254,28 @@
      <span slot="footer" class="dialog-footer">
        <div class="footerButton">
          <el-button v-waves @click="dialogVisibleClassCancel">取 消</el-button>
          <el-button v-waves type="primary" :loading="$store.state.app.buttonIsDisabled"
            :disabled="$store.state.app.buttonIsDisabled" @click="dialogVisibleClassConfirm">确 定</el-button>
          <el-button
            v-waves
            type="primary"
            :loading="$store.state.app.buttonIsDisabled"
            :disabled="$store.state.app.buttonIsDisabled"
            @click="dialogVisibleClassConfirm"
          >确 定</el-button>
        </div>
      </span>
    </el-dialog>
    <!--    往来单位新增修改-->
    <el-dialog v-el-drag-dialog :title="operation==='add'?'新增':'编辑'" :visible.sync="dialogVisible" width="800px"
      :close-on-click-modal="false" top="15vh" @closed="handleClose" @close="handleClose">
    <el-dialog
      v-el-drag-dialog
      :title="operation==='add'?'新增':'编辑'"
      :visible.sync="dialogVisible"
      width="800px"
      :close-on-click-modal="false"
      top="15vh"
      @closed="handleClose"
      @close="handleClose"
    >
      <el-form ref="dialogForm" class="" inline :rules="dialogFormRules" :model="dialogForm" label-width="110px">
        <!--        <el-divider content-position="left">基本信息</el-divider>-->
@@ -214,8 +287,13 @@
        </el-form-item>
        <el-form-item label="所属类别" prop="customerclasscode">
          <el-select v-model="dialogForm.customerclasscode" style="width:200px" placeholder="请选择" filterable
            :popper-append-to-body="false">
          <el-select
            v-model="dialogForm.customerclasscode"
            style="width:200px"
            placeholder="请选择"
            filterable
            :popper-append-to-body="false"
          >
            <el-option v-for="item in treeLeftArr" :key="item.code" :label="item.name" :value="item.code" />
          </el-select>
        </el-form-item>
@@ -233,8 +311,12 @@
          <el-input v-model="dialogForm.conttphone" style="width: 200px" />
        </el-form-item>
        <el-form-item label="地址">
          <el-input v-model="dialogForm.addr" type="textarea" :autosize="{ minRows: 2, maxRows: 4}"
            style="width: 520px;" />
          <el-input
            v-model="dialogForm.addr"
            type="textarea"
            :autosize="{ minRows: 2, maxRows: 4}"
            style="width: 520px;"
          />
        </el-form-item>
      </el-form>
@@ -242,8 +324,13 @@
      <span slot="footer" class="dialog-footer">
        <div class="footerButton">
          <el-button v-waves @click="dialogVisibleCancel">取 消</el-button>
          <el-button v-waves type="primary" :loading="$store.state.app.buttonIsDisabled"
            :disabled="$store.state.app.buttonIsDisabled" @click="dialogVisibleConfirm">确 定</el-button>
          <el-button
            v-waves
            type="primary"
            :loading="$store.state.app.buttonIsDisabled"
            :disabled="$store.state.app.buttonIsDisabled"
            @click="dialogVisibleConfirm"
          >确 定</el-button>
        </div>
      </span>
    </el-dialog>
@@ -369,6 +456,7 @@
    activated() {
      window.addEventListener('resize', this.getHeight)
      this.getHeight()
    this.getTCunstomerClassTree()
    },
    created() {