瀏覽代碼

增加筛选

文毅 1 年之前
父節點
當前提交
1d40bf2f98
共有 1 個文件被更改,包括 122 次插入38 次删除
  1. 122 38
      h5/src/views/data/repertory.vue

+ 122 - 38
h5/src/views/data/repertory.vue

@@ -3,7 +3,7 @@
 		<!-- 功能区 -->
 		<el-card class="box-card">
 			<el-row>
-				<el-col :span="12">
+				<el-col :span="6">
 					<el-text class="mx-1">关键词:</el-text>
 
 					<el-input class="width160" placeholder="请输入关键词" v-model="data.params.keyword"
@@ -17,20 +17,81 @@
 					</el-button>
 				</el-col>
 				<el-col :span="12" class="tr">
+					<el-form-item label="创建时间:">
+						<el-date-picker v-model="data.params.create_time_begin_time" type="datetime" placeholder="开始创建时间"
+							value-format="YYYY-MM-DD hh:mm:ss " />
+						<div class="ml5 mr5">To</div>
+						<el-date-picker v-model="data.params.create_time_end_time" type="datetime" placeholder="结束创建时间"
+							value-format="YYYY-MM-DD hh:mm:ss" />
+						<el-button type="primary" class="ml10" @click="getList">
+							<el-icon>
+								<ele-Search />
+							</el-icon>
+							查询
+						</el-button>
+					</el-form-item>
+				</el-col>
+
+				<el-col :span="6" class="tr">
 					<el-button type="primary" @click="addstatus">新增状态</el-button>
 					<el-button type="primary" @click="editstatus">更新状态</el-button>
 					<el-button type="primary" @click="addPage">新增</el-button>
 				</el-col>
 			</el-row>
-			<el-row class="mt10">
-				<el-col :span="12" class="tr">
-					<el-form-item label="状态:" prop="change_type">
+			<el-row>
+				<el-col :span="6">
+					<el-text class="mx-1">负责人:</el-text>
+					<el-select class="width160" v-model="data.params.responsibility_person_id" clearable
+						placeholder="请选择负责人" @change="getList">
+						<el-option :label="item.real_name" :value="item.id" v-for="item in data.repertoryList" />
+					</el-select>
+				</el-col>
+				<el-col :span="6" class="tr">
+					<el-form-item label="状态:">
 						<el-select v-model="data.params.status" multiple placeholder="选择状态" @change="getList"
-							style="width: 300px">
+							style="width: 180px">
 							<el-option :label="item[1]" :value="item[0]" v-for="item in statusList.data" />
 						</el-select>
 					</el-form-item>
 				</el-col>
+				<el-col :span="6" class="tr">
+					<el-form-item label="最小金额:">
+						<el-input class="width160" placeholder="请输入最小金额" v-model="data.params.min_amount"
+							@keyup.enter.native="getList"> </el-input>
+					</el-form-item>
+				</el-col>
+				<el-col :span="6" class="tr">
+					<el-form-item label="最大金额:">
+						<el-input class="width160" placeholder="请输入最大金额" v-model="data.params.max_amount"
+							@keyup.enter.native="getList"> </el-input>
+					</el-form-item>
+				</el-col>
+			</el-row>
+			<el-row>
+				<el-col :span="6" class="tr">
+					<el-form-item label="最小维护时间:">
+						<el-input class="width160" placeholder="请输入最小维护时间" v-model="data.params.min_maintain_time_days"
+							@keyup.enter.native="getList"> </el-input>
+					</el-form-item>
+				</el-col>
+				<el-col :span="6" class="tr">
+					<el-form-item label="最大维护时间:">
+						<el-input class="width160" placeholder="请输入最大维护时间" v-model="data.params.max_maintain_time_days"
+							@keyup.enter.native="getList"> </el-input>
+					</el-form-item>
+				</el-col>
+				<el-col :span="6" class="tr">
+					<el-form-item label="最小开发时间:">
+						<el-input class="width160" placeholder="请输入最小开发时间" v-model="data.params.min_dev_time_days"
+							@keyup.enter.native="getList"> </el-input>
+					</el-form-item>
+				</el-col>
+				<el-col :span="6" class="tr">
+					<el-form-item label="最大开发时间:">
+						<el-input class="width160" placeholder="请输入最大开发时间" v-model="data.params.max_dev_time_days"
+							@keyup.enter.native="getList"> </el-input>
+					</el-form-item>
+				</el-col>
 			</el-row>
 		</el-card>
 		<!-- 主体区 -->
@@ -87,12 +148,10 @@
 								:rules="[{ required: true, message: '填写预估金额', trigger: 'blur' }]">
 								<el-input v-model="data.form.estimated_amount" placeholder="填写预估金额" />
 							</el-form-item>
-							<el-form-item label="约定开发周期" prop="pre_dev_time"
-								:rules="[{ required: true, message: '填写约定开发周期', trigger: 'blur' }]">
+							<el-form-item label="约定开发周期" prop="pre_dev_time">
 								<el-input v-model="data.form.pre_dev_time" placeholder="填写约定开发周期" />
 							</el-form-item>
-							<el-form-item label="约定维护周期" prop="pre_maintain_time"
-								:rules="[{ required: true, message: '填写约定维护周期', trigger: 'blur' }]">
+							<el-form-item label="约定维护周期" prop="pre_maintain_time">
 								<el-input v-model="data.form.pre_maintain_time" placeholder="填写约定维护周期" />
 							</el-form-item>
 							<el-form-item label="责任人" prop="responsibility_person_id"
@@ -117,36 +176,30 @@
 							</el-form-item>
 						</el-col>
 						<el-col :span="12">
-							<el-form-item label="项目开始时间" prop="project_start_date"
-								:rules="[{ required: true, message: '填写项目开始时间', trigger: 'blur' }]">
+							<el-form-item label="项目开始时间" prop="project_start_date">
 								<el-date-picker v-model="data.form.project_start_date" type="project_start_date"
 									placeholder=" 填写项目开始时间" value-format="YYYY-MM-DD" format="YYYY-MM-DD" />
 							</el-form-item>
-							<el-form-item label="项目结束时间" prop="project_end_date"
-								:rules="[{ required: true, message: '填写项目结束时间', trigger: 'blur' }]">
+							<el-form-item label="项目结束时间" prop="project_end_date">
 
 								<el-date-picker v-model="data.form.project_end_date" type="project_end_date"
 									placeholder="填写项目结束时间" value-format="YYYY-MM-DD" format="YYYY-MM-DD" />
 							</el-form-item>
 
-							<el-form-item label="开发开始时间" prop="dev_start_date"
-								:rules="[{ required: true, message: '填写开发开始时间', trigger: 'blur' }]">
+							<el-form-item label="开发开始时间" prop="dev_start_date">
 								<el-date-picker v-model="data.form.dev_start_date" type="dev_start_date"
 									placeholder=" 填写开发开始时间" value-format="YYYY-MM-DD" format="YYYY-MM-DD" />
 							</el-form-item>
-							<el-form-item label="开发结束时间" prop="dev_end_date"
-								:rules="[{ required: true, message: '填写开发结束时间', trigger: 'blur' }]">
+							<el-form-item label="开发结束时间" prop="dev_end_date">
 								<el-date-picker v-model="data.form.dev_end_date" type="dev_end_date" placeholder=" 填写开发结束时间"
 									value-format="YYYY-MM-DD" format="YYYY-MM-DD" />
 							</el-form-item>
 
