lxl
2022-10-27 f6ebd1820968db8521bed86d25b183efe7eb877b
src/views/datamanage/styleManage.vue
@@ -30,14 +30,14 @@
            size="small"
            >{{ $t('common.empty') }}</el-button
          >
          <el-button
          <el-button  v-if="btnStatus.insert"
            @click="InsertFormdialog = true"
            icon="el-icon-edit"
            type="success"
            size="small"
            >{{ $t('common.append') }}</el-button
          >
          <el-button
          <el-button  v-if="btnStatus.delete"
            @click="delStyleData"
            icon="el-icon-delete"
            type="danger"
@@ -106,7 +106,7 @@
              prop="descr"
              :label="$t('dataManage.styleObj.descr')"
            />
            <el-table-column
            <!-- <el-table-column
              align="center"
              prop="fileGuid"
              :label="$t('dataManage.styleObj.fileguid')"
@@ -137,13 +137,13 @@
              prop="updateTime"
              :label="$t('dataManage.styleObj.updateTime')"
              :formatter="formatTime"
            />
            /> -->
            <el-table-column
              align="center"
              prop="bak"
              :label="$t('dataManage.styleObj.bak')"
            />
            <el-table-column min-width="150" :label="$t('common.operate')">
            <el-table-column min-width="120" :label="$t('common.operate')">
              <template slot-scope="scope">
                <el-button
                  @click="showDetail(scope.$index, scope.row)"
@@ -228,12 +228,14 @@
          <el-divider></el-divider>
          <p>
            <label> {{ $t('dataManage.styleObj.fileguid') }}:</label>
            <label class="boxlabel">{{ itemdetail.fileguid }}</label>
            <label class="boxlabel">{{ itemdetail.fileGuid }}</label>
          </p>
          <el-divider></el-divider>
          <p>
            <label> {{ $t('dataManage.styleObj.viewguid') }}:</label>
            <label class="boxlabel">{{ itemdetail.viewguid }}</label>
            <label class="boxlabel">  <div style="width:440px;height:200px;">
                <img style="width:100%; height:100%" :src="itemdetail.imageFile" alt=""/>
              </div></label>
          </p>
          <el-divider></el-divider>
          <p>
@@ -360,13 +362,56 @@
          :label="$t('dataManage.styleObj.fileguid')"
          :label-width="formLabelWidth"
        >
          <el-input v-model="upform.fileGuid" autocomplete="off"></el-input>
          <el-input v-model="upform.fileGuid" disabled autocomplete="off"></el-input>
           <input
            name="file1"
            type="file"
            id="editFile"
            multiple="multiple"
            style="display: none"
            @change="editFile(0)"
          />
           <el-link
            :underline="false"
            @click="geteditFile(0)"
            style="margin-left: 10px"
            ><i class="el-icon-plus"></i
          ></el-link>
           <el-link v-if="btnStatus.upload"
           :title="$t('common.upload')"
            :underline="false"
            @click="seteditFile(0)"
            style="margin-left: 10px"
            ><i class="el-icon-upload2"></i
          ></el-link>
        </el-form-item>
        <el-form-item
          :label="$t('dataManage.styleObj.viewguid')"
          :label-width="formLabelWidth"
        >
          <el-input v-model="upform.viewGuid" autocomplete="off"></el-input>
          <el-input v-model="upform.viewGuid" disabled autocomplete="off"></el-input>
           <input
            name="file1"
            :accept="'.jpg,.png'"
            type="file"
            id="editimageFile"
            multiple="multiple"
            style="display: none"
            @change="editFile(1)"
          />
           <el-link
            :underline="false"
            @click="geteditFile(1)"
            style="margin-left: 10px"
            ><i class="el-icon-plus"></i
          ></el-link>
           <el-link
           :title="$t('common.upload')"
            :underline="false"
             @click="seteditFile(1)"
            style="margin-left: 10px"
            ><i class="el-icon-upload2"></i
          ></el-link>
        </el-form-item>
        <el-form-item
          :label="$t('dataManage.styleObj.bak')"
