Forráskód Böngészése

风险防控、救援资源、巡查任务新建修改的时间下拉框修改,巡查人员、巡查任务的验证

zhangyihao 3 hónapja
szülő
commit
3fc23851fb

+ 8 - 4
src/views/inspectionWork/inspectorAdd.vue

@@ -59,9 +59,7 @@ const formData = ref({
   phonenumber: '',
   uuid: ''
 });
-const rules = ref({
-  // id: [{ required: true, message: '主键不能为空', trigger: 'blur' }],
-});
+
 const treeData = ref([]);
 const rawDivisionData = ref([]);
 const formattedDivisionData = ref([]);
@@ -87,7 +85,13 @@ const updateFormData = (userData) => {
     phonenumber: userData.rows[0].phonenumber || ''
   };
 };
-
+// 表单验证规则
+const rules = ref({
+  nick_name: [{ required: true, message: '请选择姓名', trigger: 'change' }],
+  ancestors_names: [{ required: true, message: '请输入粤政易组织', trigger: 'blur' }],
+  phonenumber: [{ required: true, message: '请输入联系方式', trigger: 'blur' }],
+  area: [{ required: true, message: '请选择责任区划', trigger: 'change' }]
+});
 // 监听姓名变化,一旦发生变化就请求用户列表
 const onUserNameChange = async (value) => {
   if (value) {

+ 5 - 1
src/views/inspectionWork/inspectorEdit.vue

@@ -41,8 +41,12 @@ const formData = ref({
   yzy_account: '',
   area: ''
 });
+// 表单验证规则
 const rules = ref({
-  // id: [{ required: true, message: '主键不能为空', trigger: 'blur' }],
+  nick_name: [{ required: true, message: '请选择姓名', trigger: 'change' }],
+  yzy_account: [{ required: true, message: '请输入粤政易组织', trigger: 'blur' }],
+  phonenumber: [{ required: true, message: '请输入联系方式', trigger: 'blur' }],
+  area: [{ required: true, message: '请选择责任区划', trigger: 'change' }]
 });
 const fetchDetail = async () => {
   const response = await inspectorDetail(props.eventId);

+ 8 - 2
src/views/inspectionWork/patrolTaskAdd.vue

@@ -16,6 +16,7 @@
             </el-form-item>
             <el-form-item label="排查时间范围:" prop="publish">
               <el-date-picker v-model="form.start_time" type="date" placeholder="选择开始日期" value-format="YYYY-MM-DD"></el-date-picker>
+              <span class="separator">至</span>
               <el-date-picker v-model="form.end_time" type="date" placeholder="选择结束日期" value-format="YYYY-MM-DD"></el-date-picker>
             </el-form-item>
             <el-form-item label="巡查周期:" prop="cycle">
@@ -28,10 +29,10 @@
               </el-radio-group>
             </el-form-item>
             <el-form-item v-if="form.cycle === '0'" label="选择时间:" prop="corn_query">
-              <el-date-picker v-model="form.corn_query" type="date" placeholder="选择日期时间" value-format="YYYY-MM-DD"> </el-date-picker>
+              <el-date-picker v-model="form.corn_query" type="date" placeholder="选择日期时间" format="MM-DD" value-format="MM-DD"> </el-date-picker>
             </el-form-item>
             <el-form-item v-if="form.cycle === '1'" label="选择时间:" prop="corn_query">
-              <el-date-picker v-model="form.corn_query" type="date" placeholder="选择日期时间" value-format="YYYY-MM-DD"> </el-date-picker>
+              <el-date-picker v-model="form.corn_query" type="date" placeholder="选择日期时间" format="DD" value-format="DD"> </el-date-picker>
             </el-form-item>
             <el-form-item v-if="form.cycle === '2'" label="选择时间:" prop="corn_query">
               <div class="weekday-selector">
@@ -133,3 +134,8 @@ const cancel = () => {
   emits('close');
 };
 </script>
+<style scoped>
+.separator {
+  margin: 0 10px;
+}
+</style>

+ 20 - 6
src/views/inspectionWork/patrolTaskEdit.vue

@@ -5,7 +5,7 @@
       <div class="common-dialog-content">
         <div class="common-dialog-title-box">
           <i class="common-dialog-title-icon" />
-          <div>新建巡查任务</div>
+          <div>修改巡查任务</div>
         </div>
         <div class="common-dialog-box">
           <el-form ref="demoFormRef" :model="form" label-width="100px" :rules="rules">
@@ -28,10 +28,10 @@
               </el-radio-group>
             </el-form-item>
             <el-form-item v-if="form.cycle === '0'" label="选择时间:" prop="corn_query">
-              <el-date-picker v-model="form.corn_query" type="date" placeholder="选择日期时间" value-format="YYYY-MM-DD"> </el-date-picker>
+              <el-date-picker v-model="form.corn_query" type="date" placeholder="选择日期时间" format="MM-DD" value-format="MM-DD"> </el-date-picker>
             </el-form-item>
             <el-form-item v-if="form.cycle === '1'" label="选择时间:" prop="corn_query">
-              <el-date-picker v-model="form.corn_query" type="date" placeholder="选择日期时间" value-format="YYYY-MM-DD"> </el-date-picker>
+              <el-date-picker v-model="form.corn_query" type="date" placeholder="选择日期时间" format="DD" value-format="DD"> </el-date-picker>
             </el-form-item>
             <el-form-item v-if="form.cycle === '2'" label="选择时间:" prop="corn_query">
               <div class="weekday-selector">
@@ -89,6 +89,18 @@ const businessOptions = [
   { value: '2', label: '重点危化企业巡查' },
   { value: '3', label: '重点水库水位巡查' }
 ];
+// 表单验证规则
+const rules = ref({
+  business: [{ required: true, message: '请选择巡查业务', trigger: 'blur' }],
+  start_time: [{ required: true, message: '请选择开始日期', trigger: 'change' }],
+  end_time: [{ required: true, message: '请选择结束日期', trigger: 'change' }],
+  cycle: [{ required: true, message: '请选择巡查周期', trigger: 'change' }],
+  inspection_range: [{ required: true, message: '请选择巡查范围', trigger: 'change' }],
+  corn_query: [],
+  corn_query_month: [],
+  corn_query_day: [],
+  corn_query_weekday: [] // 添加用于每周的选择的验证
+});
 const fetchDetail = async () => {
   const response = await workDetail(props.eventId);
   if (response.code === 200) {
@@ -97,9 +109,6 @@ const fetchDetail = async () => {
     ElMessage.error(response.msg);
   }
 };
-const rules = ref({
-  // id: [{ required: true, message: '主键不能为空', trigger: 'blur' }],
-});
 watch(
   () => props.eventId,
   (newVal) => {
@@ -126,3 +135,8 @@ const cancel = () => {
   emit('close');
 };
 </script>
+<style scoped>
+.separator {
+  margin: 0 10px;
+}
+</style>

+ 1 - 1
src/views/inspectionWork/rescueResources.vue

@@ -72,7 +72,7 @@
             </template>
           </el-table-column>
         </el-table>
-        <pagination v-show="total > 0" v-model:page="queryParams.page" v-model:limit="queryParams.pageSize" :total="total" @pagination="tableData" />
+        <pagination v-show="total > 0" v-model:page="queryParams.page" v-model:limit="queryParams.pageSize" :total="total" @pagination="fetchWorkrData" />
       </div>
     </div>
     <RescueResourcesDetail

+ 2 - 2
src/views/inspectionWork/rescueResourcesAdd.vue

@@ -28,10 +28,10 @@
               </el-radio-group>
             </el-form-item>
             <el-form-item v-if="form.cycle === '0'" label="选择时间:" prop="corn_query">
-              <el-date-picker v-model="form.corn_query" type="date" placeholder="选择日期时间" value-format="YYYY-MM-DD"> </el-date-picker>
+              <el-date-picker v-model="form.corn_query" type="date" placeholder="选择日期时间" format="MM-DD" value-format="MM-DD"> </el-date-picker>
             </el-form-item>
             <el-form-item v-if="form.cycle === '1'" label="选择时间:" prop="corn_query">
-              <el-date-picker v-model="form.corn_query" type="date" placeholder="选择日期时间" value-format="YYYY-MM-DD"> </el-date-picker>
+              <el-date-picker v-model="form.corn_query" type="date" placeholder="选择日期时间" format="DD" value-format="DD"> </el-date-picker>
             </el-form-item>
             <el-form-item v-if="form.cycle === '2'" label="选择时间:" prop="corn_query">
               <div class="weekday-selector">

+ 2 - 2
src/views/inspectionWork/rescueResourcesEdit.vue

@@ -28,10 +28,10 @@
               </el-radio-group>
             </el-form-item>
             <el-form-item v-if="form.cycle === '0'" label="选择时间:" prop="corn_query">
-              <el-date-picker v-model="form.corn_query" type="date" placeholder="选择日期时间" value-format="YYYY-MM-DD"> </el-date-picker>
+              <el-date-picker v-model="form.corn_query" type="date" placeholder="选择日期时间" format="MM-DD" value-format="MM-DD"> </el-date-picker>
             </el-form-item>
             <el-form-item v-if="form.cycle === '1'" label="选择时间:" prop="corn_query">
-              <el-date-picker v-model="form.corn_query" type="date" placeholder="选择日期时间" value-format="YYYY-MM-DD"> </el-date-picker>
+              <el-date-picker v-model="form.corn_query" type="date" placeholder="选择日期时间" format="DD" value-format="DD"> </el-date-picker>
             </el-form-item>
             <el-form-item v-if="form.cycle === '2'" label="选择时间:" prop="corn_query">
               <div class="weekday-selector">

+ 61 - 78
src/views/inspectionWork/riskManagement.vue

@@ -32,44 +32,44 @@
       <!--      <right-toolbar v-model:showSearch="showSearch" @query-table="getList"></right-toolbar>-->
     </el-row>
 
-      <!-- 表格组件 -->
-      <el-table v-loading="loading" :data="demoList" @selection-change="handleSelectionChange">
-        <el-table-column type="selection" width="55" align="center" />
-        <el-table-column label="任务编号" align="center" prop="task_number" />
-        <el-table-column label="排查时间范围" align="center" prop="task_time" />
-        <el-table-column label="风险源类型" align="center" prop="type">
-          <template #default="scope">
-            <dict-tag :options="risk_type" :value="scope.row.type" />
-          </template>
-        </el-table-column>
-        <el-table-column label="排查周期" align="center" prop="cycle" >
-          <template #default="scope">
-            <dict-tag :options="risk_cycle" :value="scope.row.cycle" />
-          </template>
-        </el-table-column>
-        <el-table-column label="排查范围" align="center" prop="task_range" >
-          <template #default="scope">
-            <dict-tag :options="risk_range" :value="scope.row.task_range" />
-          </template>
-        </el-table-column>
-        <el-table-column label="创始人" align="center" prop="create_by" />
-        <el-table-column label="创建时间" align="center" prop="create_time" />
-        <el-table-column label="任务状态" align="center" prop="task_status" >
-          <template #default="scope">
-            <dict-tag :options="risk_status" :value="scope.row.task_status" />
-          </template>
-        </el-table-column>
-        <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
-          <template #default="scope">
-            <el-text   class="common-btn-text-primary" @click="handleView(scope.row)">查看</el-text>
-            <el-text v-hasPermi="['system:menu:edit']" class="common-btn-text-primary" @click="handleUpdate(scope.row)">编辑</el-text>
-            <el-text  class="common-btn-text-primary" @click="handlefinal(scope.row)">完结任务</el-text>
-            <el-text  class="common-btn-text-danger" @click="handleDelete(scope.row)">删除</el-text>
-          </template>
-        </el-table-column>
-      </el-table>
+    <!-- 表格组件 -->
+    <el-table v-loading="loading" :data="demoList" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center" />
+      <el-table-column label="任务编号" align="center" prop="task_number" />
+      <el-table-column label="排查时间范围" align="center" prop="task_time" />
+      <el-table-column label="风险源类型" align="center" prop="type">
+        <template #default="scope">
+          <dict-tag :options="risk_type" :value="scope.row.type" />
+        </template>
+      </el-table-column>
+      <el-table-column label="排查周期" align="center" prop="cycle">
+        <template #default="scope">
+          <dict-tag :options="risk_cycle" :value="scope.row.cycle" />
+        </template>
+      </el-table-column>
+      <el-table-column label="排查范围" align="center" prop="task_range">
+        <template #default="scope">
+          <dict-tag :options="risk_range" :value="scope.row.task_range" />
+        </template>
+      </el-table-column>
+      <el-table-column label="创始人" align="center" prop="create_by" />
+      <el-table-column label="创建时间" align="center" prop="create_time" />
+      <el-table-column label="任务状态" align="center" prop="task_status">
+        <template #default="scope">
+          <dict-tag :options="risk_status" :value="scope.row.task_status" />
+        </template>
+      </el-table-column>
+      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
+        <template #default="scope">
+          <el-text class="common-btn-text-primary" @click="handleView(scope.row)">查看</el-text>
+          <el-text v-hasPermi="['system:menu:edit']" class="common-btn-text-primary" @click="handleUpdate(scope.row)">编辑</el-text>
+          <el-text class="common-btn-text-primary" @click="handlefinal(scope.row)">完结任务</el-text>
+          <el-text class="common-btn-text-danger" @click="handleDelete(scope.row)">删除</el-text>
+        </template>
+      </el-table-column>
+    </el-table>
 
-      <pagination v-show="total > 0" v-model:page="riskForm.page" v-model:limit="riskForm.pageSize" :total="total" @pagination="getList" />
+    <pagination v-show="total > 0" v-model:page="riskForm.page" v-model:limit="riskForm.pageSize" :total="total" @pagination="getList" />
 
     <!-- 新增/修改弹窗 -->
     <div v-if="dialog.visible" class="common-dialog">
@@ -79,15 +79,10 @@
           <div>{{ dialog.title }}</div>
         </div>
         <div class="common-dialog-box">
-          <el-form ref="demoFormRef" :model="form"  label-width="100px" :rules="rules">
-            <el-form-item label="风险源类型:" prop="type" >
+          <el-form ref="demoFormRef" :model="form" label-width="100px" :rules="rules">
+            <el-form-item label="风险源类型:" prop="type">
               <el-select v-model="form.type" placeholder="请选择风险源排查类型">
-                <el-option
-                  v-for="item in risk_type"
-                  :key="item.value"
-                  :label="item.label"
-                  :value="item.value">
-                </el-option>
+                <el-option v-for="item in risk_type" :key="item.value" :label="item.label" :value="item.value"> </el-option>
               </el-select>
             </el-form-item>
             <el-form-item label="排查时间范围:" prop="publish">
@@ -103,11 +98,11 @@
                 <el-radio value="4" size="large">一次</el-radio>
               </el-radio-group>
             </el-form-item>
-            <el-form-item v-if="form.cycle ==='0'" label="选择时间:" prop="corn_query">
-              <el-date-picker v-model="form.corn_query" type="date" placeholder="选择日期时间" value-format="YYYY-MM-DD"></el-date-picker>
+            <el-form-item v-if="form.cycle === '0'" label="选择时间:" prop="corn_query">
+              <el-date-picker v-model="form.corn_query" type="date" placeholder="选择日期时间" format="MM-DD" value-format="MM-DD"> </el-date-picker>
             </el-form-item>
-            <el-form-item v-if="form.cycle ==='1'" label="选择时间:" prop="corn_query">
-              <el-date-picker v-model="form.corn_query" type="date" placeholder="选择日期时间" value-format="MM-DD"></el-date-picker>
+            <el-form-item v-if="form.cycle === '1'" label="选择时间:" prop="corn_query">
+              <el-date-picker v-model="form.corn_query" type="date" placeholder="选择日期时间" format="DD" value-format="DD"> </el-date-picker>
             </el-form-item>
             <el-form-item v-if="form.cycle === '2'" label="选择时间:" prop="corn_query">
               <div class="weekday-selector">
@@ -122,22 +117,18 @@
                 </el-radio-group>
               </div>
             </el-form-item>
-            <el-form-item v-if="form.cycle ==='3'" label="选择时间:" prop="corn_query">
-              <el-date-picker v-model="form.corn_query" type="datetime" placeholder="选择日期时间"
-                              format="YYYY-MM-DD HH:mm:ss"
-              ></el-date-picker>
+            <el-form-item v-if="form.cycle === '3'" label="选择时间:" prop="corn_query">
+              <el-date-picker v-model="form.corn_query" type="datetime" placeholder="选择日期时间" format="YYYY-MM-DD HH:mm:ss"></el-date-picker>
             </el-form-item>
-            <el-form-item v-if="form.cycle ==='4'" label="选择时间:" prop="corn_query">
-              <el-date-picker v-model="form.corn_query" type="datetime" placeholder="选择日期时间"
-                              format="HH:mm:ss"
-              ></el-date-picker>
+            <el-form-item v-if="form.cycle === '4'" label="选择时间:" prop="corn_query">
+              <el-date-picker v-model="form.corn_query" type="datetime" placeholder="选择日期时间" format="HH:mm:ss"></el-date-picker>
             </el-form-item>
             <el-form-item label="排查范围:" prop="task_range">
               <el-radio-group v-model="form.task_range">
-                <el-radio  value="0" size="large">市级</el-radio>
-                <el-radio  value="1" size="large">区县级</el-radio>
-                <el-radio  value="2" size="large">镇街级</el-radio>
-                <el-radio  value="3" size="large">村居级</el-radio>
+                <el-radio value="0" size="large">市级</el-radio>
+                <el-radio value="1" size="large">区县级</el-radio>
+                <el-radio value="2" size="large">镇街级</el-radio>
+                <el-radio value="3" size="large">村居级</el-radio>
               </el-radio-group>
             </el-form-item>
           </el-form>
@@ -158,16 +149,10 @@ import { getDicts } from '@/api/system/dict/data';
 import { useRouter } from 'vue-router';
 import { addDateRange2 } from '@/utils/ruoyi';
 import { to } from 'await-to-js';
-import  { ElMessageBox } from 'element-plus';
-import {
-  addtask,
-  deleteRisk,
-  getRiskDetail,
-  risklist,
-  updatetask
-} from "@/api/inspectionWork/riskManagement";
-import EventDetails from "@/views/duty/eventing/eventDetails.vue";
-import EventEditDialog from "@/views/duty/eventing/EventEditDialog.vue";
+import { ElMessageBox } from 'element-plus';
+import { addtask, deleteRisk, getRiskDetail, risklist, updatetask } from '@/api/inspectionWork/riskManagement';
+import EventDetails from '@/views/duty/eventing/eventDetails.vue';
+import EventEditDialog from '@/views/duty/eventing/EventEditDialog.vue';
 
 const router = useRouter();
 const demoFormRef = ref(null);
@@ -181,7 +166,7 @@ const multiple = ref(true);
 const total = ref(0);
 const selectedRow = ref<RiskVO | null>(null);
 const { proxy } = getCurrentInstance() as ComponentInternalInstance;
-const { risk_cycle, risk_type, risk_range,risk_status } = toRefs<any>(proxy?.useDict('risk_type', 'risk_cycle', 'risk_range', 'risk_status'));
+const { risk_cycle, risk_type, risk_range, risk_status } = toRefs<any>(proxy?.useDict('risk_type', 'risk_cycle', 'risk_range', 'risk_status'));
 const dateRange = ref<[DateModelType, DateModelType]>(['', '']);
 
 const rules = reactive({
@@ -193,7 +178,6 @@ const rules = reactive({
   task_range: [{ required: true, message: '排查范围不能为空', trigger: 'blur' }]
 });
 
-
 const riskForm = reactive<RiskForm>({
   page: 1,
   pageSize: 10,
@@ -246,7 +230,7 @@ const dialog = reactive({
 //调接口获取列表
 const getList = async () => {
   loading.value = true;
-  const res = await risklist(riskForm);  //调用列表的接口
+  const res = await risklist(riskForm); //调用列表的接口
   loading.value = false;
   demoList.value = res.data;
   total.value = res.total;
@@ -266,7 +250,8 @@ const resetQuery = () => {
   handleQuery();
 };
 // 选择行
-const handleSelectionChange = (selection: RiskVO[]) => {  // PlanVO 转换为 RiskVO
+const handleSelectionChange = (selection: RiskVO[]) => {
+  // PlanVO 转换为 RiskVO
   ids.value = selection.map((item) => item.riskUid); // planUid 转换为 riskUid
   selectedRow.value = selection.length === 1 ? selection[0] : null;
   single.value = selection.length != 1;
@@ -334,7 +319,7 @@ const resetForm = () => {
     corn_query: '',
     task_range: ''
   };
-  demoFormRef.value?.resetFields();  // 重置表单的验证状态
+  demoFormRef.value?.resetFields(); // 重置表单的验证状态
 };
 
 const cancel = () => {
@@ -342,12 +327,10 @@ const cancel = () => {
   dialog.visible = false;
 };
 
-
 onMounted(() => {
   getList();
   getDicts('risk_type').then((res) => {
     riskTypeSelection.value = res.data;
   });
 });
-
 </script>