田源
2023-12-01 e7e36855180394b3004a610d70f92f7239925bbc
规则基础配置模块代码上传
已修改6个文件
1097 ■■■■■ 文件已修改
Source/UBCS-WEB/src/api/code/codeCharcter.js 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/components/FormTemplate/index.vue 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/views/ruleBasic/delimiterConfig.vue 282 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/views/ruleBasic/paddingCharacter.vue 282 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/views/ruleBasic/prefixConfig.vue 282 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/views/ruleBasic/usableCharacter.vue 213 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/api/code/codeCharcter.js
@@ -19,3 +19,27 @@
    },
  })
}
export const addSave = (codeRuleCharacterVO) => {
  return request({
    url: '/api/ubcs-code/codeRuleCharacterController/addSave',
    method: 'post',
    data:codeRuleCharacterVO
  })
}
export const editSave = (codeRuleCharacterVO) => {
  return request({
    url: '/api/ubcs-code/codeRuleCharacterController/editSave',
    method: 'post',
    data:codeRuleCharacterVO
  })
}
export const deleteSave = (codeRuleCharacterVO) => {
  return request({
    url: '/api/ubcs-code/codeRuleCharacterController/delete',
    method: 'post',
    data:codeRuleCharacterVO
  })
}
Source/UBCS-WEB/src/components/FormTemplate/index.vue
@@ -444,7 +444,18 @@
        );
      }
      // 排除一些字段
      const noData = [
      const noData = this.status ? [
        "jiliangdwname",
        "materialtypeText",
        "morengongysname",
        "$caigouwl",
        "$xiaoshouwl",
        "$shifoupihaoguanli",
        "lcstatus_text",
        "hesuanfenleiname",
        "$kucunwl",
        "lastmodifier"
      ] : [
        "jiliangdwname",
        "materialtypeText",
        "morengongysname",
@@ -457,6 +468,7 @@
        "oldcode",
        "lastmodifier"
      ];
      let resForm = {};
      const {defaultValue, formValue} = this.getDefaultValueAndFormValues(
        this.form
Source/UBCS-WEB/src/views/ruleBasic/delimiterConfig.vue
@@ -1,13 +1,289 @@
<template>
  <basic-container>
    <el-header>
      <div style="margin-bottom: 15px">
        编码规则:
        <el-select v-model="select" :filter-method="filterValue" filterable placeholder="请选择" size="small"
                   @change="selectHandler">
          <el-option v-for="(item,index) in queryReleasedList"
                     :key="item.oid"
                     :label="item.name"
                     :value="item.oid"></el-option>
        </el-select>
      </div>
    </el-header>
    <el-main>
      <el-table
        v-loading="loading"
        :data="tableData"
        :header-cell-style="{background:'#FAFAFA',color:'#505050'}"
        border
        style="width: 100%;height:  calc(100vh - 320px)"
        @cell-click="cellClickHandler">
        <el-table-column
          align="center"
          label="1"
          prop="1"
        >
        </el-table-column>
        <el-table-column
          align="center"
          label="2"
          prop="2"
        >
        </el-table-column>
        <el-table-column
          align="center"
          label="3"
          prop="3">
        </el-table-column>
        <el-table-column
          align="center"
          label="4"
          prop="4">
        </el-table-column>
        <el-table-column
          align="center"
          label="5"
          prop="5">
        </el-table-column>
        <el-table-column
          align="center"
          label="6"
          prop="6">
        </el-table-column>
        <el-table-column
          align="center"
          label="7"
          prop="7">
        </el-table-column>
        <el-table-column
          align="center"
          label="8"
          prop="8">
        </el-table-column>
        <el-table-column
          align="center"
          label="9"
          prop="9">
        </el-table-column>
        <el-table-column
          align="center"
          label="10"
          prop="10">
        </el-table-column>
        <el-table-column
          align="center"
          label="11"
          prop="11">
        </el-table-column>
        <el-table-column
          align="center"
          label="12"
          prop="12">
        </el-table-column>
        <el-table-column
          align="center"
          label="13"
          prop="13">
        </el-table-column>
        <el-table-column
          align="center"
          label="14"
          prop="14">
        </el-table-column>
        <el-table-column
          align="center"
          label="15"
          prop="15">
        </el-table-column>
      </el-table>
    </el-main>
    <el-footer>
      <div style="width: 260px; display: flex; align-items: center;margin-top: 5px">
        <p>值:</p>
        <el-input v-model="characterValue" size="small" style="flex: 1;"></el-input>
      </div>
    </el-footer>
    <div style="margin-bottom: 10px;text-align: center">
      <el-button icon="el-icon-plus" plain size="small" type="success" @click="addSaveHandler">添加</el-button>
      <el-button icon="el-icon-edit" plain size="small" type="primary" @click="editSaveHandler">修改</el-button>
      <el-button icon="el-icon-delete" plain size="small" type="danger" @click="delSaveHandler">删除</el-button>
    </div>
  </basic-container>
</template>
<script>
import {getList, addSave, editSave, deleteSave} from "@/api/code/codeCharcter"
import {gridCodeRule} from "@/api/code/codeCharcter"
export default {
  name: "delimiterConfig"
  name: "delimiterConfig",
  data() {
    return {
      loading: false,
      //下拉框数组
      queryReleasedList: [],
      //下拉框初始数据数组
      characterReleasedList: [],
      characterValue: "",
      characterEditOldValue: "",
      tableData: [],
      select: "",
      selectValue: ""
    }
  },
  watch: {
    select: {
      handler(newV) {
        // console.log(newV)
      }
    }
  },
  created() {
    this.getCodeRule();
  },
  methods: {
    cellClickHandler(row, column) {
      this.characterValue = row[column.property];
      this.characterEditOldValue = row[column.property]
    },
    async getCodeRule() {
      try {
        // 编码规则已发布数据源
        const res = await gridCodeRule({["conditionMap" + "[lcStatus_like]"]: "Released"});
        this.characterReleasedList = res.data.data.records;
        this.queryReleasedList = this.characterReleasedList;
        this.select = this.characterReleasedList[0].oid;
        this.loading = true;
        const res2 = await getList({codeRuleId: this.select, chartType: "separator", chartValue: this.characterValue});
        this.tableData = res2.data.data;
        this.loading = false;
        // console.log("this.tableData", this.tableData);
      } catch (error) {
        this.$message.warning(error)
      }
    },
    //编码规则下拉框搜索
    filterValue(query) {
      console.log(query)
      if (query !== "") {
        this.queryReleasedList = this.characterReleasedList.filter(item => {
          return item.name.includes(query.toString());
        });
      } else {
        this.queryReleasedList = this.characterReleasedList;
      }
    },
    selectHandler(val) {
      this.selectValue = val;
      this.characterValue = ""
      this.getTableData()
    },
    getTableData() {
      this.loading = true;
      // const targetObject = this.characterReleasedList.find(obj => obj.oid === this.selectValue);
      // const chartValue = targetObject.name;
      getList({codeRuleId: this.select, chartType: "separator", chartValue: this.characterValue}).then(res => {
        console.log(res.data.data);
        this.tableData = res.data.data;
        this.loading = false;
      });
    },
    addSaveHandler() {
      if (!this.characterValue) {
        this.$message.warning('请填写要添加的值!');
        return; // 判断输入值
      }
      const targetObject = this.characterReleasedList.find(obj => obj.oid === this.select);
      if (!targetObject) {
        return; // 查找对应typeText
      }
      const codeRuleCharacterVO = {
        codeRuleId: this.select,
        chartType: "separator",
        chartValue: this.characterValue,
        chartTypeText: targetObject.name
      };
      addSave(codeRuleCharacterVO)
        .then(res => {
          this.$message.success(res.data.msg);
          this.characterValue = "";
          this.getTableData();
        }).catch(error => {
        this.$message.error('添加失败');
      });
    },
    editSaveHandler() {
      if (this.characterEditOldValue === "") {
        this.$message.warning('请选择修改的值!');
        return; // 判断选择值
      }
      if (this.characterValue === "") {
        this.$message.warning('请填写要修改的值!');
        return; // 判断输入值
      }
      const targetObject = this.characterReleasedList.find(obj => obj.oid === this.select);
      if (!targetObject) {
        return; // 查找对应typeText
      }
      const codeRuleCharacterVO = {
        codeRuleId: this.select,
        chartType: "separator",
        chartValue: this.characterValue,
        oldChartValue: this.characterEditOldValue,
        chartTypeText: targetObject.name
      };
      editSave(codeRuleCharacterVO)
        .then(res => {
          this.$message.success(res.data.msg);
          this.characterValue = "";
          this.getTableData();
        }).catch(error => {
        this.$message.error('修改失败');
      });
    },
    delSaveHandler() {
      //判断选择数据characterEditOldValue
      if (this.characterEditOldValue === "" || this.characterValue === "") {
        this.$message.warning('请选择要删除的值');
        return;
      }
      const targetObject = this.characterReleasedList.find(obj => obj.oid === this.select);
      if (!targetObject) {
        return; // 查找对应typeText
      }
      const codeRuleCharacterVO = {
        codeRuleId: this.select,
        chartType: "separator",
        chartValue: this.characterValue,
        chartTypeText: targetObject.name
      };
      deleteSave(codeRuleCharacterVO)
        .then(res => {
          this.$message.success(res.data.msg);
          this.characterValue = "";
          this.getTableData();
        }).catch(error => {
        this.$message.error('删除失败');
      });
    }
  }
}
</script>
<style scoped>
<style lang="scss" scoped>
.el-header {
  padding: 0;
}
</style>
Source/UBCS-WEB/src/views/ruleBasic/paddingCharacter.vue
@@ -1,13 +1,289 @@
<template>
  <basic-container>
    <el-header>
      <div style="margin-bottom: 15px">
        编码规则:
        <el-select v-model="select" :filter-method="filterValue" filterable placeholder="请选择" size="small"
                   @change="selectHandler">
          <el-option v-for="(item,index) in queryReleasedList"
                     :key="item.oid"
                     :label="item.name"
                     :value="item.oid"></el-option>
        </el-select>
      </div>
    </el-header>
    <el-main>
      <el-table
        v-loading="loading"
        :data="tableData"
        :header-cell-style="{background:'#FAFAFA',color:'#505050'}"
        border
        style="width: 100%;height:  calc(100vh - 320px)"
        @cell-click="cellClickHandler">
        <el-table-column
          align="center"
          label="1"
          prop="1"
        >
        </el-table-column>
        <el-table-column
          align="center"
          label="2"
          prop="2"
        >
        </el-table-column>
        <el-table-column
          align="center"
          label="3"
          prop="3">
        </el-table-column>
        <el-table-column
          align="center"
          label="4"
          prop="4">
        </el-table-column>
        <el-table-column
          align="center"
          label="5"
          prop="5">
        </el-table-column>
        <el-table-column
          align="center"
          label="6"
          prop="6">
        </el-table-column>
        <el-table-column
          align="center"
          label="7"
          prop="7">
        </el-table-column>
        <el-table-column
          align="center"
          label="8"
          prop="8">
        </el-table-column>
        <el-table-column
          align="center"
          label="9"
          prop="9">
        </el-table-column>
        <el-table-column
          align="center"
          label="10"
          prop="10">
        </el-table-column>
        <el-table-column
          align="center"
          label="11"
          prop="11">
        </el-table-column>
        <el-table-column
          align="center"
          label="12"
          prop="12">
        </el-table-column>
        <el-table-column
          align="center"
          label="13"
          prop="13">
        </el-table-column>
        <el-table-column
          align="center"
          label="14"
          prop="14">
        </el-table-column>
        <el-table-column
          align="center"
          label="15"
          prop="15">
        </el-table-column>
      </el-table>
    </el-main>
    <el-footer>
      <div style="width: 260px; display: flex; align-items: center;margin-top: 5px">
        <p>值:</p>
        <el-input v-model="characterValue" size="small" style="flex: 1;"></el-input>
      </div>
    </el-footer>
    <div style="margin-bottom: 10px;text-align: center">
      <el-button icon="el-icon-plus" plain size="small" type="success" @click="addSaveHandler">添加</el-button>
      <el-button icon="el-icon-edit" plain size="small" type="primary" @click="editSaveHandler">修改</el-button>
      <el-button icon="el-icon-delete" plain size="small" type="danger" @click="delSaveHandler">删除</el-button>
    </div>
  </basic-container>
</template>
<script>
import {getList, addSave, editSave, deleteSave} from "@/api/code/codeCharcter"
import {gridCodeRule} from "@/api/code/codeCharcter"
export default {
  name: "paddingCharacter"
  name: "paddingCharacter",
  data() {
    return {
      loading: false,
      //下拉框数组
      queryReleasedList: [],
      //下拉框初始数据数组
      characterReleasedList: [],
      characterValue: "",
      characterEditOldValue: "",
      tableData: [],
      select: "",
      selectValue: ""
    }
  },
  watch: {
    select: {
      handler(newV) {
        // console.log(newV)
      }
    }
  },
  created() {
    this.getCodeRule();
  },
  methods: {
    cellClickHandler(row, column) {
      this.characterValue = row[column.property];
      this.characterEditOldValue = row[column.property]
    },
    async getCodeRule() {
      try {
        // 编码规则已发布数据源
        const res = await gridCodeRule({["conditionMap" + "[lcStatus_like]"]: "Released"});
        this.characterReleasedList = res.data.data.records;
        this.queryReleasedList = this.characterReleasedList;
        this.select = this.characterReleasedList[0].oid;
        this.loading = true;
        const res2 = await getList({codeRuleId: this.select, chartType: "fillerChar", chartValue: this.characterValue});
        this.tableData = res2.data.data;
        this.loading = false;
        // console.log("this.tableData", this.tableData);
      } catch (error) {
        this.$message.warning(error)
      }
    },
    //编码规则下拉框搜索
    filterValue(query) {
      console.log(query)
      if (query !== "") {
        this.queryReleasedList = this.characterReleasedList.filter(item => {
          return item.name.includes(query.toString());
        });
      } else {
        this.queryReleasedList = this.characterReleasedList;
      }
    },
    selectHandler(val) {
      this.selectValue = val;
      this.characterValue = ""
      this.getTableData()
    },
    getTableData() {
      this.loading = true;
      // const targetObject = this.characterReleasedList.find(obj => obj.oid === this.selectValue);
      // const chartValue = targetObject.name;
      getList({codeRuleId: this.select, chartType: "fillerChar", chartValue: this.characterValue}).then(res => {
        console.log(res.data.data);
        this.tableData = res.data.data;
        this.loading = false;
      });
    },
    addSaveHandler() {
      if (!this.characterValue) {
        this.$message.warning('请填写要添加的值!');
        return; // 判断输入值
      }
      const targetObject = this.characterReleasedList.find(obj => obj.oid === this.select);
      if (!targetObject) {
        return; // 查找对应typeText
      }
      const codeRuleCharacterVO = {
        codeRuleId: this.select,
        chartType: "fillerChar",
        chartValue: this.characterValue,
        chartTypeText: targetObject.name
      };
      addSave(codeRuleCharacterVO)
        .then(res => {
          this.$message.success(res.data.msg);
          this.characterValue = "";
          this.getTableData();
        }).catch(error => {
        this.$message.error('添加失败');
      });
    },
    editSaveHandler() {
      if (this.characterEditOldValue === "") {
        this.$message.warning('请选择修改的值!');
        return; // 判断选择值
      }
      if (this.characterValue === "") {
        this.$message.warning('请填写要修改的值!');
        return; // 判断输入值
      }
      const targetObject = this.characterReleasedList.find(obj => obj.oid === this.select);
      if (!targetObject) {
        return; // 查找对应typeText
      }
      const codeRuleCharacterVO = {
        codeRuleId: this.select,
        chartType: "fillerChar",
        chartValue: this.characterValue,
        oldChartValue: this.characterEditOldValue,
        chartTypeText: targetObject.name
      };
      editSave(codeRuleCharacterVO)
        .then(res => {
          this.$message.success(res.data.msg);
          this.characterValue = "";
          this.getTableData();
        }).catch(error => {
        this.$message.error('修改失败');
      });
    },
    delSaveHandler() {
      //判断选择数据characterEditOldValue
      if (this.characterEditOldValue === "" || this.characterValue === "") {
        this.$message.warning('请选择要删除的值');
        return;
      }
      const targetObject = this.characterReleasedList.find(obj => obj.oid === this.select);
      if (!targetObject) {
        return; // 查找对应typeText
      }
      const codeRuleCharacterVO = {
        codeRuleId: this.select,
        chartType: "fillerChar",
        chartValue: this.characterValue,
        chartTypeText: targetObject.name
      };
      deleteSave(codeRuleCharacterVO)
        .then(res => {
          this.$message.success(res.data.msg);
          this.characterValue = "";
          this.getTableData();
        }).catch(error => {
        this.$message.error('删除失败');
      });
    }
  }
}
</script>
<style scoped>
<style lang="scss" scoped>
.el-header {
  padding: 0;
}
</style>
Source/UBCS-WEB/src/views/ruleBasic/prefixConfig.vue
@@ -1,13 +1,289 @@
<template>
  <basic-container>
    <el-header>
      <div style="margin-bottom: 15px">
        编码规则:
        <el-select v-model="select" :filter-method="filterValue" filterable placeholder="请选择" size="small"
                   @change="selectHandler">
          <el-option v-for="(item,index) in queryReleasedList"
                     :key="item.oid"
                     :label="item.name"
                     :value="item.oid"></el-option>
        </el-select>
      </div>
    </el-header>
    <el-main>
      <el-table
        v-loading="loading"
        :data="tableData"
        :header-cell-style="{background:'#FAFAFA',color:'#505050'}"
        border
        style="width: 100%;height:  calc(100vh - 320px)"
        @cell-click="cellClickHandler">
        <el-table-column
          align="center"
          label="1"
          prop="1"
        >
        </el-table-column>
        <el-table-column
          align="center"
          label="2"
          prop="2"
        >
        </el-table-column>
        <el-table-column
          align="center"
          label="3"
          prop="3">
        </el-table-column>
        <el-table-column
          align="center"
          label="4"
          prop="4">
        </el-table-column>
        <el-table-column
          align="center"
          label="5"
          prop="5">
        </el-table-column>
        <el-table-column
          align="center"
          label="6"
          prop="6">
        </el-table-column>
        <el-table-column
          align="center"
          label="7"
          prop="7">
        </el-table-column>
        <el-table-column
          align="center"
          label="8"
          prop="8">
        </el-table-column>
        <el-table-column
          align="center"
          label="9"
          prop="9">
        </el-table-column>
        <el-table-column
          align="center"
          label="10"
          prop="10">
        </el-table-column>
        <el-table-column
          align="center"
          label="11"
          prop="11">
        </el-table-column>
        <el-table-column
          align="center"
          label="12"
          prop="12">
        </el-table-column>
        <el-table-column
          align="center"
          label="13"
          prop="13">
        </el-table-column>
        <el-table-column
          align="center"
          label="14"
          prop="14">
        </el-table-column>
        <el-table-column
          align="center"
          label="15"
          prop="15">
        </el-table-column>
      </el-table>
    </el-main>
    <el-footer>
      <div style="width: 260px; display: flex; align-items: center;margin-top: 5px">
        <p>值:</p>
        <el-input v-model="characterValue" size="small" style="flex: 1;"></el-input>
      </div>
    </el-footer>
    <div style="margin-bottom: 10px;text-align: center">
      <el-button icon="el-icon-plus" plain size="small" type="success" @click="addSaveHandler">添加</el-button>
      <el-button icon="el-icon-edit" plain size="small" type="primary" @click="editSaveHandler">修改</el-button>
      <el-button icon="el-icon-delete" plain size="small" type="danger" @click="delSaveHandler">删除</el-button>
    </div>
  </basic-container>
</template>
<script>
import {getList, addSave, editSave, deleteSave} from "@/api/code/codeCharcter"
import {gridCodeRule} from "@/api/code/codeCharcter"
export default {
name: "prefixConfig"
  name: "prefixConfig",
  data() {
    return {
      loading: false,
      //下拉框数组
      queryReleasedList: [],
      //下拉框初始数据数组
      characterReleasedList: [],
      characterValue: "",
      characterEditOldValue: "",
      tableData: [],
      select: "",
      selectValue: ""
    }
  },
  watch: {
    select: {
      handler(newV) {
        // console.log(newV)
      }
    }
  },
  created() {
    this.getCodeRule();
  },
  methods: {
    cellClickHandler(row, column) {
      this.characterValue = row[column.property];
      this.characterEditOldValue = row[column.property]
    },
    async getCodeRule() {
      try {
        // 编码规则已发布数据源
        const res = await gridCodeRule({["conditionMap" + "[lcStatus_like]"]: "Released"});
        this.characterReleasedList = res.data.data.records;
        this.queryReleasedList = this.characterReleasedList;
        this.select = this.characterReleasedList[0].oid;
        this.loading = true;
        const res2 = await getList({codeRuleId: this.select, chartType: "prefix", chartValue: this.characterValue});
        this.tableData = res2.data.data;
        this.loading = false;
        // console.log("this.tableData", this.tableData);
      } catch (error) {
        this.$message.warning(error)
      }
    },
    //编码规则下拉框搜索
    filterValue(query) {
      console.log(query)
      if (query !== "") {
        this.queryReleasedList = this.characterReleasedList.filter(item => {
          return item.name.includes(query.toString());
        });
      } else {
        this.queryReleasedList = this.characterReleasedList;
      }
    },
    selectHandler(val) {
      this.selectValue = val;
      this.characterValue = ""
      this.getTableData()
    },
    getTableData() {
      this.loading = true;
      // const targetObject = this.characterReleasedList.find(obj => obj.oid === this.selectValue);
      // const chartValue = targetObject.name;
      getList({codeRuleId: this.select, chartType: "prefix", chartValue: this.characterValue}).then(res => {
        console.log(res.data.data);
        this.tableData = res.data.data;
        this.loading = false;
      });
    },
    addSaveHandler() {
      if (!this.characterValue) {
        this.$message.warning('请填写要添加的值!');
        return; // 判断输入值
      }
      const targetObject = this.characterReleasedList.find(obj => obj.oid === this.select);
      if (!targetObject) {
        return; // 查找对应typeText
      }
      const codeRuleCharacterVO = {
        codeRuleId: this.select,
        chartType: "prefix",
        chartValue: this.characterValue,
        chartTypeText: targetObject.name
      };
      addSave(codeRuleCharacterVO)
        .then(res => {
          this.$message.success(res.data.msg);
          this.characterValue = "";
          this.getTableData();
        }).catch(error => {
        this.$message.error('添加失败');
      });
    },
    editSaveHandler() {
      if (this.characterEditOldValue === "") {
        this.$message.warning('请选择修改的值!');
        return; // 判断选择值
      }
      if (this.characterValue === "") {
        this.$message.warning('请填写要修改的值!');
        return; // 判断输入值
      }
      const targetObject = this.characterReleasedList.find(obj => obj.oid === this.select);
      if (!targetObject) {
        return; // 查找对应typeText
      }
      const codeRuleCharacterVO = {
        codeRuleId: this.select,
        chartType: "prefix",
        chartValue: this.characterValue,
        oldChartValue: this.characterEditOldValue,
        chartTypeText: targetObject.name
      };
      editSave(codeRuleCharacterVO)
        .then(res => {
          this.$message.success(res.data.msg);
          this.characterValue = "";
          this.getTableData();
        }).catch(error => {
        this.$message.error('修改失败');
      });
    },
    delSaveHandler() {
      //判断选择数据characterEditOldValue
      if (this.characterEditOldValue === "" || this.characterValue === "") {
        this.$message.warning('请选择要删除的值');
        return;
      }
      const targetObject = this.characterReleasedList.find(obj => obj.oid === this.select);
      if (!targetObject) {
        return; // 查找对应typeText
      }
      const codeRuleCharacterVO = {
        codeRuleId: this.select,
        chartType: "prefix",
        chartValue: this.characterValue,
        chartTypeText: targetObject.name
      };
      deleteSave(codeRuleCharacterVO)
        .then(res => {
          this.$message.success(res.data.msg);
          this.characterValue = "";
          this.getTableData();
        }).catch(error => {
        this.$message.error('删除失败');
      });
    }
  }
}
</script>
<style scoped>
<style lang="scss" scoped>
.el-header {
  padding: 0;
}
</style>
Source/UBCS-WEB/src/views/ruleBasic/usableCharacter.vue
@@ -4,7 +4,8 @@
    <el-header>
      <div style="margin-bottom: 15px">
        编码规则:
        <el-select v-model="select" filterable  :filter-method="filterValue" placeholder="请选择" size="small" @click="selectHandler">
        <el-select v-model="select" :filter-method="filterValue" filterable placeholder="请选择" size="small"
                   @change="selectHandler">
          <el-option v-for="(item,index) in queryReleasedList"
                     :key="item.oid"
                     :label="item.name"
@@ -14,6 +15,7 @@
    </el-header>
    <el-main>
      <el-table
        v-loading="loading"
        :data="tableData"
        :header-cell-style="{background:'#FAFAFA',color:'#505050'}"
        border
@@ -22,79 +24,79 @@
        <el-table-column
          align="center"
          label="1"
          prop="aa"
          prop="1"
        >
        </el-table-column>
        <el-table-column
          align="center"
          label="2"
          prop="b"
          prop="2"
        >
        </el-table-column>
        <el-table-column
          align="center"
          label="3"
          prop="c">
          prop="3">
        </el-table-column>
        <el-table-column
          align="center"
          label="4"
          prop="d">
          prop="4">
        </el-table-column>
        <el-table-column
          align="center"
          label="5"
          prop="e">
          prop="5">
        </el-table-column>
        <el-table-column
          align="center"
          label="6"
          prop="f">
          prop="6">
        </el-table-column>
        <el-table-column
          align="center"
          label="7"
          prop="g">
          prop="7">
        </el-table-column>
        <el-table-column
          align="center"
          label="8"
          prop="h">
          prop="8">
        </el-table-column>
        <el-table-column
          align="center"
          label="9"
          prop="i">
          prop="9">
        </el-table-column>
        <el-table-column
          align="center"
          label="10"
          prop="j">
          prop="10">
        </el-table-column>
        <el-table-column
          align="center"
          label="11"
          prop="k">
          prop="11">
        </el-table-column>
        <el-table-column
          align="center"
          label="12"
          prop="l">
          prop="12">
        </el-table-column>
        <el-table-column
          align="center"
          label="13"
          prop="m">
          prop="13">
        </el-table-column>
        <el-table-column
          align="center"
          label="14"
          prop="n">
          prop="14">
        </el-table-column>
        <el-table-column
          align="center"
          label="15"
          prop="o">
          prop="15">
        </el-table-column>
      </el-table>
    </el-main>
@@ -105,83 +107,63 @@
      </div>
    </el-footer>
    <div style="margin-bottom: 10px;text-align: center">
      <el-button icon="el-icon-plus" plain size="small" type="success">添加</el-button>
      <el-button icon="el-icon-edit" plain size="small" type="primary">修改</el-button>
      <el-button icon="el-icon-delete" plain size="small" type="danger">删除</el-button>
      <el-button icon="el-icon-plus" plain size="small" type="success" @click="addSaveHandler">添加</el-button>
      <el-button icon="el-icon-edit" plain size="small" type="primary" @click="editSaveHandler">修改</el-button>
      <el-button icon="el-icon-delete" plain size="small" type="danger" @click="delSaveHandler">删除</el-button>
    </div>
  </basic-container>
</template>
<script>
import {getList} from "@/api/code/codeCharcter"
import {getList, addSave, editSave, deleteSave} from "@/api/code/codeCharcter"
import {gridCodeRule} from "@/api/code/codeCharcter"
export default {
  name: "usableCharacter",
  data() {
    return {
      loading: false,
      //下拉框数组
      queryReleasedList:[],
      queryReleasedList: [],
      //下拉框初始数据数组
      characterReleasedList: [],
      characterValue: "",
      tableData: [
        {
          aa: 'a1',
          b: 'b1',
          c: 'c1',
          d: 'd1',
          e: 'e1',
          f: 'f1',
          g: 'b1',
          h: 'c1',
          i: 'd1',
          j: 'e1',
          k: 'f1',
          l: 'a1',
          m: 'b1',
          n: 'c1',
          o: 'd1',
        },
        {
          aa: 'a2',
          b: 'b2',
          c: 'c2',
          d: 'd2',
          e: 'e2',
          f: 'f2'
        },
      ],
      characterEditOldValue: "",
      tableData: [],
      select: "",
      selectValue: ""
    }
  },
  watch:{
    select:{
      handler(newV){
  watch: {
    select: {
      handler(newV) {
        // console.log(newV)
      }
    }
  },
  created() {
    getList({codeRuleId:"1717377846655193088",chartType:"charset",chartValue:"标准规则"}).then(res=>{
      console.log(res)
    })
    this.getCodeRule()
    this.getCodeRule();
  },
  methods: {
    cellClickHandler(row, column) {
      console.log(row)
      console.log(column)
      console.log(row[column.property])
      this.characterValue = row[column.property]
      this.characterValue = row[column.property];
      this.characterEditOldValue = row[column.property]
    },
    getCodeRule() {
      //编码规则已发布数据源
      gridCodeRule({["conditionMap" + "[lcStatus_like]"]: "Released"}).then(res => {
    async getCodeRule() {
      try {
        // 编码规则已发布数据源
        const res = await gridCodeRule({["conditionMap" + "[lcStatus_like]"]: "Released"});
        this.characterReleasedList = res.data.data.records;
        this.queryReleasedList = this.characterReleasedList;
        this.select = this.characterReleasedList[0].name;
      })
        this.select = this.characterReleasedList[0].oid;
        this.loading = true;
        const res2 = await getList({codeRuleId: this.select, chartType: "charset", chartValue: this.characterValue});
        this.tableData = res2.data.data;
        this.loading = false;
        // console.log("this.tableData", this.tableData);
      } catch (error) {
        this.$message.warning(error)
      }
    },
    //编码规则下拉框搜索
    filterValue(query) {
@@ -194,8 +176,107 @@
        this.queryReleasedList = this.characterReleasedList;
      }
    },
    selectHandler(val){
      console.log(1)
    selectHandler(val) {
      this.selectValue = val;
      this.characterValue = ""
      this.getTableData()
    },
    getTableData() {
      this.loading = true;
      // const targetObject = this.characterReleasedList.find(obj => obj.oid === this.selectValue);
      // const chartValue = targetObject.name;
      getList({codeRuleId: this.select, chartType: "charset", chartValue: this.characterValue}).then(res => {
        console.log(res.data.data);
        this.tableData = res.data.data;
        this.loading = false;
      });
    },
    addSaveHandler() {
      if (!this.characterValue) {
        this.$message.warning('请填写要添加的值!');
        return; // 判断输入值
      }
      const targetObject = this.characterReleasedList.find(obj => obj.oid === this.select);
      if (!targetObject) {
        return; // 查找对应typeText
      }
      const codeRuleCharacterVO = {
        codeRuleId: this.select,
        chartType: "charset",
        chartValue: this.characterValue,
        chartTypeText: targetObject.name
      };
      addSave(codeRuleCharacterVO)
        .then(res => {
          this.$message.success(res.data.msg);
          this.characterValue = "";
          this.getTableData();
        }).catch(error => {
        this.$message.error('添加失败');
      });
    },
    editSaveHandler() {
      if (this.characterEditOldValue === "") {
        this.$message.warning('请选择修改的值!');
        return; // 判断选择值
      }
      if (this.characterValue === "") {
        this.$message.warning('请填写要修改的值!');
        return; // 判断输入值
      }
      const targetObject = this.characterReleasedList.find(obj => obj.oid === this.select);
      if (!targetObject) {
        return; // 查找对应typeText
      }
      const codeRuleCharacterVO = {
        codeRuleId: this.select,
        chartType: "charset",
        chartValue: this.characterValue,
        oldChartValue: this.characterEditOldValue,
        chartTypeText: targetObject.name
      };
      editSave(codeRuleCharacterVO)
        .then(res => {
          this.$message.success(res.data.msg);
          this.characterValue = "";
          this.getTableData();
        }).catch(error => {
        this.$message.error('修改失败');
      });
    },
    delSaveHandler() {
      //判断选择数据characterEditOldValue
      if (this.characterEditOldValue === "" || this.characterValue === "") {
        this.$message.warning('请选择要删除的值');
        return;
      }
      const targetObject = this.characterReleasedList.find(obj => obj.oid === this.select);
      if (!targetObject) {
        return; // 查找对应typeText
      }
      const codeRuleCharacterVO = {
        codeRuleId: this.select,
        chartType: "charset",
        chartValue: this.characterValue,
        chartTypeText: targetObject.name
      };
      deleteSave(codeRuleCharacterVO)
        .then(res => {
          this.$message.success(res.data.msg);
          this.characterValue = "";
          this.getTableData();
        }).catch(error => {
        this.$message.error('删除失败');
      });
    }
  }
}