@@ -443,7 +488,7 @@
        >
          <el-select
            v-model="insertform.status"
            style="width: 745px"
            style="width: 730px"
            :placeholder="$t('common.choose')"
          >
            <el-option
@@ -469,19 +514,63 @@
          :label="$t('dataManage.styleObj.descr')"
          :label-width="formLabelWidth"
        >
          <el-input v-model="insertform.descr" autocomplete="off"></el-input>
          <el-input v-model="insertform.descr"  autocomplete="off"></el-input>
        </el-form-item>
        <el-form-item
          :label="$t('dataManage.styleObj.fileguid')"
          :label-width="formLabelWidth"
        >
          <el-input v-model="insertform.fileGuid" autocomplete="off"></el-input>
          <el-input v-model="insertform.fileGuid" disabled autocomplete="off" />
           <input
            name="file1"
            type="file"
            id="insertFile"
            multiple="multiple"
            style="display: none"
            @change="insertFile(0)"
          />
           <el-link
            :underline="false"
            @click="getInsertFile(0)"
            style="margin-left: 10px"
            ><i class="el-icon-plus"></i
          ></el-link>
           <el-link
           :title="$t('common.upload')"
            :underline="false"
  @click="setinsertFile(0)"
            style="margin-left: 10px"
            ><i class="el-icon-upload2"></i
          ></el-link>
        </el-form-item>
        <el-form-item
          :label="$t('dataManage.styleObj.viewguid')"
          :label-width="formLabelWidth"
        >
          <el-input v-model="insertform.viewGuid" autocomplete="off"></el-input>
          <el-input v-model="insertform.viewGuid" disabled autocomplete="off"/>
           <input
            name="file1"
            :accept="'.jpg,.png'"
            type="file"
            id="insertimageFile"
            multiple="multiple"
            style="display: none"
            @change="insertFile(1)"
          />
           <el-link
            :underline="false"
            @click="getInsertFile(1)"
            style="margin-left: 10px"
            ><i class="el-icon-plus"></i
          ></el-link>
           <el-link
           :title="$t('common.upload')"
            :underline="false"
             @click="setinsertFile(1)"
            style="margin-left: 10px"
            ><i class="el-icon-upload2"></i
          ></el-link>
        </el-form-item>
        <el-form-item
          :label="$t('dataManage.styleObj.bak')"
