+
@@ -281,12 +281,15 @@ const companyOption = ref([])
const summaryForm = ref()
const deploymentId = ref()
const specialFundOption = ref([])
-const showTable = ref(true)
+const showTable = ref(false)
+const showSingleTable = ref(false)
const otherFileList = ref([])
+const singleList = ref([])
const formData = ref({
- isSpecialFund: false,
+ isSpecialFund: true,
industryUniversityResearch: '0',
governmentDeclaration: '0',
+ resultForm:[]
})
const rules = reactive({
@@ -337,11 +340,11 @@ const getIsFund = async () => {
})
}
const getFundName = (id) => {
- let label=''
+ let label = ''
specialFundOption.value.forEach(item => {
- if(item.value==id){
- label=item.label
- }
+ if (item.value == id) {
+ label = item.label
+ }
})
return label
}
@@ -363,7 +366,12 @@ const compositeParam = (item, type) => {
const getAttachment = (val) => {
// console.log('上传文件getAttachment', val)
+ showSingleTable.value=false
formData.value.singleFile = compositeParam(val)
+ singleList.value.push( compositeParam(val))
+ nextTick(() => {
+ showSingleTable.value = true
+ })
}
const getOtherFile = (val) => {
// console.log('上传文件getOtherFile', val)
@@ -374,6 +382,12 @@ const getOtherFile = (val) => {
showTable.value = true
})
}
+watch(() => otherFileList.value, (newVal) => {
+ showTable.value = newVal.length !== 0;
+}, {deep: true})
+watch(() => singleList.value, (newVal) => {
+ showSingleTable.value = newVal.length !== 0;
+}, {deep: true})
const getFileParam = (item) => {
if (item === undefined) return;
return {
@@ -398,6 +412,7 @@ const handleSubmit = debounce(async (instance) => {
if (formData.value.singleFile !== undefined) {
formData.value.singleFile = getFileParam(formData.value.singleFile)
}
+ formData.value.resultForm=formData.value.resultForm.map(item=>item).join(',')
let params = {
...formData.value,
deploymentId: deploymentId.value,
@@ -448,14 +463,15 @@ const handleResubmit = debounce(() => {
} else {
attachment.value.clearValidate()
}
- if (formData.value.isSpecialFund&&formData.value.specialFund === null) {
- formData.value.specialFund=getFundName(formData.value.specialFundId)
+ if (formData.value.isSpecialFund && formData.value.specialFund === null) {
+ formData.value.specialFund = getFundName(formData.value.specialFundId)
}
+ formData.value.resultForm=formData.value.resultForm.map(item=>item).join(',')
let params = {
...formData.value,
deploymentId: deploymentId.value,
fileList: otherFiles,
- requirementId: route.query.id ? route.query.id : '-1'
+ requirementId: route.query.requirementId ? route.query.requirementId : '-1'
}
// console.log('重新提交params', params, formData.value.specialFund, formData.value.specialFundId)
resubmitReported(params).then(res => {
@@ -482,7 +498,7 @@ const getDetailInfo = async () => {
type: res.code === 1000 ? 'success' : 'error'
})
if (res.code === 1000) {
- res.data.formData.specialFundId= res.data.formData.specialFundId===0?null:res.data.formData.specialFundId
+ res.data.formData.specialFundId = res.data.formData.specialFundId === 0 ? null : res.data.formData.specialFundId
formData.value = res.data.formData
loading.value = false
}
diff --git a/src/views/project-demand/summary/index.vue b/src/views/project-demand/summary/index.vue
index 6cc316b..b3ef500 100644
--- a/src/views/project-demand/summary/index.vue
+++ b/src/views/project-demand/summary/index.vue
@@ -8,6 +8,35 @@ import fvSelect from '@/fvcomponents/fvSelect/index.vue'
const tableIns = ref()
const router = useRouter()
+const shortcuts = [
+ {
+ text: '上周',
+ value: () => {
+ const end = new Date()
+ const start = new Date()
+ start.setTime(start.getTime() - 3600 * 1000 * 24 * 7)
+ return [start, end]
+ },
+ },
+ {
+ text: '上月',
+ value: () => {
+ const end = new Date()
+ const start = new Date()
+ start.setTime(start.getTime() - 3600 * 1000 * 24 * 30)
+ return [start, end]
+ },
+ },
+ {
+ text: '三月前',
+ value: () => {
+ const end = new Date()
+ const start = new Date()
+ start.setTime(start.getTime() - 3600 * 1000 * 24 * 90)
+ return [start, end]
+ },
+ },
+]
const searchConfig = reactive([
{
label: '征集名称',
@@ -32,6 +61,18 @@ const searchConfig = reactive([
},
colProps: {}
},
+ {
+ label: '项目影响',
+ prop: 'projectImpact',
+ component: shallowRef(fvSelect),
+ props: {
+ cacheKey: 'project_impact',
+ placeholder: '请选择项目影响',
+ clearable: true,
+ filterable: true,
+ },
+ colProps: {}
+ },
{
label: '研发主体',
prop: 'rdSubject',
@@ -40,9 +81,31 @@ const searchConfig = reactive([
placeholder: '请选择研发主体',
cacheKey: 'rd_subject',
clearable: true,
- filterable: true
- },
- colProps: {}
+ filterable: true,
+ }
+ },
+ {
+ label: '起止时间',
+ prop: 'dateValue',
+ component: 'el-date-picker',
+ props: {
+ clearable: true,
+ type: 'daterange',
+ startPlaceholder: '开始日期',
+ endPlaceholder: '结束日期',
+ valueFormat: 'YYYY-MM-DD HH:mm:ss',
+ shortcuts: shortcuts
+ }
+ },
+ {
+ label: '状态',
+ prop: 'state',
+ component: shallowRef(fvSelect),
+ props: {
+ placeholder: '请选择状态',
+ clearable: true,
+ cacheKey: 'project_initiation'
+ }
},
// {
// label: '项目影响',
@@ -220,9 +283,9 @@ const headBtnClick = (key) => {
const search = (val) => {
let obj = {...val}
- if (obj.time) {
- obj.startTime = obj.time[0]
- obj.endTime = obj.time[1]
+ if (obj.dateValue) {
+ obj.startTime = obj.dateValue[0]
+ obj.endTime = obj.dateValue[1]
delete obj.dateValue
}
tableConfig.params = obj
@@ -241,7 +304,7 @@ const handleEdit = (row) => {
router.push({
name: 'Summary/edit',
query: {
- id: row.requirementId,
+ requirementId: row.requirementId,
projectId: row.projectId
}
})
diff --git a/src/views/project-management/implementation/account.vue b/src/views/project-management/implementation/account.vue
index e12e82a..7d4ae3b 100644
--- a/src/views/project-management/implementation/account.vue
+++ b/src/views/project-management/implementation/account.vue
@@ -173,10 +173,10 @@ const searchConfig = reactive([
])
const tableConfig = reactive({
columns: [
- {
- type: 'selection',
- prop: 'selection'
- },
+ // {
+ // type: 'selection',
+ // prop: 'selection'
+ // },
{
prop: 'name',
type: 'index',
@@ -308,6 +308,7 @@ const search = (val) => {
}
const init = async () => {
const {code, msg, data} = await searchUpdateLedgerData(route.query.id)
+ console.log("🚀 ~ init ~ data:", data)
if (data) {
tableData.value = data
baseForm.value.setValues(data)
diff --git a/src/views/project-management/implementation/phase.vue b/src/views/project-management/implementation/phase.vue
index c048100..166b7a3 100644
--- a/src/views/project-management/implementation/phase.vue
+++ b/src/views/project-management/implementation/phase.vue
@@ -13,11 +13,11 @@
@getOtherFile="getOtherFile" :showFileList="true" :formData="formData"
:preview="name === 'Phase/edit'"/>
-
+
diff --git a/src/views/project-management/implementation/updateTable.vue b/src/views/project-management/implementation/updateTable.vue
index d74bf80..e072c59 100644
--- a/src/views/project-management/implementation/updateTable.vue
+++ b/src/views/project-management/implementation/updateTable.vue
@@ -9,9 +9,9 @@
- {{tableForm.projectChargePerson?tableForm.projectChargePerson: currentPerson.name }}
+ {{tableForm.projectChargePersonName}}
- {{ tableForm.projectChargePerson||currentPerson.name ? '更改' : '请选择研发人员' }}
+ {{ tableForm.projectChargePersonName ? '更改' : '请选择研发人员' }}
@@ -55,7 +55,7 @@
-
+
@@ -88,23 +88,30 @@ const tagsViewStore = useTagsView()
const baseForm = ref()
const route = useRoute()
const router = useRouter()
-const currentPerson = ref({})
const tableForm = ref({
projectName: '',
completeWork: '',
endTime: '',
projectBudgetDescription: '',
projectChargePerson: '',
+ projectChargePersonName:'',
projectCompletionRate: '',
projectDevelopmentWay: '',
projectId: '',
- startTime: '',
+ startTime: ''
})
const userPicker = ref()
+
+const showPersonnelPicker = () => {
+ userPicker.value.showUserPicker()
+}
const selected = (select) => {
+ if (!select || select.length === 0) {
+ return
+ }
for (const selectElement of select) {
- currentPerson.value = selectElement
tableForm.value.projectChargePerson = selectElement.id
+ tableForm.value.projectChargePersonName = selectElement.name
}
}
const disabledDate = (time) => {
@@ -113,9 +120,6 @@ const disabledDate = (time) => {
const handleBack = () => {
history.back()
}
-const showPersonnelPicker = () => {
- userPicker.value.showUserPicker()
-}
const handleSubmit = async () => {
let params = {
...tableForm.value,
@@ -141,7 +145,7 @@ const handleSubmit = async () => {
}
const getBaseInfo = async () => {
const {code, data} = await getBaseInfoApi(route.query.id)
- tableForm.value.projectName = data.projectName
+ tableForm.value.projectName = data?.projectName || ''
}
getBaseInfo()
const init = async () => {
diff --git a/src/views/project-management/implementation/uploadFee.vue b/src/views/project-management/implementation/uploadFee.vue
index 68027a0..f3c2d48 100644
--- a/src/views/project-management/implementation/uploadFee.vue
+++ b/src/views/project-management/implementation/uploadFee.vue
@@ -114,8 +114,8 @@ const schema = computed(() => {
const baseForm = ref()
const rules = reactive({
time: [{required: true, message: '请选择时间', trigger: 'blur'}],
- projectCost: [{required: true, message: '请输入项目费用', trigger: 'blur'}],
- researchStage: [{required: true, message: '请输入研发阶段', trigger: 'blur'}],
+ projectCost: [{required: true, message: '请选择项目费用', trigger: 'blur'}],
+ researchStage: [{required: true, message: '请选择研发阶段', trigger: 'blur'}],
digest: [{required: true, message: '请输入摘要', trigger: 'blur'}],
afterTax: [{required: true, message: '请输入税后余额', trigger: 'blur'}]
})
diff --git a/src/views/project-management/mobledetail/ApprovalDetailMoblie.vue b/src/views/project-management/mobledetail/ApprovalDetailMoblie.vue
index 3aca84c..61a64ab 100644
--- a/src/views/project-management/mobledetail/ApprovalDetailMoblie.vue
+++ b/src/views/project-management/mobledetail/ApprovalDetailMoblie.vue
@@ -2,10 +2,10 @@
form = e">
- 流程图
diff --git a/src/views/project-management/mobledetail/CollectionDetailMoblie.vue b/src/views/project-management/mobledetail/CollectionDetailMoblie.vue
index ea949be..89f1b88 100644
--- a/src/views/project-management/mobledetail/CollectionDetailMoblie.vue
+++ b/src/views/project-management/mobledetail/CollectionDetailMoblie.vue
@@ -68,7 +68,7 @@
流程图