Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
W
web-project
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
紫光云
web-project
Commits
43b1ca85
Commit
43b1ca85
authored
Jun 26, 2024
by
mengzixuan
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/develop' into develop
parents
e1afce35
8b548b73
Changes
19
Hide whitespace changes
Inline
Side-by-side
Showing
19 changed files
with
172 additions
and
98 deletions
+172
-98
index.cjs
internal/eslint-config/dist/index.cjs
+3
-3
index.d.ts
internal/eslint-config/dist/index.d.ts
+2
-2
index.mjs
internal/eslint-config/dist/index.mjs
+4
-4
strict.cjs
internal/eslint-config/dist/strict.cjs
+3
-3
strict.d.ts
internal/eslint-config/dist/strict.d.ts
+2
-2
strict.mjs
internal/eslint-config/dist/strict.mjs
+4
-4
index.cjs
internal/stylelint-config/dist/index.cjs
+3
-3
index.d.ts
internal/stylelint-config/dist/index.d.ts
+2
-2
index.mjs
internal/stylelint-config/dist/index.mjs
+4
-4
index.cjs
internal/vite-config/dist/index.cjs
+3
-3
index.d.ts
internal/vite-config/dist/index.d.ts
+1
-1
index.mjs
internal/vite-config/dist/index.mjs
+4
-4
contract.ts
src/api/contract/contract.ts
+13
-0
projectlibraryModel.vue
src/components/projectlibraryModel/projectlibraryModel.vue
+1
-1
biddingManagementEdit.vue
src/views/biddingManagement/biddingManagementEdit.vue
+26
-24
biddingPlanEdit.vue
src/views/biddingPlan/biddingPlanEdit.vue
+35
-34
engineeringprojectModel.vue
...oject/engineeringProjectModel/engineeringprojectModel.vue
+1
-1
contract.vue
src/views/project/tabs/contract.vue
+27
-1
contractDrawer.vue
src/views/project/tabs/drawer/contractDrawer.vue
+34
-2
No files found.
internal/eslint-config/dist/index.cjs
View file @
43b1ca85
module.exports = require("
D:/work
/web-progeam/node_modules/.pnpm/jiti@1.21.0/node_modules/jiti/lib/index.js")(null, {
module.exports = require("
/Users/yanjiaxu/紫光云
/web-progeam/node_modules/.pnpm/jiti@1.21.0/node_modules/jiti/lib/index.js")(null, {
"esmResolve": true,
"esmResolve": true,
"interopDefault": true,
"interopDefault": true,
"alias": {
"alias": {
"@vben/eslint-config": "
D:/work
/web-progeam/internal/eslint-config"
"@vben/eslint-config": "
/Users/yanjiaxu/紫光云
/web-progeam/internal/eslint-config"
}
}
})("D:/work/web-progeam/internal/eslint-config/src/index.ts")
})("/Users/yanjiaxu/紫光云/web-progeam/internal/eslint-config/src/index.ts")
\ No newline at end of file
\ No newline at end of file
internal/eslint-config/dist/index.d.ts
View file @
43b1ca85
export
*
from
"D:/work/web-progeam/internal/eslint-config/src/index"
;
export
*
from
"/Users/yanjiaxu/紫光云/web-progeam/internal/eslint-config/src/index"
;
export
{
default
}
from
"D:/work/web-progeam/internal/eslint-config/src/index"
;
export
{
default
}
from
"/Users/yanjiaxu/紫光云/web-progeam/internal/eslint-config/src/index"
;
\ No newline at end of file
\ No newline at end of file
internal/eslint-config/dist/index.mjs
View file @
43b1ca85
import
jiti
from
"file:///
D:/work
/web-progeam/node_modules/.pnpm/jiti@1.21.0/node_modules/jiti/lib/index.js"
;
import
jiti
from
"file:///
Users/yanjiaxu/%E7%B4%AB%E5%85%89%E4%BA%91
/web-progeam/node_modules/.pnpm/jiti@1.21.0/node_modules/jiti/lib/index.js"
;
/** @type {import("
D:/work
/web-progeam/internal/eslint-config/src/index")} */
/** @type {import("
/Users/yanjiaxu/紫光云
/web-progeam/internal/eslint-config/src/index")} */
const
_module
=
jiti
(
null
,
{
const
_module
=
jiti
(
null
,
{
"esmResolve"
:
true
,
"esmResolve"
:
true
,
"interopDefault"
:
true
,
"interopDefault"
:
true
,
"alias"
:
{
"alias"
:
{
"@vben/eslint-config"
:
"
D:/work
/web-progeam/internal/eslint-config"
"@vben/eslint-config"
:
"
/Users/yanjiaxu/紫光云
/web-progeam/internal/eslint-config"
}
}
})(
"
D:/work
/web-progeam/internal/eslint-config/src/index.ts"
);
})(
"
/Users/yanjiaxu/紫光云
/web-progeam/internal/eslint-config/src/index.ts"
);
export
default
_module
;
export
default
_module
;
\ No newline at end of file
internal/eslint-config/dist/strict.cjs
View file @
43b1ca85
module.exports = require("
D:/work
/web-progeam/node_modules/.pnpm/jiti@1.21.0/node_modules/jiti/lib/index.js")(null, {
module.exports = require("
/Users/yanjiaxu/紫光云
/web-progeam/node_modules/.pnpm/jiti@1.21.0/node_modules/jiti/lib/index.js")(null, {
"esmResolve": true,
"esmResolve": true,
"interopDefault": true,
"interopDefault": true,
"alias": {
"alias": {
"@vben/eslint-config": "
D:/work
/web-progeam/internal/eslint-config"
"@vben/eslint-config": "
/Users/yanjiaxu/紫光云
/web-progeam/internal/eslint-config"
}
}
})("D:/work/web-progeam/internal/eslint-config/src/strict.ts")
})("/Users/yanjiaxu/紫光云/web-progeam/internal/eslint-config/src/strict.ts")
\ No newline at end of file
\ No newline at end of file
internal/eslint-config/dist/strict.d.ts
View file @
43b1ca85
export
*
from
"D:/work/web-progeam/internal/eslint-config/src/strict"
;
export
*
from
"/Users/yanjiaxu/紫光云/web-progeam/internal/eslint-config/src/strict"
;
export
{
default
}
from
"D:/work/web-progeam/internal/eslint-config/src/strict"
;
export
{
default
}
from
"/Users/yanjiaxu/紫光云/web-progeam/internal/eslint-config/src/strict"
;
\ No newline at end of file
\ No newline at end of file
internal/eslint-config/dist/strict.mjs
View file @
43b1ca85
import
jiti
from
"file:///
D:/work
/web-progeam/node_modules/.pnpm/jiti@1.21.0/node_modules/jiti/lib/index.js"
;
import
jiti
from
"file:///
Users/yanjiaxu/%E7%B4%AB%E5%85%89%E4%BA%91
/web-progeam/node_modules/.pnpm/jiti@1.21.0/node_modules/jiti/lib/index.js"
;
/** @type {import("
D:/work
/web-progeam/internal/eslint-config/src/strict")} */
/** @type {import("
/Users/yanjiaxu/紫光云
/web-progeam/internal/eslint-config/src/strict")} */
const
_module
=
jiti
(
null
,
{
const
_module
=
jiti
(
null
,
{
"esmResolve"
:
true
,
"esmResolve"
:
true
,
"interopDefault"
:
true
,
"interopDefault"
:
true
,
"alias"
:
{
"alias"
:
{
"@vben/eslint-config"
:
"
D:/work
/web-progeam/internal/eslint-config"
"@vben/eslint-config"
:
"
/Users/yanjiaxu/紫光云
/web-progeam/internal/eslint-config"
}
}
})(
"
D:/work
/web-progeam/internal/eslint-config/src/strict.ts"
);
})(
"
/Users/yanjiaxu/紫光云
/web-progeam/internal/eslint-config/src/strict.ts"
);
export
default
_module
;
export
default
_module
;
\ No newline at end of file
internal/stylelint-config/dist/index.cjs
View file @
43b1ca85
module.exports = require("
D:/work
/web-progeam/node_modules/.pnpm/jiti@1.21.0/node_modules/jiti/lib/index.js")(null, {
module.exports = require("
/Users/yanjiaxu/紫光云
/web-progeam/node_modules/.pnpm/jiti@1.21.0/node_modules/jiti/lib/index.js")(null, {
"esmResolve": true,
"esmResolve": true,
"interopDefault": true,
"interopDefault": true,
"alias": {
"alias": {
"@vben/stylelint-config": "
D:/work
/web-progeam/internal/stylelint-config"
"@vben/stylelint-config": "
/Users/yanjiaxu/紫光云
/web-progeam/internal/stylelint-config"
}
}
})("D:/work/web-progeam/internal/stylelint-config/src/index.ts")
})("/Users/yanjiaxu/紫光云/web-progeam/internal/stylelint-config/src/index.ts")
\ No newline at end of file
\ No newline at end of file
internal/stylelint-config/dist/index.d.ts
View file @
43b1ca85
export
*
from
"D:/work/web-progeam/internal/stylelint-config/src/index"
;
export
*
from
"/Users/yanjiaxu/紫光云/web-progeam/internal/stylelint-config/src/index"
;
export
{
default
}
from
"D:/work/web-progeam/internal/stylelint-config/src/index"
;
export
{
default
}
from
"/Users/yanjiaxu/紫光云/web-progeam/internal/stylelint-config/src/index"
;
\ No newline at end of file
\ No newline at end of file
internal/stylelint-config/dist/index.mjs
View file @
43b1ca85
import
jiti
from
"file:///
D:/work
/web-progeam/node_modules/.pnpm/jiti@1.21.0/node_modules/jiti/lib/index.js"
;
import
jiti
from
"file:///
Users/yanjiaxu/%E7%B4%AB%E5%85%89%E4%BA%91
/web-progeam/node_modules/.pnpm/jiti@1.21.0/node_modules/jiti/lib/index.js"
;
/** @type {import("
D:/work
/web-progeam/internal/stylelint-config/src/index")} */
/** @type {import("
/Users/yanjiaxu/紫光云
/web-progeam/internal/stylelint-config/src/index")} */
const
_module
=
jiti
(
null
,
{
const
_module
=
jiti
(
null
,
{
"esmResolve"
:
true
,
"esmResolve"
:
true
,
"interopDefault"
:
true
,
"interopDefault"
:
true
,
"alias"
:
{
"alias"
:
{
"@vben/stylelint-config"
:
"
D:/work
/web-progeam/internal/stylelint-config"
"@vben/stylelint-config"
:
"
/Users/yanjiaxu/紫光云
/web-progeam/internal/stylelint-config"
}
}
})(
"
D:/work
/web-progeam/internal/stylelint-config/src/index.ts"
);
})(
"
/Users/yanjiaxu/紫光云
/web-progeam/internal/stylelint-config/src/index.ts"
);
export
default
_module
;
export
default
_module
;
\ No newline at end of file
internal/vite-config/dist/index.cjs
View file @
43b1ca85
module.exports = require("
D:/work
/web-progeam/node_modules/.pnpm/jiti@1.21.0/node_modules/jiti/lib/index.js")(null, {
module.exports = require("
/Users/yanjiaxu/紫光云
/web-progeam/node_modules/.pnpm/jiti@1.21.0/node_modules/jiti/lib/index.js")(null, {
"esmResolve": true,
"esmResolve": true,
"interopDefault": true,
"interopDefault": true,
"alias": {
"alias": {
"@vben/vite-config": "
D:/work
/web-progeam/internal/vite-config"
"@vben/vite-config": "
/Users/yanjiaxu/紫光云
/web-progeam/internal/vite-config"
}
}
})("D:/work/web-progeam/internal/vite-config/src/index.ts")
})("/Users/yanjiaxu/紫光云/web-progeam/internal/vite-config/src/index.ts")
\ No newline at end of file
\ No newline at end of file
internal/vite-config/dist/index.d.ts
View file @
43b1ca85
export
*
from
"
D:/work
/web-progeam/internal/vite-config/src/index"
;
export
*
from
"
/Users/yanjiaxu/紫光云
/web-progeam/internal/vite-config/src/index"
;
internal/vite-config/dist/index.mjs
View file @
43b1ca85
import
jiti
from
"file:///
D:/work
/web-progeam/node_modules/.pnpm/jiti@1.21.0/node_modules/jiti/lib/index.js"
;
import
jiti
from
"file:///
Users/yanjiaxu/%E7%B4%AB%E5%85%89%E4%BA%91
/web-progeam/node_modules/.pnpm/jiti@1.21.0/node_modules/jiti/lib/index.js"
;
/** @type {import("
D:/work
/web-progeam/internal/vite-config/src/index")} */
/** @type {import("
/Users/yanjiaxu/紫光云
/web-progeam/internal/vite-config/src/index")} */
const
_module
=
jiti
(
null
,
{
const
_module
=
jiti
(
null
,
{
"esmResolve"
:
true
,
"esmResolve"
:
true
,
"interopDefault"
:
true
,
"interopDefault"
:
true
,
"alias"
:
{
"alias"
:
{
"@vben/vite-config"
:
"
D:/work
/web-progeam/internal/vite-config"
"@vben/vite-config"
:
"
/Users/yanjiaxu/紫光云
/web-progeam/internal/vite-config"
}
}
})(
"
D:/work
/web-progeam/internal/vite-config/src/index.ts"
);
})(
"
/Users/yanjiaxu/紫光云
/web-progeam/internal/vite-config/src/index.ts"
);
export
const
defineApplicationConfig
=
_module
.
defineApplicationConfig
;
export
const
defineApplicationConfig
=
_module
.
defineApplicationConfig
;
export
const
definePackageConfig
=
_module
.
definePackageConfig
;
export
const
definePackageConfig
=
_module
.
definePackageConfig
;
\ No newline at end of file
src/api/contract/contract.ts
View file @
43b1ca85
...
@@ -14,10 +14,23 @@ enum Api {
...
@@ -14,10 +14,23 @@ enum Api {
GetGroupList
=
'/pro/settlement/contract-list'
,
GetGroupList
=
'/pro/settlement/contract-list'
,
//新增合同
//新增合同
Add
=
'/pro/settlement/add-contract'
,
Add
=
'/pro/settlement/add-contract'
,
DeleteProject
=
'/pro/contract/del'
,
UpdateProject
=
'/pro/contract/edit'
,
}
}
export
const
getContractListPage
=
(
params
?:
ProjectParams
)
=>
export
const
getContractListPage
=
(
params
?:
ProjectParams
)
=>
defHttp
.
post
<
ProjectModel
>
({
url
:
Api
.
GetList
,
data
:
params
});
defHttp
.
post
<
ProjectModel
>
({
url
:
Api
.
GetList
,
data
:
params
});
export
const
deleteItem
=
(
params
?:
any
)
=>
defHttp
.
delete
<
ProjectModel
>
({
url
:
Api
.
DeleteProject
,
params
});
export
const
updateItem
=
(
params
?:
any
)
=>
defHttp
.
post
<
ProjectModel
>
({
url
:
Api
.
UpdateProject
,
data
:
params
,
headers
:
{
'Content-Type'
:
'application/json;charset=UTF-8'
,
},
});
//查询下拉列表
//查询下拉列表
export
const
getProjectSelect
=
(
params
?:
any
)
=>
export
const
getProjectSelect
=
(
params
?:
any
)
=>
defHttp
.
get
<
ProjectListItem
>
({
url
:
Api
.
ProjectSelect
,
params
});
defHttp
.
get
<
ProjectListItem
>
({
url
:
Api
.
ProjectSelect
,
params
});
...
...
src/components/projectlibraryModel/projectlibraryModel.vue
View file @
43b1ca85
...
@@ -57,7 +57,7 @@
...
@@ -57,7 +57,7 @@
emit
(
'close'
,
getSelectRows
());
emit
(
'close'
,
getSelectRows
());
}
}
const
emit
=
defineEmits
([
'close'
]);
const
emit
=
defineEmits
([
'close'
,
'register'
]);
function
handleVisibleChange
(
v
)
{
function
handleVisibleChange
(
v
)
{
clearSelectedRowKeys
();
clearSelectedRowKeys
();
...
...
src/views/biddingManagement/biddingManagementEdit.vue
View file @
43b1ca85
...
@@ -12,19 +12,20 @@
...
@@ -12,19 +12,20 @@
<a-button
type=
"default"
@
click=
"router.back()"
>
返回
</a-button>
<a-button
type=
"default"
@
click=
"router.back()"
>
返回
</a-button>
</
template
>
</
template
>
<PageCard
v-for=
"(item, index) in tabsFormSchema"
:key=
"index"
:title=
"item.name"
>
<
template
v-for=
"(item, index) in tabsFormSchema"
>
<
template
#
right
>
<PageCard
v-if=
"item.show"
:key=
"index"
:title=
"item.name"
>
<a-button
<template
#
right
>
type=
"text"
<a-button
preIcon=
"ant-design:delete-outlined"
v-if=
"!disabled"
danger
type=
"text"
v-if=
"!disabled"
preIcon=
"ant-design:delete-outlined"
@
click=
"deleteItem(index)"
danger
>
@
click=
"deleteItem(index)"
</a-button>
/>
</
template
>
</
template
>
<BasicForm
:loading=
"loading"
@
register=
"item.Form[0]"
/>
<BasicForm
:loading=
"loading"
@
register=
"item.Form[0]"
/>
</PageCard>
</PageCard>
</template>
<a-button
v-if=
"!disabled"
type=
"dashed"
@
click=
"add"
preIcon=
"ei:plus"
>
<a-button
v-if=
"!disabled"
type=
"dashed"
@
click=
"add"
preIcon=
"ei:plus"
>
从项目库导入
从项目库导入
...
@@ -100,6 +101,7 @@
...
@@ -100,6 +101,7 @@
tabsFormSchema
.
push
(
item
);
tabsFormSchema
.
push
(
item
);
formData
.
value
.
tenderPlanPro
.
push
({
formData
.
value
.
tenderPlanPro
.
push
({
id
:
source
.
id
,
id
:
source
.
id
,
show
:
true
,
proId
:
source
.
proId
,
proId
:
source
.
proId
,
tenderId
:
source
.
tenderId
,
tenderId
:
source
.
tenderId
,
});
});
...
@@ -114,6 +116,7 @@
...
@@ -114,6 +116,7 @@
});
});
type
TabsFormType
=
{
type
TabsFormType
=
{
name
:
string
;
name
:
string
;
show
?:
boolean
;
forceRender
?:
boolean
;
forceRender
?:
boolean
;
Form
:
UseFormReturnType
;
Form
:
UseFormReturnType
;
};
};
...
@@ -143,6 +146,7 @@
...
@@ -143,6 +146,7 @@
const
item
=
{
const
item
=
{
name
:
'序号'
+
(
tabsFormSchema
.
length
+
1
),
name
:
'序号'
+
(
tabsFormSchema
.
length
+
1
),
forceRender
:
true
,
forceRender
:
true
,
show
:
true
,
Form
:
useForm
(
Object
.
assign
({
schemas
:
formSchema
},
baseFormConfig
)
as
FormProps
),
Form
:
useForm
(
Object
.
assign
({
schemas
:
formSchema
},
baseFormConfig
)
as
FormProps
),
};
};
const
{
setFieldsValue
}
=
item
.
Form
[
1
];
const
{
setFieldsValue
}
=
item
.
Form
[
1
];
...
@@ -169,12 +173,8 @@
...
@@ -169,12 +173,8 @@
// formData.value.tenderPlanPro.splice(index, 1);
// formData.value.tenderPlanPro.splice(index, 1);
// tabsFormSchema.splice(index, 1);
// tabsFormSchema.splice(index, 1);
// loadingRef.value = false;
// loadingRef.value = false;
// } else {
console
.
log
(
tabsFormSchema
);
tabsFormSchema
[
index
].
show
=
false
;
console
.
log
(
index
);
formData
.
value
.
tenderPlanPro
.
splice
(
index
,
1
);
tabsFormSchema
.
splice
(
index
,
1
);
console
.
log
(
tabsFormSchema
);
// loadingRef.value = false;
// loadingRef.value = false;
// }
// }
}
}
...
@@ -193,11 +193,13 @@
...
@@ -193,11 +193,13 @@
try
{
try
{
for
(
let
i
=
0
;
i
<
tabsFormSchema
.
length
;
i
++
)
{
for
(
let
i
=
0
;
i
<
tabsFormSchema
.
length
;
i
++
)
{
let
item
=
tabsFormSchema
[
i
];
let
item
=
tabsFormSchema
[
i
];
const
{
validate
,
getFieldsValue
}
=
item
.
Form
[
1
];
if
(
item
.
show
)
{
await
validate
();
const
{
validate
,
getFieldsValue
}
=
item
.
Form
[
1
];
let
res
=
getFieldsValue
();
await
validate
();
formData
.
value
.
tenderPlanPro
[
i
]
=
deepMerge
(
formData
.
value
.
tenderPlanPro
[
i
],
res
);
let
res
=
getFieldsValue
();
console
.
log
(
formData
.
value
.
tenderPlanPro
);
formData
.
value
.
tenderPlanPro
[
i
]
=
deepMerge
(
formData
.
value
.
tenderPlanPro
[
i
],
res
);
console
.
log
(
formData
.
value
.
tenderPlanPro
);
}
}
}
formData
.
value
.
proNumber
=
formData
.
value
.
tenderPlanPro
.
Length
;
formData
.
value
.
proNumber
=
formData
.
value
.
tenderPlanPro
.
Length
;
...
...
src/views/biddingPlan/biddingPlanEdit.vue
View file @
43b1ca85
...
@@ -11,20 +11,20 @@
...
@@ -11,20 +11,20 @@
<a-button
type=
"primary"
v-if=
"!disabled"
@
click=
"handleSubmit"
>
提交
</a-button>
<a-button
type=
"primary"
v-if=
"!disabled"
@
click=
"handleSubmit"
>
提交
</a-button>
<a-button
type=
"default"
@
click=
"router.back()"
>
返回
</a-button>
<a-button
type=
"default"
@
click=
"router.back()"
>
返回
</a-button>
</
template
>
</
template
>
<
template
v-for=
"(item, index) in tabsFormSchema"
>
<PageCard
v-for=
"(item, index) in tabsFormSchema
"
:key=
"index"
:title=
"item.name"
>
<PageCard
v-if=
"item.show
"
:key=
"index"
:title=
"item.name"
>
<
template
#
right
>
<template
#
right
>
<a-button
<a-button
v-if=
"!disabled"
v-if=
"!disabled"
type=
"text"
type=
"text"
preIcon=
"ant-design:delete-outlined"
preIcon=
"ant-design:delete-outlined"
danger
danger
@
click=
"deleteItem(index)"
@
click=
"deleteItem(index)"
/>
/>
</
template
>
</
template
>
<BasicForm
:loading=
"loading"
@
register=
"item.Form[0]"
/>
<BasicForm
:loading=
"loading"
@
register=
"item.Form[0]"
/>
</PageCard>
</PageCard>
</template>
<a-button
v-if=
"!disabled"
type=
"dashed"
@
click=
"add"
preIcon=
"ei:plus"
>
<a-button
v-if=
"!disabled"
type=
"dashed"
@
click=
"add"
preIcon=
"ei:plus"
>
从项目库导入
从项目库导入
</a-button>
</a-button>
...
@@ -52,7 +52,6 @@
...
@@ -52,7 +52,6 @@
import
{
router
}
from
'@/router'
;
import
{
router
}
from
'@/router'
;
import
{
useRoute
}
from
'vue-router'
;
import
{
useRoute
}
from
'vue-router'
;
import
{
isArray
}
from
'lodash-es'
;
import
{
isArray
}
from
'lodash-es'
;
const
loadingRef
=
ref
(
false
);
const
loadingRef
=
ref
(
false
);
const
[
registerDrawer
,
{
openDrawer
}]
=
useDrawer
();
const
[
registerDrawer
,
{
openDrawer
}]
=
useDrawer
();
const
[
register
,
{
openModal
:
openModal
}]
=
useModal
();
const
[
register
,
{
openModal
:
openModal
}]
=
useModal
();
...
@@ -91,6 +90,7 @@
...
@@ -91,6 +90,7 @@
const
item
=
{
const
item
=
{
name
:
'序号'
+
(
i
+
1
),
name
:
'序号'
+
(
i
+
1
),
forceRender
:
true
,
forceRender
:
true
,
show
:
true
,
Form
:
useForm
(
Form
:
useForm
(
Object
.
assign
({
schemas
:
formSchema
,
disabled
},
baseFormConfig
)
as
FormProps
,
Object
.
assign
({
schemas
:
formSchema
,
disabled
},
baseFormConfig
)
as
FormProps
,
),
),
...
@@ -115,6 +115,7 @@
...
@@ -115,6 +115,7 @@
});
});
type
TabsFormType
=
{
type
TabsFormType
=
{
name
:
string
;
name
:
string
;
show
?:
boolean
;
forceRender
?:
boolean
;
forceRender
?:
boolean
;
Form
:
UseFormReturnType
;
Form
:
UseFormReturnType
;
};
};
...
@@ -124,7 +125,7 @@
...
@@ -124,7 +125,7 @@
layout
:
'vertical'
,
layout
:
'vertical'
,
};
};
cons
t
tabsFormSchema
=
reactive
<
TabsFormType
[]
>
([]);
le
t
tabsFormSchema
=
reactive
<
TabsFormType
[]
>
([]);
async
function
add
()
{
async
function
add
()
{
openModal
();
openModal
();
...
@@ -143,6 +144,7 @@
...
@@ -143,6 +144,7 @@
async
function
handleNew
(
info
:
any
)
{
async
function
handleNew
(
info
:
any
)
{
const
item
=
{
const
item
=
{
name
:
'序号'
+
(
tabsFormSchema
.
length
+
1
),
name
:
'序号'
+
(
tabsFormSchema
.
length
+
1
),
show
:
true
,
forceRender
:
true
,
forceRender
:
true
,
Form
:
useForm
(
Object
.
assign
({
schemas
:
formSchema
},
baseFormConfig
)
as
FormProps
),
Form
:
useForm
(
Object
.
assign
({
schemas
:
formSchema
},
baseFormConfig
)
as
FormProps
),
};
};
...
@@ -166,17 +168,14 @@
...
@@ -166,17 +168,14 @@
// await Itemdelete({
// await Itemdelete({
// id,
// id,
// });
// });
// formData.value.tenderPlanPro.splice(index, 1);
// tabsFormSchema.splice(index, 1);
// tabsFormSchema.splice(index, 1);
// loadingRef.value = false;
// loadingRef.value = false;
// } else {
// } else {
console
.
log
(
index
);
tabsFormSchema
[
index
].
show
=
false
;
formData
.
value
.
tenderPlanPro
.
splice
(
index
,
1
);
tabsFormSchema
.
splice
(
index
,
1
);
// console.log(tabsFormSchema);
console
.
log
(
tabsFormSchema
);
// console.log(formData.value.tenderPlanPro);
console
.
log
(
formData
.
value
.
tenderPlanPro
);
// loadingRef.value = false;
// loadingRef.value = false;
// }
// }
}
}
...
@@ -195,17 +194,19 @@
...
@@ -195,17 +194,19 @@
try
{
try
{
for
(
let
i
=
0
;
i
<
tabsFormSchema
.
length
;
i
++
)
{
for
(
let
i
=
0
;
i
<
tabsFormSchema
.
length
;
i
++
)
{
let
item
=
tabsFormSchema
[
i
];
let
item
=
tabsFormSchema
[
i
];
const
{
validate
,
getFieldsValue
}
=
item
.
Form
[
1
];
if
(
item
.
show
)
{
await
validate
();
const
{
validate
,
getFieldsValue
}
=
item
.
Form
[
1
];
let
res
=
getFieldsValue
();
await
validate
();
res
.
biddingPeriod
=
isArray
(
res
.
biddingPeriod
)
let
res
=
getFieldsValue
();
?
res
.
biddingPeriod
.
join
(
','
)
res
.
biddingPeriod
=
isArray
(
res
.
biddingPeriod
)
:
res
.
biddingPeriod
;
?
res
.
biddingPeriod
.
join
(
','
)
res
.
plannedPeriod
=
isArray
(
res
.
plannedPeriod
)
:
res
.
biddingPeriod
;
?
res
.
plannedPeriod
.
join
(
','
)
res
.
plannedPeriod
=
isArray
(
res
.
plannedPeriod
)
:
res
.
plannedPeriod
;
?
res
.
plannedPeriod
.
join
(
','
)
// res.plannedPeriod = res.plannedPeriod.join(',');
:
res
.
plannedPeriod
;
formData
.
value
.
tenderPlanPro
[
i
]
=
deepMerge
(
formData
.
value
.
tenderPlanPro
[
i
],
res
);
// res.plannedPeriod = res.plannedPeriod.join(',');
formData
.
value
.
tenderPlanPro
[
i
]
=
deepMerge
(
formData
.
value
.
tenderPlanPro
[
i
],
res
);
}
console
.
log
(
formData
.
value
.
tenderPlanPro
);
console
.
log
(
formData
.
value
.
tenderPlanPro
);
}
}
formData
.
value
.
proNumber
=
formData
.
value
.
tenderPlanPro
.
Length
;
formData
.
value
.
proNumber
=
formData
.
value
.
tenderPlanPro
.
Length
;
...
...
src/views/engineeringProject/engineeringProjectModel/engineeringprojectModel.vue
View file @
43b1ca85
...
@@ -60,7 +60,7 @@
...
@@ -60,7 +60,7 @@
emit
(
'close'
,
getSelectRows
());
emit
(
'close'
,
getSelectRows
());
}
}
const
emit
=
defineEmits
([
'close'
]);
const
emit
=
defineEmits
([
'close'
,
'register'
]);
function
handleVisibleChange
(
v
)
{
function
handleVisibleChange
(
v
)
{
clearSelectedRowKeys
();
clearSelectedRowKeys
();
...
...
src/views/project/tabs/contract.vue
View file @
43b1ca85
...
@@ -14,6 +14,19 @@
...
@@ -14,6 +14,19 @@
{
{
label: '查看详情',
label: '查看详情',
onClick: handleDetail.bind(null, record, true),
onClick: handleDetail.bind(null, record, true),
},
{
label: '编辑',
onClick: handleEdit.bind(null, record, false),
},
{
label: '删除',
color: 'error',
popConfirm: {
title: '是否确认删除',
placement: 'left',
confirm: handleDelete.bind(null, record),
},
},
},
]"
]"
/>
/>
...
@@ -26,7 +39,7 @@
...
@@ -26,7 +39,7 @@
<
script
lang=
"ts"
setup
>
<
script
lang=
"ts"
setup
>
import
{
contractColumns
,
searchFormSchema
}
from
'./data'
;
import
{
contractColumns
,
searchFormSchema
}
from
'./data'
;
import
{
BasicTable
,
useTable
,
TableAction
}
from
'@/components/Table'
;
import
{
BasicTable
,
useTable
,
TableAction
}
from
'@/components/Table'
;
import
{
getContractListPage
}
from
'@/api/contract/contract'
;
import
{
getContractListPage
,
deleteItem
}
from
'@/api/contract/contract'
;
import
{
inject
}
from
'vue'
;
import
{
inject
}
from
'vue'
;
import
{
router
}
from
'@/router'
;
import
{
router
}
from
'@/router'
;
import
{
Tag
}
from
'ant-design-vue'
;
import
{
Tag
}
from
'ant-design-vue'
;
...
@@ -68,6 +81,12 @@
...
@@ -68,6 +81,12 @@
fixed
:
undefined
,
fixed
:
undefined
,
},
},
});
});
async
function
handleEdit
(
record
:
Recordable
,
disabled
:
boolean
)
{
openDrawer
(
true
,
{
record
,
isUpdate
:
true
,
});
}
async
function
handleDetail
(
record
:
Recordable
,
disabled
:
boolean
)
{
async
function
handleDetail
(
record
:
Recordable
,
disabled
:
boolean
)
{
openDrawer
(
true
,
{
openDrawer
(
true
,
{
record
,
record
,
...
@@ -75,4 +94,11 @@
...
@@ -75,4 +94,11 @@
disabled
,
disabled
,
});
});
}
}
function
handleDelete
(
record
:
Recordable
)
{
deleteItem
({
id
:
record
.
id
});
reload
();
}
function
handleSuccess
()
{
reload
();
}
</
script
>
</
script
>
src/views/project/tabs/drawer/contractDrawer.vue
View file @
43b1ca85
...
@@ -15,10 +15,12 @@
...
@@ -15,10 +15,12 @@
import
{
BasicForm
,
useForm
,
FormActionType
}
from
'@/components/Form'
;
import
{
BasicForm
,
useForm
,
FormActionType
}
from
'@/components/Form'
;
import
{
contractDrawer
}
from
'../drawer/drawerData'
;
import
{
contractDrawer
}
from
'../drawer/drawerData'
;
import
{
BasicDrawer
,
useDrawerInner
}
from
'@/components/Drawer'
;
import
{
BasicDrawer
,
useDrawerInner
}
from
'@/components/Drawer'
;
import
{
updateItem
}
from
'@/api/contract/contract'
;
const
emit
=
defineEmits
([
'success'
,
'register'
]);
const
detailId
=
ref
(
0
);
const
isUpdate
=
ref
(
true
);
const
isUpdate
=
ref
(
true
);
const
formElRef
=
ref
<
Nullable
<
FormActionType
>>
(
null
);
const
formElRef
=
ref
<
Nullable
<
FormActionType
>>
(
null
);
const
[
registerForm
,
{
resetFields
,
setFieldsValue
}]
=
useForm
({
const
[
registerForm
,
{
resetFields
,
setFieldsValue
,
validate
}]
=
useForm
({
labelWidth
:
90
,
labelWidth
:
90
,
baseColProps
:
{
span
:
24
},
baseColProps
:
{
span
:
24
},
schemas
:
contractDrawer
,
schemas
:
contractDrawer
,
...
@@ -29,6 +31,17 @@
...
@@ -29,6 +31,17 @@
resetFields
();
resetFields
();
setDrawerProps
({
confirmLoading
:
false
});
setDrawerProps
({
confirmLoading
:
false
});
isUpdate
.
value
=
!!
data
?.
isUpdate
;
if
(
isUpdate
.
value
)
{
detailId
.
value
=
data
.
record
.
id
;
getTitle
.
value
=
'编辑合同管理'
;
const
formEl
=
unref
(
formElRef
);
if
(
!
formEl
)
return
;
await
formEl
.
setProps
({
disabled
:
false
,
});
}
if
(
data
.
disabled
==
true
)
{
if
(
data
.
disabled
==
true
)
{
getTitle
.
value
=
'查看合同管理'
;
getTitle
.
value
=
'查看合同管理'
;
const
formEl
=
unref
(
formElRef
);
const
formEl
=
unref
(
formElRef
);
...
@@ -38,6 +51,7 @@
...
@@ -38,6 +51,7 @@
});
});
}
}
if
(
unref
(
isUpdate
))
{
if
(
unref
(
isUpdate
))
{
setFieldsValue
({
setFieldsValue
({
...
data
.
record
,
...
data
.
record
,
...
@@ -48,5 +62,23 @@
...
@@ -48,5 +62,23 @@
const
getTitle
=
ref
(
''
);
const
getTitle
=
ref
(
''
);
async
function
handleSubmit
()
{
async
function
handleSubmit
()
{
closeDrawer
();
closeDrawer
();
try
{
const
values
=
await
validate
();
setDrawerProps
({
confirmLoading
:
true
});
if
(
isUpdate
.
value
)
{
values
.
id
=
detailId
.
value
;
}
// TODO custom api
console
.
log
(
'id'
,
values
);
let
res
=
await
updateItem
(
values
)
console
.
log
(
res
);
closeDrawer
();
emit
(
'success'
,
res
);
}
finally
{
setDrawerProps
({
confirmLoading
:
false
});
}
}
}
</
script
>
</
script
>
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