aexiaoliou преди 1 година
родител
ревизия
dad1bf04c8
променени са 2 файла, в които са добавени 106 реда и са изтрити 101 реда
  1. 3 0
      h5/src/views/admin/admin/index.vue
  2. 103 101
      h5/src/views/data/repertory.vue

+ 3 - 0
h5/src/views/admin/admin/index.vue

@@ -62,6 +62,9 @@
 					<el-form-item label="账号" prop="name" :rules="[{ required: true, message: '请填写账号', trigger: 'blur' }]">
 						<el-input v-model="data.form.name" placeholder="账号提交后不能修改" :disabled="data.form.id > 0" />
 					</el-form-item>
+                    <el-form-item label="真实姓名" prop="real_name" :rules="[{ required: true, message: '请填写真实姓名', trigger: 'blur' }]">
+    						<el-input v-model="data.form.real_name" placeholder="请填写真实姓名" />
+    					</el-form-item>
 					<el-form-item label="手机号" prop="phone" :rules="[
 						{ required: true, message: '请填写手机号', trigger: 'blur' },
 						{ validator: ruleReg.phoneReg(data.form.phone), message: '请填写正确的手机号', trigger: 'blur' },

+ 103 - 101
h5/src/views/data/repertory.vue

@@ -140,13 +140,19 @@
 						</el-form-item>
 						<el-form-item label="预估金额" prop="estimated_amount"
 							:rules="[{ required: true, message: '填写预估金额', trigger: 'blur' }]">
-							<el-input v-model="data.form.estimated_amount" placeholder="填写预估金额" />
+							<el-input type="number" v-model="data.form.estimated_amount" placeholder="填写预估金额" >
+                                <template #append>元</template>
+                            </el-input>
 						</el-form-item>
 						<el-form-item label="约定开发周期/天" prop="pre_dev_time">
-							<el-input v-model="data.form.pre_dev_time" placeholder="填写约定开发周期/天" />
+							<el-input type="number" v-model="data.form.pre_dev_time" placeholder="填写约定开发周期/天">
+                                <template #append>天</template>
+                            </el-input>
 						</el-form-item>
 						<el-form-item label="约定维护周期/天" prop="pre_maintain_time">
-							<el-input v-model="data.form.pre_maintain_time" placeholder="填写约定维护周期/天" />
+							<el-input type="number" v-model="data.form.pre_maintain_time" placeholder="填写约定维护周期/天">
+                                <template #append>天</template>
+                            </el-input>
 						</el-form-item>
 						<el-form-item label="责任人" prop="responsibility_person_id"
 							:rules="[{ required: true, message: '填写责任人', trigger: 'blur' }]">
@@ -156,7 +162,7 @@
 						</el-form-item>
 						<el-form-item label="参与人员" prop="participants_id"
 							:rules="[{ required: true, message: '填写参与人员', trigger: 'blur' }]">
-							<el-select v-model="data.form.participants_id" multiple placeholder="选择参与人员">
+							<el-select v-model="data.form.participants_id" multiple placeholder="选择参与人员" clearable filterable :style="{width: '70%'}">
 								<el-option v-for="item in data.repertoryList" :key="item.id" :label="item.real_name"
 									:value="item.id" />
 							</el-select>
@@ -206,76 +212,72 @@
 		<vuecmf-dialog width="800px" :model_value="data.dialogDetail.showDetail" :title="data.dialogDetail.titleDetail"
 			@close="closePage">
 			<template #content>
