预算书-财政拨款、年度预算表 功能添加 10.31

master
zhc077 3 weeks ago
parent 1cb6dc754d
commit 02af0dbd4a
  1. 42
      jeecg-boot/jeecg-module-demo/src/main/java/org/jeecg/modules/demo/project/controller/ProjectController.java
  2. 70
      jeecg-boot/jeecg-module-demo/src/main/java/org/jeecg/modules/demo/project/dto/DepartExtDto2.java
  3. 87
      jeecgboot-vue3/src/views/projectApplication/kejigongguan/yusuanshu/DepartBaseInfoDemo.vue
  4. 6
      jeecgboot-vue3/src/views/projectApplication/project/Project.api.ts

@ -17,10 +17,13 @@ import org.jeecg.common.system.base.controller.JeecgController;
import org.jeecg.common.system.query.QueryGenerator; import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.system.query.QueryRuleEnum; import org.jeecg.common.system.query.QueryRuleEnum;
import org.jeecg.common.system.vo.DictModel; import org.jeecg.common.system.vo.DictModel;
import org.jeecg.modules.demo.depadminlx.entity.Depadminlx;
import org.jeecg.modules.demo.depadminlx.service.IDepadminlxService;
import org.jeecg.modules.demo.departext.entity.DepartExt; import org.jeecg.modules.demo.departext.entity.DepartExt;
import org.jeecg.modules.demo.departext.service.IDepartExtService; import org.jeecg.modules.demo.departext.service.IDepartExtService;
import org.jeecg.modules.demo.project.dto.BasicInfoDto; import org.jeecg.modules.demo.project.dto.BasicInfoDto;
import org.jeecg.modules.demo.project.dto.DepartExtDto; import org.jeecg.modules.demo.project.dto.DepartExtDto;
import org.jeecg.modules.demo.project.dto.DepartExtDto2;
import org.jeecg.modules.demo.project.dto.ProjectShenBaoDto; import org.jeecg.modules.demo.project.dto.ProjectShenBaoDto;
import org.jeecg.modules.demo.project.entity.Project; import org.jeecg.modules.demo.project.entity.Project;
import org.jeecg.modules.demo.project.service.IProjectService; import org.jeecg.modules.demo.project.service.IProjectService;
@ -78,6 +81,9 @@ public class ProjectController extends JeecgController<Project, IProjectService>
@Autowired @Autowired
private SysBaseApiImpl sysBaseApi; private SysBaseApiImpl sysBaseApi;
@Autowired
private IDepadminlxService iDepadminlxService;
/** /**
* 分页列表查询 * 分页列表查询
* *
@ -214,6 +220,42 @@ public class ProjectController extends JeecgController<Project, IProjectService>
return Result.OK(dto); return Result.OK(dto);
} }
@ApiOperation(value = "预算书-部门基本情况-部门信息", notes = "预算书-部门基本情况-部门信息")
@GetMapping(value = "/getDepartDtoInfo")
public Result<DepartExtDto2> getDepartDtoInfo(Project para, HttpServletRequest req) {
Project project = projectService.getById(para.getId());
SysUser sysUser = iSysUserService.getById(project.getProjectCharger());
SysDepart sysDepart = iSysDepartService.getOne(new LambdaQueryWrapper<SysDepart>().eq(SysDepart::getOrgCode, sysUser.getOrgCode()));
DepartExt departExt = iDepartExtService.getOne(new LambdaQueryWrapper<DepartExt>()
.eq(DepartExt::getDepartId, sysDepart.getId())
.eq(DepartExt::getProjectId, para.getId())
);
Depadminlx depadminlx = iDepadminlxService.getOne(new LambdaQueryWrapper<Depadminlx>().eq(Depadminlx::getDepid, project.getSysOrgCode()));
DepartExtDto2 dto = new DepartExtDto2();
BeanUtils.copyProperties(sysDepart, dto);
BeanUtils.copyProperties(departExt, dto);
BeanUtils.copyProperties(depadminlx, dto);
ProjectType projectType = iProjectTypeService.getById(project.getProjectTypeid());
dto.setAnnualName(projectType.getAnnualName());
List<DictModel> dictModels = sysBaseApi.queryDictItemsByCode("depart_type");
if(ObjectUtil.isNotEmpty(dictModels)){
dictModels.forEach(e->{
if(e.getValue().equals(dto.getType())){
dto.setType(e.getText());
}
});
}
List<DictModel> dictModels2 = sysBaseApi.queryDictItemsByCode("depart_category");
if(ObjectUtil.isNotEmpty(dictModels2)){
dictModels2.forEach(d->{
if(d.getValue().equals(dto.getOrgCategory())){
dto.setOrgCategory(d.getText());
}
});
}
return Result.OK(dto);
}
/** /**
* 添加 * 添加
* *

@ -0,0 +1,70 @@
package org.jeecg.modules.demo.project.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.jeecgframework.poi.excel.annotation.Excel;
/**
* @Description: TODO
* @Author: Z.H.C
* @CreateTime: 2024-10-24 11:09
* @Version: 1.0
*/
@Data
public class DepartExtDto2 extends DepartExtDto {
@Excel(name = "编制数", width = 15)
@ApiModelProperty(value = "编制数")
private String bzs;
/**
* 在职职工人数:
*/
@Excel(name = "在职职工人数:", width = 15)
@ApiModelProperty(value = "在职职工人数:")
private String zzzgrs;
/**
* 中级职称以上研究人员数
*/
@Excel(name = "中级职称以上研究人员数", width = 15)
@ApiModelProperty(value = "中级职称以上研究人员数")
private String zjzcysyjrys;
/**
* 单位联系人姓名
*/
@Excel(name = "单位联系人姓名", width = 15)
@ApiModelProperty(value = "单位联系人姓名")
private String dwlxrxm;
/**
* 单位联系人职称
*/
@Excel(name = "单位联系人职称", width = 15)
@ApiModelProperty(value = "单位联系人职称")
private String dwlxrzc;
/**
* 单位联系人职务
*/
@Excel(name = "单位联系人职务", width = 15)
@ApiModelProperty(value = "单位联系人职务")
private String dwlxrzw;
/**
* 单位联系人电话
*/
@Excel(name = "单位联系人电话", width = 15)
@ApiModelProperty(value = "单位联系人电话")
private String dwlxrdh;
/**
* 单位联系人手机
*/
@Excel(name = "单位联系人手机", width = 15)
@ApiModelProperty(value = "单位联系人手机")
private String dwlxrsj;
/**
* 单位联系人邮箱
*/
@Excel(name = "单位联系人邮箱", width = 15)
@ApiModelProperty(value = "单位联系人邮箱")
private String dwlxryx;
}