-							<el-form-item label="维护开始时间" prop="maintain_start_date"
-								:rules="[{ required: true, message: '填写维护开始时间', trigger: 'blur' }]">
+							<el-form-item label="维护开始时间" prop="maintain_start_date">
 								<el-date-picker v-model="data.form.maintain_start_date" type="maintain_start_date"
 									placeholder=" 填写维护开始时间" value-format="YYYY-MM-DD" format="YYYY-MM-DD" />
 							</el-form-item>
-							<el-form-item label="维护结束时间" prop="maintain_end_date"
-								:rules="[{ required: true, message: '填写维护结束时间', trigger: 'blur' }]">
+							<el-form-item label="维护结束时间" prop="maintain_end_date">
 								<el-date-picker v-model="data.form.maintain_end_date" type="maintain_end_date"
 									placeholder=" 填写维护结束时间" value-format="YYYY-MM-DD" format="YYYY-MM-DD" />
 							</el-form-item>
@@ -172,16 +225,22 @@
 								<div style="position: fixed">
 									<h3 class="mb20">项目详情表:</h3>
 									<div m="4" class="ml20">
-										<p class="mt10" m="t-0 b-2">项目参与人员: {{ data.form.responsibility_person }}</p>
-										<p class="mt10" m="t-0 b-2">预估金额: {{ data.form.estimated_amount / 100 }} 元</p>
-										<p class="mt10" m="t-0 b-2">约定开发周期: {{ data.form.pre_dev_time }} 天</p>
-										<p class="mt10" m="t-0 b-2">约定维护周期: {{ data.form.pre_maintain_time }}天</p>
-										<p class="mt10" m="t-0 b-2">项目周期开始时间: {{ data.form.project_start_date }}</p>
-										<p class="mt10" m="t-0 b-2">项目周期结束时间: {{ data.form.project_end_date }}</p>
-										<p class="mt10" m="t-0 b-2">开发开始时间: {{ data.form.dev_start_date }}</p>
-										<p class="mt10" m="t-0 b-2">开发结束时间: {{ data.form.dev_end_date }}</p>
-										<p class="mt10" m="t-0 b-2">维护开始时间: {{ data.form.maintain_start_date }}</p>
-										<p class="mt10" m="t-0 b-2">维护结束时间: {{ data.form.maintain_end_date }}</p>
+										<p class="mt10" m="t-0 b-2" style="display: flex;">项目参与人员:
+										<div v-for="item in data.form.participants" >
+											{{ item }} ,
+										</div>
+										</p>
+										<p class="mt10" m="t-0 b-2">预估金额:
+											<money :money="data.form.estimated_amount" />
+										</p>
+										<p class="mt10" m="t-0 b-2">约定开发周期: {{ data.form.pre_dev_time }} 天,</p>
+										<p class="mt10" m="t-0 b-2">约定维护周期: {{ data.form.pre_maintain_time }}天,</p>
+										<p class="mt10" m="t-0 b-2">项目周期开始时间: {{ data.form.project_start_date }},</p>
+										<p class="mt10" m="t-0 b-2">项目周期结束时间: {{ data.form.project_end_date }},</p>
+										<p class="mt10" m="t-0 b-2">开发开始时间: {{ data.form.dev_start_date }},</p>
+										<p class="mt10" m="t-0 b-2">开发结束时间: {{ data.form.dev_end_date }},</p>
+										<p class="mt10" m="t-0 b-2">维护开始时间: {{ data.form.maintain_start_date }},</p>
+										<p class="mt10" m="t-0 b-2">维护结束时间: {{ data.form.maintain_end_date }},</p>
 									</div>
 								</div>
 							</el-col>
@@ -190,17 +249,19 @@
 									<el-timeline>
 										<el-timeline-item v-for="item in data.form.schedules" :timestamp="item.start_date"
 											placement="top">
+											<div v-for="items in data.stalist" class="ml5 mb10">
+												<h3 v-if="item.status == items.key">{{ items.value }}</h3>
+											</div>
 											<el-card>
 												<h3>{{ item.name }}</h3>
 												<h4 class="mt5 mb10">{{ item.desc }}</h4>