@@ -525,19 +614,21 @@
</template>
<script>
import $ from 'jquery';
import moment from 'moment';
import MyBread from '../../components/MyBread.vue';
import styleDirTree from './styleDirTree.vue';
import styleDepTree from './styleDepTree.vue';
import $ from "jquery";
import moment from "moment";
import { getToken } from "../../utils/auth.js";
import MyBread from "../../components/MyBread.vue";
import styleDirTree from "./styleDirTree.vue";
import styleDepTree from "./styleDepTree.vue";
import {
  select_Style_ByPageAndCount,
  insertStyle,
  deleteStyles,
  updateStyle
} from '../../api/api';
  updateStyle,
  upload_style,
} from "../../api/api";
export default {
  name: 'styleManage',
  name: "styleManage",
  components: { MyBread, styleDirTree, styleDepTree },
  data() {
    return {
@@ -545,36 +636,184 @@
      InsertFormdialog: false,
      showCata: false,
      upform: {},
      formLabelWidth: '130px',
      formLabelWidth: "130px",
      showinfoBox: false,
      itemdetail: {},
      ruleForm: {
      },
      ruleForm: {},
      backupData: [],
      searchName: '',
      searchName: "",
      multipleSelection: [],
      upflag: false,
      /** */
      showDirCata: false,
      showDepCata: false,
      tableData: [],
      insertform: {},
      insertform: {
        fileGuid: null,
        viewGuid: null,
      },
      dirFlag: null,
      depFlag: null,
      guidFile: null,
      viewFile: null,
      count: 0,
      listData: {
        name: null,
        pageIndex: 1,
        pageSize: 10,
      },
      btnStatus: {
        select: false,
        delete: false,
        upload: false,
        download: false,
        insert: false,
        update: false,
      },
    };
  },
  created() {
    this.getRoleTabelData();
    this.showPermsBtn();
  },
  methods: {
    showPermsBtn() {
      let currentPerms = this.$store.state.currentPerms;
      let permsEntity = this.$store.state.permsEntity;
      permsEntity
        .filter((item) => item.perms == currentPerms)
        .map((item) => (this.btnStatus[item.tag.substr(1)] = true));
    },
    filesReset() {
      document.getElementById("insertFile").reset();
      document.getElementById("insertimageFile").reset();
      this.guidFile = null;
      this.fileGuid = null;
    },
    getInsertFile(res) {
      if (res == 0) {
        $("#insertFile").click();
      } else if (res == 1) {
        $("#insertimageFile").click();
      }
    },
    insertFile(res) {
      if (res == 0) {
        var val = document.getElementById("insertFile").files;
        if (!val || !val.length) return;
        this.insertform.fileGuid = val[0].name;
      } else if (res == 1) {
        var val = document.getElementById("insertimageFile").files;
        if (!val || !val.length) return;
        this.insertform.viewGuid = val[0].name;
      }
    },
    async setinsertFile(res) {
      if (res == 0) {
        var fs = document.getElementById("insertFile");
        if (fs.files.length == 0) {
          return;
        }
        var formData = new FormData();
        formData.append("file", fs.files[0]);
        var val_data = await upload_style(formData);
        if (val_data.code == 200) {
          this.guidFile = val_data.result;
          this.$message({
            message: "上传成功!",
            type: "success",
          });
        } else {
          this.$message({
            message: "上传失败!",
            type: "warning",
          });
        }
      } else if (res == 1) {
        var fs = document.getElementById("insertimageFile");
        if (fs.files.length == 0) {
          return;
        }
        var formData = new FormData();
        formData.append("file", fs.files[0]);
        var val_data = await upload_style(formData);
        if (val_data.code == 200) {
          this.viewFile = val_data.result;
          this.$message({
            message: "上传成功!",
            type: "success",
          });
        } else {
          this.$message({
            message: "上传失败!",
            type: "warning",
          });
        }
      }
    },
    geteditFile(res) {
      if (res == 0) {
        $("#editFile").click();
      } else if (res == 1) {
        $("#editimageFile").click();
      }
    },
    editFile(res) {
      if (res == 0) {
        var val = document.getElementById("editFile").files;
        if (!val || !val.length) return;
        this.upform.fileGuid = val[0].name;
      } else if (res == 1) {
        var val = document.getElementById("editimageFile").files;
        if (!val || !val.length) return;
        this.upform.viewGuid = val[0].name;
      }
    },
    async seteditFile(res) {
      if (res == 0) {
        var fs = document.getElementById("editFile");
        if (fs.files.length == 0) {
          return;
        }
        var formData = new FormData();
        formData.append("file", fs.files[0]);
        var val_data = await upload_style(formData);
        if (val_data.code == 200) {
          this.guidFile = val_data.result;
          this.$message({
            message: "上传成功!",
            type: "success",
          });
        } else {
          this.$message({
            message: "上传失败!",
            type: "warning",
          });
        }
      } else if (res == 1) {
        var fs = document.getElementById("editimageFile");
        if (fs.files.length == 0) {
          return;
        }
        var formData = new FormData();
        formData.append("file", fs.files[0]);
        var val_data = await upload_style(formData);
        if (val_data.code == 200) {
          this.viewFile = val_data.result;
          this.$message({
            message: "上传成功!",
            type: "success",
          });
        } else {
          this.$message({
            message: "上传失败!",
            type: "warning",
          });
        }
      }
    },
    handleSelectionChange(val) {
      this.multipleSelection = val;
    },
@@ -595,14 +834,14 @@
      const data = await deleteStyles({ ids: std.toString() });
      if (data.code == 200) {
        this.$message({
          message: '删除成功!',
          type: 'success',
          message: "删除成功!",
          type: "success",
        });
        this.getRoleTabelData();
      } else {
        this.$message({
          message: '删除失败!',
          type: 'warning',
          message: "删除失败!",
          type: "warning",
        });
      }
    },
@@ -644,39 +883,48 @@
    insertFromDataClose() {
      this.InsertFormdialog = false;
      this.insertform = {};
      this.filesReset();
    },
    async insertFromData() {
      if (this.insertform.dirid == null || this.insertform.depid == null) {
        this.$message({
          message: '请选择样式所属的目录或单位',
          type: 'warning',
          message: "请选择样式所属的目录或单位",
          type: "warning",
        });
        return;
      }
      if (this.guidFile != null) {
        this.insertform.fileGuid = this.guidFile;
      }
      if (this.viewFile != null) {
        this.insertform.viewGuid = this.viewFile;
      }
      const data = await insertStyle(this.insertform);
      if (data.code == 200) {
        this.InsertFormdialog = false;
        this.insertform = {};
        this.filesReset();
        this.$message({
          message: '添加成功!',
          type: 'success',
          message: "添加成功!",
          type: "success",
        });
        this.getRoleTabelData();
      } else {
        this.$message({
          message: '添加失败!',
          type: 'warning',
          message: "添加失败!",
          type: "warning",
        });
      }
    },
    async getRoleTabelData() {
      if (this.listData.tab == '') {
      if (this.listData.tab == "") {
        delete this.listData.tab;
      }
      this.listData.name = this.ruleForm.name;
      const data = await select_Style_ByPageAndCount(this.listData);
      if (data.code != 200) {
        this.$message.error('列表调用失败');
        this.$message.error("列表调用失败");
      }
      this.tableData = data.result;
      this.count = data.count;
@@ -689,7 +937,7 @@
      if (date === undefined || date === null) {
        return;
      }
      return moment(parseInt(date)).format('YYYY-MM-DD HH:mm:ss');
      return moment(parseInt(date)).format("YYYY-MM-DD HH:mm:ss");
    },
    formatStatus(row, column) {
      let date = row[column.property];
@@ -701,28 +949,28 @@
      }
      switch (date) {
        case 1:
          return '启用';
          return "启用";
          break;
        case 0:
          return '停用';
          return "停用";
          break;
      }
    },
    /** */
    getflyFile() {
      $('#flyFile').click();
      $("#flyFile").click();
    },
    getImageFile() {
      $('#imageFile').click();
      $("#imageFile").click();
    },
    uploadflyFile() {
      var val = document.getElementById('flyFile').files;
      var val = document.getElementById("flyFile").files;
      if (!val || !val.length) return;
      if (!val || !val.length) return;
      var formData = new FormData();
      formData.append('file0', val[0]);
      var res = $.ajax(serverUrl + 'Style/Upload', {
        type: 'post',
      formData.append("file0", val[0]);
      var res = $.ajax(serverUrl + "Style/Upload", {
        type: "post",
        data: formData,
        async: false,
        cache: false,
@@ -744,12 +992,12 @@
    },
    //图片上传
    uploadFile() {
      var val = document.getElementById('imageFile').files;
      var val = document.getElementById("imageFile").files;
      if (!val || !val.length) return;
      var formData = new FormData();
      formData.append('file0', val[0]);
      var res = $.ajax(serverUrl + 'Style/Upload', {
        type: 'post',
      formData.append("file0", val[0]);
      var res = $.ajax(serverUrl + "Style/Upload", {
        type: "post",
        data: formData,
        async: false,
        cache: false,
@@ -778,8 +1026,8 @@
        this.insertform.path_id = this.$store.state.cataNode.id;
      }
      this.$store.commit('changeCata', ''); //清空state的面包屑
      this.$store.commit('changeNode', ''); //清空state的节点对象
      this.$store.commit("changeCata", ""); //清空state的面包屑
      this.$store.commit("changeNode", ""); //清空state的节点对象
      this.showCata = false;
    },
    startFromData() {
@@ -803,61 +1051,66 @@
      });
    },
    addstyle() {
      this.$router.push('/addstyle');
      this.$router.push("/addstyle");
    },
    statusFormat(res){
      switch(res){
    statusFormat(res) {
      switch (res) {
        case "启用":
          return 1;
          break;
           case "停用":
             return 0;
        case "停用":
          return 0;
          break;
           case "Start Using":
        case "Start Using":
          return 1;
          break;
           case "Stop Using":
             return 0;
        case "Stop Using":
          return 0;
          break;
      }
    },
    async updateForm() {
      if (this.upform.dirid == null || this.upform.depid == null) {
        this.$message({
          message: '请选择样式所属的目录或单位',
          type: 'warning',
          message: "请选择样式所属的目录或单位",
          type: "warning",
        });
        return;
      }
    if(Number.isInteger(this.upform.status) == false){
      this.upform.status = this.statusFormat(this.upform.status)
    }
     const data = await updateStyle(this.upform);
      if (Number.isInteger(this.upform.status) == false) {
        this.upform.status = this.statusFormat(this.upform.status);
      }
      if (this.guidFile != null) {
        this.upform.fileGuid = this.guidFile;
      }
      if (this.viewFile != null) {
        this.upform.viewGuid = this.viewFile;
      }
      const data = await updateStyle(this.upform);
      if (data.code == 200) {
        this.dialogFormVisible = false;
        this.upform = {};
        this.$message({
          message: '修改成功!',
          type: 'success',
          message: "修改成功!",
          type: "success",
        });
        this.getRoleTabelData();
      } else {
        this.$message({
          message: '修改失败!',
          type: 'warning',
          message: "修改失败!",
          type: "warning",
        });
      }
    },
    removeUpdate() {
      this.upflag = false;
      this.dialogFormVisible = false;
      this.upform = {}
      this.upform = {};
      this.filesReset();
    },
    submitForm(formName) {
      this.getRoleTabelData()
      this.getRoleTabelData();
      // this.$refs[formName].validate((valid) => {
      //   if (valid) {
      //     this.searchName = this.ruleForm.name.trim();
@@ -869,15 +1122,21 @@
      // });
    },
    resetForm(formName) {
      this.ruleForm ={}
      this.ruleForm = {};
      this.getRoleTabelData();
    },
    showDetail(index, row) {
      var token = getToken();
      this.showinfoBox = true;
      this.itemdetail = row;
      this.itemdetail.createTime = this.formomentTime(this.itemdetail.createTime);
      this.itemdetail.updateTime = this.formomentTime(this.itemdetail.updateTime);
      this.itemdetail.createTime = this.formomentTime(
        this.itemdetail.createTime
      );
      this.itemdetail.updateTime = this.formomentTime(
        this.itemdetail.updateTime
      );
      this.itemdetail.imageFile =
        BASE_URL + "/res/download?guid=" + row.viewGuid + "&token=" + token;
    },
    closeDetial() {
      this.showinfoBox = false;
@@ -885,37 +1144,36 @@
    },
    handleEdit(index, row) {
      this.upflag = true;
      this.dialogFormVisible = true;
      this.upform = row;
      this.upform.depValue = row.depName;
      this.upform.dirValue = row.dirName;
      this.upform.status = this.forMontStatus(row.status)
      this.upform.status = this.forMontStatus(row.status);
    },
    handleDelete(index, row) {
      this.$confirm('确定是否删除?', '提示', {
        confirmButtonText: '确定',
        cancelButtonText: '取消',
        type: 'warning',
      this.$confirm("确定是否删除?", "提示", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
      })
        .then(() => {
          DeletestStyle([row.id]);
          this.$message({
            type: 'success',
            message: '删除成功!',
            type: "success",
            message: "删除成功!",
          });
          this.startFromData();
        })
        .catch(() => { });
        .catch(() => {});
    },
    // 获取多选
    ShowWindowFly(res) {
      window.open(
        ifreamUrl + '/LFWeb/poper.html?name=' + res,
        '',
        'height=800, width=1500, top=150, left=350, toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, status=no'
        ifreamUrl + "/LFWeb/poper.html?name=" + res,
        "",
        "height=800, width=1500, top=150, left=350, toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, status=no"
      );
    },
  },
@@ -931,7 +1189,7 @@
  box-sizing: border-box;
  .el-input {
    width: 745px;
    width: 730px;
  }
  .searchComp {