Procházet zdrojové kódy

Merge branch 'master' into Branch_qinhb

qinhb před 1 rokem
rodič
revize
34a46c323f

+ 1 - 0
src/store/modules/dictionary.ts

@@ -25,6 +25,7 @@ export const useDictionaryStore = defineStore("dictionaryStore", {
       "station_type",
       "danwei_type",
       "trace_type",
+      "skill_type",
     ],
     dicts: [],
   }),

+ 2 - 0
src/views/base/bom/columns.ts

@@ -11,6 +11,7 @@ export const columns = [
   {
     label: "物料名称",
     prop: "materialName",
+    overHidden:true,
     hide:true
   },
 
@@ -21,6 +22,7 @@ export const columns = [
   {
     label: "物料名称",
     prop: "bomMaterialName",
+    overHidden:true,
   },
   {
     label: "物料属性",

+ 1 - 1
src/views/base/craftManagement/route/bindProcess.vue

@@ -182,7 +182,7 @@ const loadTreeData = () => {
 };
 
 // 中间列表====================
-const list2 = ref < any > [];
+const list2 = ref([]);
 const selectIndex = ref(-1);
 
 const clickFlowItem = (item, index) => {

+ 4 - 1
src/views/base/modeling/factory/index.vue

@@ -149,6 +149,7 @@
         label: "厂区名称",
         prop: "name",
         search: true,
+        overHidden:true,
         span: 24,
         labelWidth: 100,
         rules: [{
@@ -158,7 +159,7 @@
         }]
       },
       {
-        label: "厂区负责人",
+        label: "负责人",
         prop: "manager",
         span: 24,
         labelWidth: 100,
@@ -178,6 +179,7 @@
       {
         label: "厂区位置",
         prop: "position",
+        overHidden:true,
         span: 24,
         labelWidth: 100,
         rules: [{
@@ -195,6 +197,7 @@
         label: "备注",
         span: 24,
         labelWidth: 100,
+        overHidden:true,
         prop: "remark",
         type: 'textarea',
       },

+ 0 - 1
src/views/base/modeling/production-line/components/capacity-page.vue

@@ -55,7 +55,6 @@
 
   const { isShowTable, tableType } = toRefs(useCommonStoreHook());
   import { useDictionaryStoreHook } from "@/store";
-  import { columns } from "./columns";
   import {
     addStationDevice,
   } from "@/api/station";

+ 6 - 1
src/views/base/modeling/production-line/index.vue

@@ -110,6 +110,7 @@
         label: "产线名称",
         prop: "name",
         search: true,
+        overHidden:true,
         rules: [{
           required: true,
           message: "请填写产线名称",
@@ -117,7 +118,7 @@
         }],
       },
       {
-        label: "产线负责人",
+        label: "负责人",
         prop: "manager",
         rules: [{
           required: true,
@@ -135,15 +136,19 @@
       {
         label: "产线位置",
         prop: "position",
+        overHidden:true,
       },
       {
         label: "所属车间",
         prop: "workShopName",
+        overHidden:true,
         display:false
       },
       {
         label: "产线描述",
+        overHidden:true,
         prop: "remark",
+        overHidden:true,
       },
       {
         label: "创建人",

+ 171 - 0
src/views/system/post/components/post-skill.vue

@@ -0,0 +1,171 @@
+<!--<template>
+
+  <avue-form :option="option"
+             v-model="form">
+    <template #input="{row}">
+
+    </template>
+  </avue-form>
+</template>
+<script ssetup lang="ts">
+  export default {
+    data () {
+      return {
+        form: {
+          dynamic: [{
+            input: 1,
+            select: 1
+          }, {
+            input: 2,
+            select: 2
+          }]
+        },
+        option: {
+          column: [
+            {
+              label: '技能',
+              prop: 'dynamic',
+              type: 'dynamic',
+              span: 24,
+              children: {
+                align: 'center',
+                headerAlign: 'center',
+                rowAdd: (done) => {
+                  this.$message.success('新增回调');
+                  done({
+                    input: '默认值'
+                  });
+                },
+                rowDel: (row, done) => {
+                  this.$message.success('删除回调' + JSON.stringify(row));
+                  done();
+                },
+                column: [{
+                  label: '选择框',
+                  prop: "select",
+                  type: 'select',
+                  dicData: [{
+                    label: '测试1',
+                    value: 1
+                  }, {
+                    label: '测试2',
+                    value: 2
+                  }]
+                }]
+              }
+            },
+
+          ]
+        }
+      }
+    },
+    methods: {
+      addAll () {
+        for (let i = 0; i < 10; i++) {
+          this.form.dynamic.push({
+            input: 1,
+            select: 1
+          })
+        }
+      }
+    }
+  }
+</script>-->
+
+<template>
+<avue-form :option="option"
+           v-model="form">
+  <template #input="{row}">
+
+  </template>
+</avue-form>
+</template>
+<script setup lang="ts">
+  import { ref, getCurrentInstance } from "vue";
+  import { useCrud } from "@/hooks/userCrud";
+  import ButtonPermKeys from "@/common/configs/buttonPermission";
+  import { useCommonStoreHook } from "@/store";
+
+  const { isShowTable, tableType } = toRefs(useCommonStoreHook());
+  import { useDictionaryStoreHook } from "@/store";
+  const { dicts } = useDictionaryStoreHook();
+  import {
+    addStationDevice,
+  } from "@/api/station";
+  const test = () => {
+    isShowTable.value = true;
+    tableType.value = tableType.value == 1 ? 2 : 1;
+  };
+  const props = defineProps({
+    postId: {
+      type: Number,
+      default: () => {
+        return 0;
+      }
+    }
+  })
+
+  watch?.(
+    () => props.postId,
+    (newVal: string) => {
+      search.value.postId = newVal
+      dataList()
+    }
+  );
+  // 传入一个url,后面不带/
+  const { form, data, option, search, page, toDeleteIds, Methords, Utils } =
+    useCrud({
+      src: "/api/v1/sys/postSkill",
+    });
+  const { dataList, createRow, updateRow, deleteRow, searchChange, resetChange } =
+    Methords; //增删改查
+  const { selectionChange, multipleDelete } = Methords; //选中和批量删除事件
+  const { checkBtnPerm, downloadTemplate, exportData } = Utils; //按钮权限等工具
+  // checkBtnPerm(ButtonPermKeys.PLAN.BTNS.order_add) :permission="permission"
+  // const permission = reactive({
+  //   delBtn: checkPerm(buttonPermission.PLAN.BTNS.order_del),
+  //   addBtn: checkPerm(buttonPermission.PLAN.BTNS.order_add),
+  //   editBtn: checkPerm(buttonPermission.PLAN.BTNS.order_edit),
+  //   menu: true,
+  // });
+  const crudRef = ref(null); //crudRef.value 获取avue-crud对象
+
+  onMounted(() => {
+    // console.log("crudRef", crudRef)
+    dataList();
+  });
+ /* const form=ref({
+    dynamic: [{
+      input: 1,
+      select: 1
+    }, {
+      input: 2,
+      select: 2
+    }]
+  });*/
+  // 设置表格列或者其他自定义的option
+  option.value = Object.assign(option.value, {
+    column: [
+      {label: '技能',
+      prop: 'dynamic',
+      type: 'dynamic',
+      span: 24,
+      children: {
+        align: 'center',
+        type: 'form',
+        headerAlign: 'center',
+        column: [
+          {
+            label: "技能",
+            prop: "skill_dict_value",
+            type: 'select',
+            dicData:dicts.skill_type,
+            props: { label: "dictLabel", value: "dictValue" },
+          }
+        ]
+      }
+    }
+    ],
+  });
+
+</script>

+ 24 - 1
src/views/system/post/index.vue

@@ -16,6 +16,13 @@
         @current-change="dataList"
         @selection-change="selectionChange"
     >
+      <template #menu="{row,index,type}">
+        <el-button @click="binding(row)"
+                   icon="el-icon-link"
+                   text
+                   type="primary"
+        >技能</el-button>
+      </template>
       <template #menu-left="{ size }">
         <el-button
           :disabled="toDeleteIds.length < 1"
@@ -27,6 +34,14 @@
         >
       </template>
     </avue-crud>
+    <el-dialog
+      v-model="dialog.visible"
+      :title="dialog.title"
+      width="800px"
+      @close="dialog.visible = false"
+    >
+      <post-skill  :postId="post.id"/>
+    </el-dialog>
     <ExcelUpload ref="uploadRef" @finished="uploadFinished" />
   </div>
 </template>
@@ -42,6 +57,11 @@ const test = () => {
   isShowTable.value = true;
   tableType.value = tableType.value == 1 ? 2 : 1;
 };
+const post=ref(null);
+const binding=(row)=>{
+  post.value=row;
+  dialog.visible=true;
+}
 
 // 传入一个url,后面不带/
 const { form, data, option, search, page, toDeleteIds, Methords, Utils } =
@@ -53,7 +73,10 @@ const { selectionChange, multipleDelete } = Methords; //选中和批量删除事
 const { checkBtnPerm, downloadTemplate, exportData } = Utils; //按钮权限等工具
 
 const crudRef = ref(null); //crudRef.value 获取avue-crud对象
-
+const dialog = reactive({
+  title: "技能",
+  visible: false,
+});
 // 设置表格列或者其他自定义的option
 option.value = Object.assign(option.value, {
   delBtn: false,