aexiaoliou 1 рік тому
батько
коміт
fd26e9de75

+ 18 - 11
h5/src/utils/moneyHelper.tsx

@@ -1,15 +1,22 @@
-import { defineComponent } from "vue"
+export const getFormatedMoney = (money: number) => {
+    const million = 1000000
+    const tenThousand = 10000
 
-export const money = defineComponent({
-    props: ['money'],
-    render: (props) => 
-        <el-tooltip content={props.money + '分'} placement="right" effect="light">
-            <el-tag effect="plain">{props.money / 100}元</el-tag>
-        </el-tooltip>
+    if (money >= million) {
+        return (money / million).toFixed(2) + ' 百万'
+    } else if (money >= tenThousand) {
+        return (money / tenThousand).toFixed(2) + ' 万'
+    } else {
+        return (money / 100).toFixed(2) + ' 元'
+    }
 }
 
-)
-// <el-tool-tip content={props.money + '分'}><el-text type="primary">{props.money / 100}元</el-text></el-tool-tip>
+export const getMoneyCent = (money: number) => money * 100
 
-
-export const getMoneyCent = (money: number) => money * 100
+/**
+ * 金额函数式组件
+ */
+export const money = ({ money, multiply = 1 }: { money: number, multiply?: number }) =>
+    <el-tooltip content={money + '分'} placement="right" effect="light">
+        <el-tag effect="plain">{getFormatedMoney(money * multiply)}</el-tag>
+    </el-tooltip>

+ 2 - 2
h5/src/views/admin/admin/index.vue

@@ -75,8 +75,8 @@
 					<el-form-item label="角色" prop="role_id"
 						:rules="[{ required: true, message: '请选择角色', trigger: 'blur' }]">
 						<el-select v-model="data.form.role_id" placeholder="请选择角色">
-							<el-option v-for="(item, index) in data.roleList" :key="item.id" :label="item.name"
-								:value="item.id" />
+							<el-option v-for="(item, index) in data.roleList.sort((a, b) => b.valid - a.valid)" :key="item.id" :label="item.name"
+								:value="item.id" :disabled="!item.valid" />
 						</el-select>
 					</el-form-item>
 					<el-form-item label="状态" prop="valid" :rules="[{ required: true, message: '请选择状态', trigger: 'blur' }]">

+ 2 - 2
h5/src/views/admin/role/index.vue

@@ -25,8 +25,8 @@
 </template>
 
 <script lang="tsx" setup>
-import { ref } from 'vue'
-import { ElTag, ElMessage, ElButton, TableV2FixedDir } from 'element-plus'
+import { ref, defineComponent } from 'vue'
+import { ElTag, ElMessage, ElButton, ElPopconfirm, TableV2FixedDir } from 'element-plus'
 import type { Column } from 'element-plus'
 import { clone, throttle } from 'lodash'
 import { init, list, update, newRole } from '/@/api/role'

+ 6 - 7
h5/src/views/data/repertory.vue

@@ -130,7 +130,7 @@
 			</div>
 		</el-card>
 		<!-- 弹出项目 新增,更新的页面-->
-		<vuecmf-dialog width="1200px" :model_value="data.dialog.show" :title="data.dialog.title" @close="closePage">
+		<vuecmf-dialog width="1200px" v-if="data.dialog.show" :model_value="data.dialog.show" :title="data.dialog.title" @close="closePage">
 			<template #content>
 				<el-form :model="data.form" label-width="120px" ref="formRef" v-loading="data.dialog.isLoading">
 					<!-- 每个form-item就是一个表单的标签,label是名称,prop和v-model绑定字段名 -->
@@ -164,8 +164,7 @@
 							<el-form-item label="参与人员" prop="participants_id"
 								:rules="[{ required: true, message: '填写参与人员', trigger: 'blur' }]">
 								<el-select v-model="data.form.participants_id" multiple placeholder="选择参与人员">
-									<el-option :label="item.real_name" :value="item.id"
-										v-for="item in data.repertoryList" />
+									<el-option v-for="item in data.repertoryList" :key="item.id" :label="item.real_name" :value="item.id"/>
 								</el-select>
 							</el-form-item>
 							<el-form-item label="状态" prop="status"
@@ -792,19 +791,19 @@ const addPage = () => {
 /**
  * 弹出编辑项目页面
  */
-const edit = async (item: any) => {
-	data.dialog.show = true;
+const edit = (item: any) => {
 	data.dialog.title = '编辑项目';
 	data.form = item;
+	data.dialog.show = true;
 };
 /**
  * 获取项目详情
  */
-const openDetail = async (item: any) => {
-	data.dialogDetail.showDetail = true;
+const openDetail = (item: any) => {
 	data.dialogDetail.titleDetail = '项目详情';
 	data.form = item;
 	data.formList.project_id = item.id;
+	data.dialogDetail.showDetail = true;
 };
 /**
  * 弹出新增项目进度页面