@ -2,7 +2,7 @@
<div v-if="falg"> <div v-if="falg">
<PageWrapper> <PageWrapper>
<Description <Description
title="单位基本情况表:" label="单位基本情况表:"
:collapseOptions="{ canExpand: false}" :collapseOptions="{ canExpand: false}"
:column="2" :column="2"
:data="DepartBaseInfoData" :data="DepartBaseInfoData"
@ -32,7 +32,7 @@ import {useModal} from "@/components/Modal";
import { useUserStore } from '/@/store/modules/user'; import { useUserStore } from '/@/store/modules/user';
const { userInfo } = useUserStore(); const { userInfo } = useUserStore();
import {getDepartByProjectId} from './FengMian.api'; import {getDepartDtoByProjectId} from '/@/views/projectApplication/project/Project.api';
import {columns2} from "@/views/cooperationDepart/CooperationDepart.data"; import {columns2} from "@/views/cooperationDepart/CooperationDepart.data";
import {list2} from "@/views/cooperationDepart/CooperationDepart.api"; import {list2} from "@/views/cooperationDepart/CooperationDepart.api";
import {depsbnczColumns2} from "@/views/depsbncz/Depsbncz.data"; import {depsbnczColumns2} from "@/views/depsbncz/Depsbncz.data";
@ -48,11 +48,11 @@ const DepartBaseInfoData: any = {
phone: '', phone: '',
realName: '', realName: '',
email: '', email: '',
title: '', label: '',
}; };
const [registerTimeTable] = useTable({ const [registerTimeTable] = useTable({
title: '单位技术研究资质情况:', label: '单位技术研究资质情况:',
columns: columns2, columns: columns2,
pagination: false, pagination: false,
// dataSource: null, // dataSource: null,
@ -71,7 +71,7 @@ async function listCooperationByProjectId() {
const [depsbnczTable] = useTable({ const [depsbnczTable] = useTable({
title: '上年度(末)主要财务数据', label: '上年度(末)主要财务数据',
columns: depsbnczColumns2, columns: depsbnczColumns2,
pagination: false, pagination: false,
// dataSource: null, // dataSource: null,
@ -137,10 +137,6 @@ const schema: any = [
label: '账号', label: '账号',
field: 'bankNo', field: 'bankNo',
}, },
{
label: '职工总数',
field: 'employeeNum',
},
{ {
label: '上年度研发(R&D)经费(万元)', label: '上年度研发(R&D)经费(万元)',
field: 'lastYearFee', field: 'lastYearFee',
@ -150,6 +146,57 @@ const schema: any = [
field: 'registerDate', field: 'registerDate',
}, },
{ {
label: '预算管理形式',
field: 'ysczbk',
},
{
label: '编制数',
// align: "center",
field: 'bzs'
},
{
label: '在职职工人数:',
// align: "center",
field: 'zzzgrs'
},
{
label: '中级职称以上研究人员数',
// align: "center",
field: 'zjzcysyjrys'
},
{
label: '单位联系人姓名',
align: "center",
field: 'dwlxrxm'
},
{
label: '单位联系人职称',
align: "center",
field: 'dwlxrzc'
},
{
label: '单位联系人职务',
align: "center",
field: 'dwlxrzw'
},
{
label: '单位联系人电话',
align: "center",
field: 'dwlxrdh'
},
{
label: '单位联系人手机',
align: "center",
field: 'dwlxrsj'
},
{
label: '单位联系人邮箱',
align: "center",
field: 'dwlxryx'
},
/*{
label: '联系人', label: '联系人',
field: 'linkmanName', field: 'linkmanName',
}, },
@ -160,21 +207,21 @@ const schema: any = [
{ {
label: '电子邮箱', label: '电子邮箱',
field: 'linkmanEmail' field: 'linkmanEmail'
}, },*/
]; ];
async function getData() { async function getData() {
let params = { let params = {
id: route.query.id, id: route.query.id,
}; };
let obj = await getDepartByProjectId(params); let obj = await getDepartDtoByProjectId(params);
console.log('data', JSON.stringify(obj)) console.log('data', JSON.stringify(obj))
DepartBaseInfoData.annualName = obj.annualName; DepartBaseInfoData.annualName = obj.annualName;
DepartBaseInfoData.departName = obj.departName; DepartBaseInfoData.departName = obj.departName;
DepartBaseInfoData.departNameAbbr = obj.departNameAbbr; DepartBaseInfoData.departNameAbbr = obj.departNameAbbr;
DepartBaseInfoData.linkmanName = obj.linkmanName; // DepartBaseInfoData.linkmanName = obj.linkmanName;
DepartBaseInfoData.linkmanEmail = obj.linkmanEmail; // DepartBaseInfoData.linkmanEmail = obj.linkmanEmail;
DepartBaseInfoData.linkmanPhone = obj.linkmanPhone; // DepartBaseInfoData.linkmanPhone = obj.linkmanPhone;
DepartBaseInfoData.orgCategory = obj.orgCategory; DepartBaseInfoData.orgCategory = obj.orgCategory;
DepartBaseInfoData.address = obj.address; DepartBaseInfoData.address = obj.address;
DepartBaseInfoData.bankNo = obj.bankNo; DepartBaseInfoData.bankNo = obj.bankNo;
@ -185,6 +232,18 @@ async function getData() {
DepartBaseInfoData.mobile = obj.mobile; DepartBaseInfoData.mobile = obj.mobile;
DepartBaseInfoData.type = obj.type; DepartBaseInfoData.type = obj.type;
DepartBaseInfoData.registerDate = obj.registerDate; DepartBaseInfoData.registerDate = obj.registerDate;
DepartBaseInfoData.bzs = obj.bzs;
DepartBaseInfoData.zzzgrs = obj.zzzgrs;
DepartBaseInfoData.zjzcysyjrys = obj.zjzcysyjrys;
DepartBaseInfoData.dwlxrxm = obj.dwlxrxm;
DepartBaseInfoData.dwlxrzc = obj.dwlxrzc;
DepartBaseInfoData.dwlxrzw = obj.dwlxrzw;
DepartBaseInfoData.dwlxrdh = obj.dwlxrdh;
DepartBaseInfoData.dwlxrsj = obj.dwlxrsj;
DepartBaseInfoData.dwlxryx = obj.dwlxryx;
DepartBaseInfoData.ysczbk = '预算管理形式';
console.log('DepartBaseInfoData', JSON.stringify(DepartBaseInfoData)) console.log('DepartBaseInfoData', JSON.stringify(DepartBaseInfoData))
falg.value = true falg.value = true
} }

@ -6,7 +6,7 @@ const {createConfirm} = useMessage();
enum Api { enum Api {
list = '/project/project/list', list = '/project/project/list',
projectType = '/projectType/getProjectTypeList', projectType = '/projectType/getProjectTypeList',
departBaseInfo = '/projectType/getDepartBaseInfo', departDtoInfo = '/project/project/getDepartDtoInfo',
save = '/project/project/add', save = '/project/project/add',
edit = '/project/project/edit', edit = '/project/project/edit',
deleteOne = '/project/project/delete', deleteOne = '/project/project/delete',
@ -15,6 +15,10 @@ enum Api {
exportXls = '/project/project/exportXls', exportXls = '/project/project/exportXls',
} }
export const getDepartDtoByProjectId = (params) =>
defHttp.get({url: Api.departDtoInfo, params});
/** /**
* 导出api * 导出api
* @param params * @param params

Loading…
Cancel
Save