明树Git Lab
Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in
Toggle navigation
J
jt_backend
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
zengfanpei
jt_backend
Commits
73d38125
Commit
73d38125
authored
Mar 09, 2026
by
zfp1
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update
parent
1a932ab6
Pipeline
#108123
passed with stage
in 23 seconds
Changes
4
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
79 additions
and
22 deletions
+79
-22
projectController.js
controller/projectController.js
+4
-4
project.js
db/model/jt/project.js
+1
-1
projectBjtj.js
db/model/jt/projectBjtj.js
+2
-2
tzXmtc.js
db/model/jt/tzXmtc.js
+72
-15
No files found.
controller/projectController.js
View file @
73d38125
...
@@ -361,7 +361,7 @@ async function approvalLixiang(req, res, next) {
...
@@ -361,7 +361,7 @@ async function approvalLixiang(req, res, next) {
await
DB
.
FlowRecord
.
create
({
await
DB
.
FlowRecord
.
create
({
userId
:
req
.
user
.
id
,
userId
:
req
.
user
.
id
,
actionName
:
'立项审批通过'
,
actionName
:
'立项审批通过'
,
projectId
:
pro
ject
.
id
,
projectId
:
pro
Info
.
id
,
content
:
req
.
body
.
approvalMessage
,
content
:
req
.
body
.
approvalMessage
,
});
});
}
else
{
}
else
{
...
@@ -370,7 +370,7 @@ async function approvalLixiang(req, res, next) {
...
@@ -370,7 +370,7 @@ async function approvalLixiang(req, res, next) {
await
DB
.
FlowRecord
.
create
({
await
DB
.
FlowRecord
.
create
({
userId
:
req
.
user
.
id
,
userId
:
req
.
user
.
id
,
actionName
:
'立项审批未通过'
,
actionName
:
'立项审批未通过'
,
projectId
:
pro
ject
.
id
,
projectId
:
pro
Info
.
id
,
content
:
req
.
body
.
approvalMessage
,
content
:
req
.
body
.
approvalMessage
,
});
});
}
}
...
@@ -612,7 +612,7 @@ async function approvalJuece(req, res, next) {
...
@@ -612,7 +612,7 @@ async function approvalJuece(req, res, next) {
await
DB
.
FlowRecord
.
create
({
await
DB
.
FlowRecord
.
create
({
userId
:
req
.
user
.
id
,
userId
:
req
.
user
.
id
,
actionName
:
'决策审批通过'
,
actionName
:
'决策审批通过'
,
projectId
:
pro
ject
.
id
,
projectId
:
pro
Info
.
id
,
content
:
req
.
body
.
approvalMessage
,
content
:
req
.
body
.
approvalMessage
,
});
});
}
else
{
}
else
{
...
@@ -621,7 +621,7 @@ async function approvalJuece(req, res, next) {
...
@@ -621,7 +621,7 @@ async function approvalJuece(req, res, next) {
await
DB
.
FlowRecord
.
create
({
await
DB
.
FlowRecord
.
create
({
userId
:
req
.
user
.
id
,
userId
:
req
.
user
.
id
,
actionName
:
'决策审批未通过'
,
actionName
:
'决策审批未通过'
,
projectId
:
pro
ject
.
id
,
projectId
:
pro
Info
.
id
,
content
:
req
.
body
.
approvalMessage
,
content
:
req
.
body
.
approvalMessage
,
});
});
}
}
...
...
db/model/jt/project.js
View file @
73d38125
...
@@ -327,7 +327,7 @@ const Project = sequelize.define('Project', {
...
@@ -327,7 +327,7 @@ const Project = sequelize.define('Project', {
Project
.
sync
({
Project
.
sync
({
// force: false,
// force: false,
// force: true ,//会删除已存在表并重新创建
// force: true ,//会删除已存在表并重新创建
alter
:
true
//
alter: true
})
})
.
then
(()
=>
{
.
then
(()
=>
{
console
.
log
(
'Project 表同步成功'
);
console
.
log
(
'Project 表同步成功'
);
...
...
db/model/jt/projectBjtj.js
View file @
73d38125
...
@@ -107,9 +107,9 @@ const projectBjtj = sequelize.define('projectBjtj', {
...
@@ -107,9 +107,9 @@ const projectBjtj = sequelize.define('projectBjtj', {
// 同步模型到数据库(创建表)
// 同步模型到数据库(创建表)
projectBjtj
.
sync
({
projectBjtj
.
sync
({
force
:
false
,
//
force: false,
// force: true ,//会删除已存在表并重新创建
// force: true ,//会删除已存在表并重新创建
//
alter: true
alter
:
true
})
})
.
then
(()
=>
{
.
then
(()
=>
{
console
.
log
(
'projectBjtj 表同步成功'
);
console
.
log
(
'projectBjtj 表同步成功'
);
...
...
db/model/jt/tzXmtc.js
View file @
73d38125
const
{
DataTypes
}
=
require
(
'sequelize'
);
const
{
DataTypes
,
STRING
}
=
require
(
'sequelize'
);
const
sequelize
=
require
(
'../index'
);
const
sequelize
=
require
(
'../index'
);
const
moment
=
require
(
'moment'
);
const
moment
=
require
(
'moment'
);
...
@@ -9,26 +9,83 @@ const TzXmtc = sequelize.define('TzXmtc', {
...
@@ -9,26 +9,83 @@ const TzXmtc = sequelize.define('TzXmtc', {
primaryKey
:
true
,
primaryKey
:
true
,
autoIncrement
:
true
autoIncrement
:
true
},
},
/* -------------------TODO: 缺少内容------------------------------------- */
djlx
:
{
type
:
DataTypes
.
STRING
,
comment
:
"等记类型"
},
projectName
:
{
projectName
:
{
type
:
DataTypes
.
STRING
,
type
:
DataTypes
.
STRING
,
comment
:
"项目名称"
,
comment
:
"项目名称"
,
},
},
tcfs
:
{
projectCode
:
{
type
:
DataTypes
.
STRING
,
allowNull
:
true
,
comment
:
"项目编号"
,
_mark
:
"lixiang"
},
type
:
DataTypes
.
STRING
,
sbdw
:
{
type
:
DataTypes
.
STRING
,
allowNull
:
true
,
comment
:
"申报单位"
,
_mark
:
'juece'
},
//TODO:下拉选择公司名称,这个需要公司管理的数据
comment
:
"退出方式"
ssejqy
:
{
type
:
DataTypes
.
STRING
,
allowNull
:
true
,
comment
:
"所属二级企业"
,
_mark
:
'juece'
},
//TODO:下拉选择公司名称,这个需要公司管理的数据
},
tzsxyjfl
:
{
type
:
DataTypes
.
STRING
(
10
),
allowNull
:
true
,
comment
:
"投资属性的一级分类"
,
zjType
:
'danxuan'
,
_mark
:
"lixiang"
},
sjtcrq
:
{
tzsxejfl
:
{
type
:
DataTypes
.
STRING
(
10
),
allowNull
:
true
,
comment
:
"投资属性的二级分类"
,
zjType
:
'danxuan'
,
_mark
:
"lixiang"
},
type
:
DataTypes
.
DATE
,
tzbk
:
{
type
:
DataTypes
.
STRING
(
10
),
allowNull
:
true
,
comment
:
"投资板块"
,
zjType
:
'danxuan'
,
_mark
:
"lixiang"
},
comment
:
"实际退出日期"
jnw
:
{
type
:
DataTypes
.
STRING
(
10
),
allowNull
:
true
,
comment
:
"境内/外"
,
zjType
:
'danxuan'
,
_mark
:
"lixiang"
},
},
cwbblx
:
{
type
:
DataTypes
.
STRING
(
10
),
allowNull
:
true
,
comment
:
"财务报表类型"
,
zjType
:
'danxuan'
,
_mark
:
"lixiang"
},
tcwj
:
{
sfybb
:
{
type
:
DataTypes
.
STRING
(
10
),
comment
:
"是否已报备"
},
type
:
DataTypes
.
JSON
,
xmgsqc
:
{
type
:
DataTypes
.
STRING
(
100
),
comment
:
"是否已报备"
},
comment
:
"退出相关文件"
xmjsqy
:
{
type
:
DataTypes
.
INTEGER
,
allowNull
:
true
,
comment
:
"项目建设期(月)"
,
_mark
:
"lixiang"
},
},
yynxn
:
{
type
:
DataTypes
.
INTEGER
,
allowNull
:
true
,
comment
:
"运营年限(年)"
,
_mark
:
"lixiang"
},
xmkgsjyj
:
{
type
:
DataTypes
.
DATE
,
allowNull
:
true
,
comment
:
"项目开工时间(预计)"
},
xmjgsjyj
:
{
type
:
DataTypes
.
DATE
,
allowNull
:
true
,
comment
:
"项目交工时间(预计)"
},
tcsqrq
:
{
type
:
DataTypes
.
DATE
,
allowNull
:
true
,
comment
:
"退出申请日期"
},
tcrq
:
{
type
:
DataTypes
.
DATE
,
allowNull
:
true
,
comment
:
"退出日期"
},
tblxr
:
{
type
:
DataTypes
.
STRING
(
100
),
comment
:
"填报联系人"
},
tblxrdh
:
{
type
:
DataTypes
.
STRING
(
20
),
comment
:
"填报联系人电话"
},
jsnrjgm
:
{
type
:
DataTypes
.
TEXT
,
allowNull
:
true
,
comment
:
"建设内容及规模----项目的主要建设内容"
,
_mark
:
"lixiang"
},
/// 我方出资人及持股比例,股东信息表数据
dqjzc
:
{
type
:
DataTypes
.
DECIMAL
(
20
,
8
),
allowNull
:
true
,
comment
:
"当前净资产"
},
xmtzxy
:
{
type
:
DataTypes
.
JSON
,
comment
:
"项目投资效益,不建表,json处理"
},
zjgc
:
{
type
:
DataTypes
.
JSON
,
comment
:
"资金构成"
},
//财务评价指标
jcxmtznbsylsq
:
{
type
:
DataTypes
.
DECIMAL
(
5
,
2
),
allowNull
:
true
,
comment
:
"决策:项目投资内部收益率(税前):"
},
xmzbjnbsyl
:
{
type
:
DataTypes
.
DECIMAL
(
5
,
2
),
allowNull
:
true
,
comment
:
"项目资本金内部收益率:"
},
xmtzhsq
:
{
type
:
DataTypes
.
STRING
,
allowNull
:
true
,
comment
:
"项目投资回收期(税前)"
},
sjycxmqtznbsylsq
:
{
type
:
DataTypes
.
DECIMAL
(
5
,
2
),
allowNull
:
true
,
comment
:
"实际:预测项目全投资内部收益率(税前)"
},
ycxmzbjnbsylsh
:
{
type
:
DataTypes
.
DECIMAL
(
5
,
2
),
allowNull
:
true
,
comment
:
"预测项目资本金内部收益率(税后)"
},
//项目中止
zzyy
:
{
type
:
DataTypes
.
STRING
,
comment
:
"中止原因"
},
zzxxyy
:
{
type
:
DataTypes
.
TEXT
,
comment
:
"中止详细原因"
},
qtsm
:
{
type
:
DataTypes
.
TEXT
,
comment
:
"其他说明"
},
xmzzbg
:
{
type
:
DataTypes
.
JSON
},
qtxgzccl
:
{
type
:
DataTypes
.
JSON
},
bpbbwjlj
:
{
type
:
DataTypes
.
JSON
},
//项目重启
jhcqsj
:
{
type
:
DataTypes
.
DATE
,
allowNull
:
true
,
comment
:
"计划重启时间"
},
cqyy
:
{
type
:
DataTypes
.
STRING
,
comment
:
"重启原因"
},
// qtsm: {type: DataTypes.TEXT, comment: "其他说明 --见上"},
xmcqbg
:
{
type
:
DataTypes
.
JSON
},
jcwj
:
{
type
:
DataTypes
.
JSON
},
// bpbbwjlj: {type: DataTypes.JSON --见上},
//项目终止
zhongzyy
:
{
type
:
DataTypes
.
STRING
,
comment
:
"终止原因"
},
zhongzyyxxfx
:
{
type
:
DataTypes
.
TEXT
,
comment
:
"终止原因详细分析"
},
xmssxz
:
{
type
:
DataTypes
.
TEXT
,
comment
:
"项目实施现状"
},
knfsdfljfhjjss
:
{
type
:
DataTypes
.
TEXT
,
comment
:
"可能发生的法律纠纷和经济损失"
},
// qtsm: {type: DataTypes.TEXT, comment: "其他说明 --见上"},
xmzhongzbg
:
{
type
:
DataTypes
.
JSON
},
qtxgzccl
:
{
type
:
DataTypes
.
JSON
},
bpbbwjlj
:
{
type
:
DataTypes
.
JSON
},
//项目退出
zmjz
:
{
type
:
DataTypes
.
DECIMAL
(
20
,
8
),
allowNull
:
true
,
comment
:
"账面净值"
},
tcphsr
:
{
type
:
DataTypes
.
DECIMAL
(
20
,
8
),
allowNull
:
true
,
comment
:
"退出盘活收入"
},
ysdtcphzj
:
{
type
:
DataTypes
.
DECIMAL
(
20
,
8
),
allowNull
:
true
,
comment
:
"已收到退出/盘活资金"
},
yjwcsj
:
{
type
:
DataTypes
.
DATE
,
allowNull
:
true
,
comment
:
"预计完成时间"
},
czdwt
:
{
type
:
DataTypes
.
TEXT
,
comment
:
"存在的问题"
},
xxbgzcs
:
{
type
:
DataTypes
.
TEXT
,
comment
:
"下一步工作措施"
},
tcyy
:
{
type
:
DataTypes
.
STRING
,
comment
:
"退出原因"
},
tcyyxxfx
:
{
type
:
DataTypes
.
TEXT
,
comment
:
"推出原因详细分析"
},
// xmssxz: {--见上"},
// knfsdfljfhjjss: {--见上"},
// qtsm: {type: DataTypes.TEXT, comment: "其他说明 --见上"},
projectId
:
{
projectId
:
{
type
:
DataTypes
.
INTEGER
,
type
:
DataTypes
.
INTEGER
,
...
@@ -39,7 +96,7 @@ const TzXmtc = sequelize.define('TzXmtc', {
...
@@ -39,7 +96,7 @@ const TzXmtc = sequelize.define('TzXmtc', {
defaultValue
:
0
,
defaultValue
:
0
,
comment
:
"0 正常 1 删除"
comment
:
"0 正常 1 删除"
},
},
creator
:
{
creator
:
{
type
:
DataTypes
.
INTEGER
,
type
:
DataTypes
.
INTEGER
,
comment
:
"创建人"
comment
:
"创建人"
},
},
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment