zhengnaiwen_citu vor 4 Monaten
Ursprung
Commit
a7a4d68e70

+ 6 - 25
src/views/accumulatePoints/accumulatePointsRules/accumulatePointsRulesConfigItem.vue

@@ -28,7 +28,10 @@
 
 <script>
 import { cloneDeep } from 'lodash'
-
+import {
+  INPUT_TYPE,
+  CALCULATION_METHOD
+} from '../utils/dict'
 export default {
   name: 'accumulatePointsRulesConfigItem',
   props: {
@@ -78,16 +81,7 @@ export default {
           type: 'radioGroup',
           options: {
             size: 'small',
-            items: [
-              {
-                text: '加分',
-                label: 0
-              },
-              {
-                text: '减分',
-                label: 1
-              }
-            ]
+            items: CALCULATION_METHOD
           }
         },
         {
@@ -96,20 +90,7 @@ export default {
           type: 'radioGroup',
           options: {
             size: 'small',
-            items: [
-              {
-                text: '多次',
-                label: 0
-              },
-              {
-                text: '手工',
-                label: 2
-              },
-              {
-                text: '单选',
-                label: 3
-              }
-            ]
+            items: INPUT_TYPE
           }
         },
         {

+ 54 - 2
src/views/accumulatePoints/accumulatePointsRules/accumulatePointsRulesDetails.vue

@@ -1,11 +1,57 @@
 <template>
-  <m-dialog ref="dialog" title="积分规则详情"></m-dialog>
+  <m-dialog ref="dialog" title="积分规则详情">
+    <el-form label-width="150px" v-loading="loading">
+      <el-form-item label="模块名称">
+        <el-tag>{{ itemData.ruleCategory }}</el-tag>
+      </el-form-item>
+      <el-form-item label="积分上限">
+        <el-tag>{{ itemData.maxScore }}</el-tag>
+      </el-form-item>
+      <el-form-item label="规则">
+        <m-card
+          v-for="item in itemData.items"
+          :key="item.employeeScoreRuleItemId"
+          shadow="never"
+          class="mb-3"
+        >
+          <el-form-item label="积分名称">
+            <el-tag>{{ item.title }}</el-tag>
+          </el-form-item>
+          <el-form-item label="计算方法">
+            <el-tag>{{ item.calculationMethodText }}</el-tag>
+          </el-form-item>
+          <el-form-item label="积分类型">
+            <el-tag>{{ item.inputTypeText }}</el-tag>
+          </el-form-item>
+          <el-form-item label="选项配置" v-if="item.inputType === 3">
+            <el-descriptions direction="vertical" :column="item.groupItem?.length ?? 0" border>
+              <el-descriptions-item
+                v-for="group in item.groupItem"
+                :key="group.employeeScoreRuleItemId"
+                :label="group.title"
+              >{{ group.score }}</el-descriptions-item>
+            </el-descriptions>
+          </el-form-item>
+          <el-form-item label="积分基数" v-if="item.inputType === 0">
+            <el-tag>{{ item.score }}</el-tag>
+          </el-form-item>
+          <el-form-item label="积分上限">
+            <el-tag>{{ item.maxScore || '无' }}</el-tag>
+          </el-form-item>
+        </m-card>
+      </el-form-item>
+    </el-form>
+  </m-dialog>
 </template>
 
 <script>
 import {
   getAccumulatePointRulesDetails
 } from '@/api/accumulatePoint'
+import {
+  INPUT_TYPE,
+  CALCULATION_METHOD
+} from '../utils/dict'
 export default {
   name: 'accumulatePointsRulesDetails',
   data () {
@@ -25,7 +71,13 @@ export default {
         })
         this.itemData = {
           ...data.entity,
-          items: data.items
+          items: data.items.map(e => {
+            return {
+              ...e,
+              inputTypeText: INPUT_TYPE.find(_e => _e.label === e.inputType).text,
+              calculationMethodText: CALCULATION_METHOD.find(_e => _e.label === e.calculationMethod).text
+            }
+          })
         }
       } catch (error) {
         this.$message.error(error)

+ 26 - 0
src/views/accumulatePoints/utils/dict.js

@@ -0,0 +1,26 @@
+
+export const INPUT_TYPE = [
+  {
+    text: '多次',
+    label: 0
+  },
+  {
+    text: '手工',
+    label: 2
+  },
+  {
+    text: '单选',
+    label: 3
+  }
+]
+
+export const CALCULATION_METHOD = [
+  {
+    text: '加分',
+    label: 0
+  },
+  {
+    text: '减分',
+    label: 1
+  }
+]