-				<el-form :model="data.form" label-width="120px" ref="formRef" v-loading="data.dialogDetail.isLoadingDetail">
-					<el-form-column type="expand">
-						<el-row>
-							<el-col :span="12">
-								<div style="position: fixed">
-									<h3 class="mb20">项目详情表:</h3>
-									<div m="4" class="ml20">
-										<p class="mt10" m="t-0 b-2" style="display: flex;">
-											项目参与人员:{{ data.form.participants?.join(',') }}</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 ?
-											data.form.pre_dev_time : '暂无数据' }} 天</p>
-										<p class="mt10" m="t-0 b-2">约定维护周期: {{ data.form.pre_maintain_time ?
-											data.form.pre_maintain_time : '暂无数据' }} 天</p>
-										<p class="mt10" m="t-0 b-2">项目周期开始时间: {{ data.form.project_start_date ?
-											data.form.project_start_date : '暂无数据' }}</p>
-										<p class="mt10" m="t-0 b-2">项目周期结束时间: {{ data.form.project_end_date
-											? data.form.project_end_date : '暂无数据' }}</p>
-										<p class="mt10" m="t-0 b-2">开发开始时间: {{ data.form.dev_start_date
-											? data.form.dev_start_date : '暂无数据' }}</p>
-										<p class="mt10" m="t-0 b-2">开发结束时间: {{ data.form.dev_end_date
-											? data.form.dev_end_date : '暂无数据' }}</p>
-										<p class="mt10" m="t-0 b-2">维护开始时间: {{ data.form.maintain_start_date ?
-											data.form.maintain_start_date : '暂无数据' }}</p>
-										<p class="mt10" m="t-0 b-2">维护结束时间: {{ data.form.maintain_end_date
-											? data.form.maintain_end_date : '暂无数据' }}</p>
-									</div>
-								</div>
-							</el-col>
-							<el-col :span="12">
-								<div style="height: 500px">
-									<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 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">
-												<el-button type="primary" text
-													@click="newSchedule(data.form)">新建进度</el-button>
-											</div>
-										</el-timeline-item>
-									</el-timeline>
-								</div>
-							</el-col>
-						</el-row>
-						<div class="height20"></div>
-					</el-form-column>
-				</el-form>
+                <el-row>
+                    <el-col :span="10">
+                        <div style="position: fixed">
+                            <h3 class="mb20">项目详情表:</h3>
+                            <div m="4" class="ml20">
+                                <p class="mt10" m="t-0 b-2" style="display: flex;">
+                                    项目参与人员:{{ data.form.participants?.join(',') }}</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 ?
+                                    data.form.pre_dev_time : '暂无数据' }} 天</p>
+                                <p class="mt10" m="t-0 b-2">约定维护周期: {{ data.form.pre_maintain_time ?
+                                    data.form.pre_maintain_time : '暂无数据' }} 天</p>
+                                <p class="mt10" m="t-0 b-2">项目周期开始时间: {{ data.form.project_start_date ?
+                                    data.form.project_start_date : '暂无数据' }}</p>
+                                <p class="mt10" m="t-0 b-2">项目周期结束时间: {{ data.form.project_end_date
+                                    ? data.form.project_end_date : '暂无数据' }}</p>
+                                <p class="mt10" m="t-0 b-2">开发开始时间: {{ data.form.dev_start_date
+                                    ? data.form.dev_start_date : '暂无数据' }}</p>
+                                <p class="mt10" m="t-0 b-2">开发结束时间: {{ data.form.dev_end_date
+                                    ? data.form.dev_end_date : '暂无数据' }}</p>
+                                <p class="mt10" m="t-0 b-2">维护开始时间: {{ data.form.maintain_start_date ?
+                                    data.form.maintain_start_date : '暂无数据' }}</p>
+                                <p class="mt10" m="t-0 b-2">维护结束时间: {{ data.form.maintain_end_date
+                                    ? data.form.maintain_end_date : '暂无数据' }}</p>
+                            </div>
+                        </div>
+                    </el-col>
+                    <el-col :span="14">
+                        <div style="height: 500px">
+                            <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 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">
+                                        <el-button type="primary" text
+                                            @click="newSchedule(data.form)">新建进度</el-button>
+                                    </div>
+                                </el-timeline-item>
+                            </el-timeline>
+                        </div>
+                    </el-col>
+                </el-row>
+                <div class="height20"></div>
 			</template>
 		</vuecmf-dialog>
 		<!-- 弹出项目进度新增页面-->
 		<vuecmf-dialog width="500px" :model_value="data.schedule.show" :title="data.schedule.title"
 			@close="closeSchedulePage">
 			<template #content>
-				<el-form :model="data.formList" label-width="120px" ref="formRef" v-loading="data.schedule.isLoading">
+				<el-form :model="data.formList" label-width="140px" ref="formRef" v-loading="data.schedule.isLoading">
 					<el-form-item label="进度名称" prop="name"
 						:rules="[{ required: true, message: '请填写进度名称', trigger: 'blur' }]">
 						<el-input v-model="data.formList.name" placeholder="进度名称" />
@@ -298,27 +300,27 @@
 						<el-date-picker v-model="data.formList.end_date" type="end_date" placeholder=" 填写结束时间"
 							value-format="YYYY-MM-DD" format="YYYY-MM-DD" />
 					</el-form-item>
