修改bug

This commit is contained in:
yangjun 2024-10-24 19:07:33 +08:00
parent 6a9e11a9f7
commit facdcd90c1
6 changed files with 347 additions and 68 deletions

View File

@ -125,8 +125,6 @@ public class XxhbjwxtjxrwController extends JeecgController<Xxhbjwxtjxrw, IXxhbj
// queryWrapper.like(StringUtils.isNotBlank(xxhbjwxtjxrw.getZhicheng()),"teaxm",xxhbjwxtjxrw.getZhicheng());
queryWrapper.apply(StringUtils.isNotBlank(xxhbjwxtjxrw.getZhicheng()),"SUBSTRING(TEAXM,LOCATE('[',TEAXM)+1,locate(']',TEAXM)-locate('[',TEAXM)-1) = '"+xxhbjwxtjxrw.getZhicheng()+"'");
QueryWrapper<ZjXkxx> zjXkxxQueryWrapper = new QueryWrapper<>();
zjXkxxQueryWrapper.eq("user_id",sysUser.getUsername());
List<ZjXkxx> list = zjXkxxService.zjList(zjXkxxQueryWrapper);

View File

@ -31,9 +31,16 @@ public class Xxhbjwxtjxrw implements Serializable {
private static final long serialVersionUID = 1L;
/**学年学期*/
@Excel(name = "学年学期", width = 15)
@ApiModelProperty(value = "学年学期")
private java.lang.String xnxqdm;
/**xn*/
@Excel(name = "学年", width = 15)
@ApiModelProperty(value = "学年")
private java.lang.String xn;
/**xqmc*/
@Excel(name = "学期", width = 15)
@ApiModelProperty(value = "学期")
private java.lang.String xqmc;
/**kcmc*/
@Excel(name = "课程名称", width = 15)
@ApiModelProperty(value = "课程名称")
@ -55,31 +62,21 @@ public class Xxhbjwxtjxrw implements Serializable {
@ApiModelProperty(value = "学时")
private java.lang.String zxs;
/**kkyxmc*/
@Excel(name = "开课单位名称", width = 15)
@Excel(name = "开课单位", width = 15)
@ApiModelProperty(value = "开课单位名称")
private java.lang.String kkyxmc;
/**所属校内专业(大类)名称*/
@Excel(name = "所属校内专业(大类)名称", width = 15)
@ApiModelProperty(value = "所属校内专业(大类)名称")
@Excel(name = "专业名称", width = 15)
@ApiModelProperty(value = "所属校内专业(大类)")
private String zymc;
/**teaxm*/
@Excel(name = "任课教师[职称]", width = 15)
@ApiModelProperty(value = "任课教师[职称]")
private java.lang.String teaxm;
/**bjxx*/
@Excel(name = "班级", width = 15)
@ApiModelProperty(value = "班级")
private java.lang.String bjxx;
/**xn*/
@Excel(name = "学年", width = 15)
@ApiModelProperty(value = "学年")
private java.lang.String xn;
/**xqmc*/
@Excel(name = "学期", width = 15)
@ApiModelProperty(value = "学期")
private java.lang.String xqmc;
/**sjfs*/
@Excel(name = "试卷份数", width = 15)
@ApiModelProperty(value = "试卷份数")
private java.lang.String sjfs;
/**khfsmc*/
@ -87,13 +84,13 @@ public class Xxhbjwxtjxrw implements Serializable {
@ApiModelProperty(value = "考试方式")
private java.lang.String khfsmc;
/**isUploadSj*/
@Excel(name = "是否能上传考核分析及试卷样本", width = 15)
@ApiModelProperty(value = "是否能上传考核分析及试卷样本")
private java.lang.String isUploadSj;
/**jxbrs*/
@Excel(name = "jxbrs", width = 15)
@ApiModelProperty(value = "jxbrs")
private String jxbrs;
@Excel(name = "审核状态", width = 15)
private String fileShztmc;
@TableField(exist = false)

View File

@ -0,0 +1,261 @@
<template>
<div class="p-2">
<!--查询区域-->
<div class="jeecg-basic-table-form-container">
<a-form ref="formRef" @keyup.enter.native="searchQuery" :model="queryParam" :label-col="labelCol" :wrapper-col="wrapperCol">
<a-row :gutter="24">
<a-col :lg="6" >
<a-form-item name="xn">
<template #label><span title="学年">学年</span></template>
<j-dict-select-tag placeholder="请选择学年" v-model:value="queryParam.xn" :dictCode="`v_xn,xn,xn`" allow-clear />
</a-form-item>
</a-col>
<a-col :lg="6">
<a-form-item name="xqmc">
<template #label><span title="学期">学期</span></template>
<j-dict-select-tag placeholder="请选择学期" v-model:value="queryParam.xqmc" dictCode="cjxq" allow-clear />
</a-form-item>
</a-col>
<a-col :lg="6">
<a-form-item name="kcmc">
<template #label><span title="课程名称">课程名称</span></template>
<j-input placeholder="请输入课程名称" v-model:value="queryParam.kcmc" allow-clear ></j-input>
</a-form-item>
</a-col>
<a-col :lg="6">
<a-form-item name="kkyxmc">
<template #label><span title="开课单位名称">开课单位名称</span></template>
<j-dict-select-tag placeholder="请选择开课单位名称" v-model:value="queryParam.kkyxmc" :dictCode="`v_kkdw,kkyxmc,kkyxmc`" allow-clear />
</a-form-item>
</a-col>
<a-col :lg="6">
<a-form-item name="kcmc">
<template #label><span title="任课教师">任课教师</span></template>
<j-input placeholder="请输入任课教师" v-model:value="queryParam.teaxm" allow-clear ></j-input>
</a-form-item>
</a-col>
<a-col :lg="6">
<a-form-item name="fileShztmc">
<template #label><span title="审核状态">审核状态</span></template>
<a-select placeholder="请选择审核状态" v-model:value="queryParam.fileShztmc">
<a-select-option value="">全部</a-select-option>
<a-select-option value="待审核">待审核</a-select-option>
<a-select-option value="审核通过">审核通过</a-select-option>
</a-select>
<!-- <j-dict-select-tag placeholder="请选择开课单位名称" v-model:value="queryParam.kkyxmc" :dictCode="`v_kkdw,kkyxmc,kkyxmc`" allow-clear /> -->
</a-form-item>
</a-col>
<a-col :xl="6" :lg="7" :md="8" :sm="24">
<span style="float: left; overflow: hidden" class="table-page-search-submitButtons">
<a-col :lg="6">
<a-button type="primary" preIcon="ant-design:search-outlined" @click="searchQuery">查询</a-button>
<a-button type="primary" preIcon="ant-design:export-outlined" @click="onExportXls" style="margin-left: 8px"> 导出</a-button>
</a-col>
</span>
</a-col>
</a-row>
</a-form>
</div>
<!--引用表格-->
<BasicTable @register="registerTable" >
<!--操作栏-->
<template #action="{ record }">
<TableAction :actions="getTableAction(record)" />
</template>
</BasicTable>
<!-- 表单区域 -->
<XxhbjwxtjxrwModal ref="registerModal" @success="handleSuccess"></XxhbjwxtjxrwModal>
</div>
</template>
<script lang="ts" name="xxhbjwxtjxrw-xxhbjwxtjxrw" setup>
import { ref, reactive } from 'vue';
import { BasicTable, useTable, TableAction } from '/@/components/Table';
import { useListPage } from '/@/hooks/system/useListPage';
import { columns, superQuerySchema } from './Xxhbjwxtjxrw.data';
import { list, deleteOne, batchDelete, getImportUrl, getExportUrl } from './Xxhbjwxtjxrw.api';
import { downloadFile } from '/@/utils/common/renderUtils';
import XxhbjwxtjxrwModal from './components/XxhbjwxtjxrwModal.vue'
import { useUserStore } from '/@/store/modules/user';
import JDictSelectTag from '/@/components/Form/src/jeecg/components/JDictSelectTag.vue';
import JInput from "/@/components/Form/src/jeecg/components/JInput.vue";
const formRef = ref();
const queryParam = reactive<any>({});
const toggleSearchStatus = ref<boolean>(false);
const registerModal = ref();
const userStore = useUserStore();
const emit = defineEmits(['callback']);
//table
const { prefixCls, tableContext, onExportXls, onImportXls } = useListPage({
tableProps: {
api: list,
columns,
canResize:false,
useSearchForm: false,
showActionColumn: false,
actionColumn: {
width: 120,
fixed: 'right',
},
beforeFetch: async (params) => {
return Object.assign(params, queryParam);
},
},
exportConfig: {
name: "教务系统教学任务",
url: getExportUrl,
params: queryParam,
},
importConfig: {
url: getImportUrl,
success: handleSuccess
},
});
const [registerTable, { reload, collapseAll, updateTableDataRecord, findTableDataRecord, getDataSource }, { rowSelection, selectedRowKeys }] = tableContext;
const labelCol = reactive({
xs:24,
sm:6,
xl:6,
xxl:6
});
const wrapperCol = reactive({
xs: 24,
sm: 18,
});
//
const superQueryConfig = reactive(superQuerySchema);
function textDown(type,downame){
var a = document.createElement("a"); //<a></a>
a.href = "/download/"+type+".docx";
//ahref .
a.download =downame+".docx";
//.xlsxpdf.fpd
a.style.display = "none"; // a
document.body.appendChild(a);
// a
a.click(); //aahref
a.remove();
// a
}
/**
* 高级查询事件
*/
function handleSuperQuery(params) {
Object.keys(params).map((k) => {
queryParam[k] = params[k];
});
searchQuery();
}
/**
* 新增事件
*/
function handleAdd() {
registerModal.value.disableSubmit = false;
registerModal.value.add();
}
/**
* 编辑事件
*/
function handleEdit(record: Recordable) {
registerModal.value.disableSubmit = false;
registerModal.value.edit(record);
}
/**
* 详情
*/
function handleDetail(record: Recordable) {
// registerModal.value.disableSubmit = true;
// registerModal.value.edit(record);
emit('callback',record)
}
/**
* 删除事件
*/
async function handleDelete(record) {
await deleteOne({ id: record.id }, handleSuccess);
}
/**
* 批量删除事件
*/
async function batchHandleDelete() {
await batchDelete({ ids: selectedRowKeys.value }, handleSuccess);
}
/**
* 成功回调
*/
function handleSuccess() {
(selectedRowKeys.value = []) && reload();
}
/**
* 操作栏
*/
function getTableAction(record) {
return [
{
label: '详情',
onClick: handleDetail.bind(null, record),
},
];
}
/**
* 查询
*/
function searchQuery() {
reload();
}
/**
* 重置
*/
function searchReset() {
formRef.value.resetFields();
selectedRowKeys.value = [];
//
reload();
}
</script>
<style lang="less" scoped>
.jeecg-basic-table-form-container {
padding: 0;
.table-page-search-submitButtons {
display: block;
margin-bottom: 24px;
white-space: nowrap;
}
.query-group-cust{
min-width: 100px !important;
}
.query-group-split-cust{
width: 30px;
display: inline-block;
text-align: center
}
.ant-form-item:not(.ant-form-item-with-help){
margin-bottom: 16px;
height: 32px;
}
:deep(.ant-picker),:deep(.ant-input-number){
width: 100%;
}
}
</style>

View File

@ -5,10 +5,22 @@ import { render } from '/@/utils/common/renderUtils';
import { getWeekMonthQuarterYear } from '/@/utils';
//列表数据
export const columns: BasicColumn[] = [
// {
// title: '学年学期',
// align: "center",
// dataIndex: 'xnxqdm'
// },
{
title: '学年学期',
title: '学年',
align: "center",
dataIndex: 'xnxqdm'
dataIndex: 'xn',
width: 100
},
{
title: '学期',
align: "center",
dataIndex: 'xqmc',
width: 80
},
{
title: '课程名称',
@ -43,7 +55,7 @@ export const columns: BasicColumn[] = [
dataIndex: 'kkyxmc'
},
{
title: '所属校内专业(大类)',
title: '专业名称',
align: "center",
dataIndex: 'zymc',
width: 220
@ -53,36 +65,32 @@ export const columns: BasicColumn[] = [
align: "center",
dataIndex: 'teaxm'
},
{
title: '班级',
align: "center",
dataIndex: 'bjxx'
},
{
title: '学年',
align: "center",
dataIndex: 'xn'
},
{
title: '学期',
align: "center",
dataIndex: 'xqmc'
},
{
title: '试卷份数',
align: "center",
dataIndex: 'sjfs'
},
// {
// title: '班级',
// align: "center",
// dataIndex: 'bjxx'
// },
// {
// title: '试卷份数',
// align: "center",
// dataIndex: 'sjfs'
// },
{
title: '考试方式',
align: "center",
dataIndex: 'khfsmc'
dataIndex: 'khfsmc',
width: 80
},
{
title: '是否能上传考核分析及试卷样本',
title: '审核状态',
align: "center",
dataIndex: 'isUploadSj'
dataIndex: 'fileShztmc'
},
// {
// title: '是否能上传考核分析及试卷样本',
// align: "center",
// dataIndex: 'isUploadSj'
// },
];

View File

@ -82,7 +82,13 @@
/>
</a-form-item>
</a-col>
<a-col :span="18" style="text-align: right">
<a-col :lg="6">
<a-form-item name="kcmc">
<template #label><span title="课程名称" class="xn-title">课程名称</span></template>
<j-input placeholder="请输入课程名称" v-model:value="queryParam2.kcmc" allow-clear></j-input>
</a-form-item>
</a-col>
<a-col :span="12" style="text-align: right">
<a-button type="primary" preIcon="ant-design:search-outlined" @click="searchQuery2">查询</a-button>
</a-col>
</a-row>
@ -262,15 +268,15 @@
/>
</a-form-item>
</a-col>
<!-- <a-col :lg="6">
<a-form-item name="kcmc">
<template #label><span title="课程名称">课程名称</span></template>
<j-input placeholder="请输入课程名称" v-model:value="queryParam.kcmc" allow-clear ></j-input>
</a-form-item>
</a-col> -->
<a-col :span="18" style="text-align: right">
<a-col :lg="6">
<a-form-item name="kcmc">
<template #label><span title="课程名称" class="xn-title">课程名称</span></template>
<j-input placeholder="请输入课程名称" v-model:value="queryParam.kcmc" allow-clear></j-input>
</a-form-item>
</a-col>
<a-col :span="12" style="text-align: right">
<a-button type="primary" preIcon="ant-design:search-outlined" @click="searchQuery">查询</a-button>
<a-button type="primary" preIcon="ant-design:reload-outlined" @click="searchReset" style="margin-left: 8px">重置</a-button>
<!-- <a-button type="primary" preIcon="ant-design:reload-outlined" @click="searchReset" style="margin-left: 8px">重置</a-button> -->
<!-- <a-button type="primary" preIcon="ant-design:export-outlined" @click="onExportXls" style="margin-left: 8px"> 导出</a-button> -->
</a-col>
</a-row>
@ -470,18 +476,18 @@ function textDown(type, downame) {
}
//
function handleXUanze(record) {
async function handleXUanze(record) {
record.id = null;
console.log('😰record----------', record);
defHttp
await defHttp
.post({
url: '/zjXkxx/zjXkxx/add',
params: record,
})
.then((res) => {
console.log('🤛', res);
xtsuccess();
});
xtsuccess();
}
//
@ -529,9 +535,9 @@ function handleView(record) {
function onChangeTab(tab) {
console.log('🎒', tab);
if(tab==2){
if (tab == 2) {
khpjclFormModal.value.init(jxrwInfo.value); //
}else if(tab==3){
} else if (tab == 3) {
xsysclFormModal.value.init(jxrwInfo.value); //
}
}
@ -571,6 +577,8 @@ function searchQuery() {
*/
function searchQuery2() {
queryParam2.value.pageNo = paginationProp.value.current;
queryParam2.value.fileShztmc = '审核通过';
console.log('🧛', queryParam2);
defHttp.get({ url: '/xxhbjwxtjxrw/xxhbjwxtjxrw/list', params: { pageNo: paginationProp.value.current, ...queryParam2.value } }).then((res) => {
dataList.value = res.records;
paginationProp.value.total = res.total;

View File

@ -82,7 +82,13 @@
/>
</a-form-item>
</a-col>
<a-col :span="18" style="text-align: right">
<a-col :lg="6">
<a-form-item name="kcmc">
<template #label><span title="课程名称" class="xn-title">课程名称</span></template>
<j-input placeholder="请输入课程名称" v-model:value="queryParam2.kcmc" allow-clear></j-input>
</a-form-item>
</a-col>
<a-col :span="12" style="text-align: right">
<a-button type="primary" preIcon="ant-design:search-outlined" @click="searchQuery2">查询</a-button>
</a-col>
</a-row>
@ -262,12 +268,12 @@
/>
</a-form-item>
</a-col>
<!-- <a-col :lg="6">
<a-form-item name="kcmc">
<template #label><span title="课程名称">课程名称</span></template>
<j-input placeholder="请输入课程名称" v-model:value="queryParam.kcmc" allow-clear ></j-input>
</a-form-item>
</a-col> -->
<a-col :lg="6">
<a-form-item name="kcmc">
<template #label><span title="课程名称" class="xn-title">课程名称</span></template>
<j-input placeholder="请输入课程名称" v-model:value="queryParam.kcmc" allow-clear></j-input>
</a-form-item>
</a-col>
<a-col :span="18" style="text-align: right">
<a-button type="primary" preIcon="ant-design:search-outlined" @click="searchQuery">查询</a-button>
<a-button type="primary" preIcon="ant-design:reload-outlined" @click="searchReset" style="margin-left: 8px">重置</a-button>
@ -469,18 +475,18 @@ function textDown(type, downame) {
}
//
function handleXUanze(record) {
async function handleXUanze(record) {
record.id = null;
console.log('😰record----------', record);
defHttp
await defHttp
.post({
url: '/zjXkxx/zjXkxx/add',
params: record,
})
.then((res) => {
console.log('🤛', res);
xtsuccess();
});
xtsuccess();
}
//
@ -570,6 +576,7 @@ function searchQuery() {
*/
function searchQuery2() {
queryParam2.value.pageNo = paginationProp.value.current;
queryParam2.value.fileShztmc = '审核通过';
defHttp.get({ url: '/xxhbjwxtjxrw/xxhbjwxtjxrw/list', params: { pageNo: paginationProp.value.current, ...queryParam2.value } }).then((res) => {
dataList.value = res.records;
paginationProp.value.total = res.total;