src/views/goalManagement/IncentiveRecording/component/DailogAdd.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/goalManagement/IncentiveRecording/component/DailogSearch.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/goalManagement/IncentiveRecording/index.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/views/goalManagement/IncentiveRecording/component/DailogAdd.vue
@@ -5,7 +5,7 @@ <el-row> <el-col :span="24"> <el-form-item label="员工姓名" size="default"> <el-input v-model="form.name" placeholder="请选择"> <el-input v-model="form.personId" placeholder="请选择"> <template #append> <el-button :icon="Search" @click="daiInpts" /> </template ></el-input> </el-form-item> @@ -14,35 +14,35 @@ <el-row> <el-col :span="11"> <el-form-item label="奖惩名称" size="default"> <el-input v-model="form.name" placeholder="请选择"> <el-input v-model="form.rewardPunishmentStandardId" placeholder="请选择"> <template #append> <el-button :icon="Search" @click="daiInpt" /> </template ></el-input> </el-form-item> </el-col> <el-col :span="11" :offset="2"> <!-- <el-col :span="11" :offset="2"> <el-form-item label="奖惩类型" size="default"> <el-input v-model="form.name" /> <el-input disabled v-model="form.personId" /> </el-form-item> </el-col> </el-col> --> </el-row> <el-row> <!-- <el-row> <el-col :span="24"> <el-form-item label="奖惩内容" size="default"> <el-input v-model="form.name" placeholder="请填写奖惩内容" /> <el-input disabled v-model="form.personId" placeholder="请填写奖惩内容" /> </el-form-item> </el-col> </el-row> <el-row> <el-col :span="24"> <el-form-item label="依据" size="default"> <el-input v-model="form.name" placeholder="请填写奖惩依据" /> <el-input disabled v-model="form.personId" placeholder="请填写奖惩依据" /> </el-form-item> </el-col> </el-row> </el-row> --> <el-row> <el-col :span="24"> <el-form-item label="备注信息"> <el-input v-model="form.name" type="textarea" /> <el-input v-model="form.memo" type="textarea" /> </el-form-item> </el-col> </el-row> @@ -54,8 +54,8 @@ </span> </template> </el-dialog> <DailogSearchUser ref="Show"></DailogSearchUser> <DailogSearch ref="Shows"></DailogSearch> <DailogSearchUser ref="Show" @SearchUser="UserId"></DailogSearchUser> <DailogSearch ref="Shows" @backNum="numberId"></DailogSearch> </template> <script lang="ts"> import { defineComponent, ref, reactive } from 'vue'; @@ -68,7 +68,11 @@ components: { DailogSearch, DailogSearchUser }, setup(props,{emit}) { const dialogVisible = ref<boolean>(false); const form = ref({}); const form = ref({ rewardPunishmentStandardId: '', //奖惩标准/外键 memo: '', ////备注信息 personId: "", ////员工(多个用逗号隔开) }); const titles = ref(); const disabled = ref(false); // 打开弹窗 @@ -104,14 +108,18 @@ } }); form.value = { } rewardPunishmentStandardId: '', //奖惩标准/外键 memo: '', ////备注信息 personId: "", ////员工(多个用逗号隔开) }; }; // 取消 const resetForm = () => { dialogVisible.value = false; form.value = { rewardPunishmentStandardId: '', //奖惩标准/外键 memo: '', ////备注信息 personId: "", ////员工(多个用逗号隔开) }; }; @@ -124,6 +132,13 @@ const daiInpts = () => { Show.value.openDailog(); }; const numberId=(val:any)=>{ console.log(val) form.value.rewardPunishmentStandardId=val.id } const UserId=(val:any)=>{ form.value.personId=val.id } //全屏 const full = ref(false); const toggleFullscreen = () => { @@ -135,11 +150,13 @@ }; return { dialogVisible, UserId, form, titles, disabled, openDailog, submitForm, numberId, resetForm, Shows, daiInpt, src/views/goalManagement/IncentiveRecording/component/DailogSearch.vue
@@ -7,7 +7,7 @@ <el-row> <el-col :span="12"> <el-form-item size="default"> <el-input v-model="ruleForm.pass" placeholder="奖惩名称" /> <el-input v-model="ruleForm.searchParams.standardType" placeholder="奖惩类型" /> </el-form-item> </el-col> <!-- <el-col :span="6" :offset="1"> @@ -17,31 +17,44 @@ </el-col> --> <el-col :span="11" :offset="1"> <el-form-item> <el-button size="default" type="primary" @click="submitForm">查询</el-button> <el-button size="default" type="primary" @click="listApi">查询</el-button> <el-button size="default" @click="resetForm">重置</el-button> </el-form-item> </el-col> </el-row> </el-form> <el-button size="default" :icon="Delete">清除选择</el-button> <el-table :data="tableData" style="width: 100%; margin-top: 20px"> <el-table-column align="center" type="selection" /> <el-table-column align="center" prop="date" label="奖惩名称" width="180" /> <el-table-column align="center" prop="name" label="奖惩类型" width="180" /> <el-table-column align="center" prop="address" label="奖惩内容" /> <el-button size="default" :icon="Delete" @click="clear">清除选择</el-button> <el-table :data="tableData" style="width: 100%; margin-top: 20px" @cell-click="radio"> <el-table-column align="center"> <template #default="scope"> <el-radio-group v-model="radio1"> <el-radio :label="scope.row.id" size="large">{{ null }}</el-radio> </el-radio-group> </template> </el-table-column> <el-table-column align="center" prop="qname" label="奖惩名称" width="180" /> <el-table-column align="center" label="奖惩类型" width="180"> <template #default="scope"> <span v-if="scope.row.standardType==1">奖励</span> <span v-if="scope.row.standardType==2">惩罚</span> <span></span> </template> </el-table-column> <el-table-column align="center" prop="content" label="奖惩内容" /> </el-table> <el-pagination style="padding: 20px 0; border-bottom: 1px solid #dedede" v-model:currentPage="currentPage4" v-model:page-size="pageSize4" :page-sizes="[100, 200, 300, 400]" :page-sizes="[10, 20, 30, 40]" layout="total, sizes, prev, pager, next, jumper" :total="1" :total="total" @size-change="handleSizeChange" @current-change="handleCurrentChange" /> </el-col> <el-col :span="7"> <div v-if="dynamicTags[0]==''?false:true"> <el-tag v-for="tag in dynamicTags" :key="tag" @@ -51,67 +64,105 @@ :disable-transitions="false" @close="handleClose(tag)" > {{ tag }} {{ tag.qname }} </el-tag> </div> </el-col> </el-row> <template #footer> <span class="dialog-footer"> <el-button @click="dialogVisible = false" size="default">关闭</el-button> <el-button type="primary" @click="dialogVisible = false" size="default">确定</el-button> <el-button type="primary" @click="submitForm" size="default">确定</el-button> </span> </template> </el-dialog> </template> <script lang="ts"> import { defineComponent, reactive, ref } from 'vue'; import { defineComponent, reactive, ref,onMounted } from 'vue'; import { Delete, FullScreen } from '@element-plus/icons-vue'; import { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus'; import { goalManagementApi } from '/@/api/goalManagement'; export default defineComponent({ setup() { const dialogVisible = ref<boolean>(false); const openDailog = () => { dialogVisible.value = true; }; setup(props,{emit}) { // 搜索条件 const ruleForm = reactive({ pass: '', checkPass: '', pageSize: 10, pageIndex: 1, searchParams: { standardType: '', ////奖惩类型 1:奖励 2:惩罚 }, }); // 重置 const resetForm = () => { ruleForm.searchParams.standardType = ''; listApi(); }; const listApi = () => { goalManagementApi() .getrewardPunishmentStandardList(ruleForm) .then((res) => { if (res.data.code == 200) { tableData.value = res.data.data; currentPage4.value = res.data.pageIndex; pageSize4.value = res.data.pageSize; total.value = res.data.total; } else { ElMessage.error(res.data.msg); } }); }; // const handleClick = (val: any) => { let targetType = JSON.parse(JSON.stringify(val)); ruleForm.searchParams.standardType = targetType.paneName; listApi(); }; onMounted(() => { }); // const onAddorUpdata = () => { // listApi(); // }; // 表格 const tableData = [ { date: '2016-05-03', name: 'Tom', address: 'No. 189, Grove St, Los Angeles', }, { date: '2016-05-02', name: 'Tom', address: 'No. 189, Grove St, Los Angeles', }, { date: '2016-05-04', name: 'Tom', address: 'No. 189, Grove St, Los Angeles', }, { date: '2016-05-01', name: 'Tom', address: 'No. 189, Grove St, Los Angeles', }, ]; const pageSize4 = ref(100); const tableData = ref(); const currentPage4 = ref(); const pageSize4 = ref(); const total = ref(); const handleSizeChange = (val: number) => { console.log(`${val} items per page`); // console.log(`${val} items per page`); ruleForm.pageSize = val; listApi(); }; const handleCurrentChange = (val: number) => { console.log(`current page: ${val}`); // console.log(`current page: ${val}`); ruleForm.pageIndex = val; listApi(); }; // 打开弹窗 const dialogVisible=ref(false) const openDailog=()=>{ dialogVisible.value=true listApi(); } // 右方点击添加后显示标签 const dynamicTags = ref(['Tag 1', 'Tag 2', 'Tag 3']); const dynamicTags = ref(['']); const handleClose = (tag: string) => { dynamicTags.value.splice(dynamicTags.value.indexOf(tag), 1); radio1.value = ''; }; const radio1 = ref(''); const radio = (event: any) => { dynamicTags.value[0] = event; }; const clear=()=>{ dynamicTags.value=[''] radio1.value="" } const submitForm=()=>{ let obj=JSON.parse(JSON.stringify(dynamicTags.value)) emit("backNum",obj[0]) dialogVisible.value = false } //全屏 const full = ref(false); const toggleFullscreen = () => { @@ -122,14 +173,23 @@ } }; return { submitForm, radio, radio1, clear, dialogVisible, openDailog, ruleForm, resetForm, tableData, currentPage4, pageSize4, total, handleSizeChange, handleCurrentChange, dynamicTags, listApi, handleClick, handleClose, Delete, full, src/views/goalManagement/IncentiveRecording/index.vue
@@ -28,15 +28,15 @@ <div class="btns"> <div> <el-button size="default" type="primary" :icon="Plus" @click="openD('新建')">新建</el-button> <el-button size="default" type="warning" plain :icon="EditPen">修改</el-button> <el-button size="default" type="danger" :icon="Delete" plain @click="handleSelectionChange">删除 </el-button> <el-button size="default" :disabled="warning" type="warning" plain :icon="EditPen">修改</el-button> <el-button size="default" :disabled="danger" type="danger" :icon="Delete" plain @click="handleSelectionChange">删除 </el-button> </div> <div> <!-- <el-button size="default" :icon="Download"></el-button> <el-button size="default" :icon="Refresh"></el-button> --> </div> </div> <el-table ref="multipleTableRef" :data="tableData" style="width: 100%"> <el-table ref="multipleTableRef" :data="tableData" style="width: 100%" @selection-change="handleSelectionChange"> <el-table-column type="selection" align="center" width="55" /> <el-table-column property="createTime" align="center" label="奖惩日期" sortable /> <el-table-column label="奖惩类型" align="center" sortable> @@ -45,14 +45,11 @@ <span v-if="scope.row.standardType==2">惩罚</span> </template> </el-table-column> <el-table-column property="personName" align="center" label="被奖惩者" sortable /> <el-table-column property="personId" align="center" label="被奖惩者" sortable /> <el-table-column property="content" label="奖惩内容" align="center" sortable show-overflow-tooltip /> <el-table-column property="reason" label="奖惩依据" align="center" sortable show-overflow-tooltip /> <!-- <el-table-column property="address" label="指标级别" align="center" sortable show-overflow-tooltip /> <el-table-column property="address" label="完成期限" align="center" sortable show-overflow-tooltip /> <el-table-column property="address" label="状态" align="center" sortable show-overflow-tooltip /> --> <el-table-column label="操作" align="center" style="width: 300px"> <template #defaultt="scope"> <el-table-column label="操作" align="center" sortable show-overflow-tooltip> <template #default="scope"> <el-button link type="primary" size="default" :icon="View" @click="openD('查看', scope.row.id)">查看</el-button> <el-button link type="primary" size="default" :icon="EditPen" @click="openD('修改', scope.row.id)">修改</el-button> <el-button link type="primary" size="default" :icon="Delete" @click="onDelete(scope.row.id)">删除</el-button> @@ -70,7 +67,7 @@ @current-change="handleCurrentChange" /> </div> <DailogAdd ref="openAdd"></DailogAdd> <DailogAdd ref="openAdd" @navAddorUpdata="onAddorUpdata"></DailogAdd> <DailogSearchUser ref="openUser"></DailogSearchUser> </div> </div>