-												<p>{{ item.updater }}</p>
+												<p class=" mb10">{{ item.updater }}</p>
 												<div class="text mb10">结束时间:{{ item.end_date }}</div>
 												<div class="text">
 													<el-button type="primary" @click="editSchedule(item)">编辑进度</el-button>
 													<el-button type="danger" @click="deleteSchedule(item)">删除进度</el-button>
 												</div>
 											</el-card>
-
 										</el-timeline-item>
 										<el-timeline-item>
 											<div class="flex justify-space-between mb-4 flex-wrap gap-4">
@@ -254,6 +315,11 @@
 							<el-option :label="item[1]" :value="item[0]" v-for="item in statusList.data" />
 						</el-select>
 					</el-form-item>
+					<el-form-item label="进行中状态" prop="going_project_status">
+						<el-select v-model="data.formList.going_project_status" placeholder="选择进行中状态">
+							<el-option :label="item[1]" :value="item[0]" v-for="item in statusList.data" />
+						</el-select>
+					</el-form-item>
 					<el-form-item label="是否更新状态" prop="is_update_project_status"
 						:rules="[{ required: true, message: '请更新状态', trigger: 'blur' }]">
 						<el-switch v-model="data.formList.is_update_project_status" class="ml-2" :active-value="1"
@@ -282,10 +348,10 @@
 						<el-table-column prop="start_date" label="合同开始日期" width="" />
 						<el-table-column prop="end_date" label="合同结束日期" width="" />
 						<el-table-column prop="amount" label="合同金额/元" width="">
-                            <template #default="{ row }">
-                                <money :money="row.amount" />
-                            </template>
-                        </el-table-column>
+							<template #default="{ row }">
+								<money :money="row.amount" />
+							</template>
+						</el-table-column>
 						<el-table-column prop="attachment" label="附件" width="">
 							<template #default="scope">
 								<el-link :href="scope.row.attachment" target="_blank" type="primary">查看附件</el-link>
@@ -379,7 +445,7 @@
 						</el-select>
 					</el-form-item>
 					<el-form-item :label="data.formStatus.key" prop="value">
-						<el-input v-model="data.formStatus.value" placeholder="新状态名" :style="{width: '200px'}" />
+						<el-input v-model="data.formStatus.value" placeholder="新状态名" :style="{ width: '200px' }" />
 					</el-form-item>
 				</el-form>
 				<div class="height20"></div>
@@ -418,6 +484,15 @@ let data = reactive({
 		page: 1, //当前页面
 		keyword: '', //关键字
 		status: [], //状态
+		responsibility_person_id: '',//负责人id
+		create_time_begin_time: '',//开始创建时间
+		create_time_end_time: '',//结束创建时间
+		min_amount: '',//最小金额
+		max_amount: '',//最大金额
+		min_dev_time_days: '',//最小开发时间/天
+		max_dev_time_days: '',//最大开发时间/天
+		min_maintain_time_days: '',//最小维护时间/天
+		max_maintain_time_days: '',//最大维护时间/天
 	},
 	//请求合同查询的参数
 	contractParams: {
@@ -634,6 +709,15 @@ const getList = async () => {
 		},
 		keyword: data.params.keyword,
 		status: data.params.status,
+		responsibility_person_id: data.params.responsibility_person_id,
+		create_time_begin_time: data.params.create_time_begin_time,
+		create_time_end_time: data.params.create_time_end_time,
+		min_amount: data.params.min_amount,
+		max_amount: data.params.max_amount,
+		min_dev_time_days: data.params.min_dev_time_days,
+		max_dev_time_days: data.params.max_dev_time_days,
+		min_maintain_time_days: data.params.min_maintain_time_days,
+		max_maintain_time_days: data.params.max_maintain_time_days,
 	});
 	data.loading = false;
 	if (res.code != 0) {