-					<el-form-item label="状态" prop="status" :rules="[{ required: true, message: '请选择状态', trigger: 'blur' }]">
+					<el-form-item label="进度状态" prop="status" :rules="[{ required: true, message: '请选择状态', trigger: 'blur' }]">
 						<el-select v-model="data.formList.status" placeholder="选择状态">
 							<el-option :label="item.value" :value="item.key" v-for="item in data.stalist" />
 						</el-select>
 					</el-form-item>
-					<el-form-item label="结束状态" prop="finish_project_status"
-						:rules="[{ required: true, message: '请选择结束状态', trigger: 'blur' }]">
-						<el-select v-model="data.formList.finish_project_status" placeholder="选择结束状态">
+                    <el-form-item label="是否更新项目状态" prop="is_update_project_status"
+                        :rules="[{ required: true, message: '请更新状态', trigger: 'change' }]">
+                        <el-switch v-model="data.formList.is_update_project_status" class="ml-2" :active-value="1"
+                            :inactive-value="0" />
+                    </el-form-item>
+					<el-form-item v-show="data.formList.is_update_project_status" label="完成后项目状态" prop="finish_project_status"
+						:rules="[{ required: !!data.formList.is_update_project_status, message: '请选择完成状态', trigger: 'change' }]">
+						<el-select v-model="data.formList.finish_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="going_project_status">
+					<el-form-item v-show="data.formList.is_update_project_status" 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"
-							:inactive-value="0" style="--el-switch-on-color: #13ce66; --el-switch-off-color: #ff4949" />
-					</el-form-item>
 				</el-form>
 				<div class="height20"></div>
 			</template>
@@ -331,7 +333,7 @@
 		<vuecmf-dialog width="500px" :model_value="data.scheduleup.show" :title="data.scheduleup.title"
 			@close="closeSchedulePage">
 			<template #content>
-				<el-form :model="data.formList" label-width="120px" ref="formRef" v-loading="data.scheduleup.isLoading">
+				<el-form :model="data.formList" label-width="140px" ref="formRef" v-loading="data.scheduleup.isLoading">
 					<el-form-item label="进度名称" prop="name"
 						:rules="[{ required: true, message: '请填写进度名称', trigger: 'blur' }]">
 						<el-input v-model="data.formList.name" placeholder="进度名称" />
@@ -359,22 +361,22 @@
 							<el-option :label="item.value" :value="item.key" v-for="item in data.stalist" />
 						</el-select>
 					</el-form-item>
-					<el-form-item label="结束状态" prop="finish_project_status"
-						:rules="[{ required: true, message: '请选择结束状态', trigger: 'blur' }]">
-						<el-select v-model="data.formList.finish_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="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"
-							:inactive-value="0" style="--el-switch-on-color: #13ce66; --el-switch-off-color: #ff4949" />
-					</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"
+                            :inactive-value="0" style="--el-switch-on-color: #13ce66; --el-switch-off-color: #ff4949" />
+                    </el-form-item>
+                    <el-form-item v-show="data.formList.is_update_project_status" label="结束后项目状态" prop="finish_project_status"
+                        :rules="{ required: data.formList.is_update_project_status, message: '请选择结束状态', trigger: 'change' }">
+                        <el-select v-model="data.formList.finish_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 v-show="data.formList.is_update_project_status" 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>
 				<div class="height20"></div>
 			</template>
@@ -531,13 +533,13 @@
 		<vuecmf-dialog width="500px" :model_value="data.statusDialog.show" :title="data.statusDialog.title"
 			@close="closePage">
 			<template #content>
-				<el-form :model="data.formStatus" label-width="120px" ref="formRef" v-loading="data.statusDialog.isLoading">
-					<el-form-item label="状态名" prop="value">
+				<el-form :model="data.formStatus" label-width="150px" ref="formRef" v-loading="data.statusDialog.isLoading">
+                    <el-form-item label="状态值(英文)" prop="key">
+                        <el-input v-model="data.formStatus.key" placeholder="状态值" />
+                    </el-form-item>
+					<el-form-item label="状态名(显示名)" prop="value">
 						<el-input v-model="data.formStatus.value" placeholder="填写状态名" />
 					</el-form-item>
-					<el-form-item label="状态值" prop="key">
-						<el-input v-model="data.formStatus.key" placeholder="状态值" />
-					</el-form-item>
 				</el-form>
 				<div class="height20"></div>
 			</template>
@@ -773,7 +775,7 @@ const newFormlist = () => {
 		updater_id: '',
 		start_date: null,
 		end_date: null,
-		is_update_project_status: true,
+		is_update_project_status: 1,
 		status: '',
 		finish_project_status: '',
 		going_project_status: '',