yyfang 3 năm trước cách đây
mục cha
commit
8f1f26ddce

+ 6 - 1
src/components/admin.vue

@@ -177,8 +177,13 @@
 						},
 						{
 						     id: '5-3',
-						     subMenuName: '监抽查',
+						     subMenuName: '监抽查',
 						     path: '/admin/checkMonitor'
+						},
+						{
+						     id: '5-4',
+						     subMenuName: '退回任务',
+						     path: '/admin/retask'
 						}
 
 						// ,{

+ 204 - 0
src/components/admin/editInformation.vue

@@ -0,0 +1,204 @@
+<template>
+	<div style="width: 100%">
+		<el-breadcrumb separator-class="el-icon-arrow-right">
+
+			<el-breadcrumb-item>首页</el-breadcrumb-item>
+			<el-breadcrumb-item>监测任务</el-breadcrumb-item>
+			<el-breadcrumb-item>例行监测</el-breadcrumb-item>
+			<el-breadcrumb-item :to="{path:'/admin/routineMonitor'}">任务列表</el-breadcrumb-item>
+			<el-breadcrumb-item>添加任务</el-breadcrumb-item>
+		</el-breadcrumb>
+		<div class="title">
+			例行监测
+		</div>
+
+		<el-form :model="form" label-width="100px">
+            <el-form-item label="任务名称" prop="form.task_name" required>
+				<el-input v-model="form.task_name" :disabled="true"></el-input>
+			</el-form-item>
+
+	        <el-form-item label="文件号">
+				<el-input v-model="form.filenum"></el-input>
+			</el-form-item>
+
+            <el-form-item label="任务时间" required>
+				<el-col :span="8">
+					<el-date-picker v-model="form.starttime" type="date" value-format="yyyy-MM-dd">
+					</el-date-picker>
+				</el-col>
+				<el-col :span="1">
+					<div class="line">--</div>
+				</el-col>
+				<el-col :span="11">
+					<el-date-picker v-model="form.endtime" type="date" value-format="yyyy-MM-dd">
+					</el-date-picker>
+				</el-col>
+			</el-form-item>
+
+			<el-form-item label="任务优先级" required>
+				<el-select v-model="form.level" placeholder="请选择">
+					<el-option v-for="item in priority" :key="item.value" :label="item.label" :value="item.value"></el-option>
+				</el-select>
+			</el-form-item>
+
+			<el-form-item label="年度" required>
+				<el-date-picker v-model="form.year" type="year" value-format="yyyy">
+				</el-date-picker>
+			</el-form-item>
+
+			<el-form-item label="批次" required>
+				<el-select v-model="form.batch">
+					<el-option v-for="item in batch" :key="item.label" :label="item.label" :value="item.label">
+					</el-option>
+				</el-select>
+			</el-form-item>
+
+		
+
+			<el-form-item label="抽检分离:" prop="is_divide" width="70px" class="labelItem" required>
+					<el-select  v-model="form.is_divide" size="" >
+						<el-option v-for="item in divideOptions" :key="item.id" :label="item.name" :value="item.id">
+						</el-option>
+					</el-select>
+			</el-form-item>
+
+			<el-form-item label="备注">
+				<el-input type="textarea" placeholder="最长300字符" v-model="form.log"></el-input>
+			</el-form-item>
+
+             <el-form-item label="附件" required>
+				<el-upload class="upload-demo" :file-list="fileList" drag :headers="myHeaders"
+					action="http://syjcapi.aielab.net/api/v1/ossUpload" :on-success="uploadSuccess"
+					:limit="1">
+					<i class="el-icon-upload"></i>
+					<div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+				</el-upload>
+			</el-form-item>
+
+			<el-form-item>
+				<el-button type="success" @click="onSubmit()">保存</el-button>
+				<!-- <el-button type="success" @click="nextStep()">下一步</el-button> -->
+				<el-button @click="reBack()">返回</el-button>
+			</el-form-item>
+		</el-form>
+	</div>
+</template>
+<script>
+	const rymc = window.sessionStorage.getItem('rymc')
+	const token = window.sessionStorage.getItem('token')
+	export default {
+		data() {
+			return {
+				myHeaders: {
+				Authorization: 'bearer'+ token//上传文件添加token
+				},
+				// 任务表单
+				form: {
+                    task_name:'',
+                    username:'',
+                    name:'', 
+                    name_other:'', 
+                    groupname: '', 
+                    properties: '', 
+                    contact_name: '', 
+                    contact_phone: '',
+                    create_time:'' ,
+                    update_time:''
+				},
+				// 优先级选项
+				priority: [{
+					value: '0',
+					label: '一般'
+				}, {
+					value: '1',
+					label: '紧急'
+				}, {
+					value: '2',
+					label: '特急'
+				}],
+				// 批次选项
+				batch: [{
+					label: '一季度'
+				}, {
+					label: '二季度'
+				}, {
+					label: '三季度'
+				}, {
+					label: '四季度'
+				}],
+				// 抽检分离选项
+				divideOptions: [{
+						id: 0,
+						name: '否'
+					},
+					{
+						id: 1,
+						name: '是'
+					}
+				],
+				// 上传成功文件列表
+				fileList: []
+			}
+		},
+		created() {
+            this.task_id = this.$route.params.task_id
+            console.log(this.task_id)
+			this.getTask()  
+		},
+		methods: {
+            //获取接口
+            async getTask() {
+				 console.log(this.task_id)
+                const result = await this.$http.post("getTask",{task_id:this.task_id});
+				this.form=result.data.data
+				console.log(result.data)
+            },
+            //保存
+			async onSubmit() {
+				this.form['token'] = token
+				this.form['groupname'] = this.groupname
+				this.form['orgs'] = this.orgs
+				this.form['releaser'] = window.sessionStorage.getItem('rymc')
+				this.form['task_class'] = 'retask'
+				this.form['ispublic'] = 0
+				const result = await this.$http.post('putTask', this.form)
+				// 判断业务逻辑
+				if (result.code == 0) {
+						this.$message({
+						type: 'success',
+						message: result.data.message
+					})
+				} else {
+					this.$message({
+						type: 'success',
+						message: result.data.message
+					})
+				}
+					
+			},
+			//返回
+			reBack() {
+				this.$router.push('reTask')
+			},
+		},
+	}
+	
+</script>
+<style lang="less" scoped>
+	.title {
+		margin-left: 50%;
+		margin-bottom: 20px;
+	}
+
+	.el-form {
+		width: 800px;
+		margin: 0 auto;
+	}
+
+	.footer {
+		margin-top: 5px;
+		display: flex;
+		flex-direction: row;
+		justify-content: space-between;
+	}
+</style>

+ 2 - 2
src/components/admin/getAccount.vue

@@ -30,12 +30,12 @@
             <el-form-item label="联系人电话" prop="form.contact_phone" required>
 				<el-input v-model="form.contact_phone" :disabled="true"></el-input>
 			</el-form-item>
-            <el-form-item label="创建时间" prop="form.create_time" required>
+            <!-- <el-form-item label="创建时间" prop="form.create_time" required>
 				<el-input v-model="form.create_time" :disabled="true"></el-input>
 			</el-form-item>
             <el-form-item label="修改时间" prop="form.update_time" required>
 				<el-input v-model="form.update_time" :disabled="true"></el-input>
-			</el-form-item>
+			</el-form-item> -->
 
 
 

+ 11 - 34
src/components/admin/getJcds.vue

@@ -16,7 +16,7 @@
         <!-- 操作 -->
         <el-table-column label="操作" align="center" fixed="right">
         <template>
-            <el-button @click="readCheckList()" style="margin:5px 0" type="success" size="small" >查看检测单列表</el-button>
+            <el-button @click="read" style="margin:5px 0" type="success" size="small" >查看检测单列表</el-button>
         </template>
         </el-table-column>
     </el-table>
@@ -48,31 +48,13 @@ export default {
                     sample_org_id: 18, //抽样单位id
                     check_org_id: 272, //检测单位id
                     sample_address:null, //抽样地址
-                    create_time:null,
-                    update_time: null,
-                    delete_time: null,
+                    task_id:'33',
+                    task_profile_id:'',
+                    pageNum:'1',
+                    pageSize:'10',
+                    cyd_status_condition:'',
+                    cyd_status:''
                     },
-            sampleOrgId: {
-                    name:null, //抽样单位名称
-                    name_other: null, //抽样单位别名
-                    groupnam: null,
-                    properties: null,
-                    contact_name: null,
-                    contact_phone: null,
-                    create_time: null,
-                    update_time: null
-                    },
-            checkOrgId: {
-                    id: null, //task_profile_id
-                    name: null, //抽样单位名称
-                    name_other: null, //抽样单位别名
-                    groupname: null,
-                    properties:null,
-                    contact_name: null,
-                    contact_phone: null,
-                    create_time: null,
-                    update_time: null
-            },
             	total:0,
                 tableHeader2: [{
                             label: '抽样机构',
@@ -120,17 +102,11 @@ export default {
             this.task_id = res.data.rows.task_id
             console.log(result.data.rows.task_id)
         },
-    },
         //查看检测单 
-        readCheckList(id){
-				this.$router.push({
-					name:'readCheckList',
-					params: {
-					task_id:id,
-					}
-				})
+        read(){
+				this.$router.push('readCheckList')
 			},
-        //分页器
+          //分页器
                 handleSizeChange(val) {
                     console.log(`每页 ${val} 条`);
                     },
@@ -149,6 +125,7 @@ export default {
                     this.queryInfo.pageSize = newSize
                     this.getJgTaskProfiles()
                 },
+    },
     }
 
 </script>

+ 175 - 171
src/components/admin/getOrganization.vue

@@ -1,190 +1,194 @@
-  <template>
-	<div style="width: 100%">
-		<el-breadcrumb separator-class="el-icon-arrow-right">
-			<el-breadcrumb-item>首页</el-breadcrumb-item>
-			<el-breadcrumb-item>主体信息管理</el-breadcrumb-item>
-			<el-breadcrumb-item>检测机构</el-breadcrumb-item>
-        </el-breadcrumb>
-		<el-form ref="form" :model="form" label-width="80px">
-        
-        <div class="card">
-            <!-- 检索信息 -->
-            <el-form-item label="机构性质">
-                <el-checkbox-group v-model="form.properties" class="querybox">
-                    <el-checkbox label="不限" name="type"></el-checkbox>
-                    <el-checkbox label="政府部门" name="type"></el-checkbox>
-                    <el-checkbox label="事业单位" name="type"></el-checkbox>
-                    <el-checkbox label="企业" name="type"></el-checkbox>
-                </el-checkbox-group>
-            </el-form-item>
+<template>
+    <div style="width: 100%">
+        <div slot="header" class="clearfix">
+            <el-breadcrumb separator-class="el-icon-arrow-right">		
+            <el-breadcrumb-item >首页</el-breadcrumb-item>
+            <el-breadcrumb-item>主体信息管理</el-breadcrumb-item>
+            <el-breadcrumb-item>检测机构</el-breadcrumb-item>
+            </el-breadcrumb>
+	    </div>
 
-            <el-form-item label="资质证书">
-                <el-checkbox-group v-model="form.certificate" class="querybox">
-                    <el-checkbox label="不限" name="type"></el-checkbox>
-                    <el-checkbox label="CNAS" name="type"></el-checkbox>
-                    <el-checkbox label="CAL" name="type"></el-checkbox>
-                    <el-checkbox label="CMAF" name="type"></el-checkbox>
-                    <el-checkbox label="CATL" name="type"></el-checkbox>
-                    <el-checkbox label="CMA" name="type"></el-checkbox>
-                    <el-checkbox label="暂未取得资质" name="type"></el-checkbox>
-                </el-checkbox-group>
-            </el-form-item>
-
-            <el-form-item label="主体状态">
-                <el-checkbox-group v-model="form.type" class="querybox">
-                    <el-checkbox label="不限" name="type"></el-checkbox>
-                    <el-checkbox label="正常" name="type"></el-checkbox>
-                    <el-checkbox label="已注销" name="type"></el-checkbox>
-                    <el-checkbox label="已撤销" name="type"></el-checkbox>
-                </el-checkbox-group>
-            </el-form-item>
-            <!-- 地区和机构名称 -->
-            <el-row :gutter="50" style="margin-right: 0px;">
-                <el-form style="display: flex; flex-direction: row;" size="mini">
+        <!-- 头部查询栏 -->
+		<div class="headSearch" >
+			<el-row :gutter="120" style="margin-right: 0px;">
+				<el-form :inline="true">
+                    <el-form-item label="农业系统"  size="small">
+                        <el-select v-model="queryInfo.dtLevel" style="width: 150px;" clearable>
+                            <el-option v-for="item in dtLevelList" :key="item.value" :label="item.label" :value="item.value" ></el-option>
+                        </el-select>
+                    </el-form-item>
 
-                    <el-form-item prop="address" label="地区" class="select" >
-                        <el-cascader  :options="region" v-model="sample_address"
-                            @change="handleChange" size="small">
-                        </el-cascader>
+                    <el-form-item label="机构性质" size="small">
+                        <el-select v-model="queryInfo.jgxz" style="width: 150px;" clearable>
+                            <el-option v-for="item in jxgzList" :key="item.value" :label="item.label" :value="item.value" ></el-option>
+                        </el-select>
                     </el-form-item>
 
-                    <el-form-item prop="name" label="机构名称" class="select" >
-                        <el-input v-model="form.name" size="small"></el-input>
+                    <el-form-item label="产品范围" size="small">
+                        <el-select v-model="queryInfo.cpfw" style="width: 150px;" clearable>
+                            <el-option v-for="item in cpfwList" :key="item.value" :label="item.label" :value="item.value" ></el-option>
+                        </el-select>
                     </el-form-item>
 
-                    <el-form-item prop="name" label="机构负责人" class="select" >
-                        <el-input v-model="form.person" size="small"></el-input>
+                    <el-form-item label="法人姓名" size="small">
+                        <el-input v-model="queryInfo.user_fa"></el-input>
                     </el-form-item>
-                    <el-button type="success" size="mini" style="height: 40px;margin-left: 10px;" @click="searchData()" >查询</el-button>
-                    <el-button type="success" size="mini" style="height: 40px;margin-left: 10px;"  @click="searchData()" >重置</el-button>
-                </el-form>
-                
-            </el-row>
-        </div>
-        
-            <!--  表格数据区域-->
-			<el-table ref="multipleTable" :data="tableData" row-key="id" @selection-change="handleSelectionChange1"
-				border stripe highlight-current-row style="width: 100%;margin-top:30px">
-					<el-table-column type="selection" :reserve-selection="true" width="50"></el-table-column>
-					<el-table-column label="序号" width="50px">
-						<template slot-scope="scope">
-							{{ scope.$index+1 }}
-						</template>
-					</el-table-column>
-                    <el-table-column :key="table.prop" v-for="table in tableHeader" :label="table.label"
-						:prop="table.prop" align="center" :width="table.width" :fixed="table.fixed" />
-                 <!--    分页器区域-->
-                <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange"
-                    :current-page="form.pageNum" :page-sizes="[10, 15, 20]" :page-size="form.pageSize"
-                    layout="total, sizes, prev, pager, next, jumper" :total="total" background />
-	
+                    <!-- 查询 -->
+                    <el-button  size="mini" style="height: 40px;margin-left: 10px;" type="success" @click="searchData()">查询</el-button>
+                    <!-- 重置 -->
+                    <el-button  size="mini" style="height: 40px;margin-left: 5px;" type="success" @click="reset()">重置</el-button>
+				</el-form>
+			</el-row>
+		</div>
 
-                <!-- 操作按钮区域的作用域插槽 -->
-                <el-table-column label="操作" align="center" fixed="right">
-                    <template>
-                        <el-col style="margin-bottom: 5px;">
-                            <el-button type="text" size="mini" @click="readDetails()" style="margin-top:5px">详情</el-button>
-                            <el-button type="text" size="mini" plain @click="reVoke()" style="margin-top:5px">撤销</el-button>
-                        </el-col>
-                    </template>
-			    </el-table-column>
-			</el-table>
-					
+        <!-- 表格区域 -->
+        <el-table ref="multipleTable" :data="tableData"  border stripe highlight-current-row style="width: 100%" :row-style="rowStyle" :cell-style="cellStyle" @selection-change="handleSelectionChange">
+            <el-table-column label="序号" width="50px">
+                <template slot-scope="scope">
+                    {{ scope.$index+1 }}
+                </template>
+		    </el-table-column>
+            <el-table-column :key="table.label" v-for="table in tableHeader" :label="table.label" :prop="table.prop" align="center" :width="table.width" :fixed="table.fixed" />
+        </el-table>
+        	<!--分页器区域-->
+		<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" disabled
+            :current-page="queryInfo.pageNum" :page-sizes="[10, 15, 20]" :page-size="queryInfo.pageSize"
+			layout="total, sizes, prev, pager, next, jumper" :total="total" background />
 
-        </el-form>
-	</div>
+    </div>
 </template>
+
 <script>
+export default {
+    data(){
+        return{
+            queryInfo:{
+                pageSize:10,
+                pageNum:1,
+                jgxz:'',
+                dtLevel:'',
+                cpfw:'',
+                user_fa:''
 
-	export default {
-		data() {
-			return {
-				form: {
-                    properties:[],
-                    certificate:[],
-                    type:[],
-                    address:'',
-                    name:'',
-                    create_time:'',
-                    update_time:'',
-                    pageNum:'',
-                    pageSize:''
-                },
-                total:0,
-                // 数据表格数据
-				tableData: [],
-                tableHeader: [{
-						label: '机构名称',
-						prop: 'name',
-						width: 240
-					},{
-						label: '机构类别',
-						prop: 'properties',
-						width: 160
-					},{
-						label: '机构级别',
-						prop: 'level',
-						width: 160
-					},{
-						label: '所属区域',
-						prop: 'address',
-						width: 240
-					},{
-						label: '机构负责人',
-						prop: 'person',
-						width: 150
-					},{
-						label: '创建时间',
-						prop: 'create_time',
-						width: 200
-					},{
-						label: '修改时间',
-						prop: 'update_time',
-						width: 200
-					},
-                ]}
+            }, 
+            total:0,
+            cellStyle: {
+                padding: 2 + 'px'
+            },
+            rowStyle: {
+                height: 35 + 'px'
+            },
+        //表格区域
+        tableHeader: [
+            {
+                label: '任务名称',
+                prop: 'task_name',
+                width: 150
+			},{
+                label: '任务名称',
+                prop: 'task_name',
+                width: 150
+            },{
+                label: '任务名称',
+                prop: 'task_name',
+                width: 150
+            },{
+                label: '任务名称',
+                prop: 'task_name',
+                width: 150
+            },{
+                label: '任务名称',
+                prop: 'task_name',
+                width: 150
+            },{
+                label: '任务名称',
+                prop: 'task_name',
+                width: 150
+            },{
+                label: '任务名称',
+                prop: 'task_name',
+                width: 150
+            },{
+                label: '任务名称',
+                prop: 'task_name',
+                width: 150
+            },{
+                label: '任务名称',
+                prop: 'task_name',
+                width: 150
+            }
+        ],
+        // 任务状态选项
+        dtLevelList: [
+            {
+                value: '1',
+                label: '省级'
+            }, {
+                value: '2',
+                label: '市级'
+            }, {
+                value: '3',
+                label: '县级'
+            }],
+        jxgzList: [
+            {
+                value: '1',
+                label: '政府部门'
+            }, {
+                value: '2',
+                label: '事业单位'
+            }, {
+                value: '3',
+                label: '企业'
+            }],
+         cpfwList: [
+            {
+                value: '1',
+                label: '种植业产品'
+            }, {
+                value: '2',
+                label: '畜禽产品'
+            }, {
+                value: '3',
+                label: '水产品'
+            },{
+                value: '4',
+                label: '投入品'
+            },{
+                value: '5',
+                label: '产地环境'
+            }]
+        }
+    },
+    created() {
+		this.getJcOrgs()
+	},
+    methods: {
+        async getJcOrgs(){
+             for (var key in this.queryInfo) {
+                if (this.queryInfo[key] == '') {
+                    delete this.queryInfo[key]
+                }
+            }
+            const {data: res} = await this.$http.post("getJcOrgs", this.queryInfo);
+            this.tableData = res.data.rows
         },
-		created() {
-			this.getOrganization()
-		},
-		mounted() {
-			this.getOrganization()
-		},
-		methods: {
-            /** 监听每页显示多少数据的改变 */
-			handleSizeChange(newSize) {
-				this.form.pageSize = newSize
-				this.getOrganization()
+        //查询
+        async searchData(){
+				this.queryInfo.pageNum = 1
+				this.getJcOrgs()
 			},
-            /** 监听页码的改变 */
-			handleCurrentChange(newPage) {
-				this.form.pageNum = newPage
-				this.getOrganization()
-			},
-			 async getOrganization() {
-				const result = await this.$http.post('getOrganization')
-				console.log(result.data.data)
-                // this.form = result.data.data
-                this.tableData = result.data.data
-                this.total = result.data.total
-		}
+        },
+        //重置
+        reset(){
+
+        }
     }
-}
-	
+
 </script>
 
 <style>
-	/* .querybox{
-        padding: -20px;
-    } */
-    .select {
-		display: flex;
-		flex-direction: row;
-		margin-left: 38px;
-        
-	}
-    .card{
-        box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.1);
-        background: rgb(249, 255, 250);
-    }
+.headSearch{
+    margin-left: 60px;
+}
 </style>

+ 12 - 1
src/components/admin/putAccount.vue

@@ -22,8 +22,11 @@
             <el-form-item label="组别" prop="form.groupname" required>
 				<el-input v-model="form.groupname" ></el-input>
 			</el-form-item>
-            <el-form-item label="机构属性" prop="form.properties" required>
+            <!-- <el-form-item label="机构属性" prop="form.properties" required>
 				<el-input v-model="form.properties" ></el-input>
+			</el-form-item> -->
+			 <el-form-item label="机构属性" prop="form.properties" required>
+				<el-input v-model="form.properties" :disabled="true"></el-input>
 			</el-form-item>
             <el-form-item label="联系人姓名" prop="form.contact_name" required>
 				<el-input v-model="form.contact_name" ></el-input>
@@ -88,6 +91,14 @@
 				const result = await this.$http.post('getAccount')
 				console.log(result.data.data)
 					this.form = result.data.data
+					if (this.form.properties == 1){
+                      this.form.properties ='政府部门';
+                }else if(this.form.properties == 2){
+                    this.form.properties ='事业单位';
+                }else{
+                     this.form.properties ='企业';
+                }
+              
         },
        
         }

+ 637 - 0
src/components/admin/reTask.vue

@@ -0,0 +1,637 @@
+
+<template>
+	<div style="width: 100%">
+	<div slot="header" class="clearfix">
+		<el-breadcrumb separator-class="el-icon-arrow-right">		
+		  <el-breadcrumb-item >首页</el-breadcrumb-item>
+		  <el-breadcrumb-item>监测任务</el-breadcrumb-item>
+		  <el-breadcrumb-item>例行监测</el-breadcrumb-item>
+		  <el-breadcrumb-item>任务列表</el-breadcrumb-item>
+		</el-breadcrumb>
+		</div>
+		
+		<!-- 头部查询栏 -->
+		<div class="headSearch">
+			<el-row :gutter="120" style="margin-right: 0px;">
+				<el-form :inline="true">
+				<el-form-item label="年度" class="select" size="small">
+					<el-date-picker v-model="queryInfo.year" style="width: 110px;" value-format="yyyy" type="year" clearable />
+				</el-form-item>
+
+				<el-form-item label="任务状态" class="select" size="small">
+					<el-select v-model="queryInfo.ispublic" style="width: 110px;" clearable>
+						<el-option 
+							v-for="item in taskispublic" 
+							:key="item.value" 
+							:label="item.label"
+							:value="item.value" >
+						</el-option>
+					</el-select>
+				</el-form-item>
+
+				<el-form-item label="任务时间" class="select" size="small">
+					<el-date-picker v-model="queryInfo.starttime" style="width: 180px;" align="right" type="date"
+						:picker-options="pickerOptions" clearable value-format="yyyy-MM-dd" />
+				</el-form-item>
+
+				<el-form-item label="--" class="select" style="margin-left: 8px;" size="small">
+					<el-date-picker v-model="queryInfo.endtime" style="width: 180px;" align="right" type="date"
+						:picker-options="pickerOptions"  clearable />
+				</el-form-item>
+
+				<el-form-item label="任务名称" class="select" size="small">
+					<el-input v-model="queryInfo.task_name"></el-input>
+				</el-form-item>
+
+				<!-- 查询 -->
+				<el-button  size="mini" style="height: 40px;margin-left: 10px;" type="success" @click="searchData()">查询</el-button>
+				<!-- 重置 -->
+				<el-button  size="mini" style="height: 40px;margin-left: 5px;" type="success" @click="reset()">重置</el-button>
+				</el-form>
+			</el-row>
+		</div>
+		
+		<!--头部右侧按钮区域-->
+		<div class="rightButton">
+			<el-row :gutter="90" style="margin-right: 0px;">
+				<div style="display: flex;flex-direction: row;float: right;">
+					<!-- <el-button type="primary" size="small" plain icon="el-icon-plus" @click="add()">新增</el-button> -->
+					<el-button type="primary" size="small" plain icon="el-icon-edit-outline" @click="ispublic()">发布
+					</el-button>
+					<el-button type="primary" size="small" plain icon="el-icon-scissors" @click="repeal()">废止</el-button>
+					<el-button type="primary" size="small" plain icon="el-icon-delete" @click="delArray()">删除</el-button>
+					<!-- <el-button type="primary" size="small" plain icon="el-icon-download">导出</el-button> -->
+				</div>
+			</el-row>
+		</div>
+		
+		<!--  表格数据区域-->
+		<el-table ref="multipleTable" 
+			:data="tableData" 
+			border stripe highlight-current-row 
+			style="width: 100%"
+			:row-style="rowStyle" 
+			:cell-style="cellStyle" 
+			@selection-change="handleSelectionChange">
+		<el-table-column type="selection" width="50"></el-table-column>
+		<el-table-column label="序号" width="50px">
+			<template slot-scope="scope">
+				{{ scope.$index+1 }}
+			</template>
+		</el-table-column>
+			<el-table-column :key="table.label" v-for="table in tableHeader" :label="table.label" :prop="table.prop" align="center"
+				:width="table.width" :fixed="table.fixed" />
+				<el-table-column prop="status" label="任务状态" width="130" align="center" >
+					<template slot-scope="scope">
+						<el-tag v-if="scope.row.ispublic==0">未发布</el-tag>
+						<el-tag type="warning" v-if="scope.row.ispublic==1">已发布</el-tag>
+						<el-tag type="danger" v-if="scope.row.ispublic==2">已废止</el-tag>
+						<el-tag type="info" v-if="scope.row.ispublic==3">已结束,未完成</el-tag>
+						<el-tag type="success" v-if="scope.row.ispublic==4">已结束,已完成</el-tag>
+						<el-tag type="success"  effect="plain" v-if="scope.row.ispublic==5">执行中</el-tag>
+					</template>
+				</el-table-column>
+				<el-table-column prop="level" label="任务优先级" width="95" align="center">
+					<template slot-scope="scope">
+						<el-tag type="success" v-if="scope.row.level==0">一般</el-tag>
+						<el-tag type="warning" v-if="scope.row.level==1">紧急</el-tag>
+						<el-tag type="danger" v-if="scope.row.level==2">特急</el-tag>
+					</template>
+				</el-table-column>
+			<el-table-column label="操作" align="center" fixed="right">
+				<!-- 操作按钮区域的作用域插槽 -->
+				<template slot-scope="scope">
+					<el-col style="margin-bottom: 5px;">
+						<el-button type="success" size="mini" @click="readDialogVisible1(scope.row)" style="margin-top:5px">详情</el-button>
+						<el-button type="success" size="mini" @click="sendBack(scope.row)" style="margin-top:5px" >退回</el-button>
+						<el-button type="success" size="small"  @click="editInform(scope.row.id)">编辑</el-button>
+					</el-col>
+					<el-col style="margin-bottom: 5px;">
+						<!-- <el-button type="success" size="mini" plain @click="takeTheLeadReportList(scope.row.id)" style="margin-top:5px">牵头单位报告</el-button> -->
+						<el-button type="success" size="mini" plain @click="getJcds(scope.row.id)" style="margin-top:5px">检测单</el-button> 
+						<!-- <el-button type="success" size="mini" plain @click="undertakeReport(scope.row.id)">承担单位报告</el-button> -->
+						<el-button type="success" size="mini" plain @click="sampleList(scope.row.id)">抽样单</el-button>
+					</el-col>
+				</template>
+			</el-table-column>
+		</el-table>
+		
+		<!--    分页器区域-->
+		<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange"
+			:current-page="queryInfo.pageNum" :page-sizes="[10, 15, 20]" :page-size="queryInfo.pageSize"
+			layout="total, sizes, prev, pager, next, jumper" :total="total" background />
+	
+		<!-- 任务详情对话框-->
+		<el-dialog title="查看" :visible.sync="readDialogVisible" width="30%" :close-on-click-modal="false"
+			class="dialogItem">
+			<el-form v-if="readDialogVisible" :model="readForm" label-width="100px">
+				<el-form-item label="任务名称:" prop="task_name" class="labelItem">
+					<div>{{readForm.task_name}}</div>
+				</el-form-item>
+				<el-form-item label="任务优先级:" prop="level" class="labelItem">
+					<div v-if="readForm.level=='0'">一般</div>
+					<div v-else-if="readForm.level=='1'">紧急</div>
+					<div v-else>特急</div>
+				</el-form-item>
+				<el-form-item label="监测类型:" prop="task_class" width="70px" class="labelItem">
+					<div>{{readForm.task_class}}</div>
+				</el-form-item>
+				<el-form-item label="年度:" prop="year" class="labelItem">
+					<div>{{readForm.year}}</div>
+				</el-form-item>
+
+				<el-form-item label="批次:" prop="batch" width="200px" class="labelItem">
+					<div>{{readForm.batch}}</div>
+				</el-form-item>
+				<el-form-item label="任务时间:" prop="starttime" width="200px" class="labelItem">
+					<div>{{readForm.starttime}} 至 {{readForm.endtime}}</div>
+				</el-form-item>
+				<el-form-item label="发布单位:" prop="creater" class="labelItem">
+					<div>{{readForm.creater.name}}</div>
+				</el-form-item>
+				<!-- <el-form-item label="牵头单位:" prop="main_unit" class="labelItem">
+					<div>{{readForm.main_unit}}</div>
+				</el-form-item> -->
+				<el-form-item label="附件:" prop="file_url" class="labelItem">
+					<!-- <div>{{readForm.file_url}}</div> -->
+					<el-link :href="readForm.file_url" type="primary">{{readForm.file_name}}</el-link>
+				</el-form-item>
+				<el-form-item label="文件号:" prop="filenum" width="230px" class="labelItem">
+					<div v-if="readForm.filenum==null">无</div>
+					<div v-else>{{readForm.filenum}}</div>
+				</el-form-item>
+				<el-form-item label="备注:" prop="log" class="labelItem">
+					<div v-if="readForm.log==null">无</div>
+					<div v-else>{{readForm.log}}</div>
+				</el-form-item>
+				<div class="footer">
+					<el-button type="success" @click="readDialogVisible = false">返回</el-button>
+				</div>
+			</el-form>
+
+		</el-dialog>
+	</div>
+</template>
+<script>
+	const token = window.sessionStorage.getItem('token')
+	const rybh = window.sessionStorage.getItem('rybh')
+	const rymc = window.sessionStorage.getItem('rymc')
+	export default {
+		name: '',
+		data() {
+			return {
+				queryInfo:{
+					year:'',
+					task_name:'',
+					starttime:'',
+					endtime:'',
+					ispublic:'',
+					pageSize:10,
+					pageNum:1,
+					task_class:'retask',
+					task_id:'33',
+					task_profile_id:''
+				}, 
+				total:0,
+				cellStyle: {
+					padding: 2 + 'px'
+				},
+				rowStyle: {
+					height: 35 + 'px'
+				},
+				tableHeader: [{
+						label: '任务名称',
+						prop: 'task_name',
+						width: 150
+						// fixed: 'left'
+					},
+					{
+						label: '开始时间',
+						prop: 'starttime',
+						width: 120
+					},
+					{
+						label: '结束时间',
+						prop: 'endtime',
+						width: 120
+					},
+					{
+						label: '年度',
+						prop: 'year',
+						width: 80
+						// fixed: 'left'
+					}, {
+						label: '文件号',
+						prop: 'filenum',
+						width: 180
+						// fixed: 'left'
+					},
+					{
+						label: '创建者',
+						prop: 'creater.name',
+						width: 140
+					},
+					{
+						label: '创建时间',
+						prop: 'create_time',
+						width: 180
+					}
+				],
+				// 数据表格数据
+				tableData: [],
+				// 批量删除选中数据
+				multipleSelection: [],
+				// 任务状态选项
+				taskispublic: [{
+					value: '',
+					label: '全部'
+				}, {
+					value: '0',
+					label: '未发布'
+				}, {
+					value: '1',
+					label: '已发布'
+				}, {
+					value: '2',
+					label: '废止'
+				}, {
+					value: '5',
+					label: '执行中'
+				}, {
+					value: '3',
+					label: '已结束,未完成'
+				}, {
+					value: '4',
+					label: '已结束,已完成'
+				}],
+				// 日期选择器快捷选项
+				pickerOptions: {
+					// disabledDate(time) {
+					// 	return time.getTime() > Date.now();
+					// },
+					shortcuts: [{
+						text: '今天',
+						onClick(picker) {
+							picker.$emit('pick', new Date());
+						}
+					}, {
+						text: '昨天',
+						onClick(picker) {
+							const date = new Date();
+							date.setTime(date.getTime() - 3600 * 1000 * 24);
+							picker.$emit('pick', date);
+						}
+					}, {
+						text: '一周前',
+						onClick(picker) {
+							const date = new Date();
+							date.setTime(date.getTime() - 3600 * 1000 * 24 * 7);
+							picker.$emit('pick', date);
+						}
+					}]
+				},
+				// 查看任务详情
+				readDialogVisible: false,
+				readForm: {},
+				multipleSelection: [],
+				delarr: [],
+				pubarr: []
+			}
+		},
+		created() {
+			this.getTasks()
+		},
+		methods: {
+			//新增
+			// add() {
+			// 	this.$router.push('addTask')
+			// },
+			//编辑
+			 editInform(id){
+				this.$router.push({
+					name:'editInformation',
+					params: {
+					task_id:id,
+					},
+				})
+			},
+			//查看抽样机构
+			sampleList(id){
+				this.$router.push({
+					name:'setTaskJg',
+					params: {
+					task_id:id,
+					}
+				})
+			},
+		
+			// 搜索
+			async searchData() {
+				this.queryInfo.pageNum = 1
+				this.getTasks()
+			},
+			// 重置
+			reset(){
+				this.queryInfo={
+					year:'',
+					task_name:'',
+					starttime:'',
+					endtime:'',
+					ispublic:'',
+					pageSize:10,
+					pageNum:1,
+					task_class:'例行监测',
+					task_id
+				}
+				this.getTasks()
+			},
+			//退回
+			async sendBack(){
+				const result = await this.$http.post("postRetask", this.queryInfo);
+
+					if (result.data.code == 0) {
+						this.$message({
+						type: 'success',
+						// message: result.data.message
+						message:'退回成功',
+					})
+				} else {
+					this.$message({
+						type: 'warning',
+						// message: result.data.message
+						message:'退回失败',
+					})
+				}
+				console.log(result.data.code)
+				
+				
+			},
+			/** 监听页码的改变 */
+			handleCurrentChange(newPage) {
+				this.queryInfo.pageNum = newPage
+				this.getTasks()
+			},
+			/** 监听每页显示多少数据的改变 */
+			handleSizeChange(newSize) {
+				this.queryInfo.pageSize = newSize
+				this.getTasks()
+			},
+			// 获取任务列表
+			async getTasks() {
+				for (var key in this.queryInfo) {
+					if (this.queryInfo[key] == '') {
+						delete this.queryInfo[key]
+					}
+				}
+				const {
+					data: res
+				} = await this.$http.post(
+					"getTasks", this.queryInfo
+				);
+				this.tableData = res.data.rows
+				this.total = res.data.total
+			},
+			// 查看任务详情
+			async readDialogVisible1(row) {
+				this.readForm.batch = row.batch
+				this.readForm.task_name = row.task_name
+				this.readForm.task_class = row.task_class
+				this.readForm.level = row.level
+				// console.log(this.readForm.level)
+				this.readForm.year = row.year
+				this.readForm.starttime = row.starttime
+				this.readForm.endtime = row.endtime
+				this.readForm.releaser = row.releaser
+				this.readForm.creater = row.creater
+				this.readForm.main_unit = row.main_unit
+				this.readForm.file_url = row.file_url
+				this.readForm.file_name = row.file_name
+				this.readForm.filenum = row.filenum
+				this.readForm.log = row.log
+				this.readDialogVisible = true
+
+			},
+			// 批量删除
+			handleSelectionChange(val) {
+				this.multipleSelection = val;
+				// console.log(this.multipleSelection)
+			},
+			// 删除任务
+			async delArray() {
+				// 判断任务是否为该创建者创建
+				// for (let i = 0; i < this.multipleSelection.length; i++) {
+				// 	if (rybh != this.multipleSelection[i].releaser) {
+				// 		this.$alert('任务仅创建者可以删除!', {
+				// 			confirmButtonText: '确定',
+				// 			callback: action => {
+				// 			}
+				// 		});
+				// 	}
+				// }
+				var that = this;
+				const length = this.multipleSelection.length;
+				for (let i = 0; i < length; i++) {
+					this.delarr.push(this.multipleSelection[i].id);
+				}
+				const result = await this.$http.post('deleteTasks', {
+					delarr: that.delarr,
+					token: token
+				})
+				console.log(that.delarr);
+				if (result.data.code == 0) {
+					this.$message({
+						type: 'success',
+						message: '删除成功!'
+					});
+					that.getTasks()
+				} else {
+					this.$message({
+						type: 'error',
+						message: '删除失败!'
+					});
+				}
+				// console.log(this.$refs.multipleTable);
+				this.$refs.multipleTable.clearSelection();
+				that.delarr = [];
+				// this.$refs.multipleTable.clearSelectionFun();
+			},
+			// 发布任务
+			async ispublic() {
+				// 判断任务是否为该创建者创建
+				// for (let i = 0; i < this.multipleSelection.length; i++) {
+				// 	if (rybh != this.multipleSelection[i].releaser) {
+				// 		this.$alert('任务仅创建者可以发布!', {
+				// 			confirmButtonText: '确定',
+				// 			callback: action => {
+
+				// 			}
+				// 		});
+				// 	}
+				// }
+				var that = this;
+				let canPub = 0
+				const length = this.multipleSelection.length;
+				// var val = this.selectedData;
+				console.log(this.multipleSelection)
+				// this.pubarr = this.multipleSelection;
+				for (let i = 0; i < length; i++) {
+					if (this.multipleSelection[i].ispublic != '0') {
+						this.$alert('任务不在可发布状态!', {
+							confirmButtonText: '确定',
+							callback: action => {
+
+							}
+						});
+					} else {
+						this.multipleSelection[i].ispublic = 1
+						canPub = 1
+					}
+				}
+				if(canPub==1){
+					const result = await this.$http.post('putTaskPublic', {
+						pubarr: that.multipleSelection,
+						token: token,
+					})
+					console.log(result.data.code)
+					if (result.data.code == 0) {
+						this.$message({
+							type: 'success',
+							message: '发布成功!'
+						});
+						that.getTasks()
+					}else{
+						this.$message({
+							type: 'error',
+							message: result.data.message})
+					}				
+				}
+			},
+			// 废止任务
+			async repeal() {
+				// 判断任务是否为该创建者创建
+				for (let i = 0; i < this.multipleSelection.length; i++) {
+					if (rybh != this.multipleSelection[i].releaser) {
+						this.$alert('任务仅创建者可以废止!', {
+							confirmButtonText: '确定',
+							callback: action => {}
+						});
+					}
+				}
+				var that = this;
+				let canPub = 0
+				const length = this.multipleSelection.length;
+				// var val = this.selectedData;
+				this.pubarr = this.multipleSelection;
+				for (let i = 0; i < length; i++) {
+					if (this.pubarr[i].ispublic == 1) {
+						this.pubarr[i].ispublic = 2
+						canPub = 1
+					} else {
+						this.$alert('任务不在可废止状态!', {
+							confirmButtonText: '确定',
+							callback: action => {
+							}
+						});
+					}
+					if(canPub==1){
+						const result = await this.$http.post('putTaskPublic', {
+							pubarr: that.pubarr,
+							token: token
+						})
+						if (result.data.code == 0) {
+							this.$message({
+								type: 'success',
+								message: '任务已废止!'
+							});
+							that.getTasks()
+						}
+					}
+					
+				}
+
+			}
+		},
+	}
+</script>
+
+<style lang="less" scoped>
+	.el-breadcrumb {
+		margin-bottom: 20px;
+	}
+	.el-table {
+		align-items: center;
+		margin-top: 25px;
+	}
+
+	/deep/ .el-col {
+		padding-right: 0 !important;
+	}
+
+	/deep/ .el-radio-group label {
+		width: 180px;
+		margin-right: 10px;
+	}
+
+	.el-pagination {
+		margin-top: 25px;
+	}
+
+	// .el-cascader {
+	// 	width: 290px;
+	// }
+
+	.el-select {
+		width: 210px;
+		height: 100%;
+	}
+
+	.select {
+		// display: flex;
+		flex-direction: row;
+		margin-left: 35px;
+		
+	}
+
+	.dialogItem /deep/ .el-dialog__body {
+		padding: 15px 12px 0;
+		color: #606266;
+		font-size: 14px;
+		word-break: break-all;
+	}
+
+	.el-form-item {
+		margin-bottom: 8px;
+	}
+
+	.labelItem /deep/ .el-form-item__label {
+		// width: 80px;
+		text-align: center;
+		vertical-align: middle;
+		float: left;
+		font-size: 13px;
+		color: #606266;
+		// line-height: 40px;
+		padding: 0 2px 0 0;
+		-webkit-box-sizing: border-box;
+		box-sizing: border-box;
+	}
+
+	.el-dialog__header {
+		border-bottom: 1px solid #e5e5e5;
+	}
+
+	// .el-form-item__content{
+	// 	margin-left: 0;
+	// }
+	.footer {
+		padding: 5px 0;
+		border-top: 1px solid #e5e5e5;
+		text-align: center;
+	}
+	.rightButton{
+		margin-top: 20px;
+	}
+	.headSearch{
+		margin-left: 25px;
+	}
+</style>

+ 217 - 0
src/components/admin/readCheckList.vue

@@ -0,0 +1,217 @@
+<template>
+    
+   	<div style="width: 100%">
+        <!-- 标题栏导航 -->
+	    <div slot="header" class="clearfix">
+            <el-breadcrumb separator-class="el-icon-artableDate-right">		
+            <el-breadcrumb-item >首页</el-breadcrumb-item>
+            <el-breadcrumb-item>例行监测</el-breadcrumb-item>
+            <el-breadcrumb-item>查看检测单</el-breadcrumb-item>
+            </el-breadcrumb>
+		</div>
+<!-- 表格区域 -->
+    <el-table :data="tableData" border stripe highlight-current-row style="width: 100%" >
+        <el-table-column :key="table.label" v-for="table in tableHeader2" :label="table.label"
+            :prop="table.prop" align="center" :width="table.width" :fixed="table.fixed" />
+        <!-- 操作 -->
+        <el-table-column label="操作" align="center" fixed="right">
+        <template>
+            <el-button style="margin:5px 0" type="success" size="small" @click="dialogVisible=true">查看详情</el-button>
+        </template>
+        </el-table-column>
+    </el-table>
+        <!--分页器区域-->
+            <el-pagination class="feyeqi" @size-change="handleSizeChange" @current-change="handleCurrentChange"
+                :current-page="queryInfo.pageNum" :page-sizes="[10, 15, 20]" :page-size="queryInfo.pageSize"
+                layout="total, sizes, prev, pager, next, jumper" :total="total" background />
+        <!-- 返回按钮 -->
+            <div class="btns">
+                <el-button plain size="medium" @click="returnJcd()" >
+                    返回
+                </el-button>
+            </div>
+        <!-- 查看详情对话框-->
+		<el-dialog title="查看" :visible.sync="dialogVisible" width="30%" :close-on-click-modal="false"
+			class="dialogItem" >
+			<el-form v-if="dialogVisible" label-width="100px">
+				<el-form-item label="抽样单编码:" prop="tableData.cyd_code" class="labelItem">
+					<div>{{readForm.cyd_code}}</div>
+				</el-form-item>
+				<el-form-item label="抽样单状态:" prop="cyd_status" class="labelItem">
+					<div v-if="level=='0'">一般</div>
+					<div v-if="level=='1'">紧急</div>
+					<div v-if="level=='2'">特急</div>
+				</el-form-item>
+				<el-form-item label="抽样人员1:" prop="sample_person_one" width="70px" class="labelItem">
+					<div>{{sample_person_one}}</div>
+				</el-form-item>
+				<el-form-item label="抽样人员2:" prop="sample_person_two" class="labelItem">
+					<div>{{readForm.sample_person_two}}</div>
+				</el-form-item>
+				<el-form-item label="抽样时间:" prop="cyd_date" class="labelItem">
+					<div>{{readForm.cyd_date}}</div>
+				</el-form-item>
+				<el-form-item label="单位名称:" prop="inspected_name" class="labelItem">
+					<div>{{readForm.inspected_name}}</div>
+				</el-form-item>
+				<el-form-item label="单位地址:" prop="inspected_address" class="labelItem">
+					<div>{{readForm.inspected_address}}</div>
+				</el-form-item>
+                <el-form-item label="联系人:" prop="contact_name" class="labelItem">
+					<div>{{readForm.contact_name}}</div>
+				</el-form-item>
+				<el-form-item label="备注:" prop="cyd_log" class="labelItem">
+					<div v-if="readForm.cyd_log==null">无</div>
+					<div v-else>{{readForm.cyd_log}}</div>
+				</el-form-item>
+				<div class="footer">
+					<el-button type="success" @click="dialogVisible = false">返回</el-button>
+				</div>
+			</el-form>
+		</el-dialog>
+
+    </div>
+</template>
+
+<script>
+export default {
+    data() {
+        return {
+            // 查看任务详情
+			dialogVisible: false,
+			readForm: {
+                cyd_code:''
+            },
+            // 数据表格数据
+			tableData:[],
+            sampleOrgId:{},
+            queryInfo:{
+					pageSize:10,
+					pageNum:1,
+					task_class:'例行监测',
+                    task_id: 39, //任务id
+                    task_profile_id: 90, //task_profile_id
+                    sample_org_id: 18, //抽样单位id
+                    check_org_id: 272, //检测单位id
+                    cyd_status:'',
+                    cyd_status_condition:'',
+                    cyd_code:''
+                    },
+                tableHeader2: [{
+                            label: '抽样单编码',
+                            prop: 'cyd_code',
+                            width: 180,
+                        },{
+                            label: '抽样人员1',
+                            prop: 'cydProfile.sample_person_one',
+                            width: 120,
+                        },{
+                            label: '抽样人员2',
+                            prop: 'cydProfile.sample_person_two',
+                            width: 120,
+                        },{
+                            label: '抽样时间',
+                            prop: 'cydProfile.cyd_date',
+                            width: 160,
+                        },
+                        // {
+                        //     label: '样品名称',
+                        //     prop: 'inspectedUnit.sample_name',
+                        //     width: 120,
+                        // },{
+                        //     label: '样品商标',
+                        //     prop: 'sample.data.sample_brand'
+                        // },
+                        {
+                            label: '抽样单状态',
+                            prop: 'cyd_status'
+                        },
+                ]  
+        }
+    },
+    mounted() {
+        this.getJcds()
+    },
+    created() {
+        this.id = this.$route.params.id
+        // this.task_id = this.$route.params.id
+        // console.log(this.task_id)
+        this.getJcds()
+    },
+	methods: {
+        //返回
+        returnJcd(){
+            this.$router.push('getJcds')
+        },
+       // 获取抽样单列表
+        async getJcds() {
+            for (var key in this.queryInfo) {
+                if (this.queryInfo[key] == '') {
+                    delete this.queryInfo[key]
+                }
+            }
+            const {
+                data: res
+            } = await this.$http.post(
+                "getJcds", this.queryInfo
+            );
+            this.tableData = res.data.rows
+            console.log( this.tableData)
+            this.total = res.data.total
+            this.task_id = res.data.rows.task_id
+            for(let i=0; i<this.tableData.length; i++){
+                if (this.tableData[i].cyd_status == "0"){
+                      this.tableData[i].cyd_status ="未发布";
+                }else if(this.tableData[i].cyd_status == "1"){
+                    this.tableData[i].cyd_status ="已发布";
+                }else if(this.tableData[i].cyd_status == "2"){
+                    this.tableData[i].cyd_status ="废止";
+                }else if(this.tableData[i].cyd_status == "3"){
+                    this.tableData[i].cyd_status ="已结束未完成";
+                }else if(this.tableData[i].cyd_status == "4"){
+                    this.tableData[i].cyd_status ="已结束已完成";
+                }else{
+                     this.tableData[i].releaser.properties ="执行中";
+                }
+            }
+        },
+        
+        //分页器
+                handleSizeChange(val) {
+                    console.log(`每页 ${val} 条`);
+                    },
+                handleCurrentChange(val) {
+                    this.queryInfo.pageNum = val;
+                    console.log(`当前页: ${val}`);
+                    this.getJcds()
+                    },
+                /** 监听页码的改变 */
+                handleCurrentChange(newPage) {
+                    this.queryInfo.pageNum = newPage
+                    this.getJcds()
+                },
+                /** 监听每页显示多少数据的改变 */
+                handleSizeChange(newSize) {
+                    this.queryInfo.pageSize = newSize
+                    this.getJcds()
+                },
+            	// 查看任务详情
+			async readDialogVisible1(row) {
+				this.readForm.cyd_code = row.cyd_code
+				
+				this.readDialogVisible = true
+            }
+         
+    }
+}
+</script>
+<style>
+.btns{
+	float:right;
+	/* margin-top: 10px; */
+	padding: 10px;
+}
+.feyeqi{
+    margin-top: 10px;
+}
+</style>

+ 96 - 83
src/components/admin/readSampleList.vue

@@ -3,7 +3,7 @@
    	<div style="width: 100%">
         <!-- 标题栏导航 -->
 	    <div slot="header" class="clearfix">
-            <el-breadcrumb separator-class="el-icon-arrow-right">		
+            <el-breadcrumb separator-class="el-icon-artableDate-right">		
             <el-breadcrumb-item >首页</el-breadcrumb-item>
             <el-breadcrumb-item>例行监测</el-breadcrumb-item>
             <el-breadcrumb-item>查看抽样单</el-breadcrumb-item>
@@ -16,7 +16,7 @@
         <!-- 操作 -->
         <el-table-column label="操作" align="center" fixed="right">
         <template>
-            <el-button style="margin:5px 0" type="success" size="small" @click="readSample()">查看详情</el-button>
+            <el-button style="margin:5px 0" type="success" size="small" @click="readDialogVisible1(scope.row)">查看详情</el-button>
         </template>
         </el-table-column>
     </el-table>
@@ -30,6 +30,46 @@
                     返回
                 </el-button>
             </div>
+        <!-- 查看详情对话框-->
+		<el-dialog title="查看" :visible.sync="readDialogVisible" width="30%" :close-on-click-modal="false"
+			class="dialogItem">
+			<el-form v-if="readDialogVisible" label-width="100px">
+				<el-form-item label="抽样单编码:" prop="tableData.cyd_code" class="labelItem">
+					<div>{{readForm.cyd_code}}</div>
+				</el-form-item>
+				<el-form-item label="抽样单状态:" prop="cyd_status" class="labelItem">
+					<div v-if="level=='0'">一般</div>
+					<div v-if="level=='1'">紧急</div>
+					<div v-if="level=='2'">特急</div>
+				</el-form-item>
+				<el-form-item label="抽样人员1:" prop="sample_person_one" width="70px" class="labelItem">
+					<div>{{sample_person_one}}</div>
+				</el-form-item>
+				<el-form-item label="抽样人员2:" prop="sample_person_two" class="labelItem">
+					<div>{{readForm.sample_person_two}}</div>
+				</el-form-item>
+				<el-form-item label="抽样时间:" prop="cyd_date" class="labelItem">
+					<div>{{readForm.cyd_date}}</div>
+				</el-form-item>
+				<el-form-item label="单位名称:" prop="inspected_name" class="labelItem">
+					<div>{{readForm.inspected_name}}</div>
+				</el-form-item>
+				<el-form-item label="单位地址:" prop="inspected_address" class="labelItem">
+					<div>{{readForm.inspected_address}}</div>
+				</el-form-item>
+                <el-form-item label="联系人:" prop="contact_name" class="labelItem">
+					<div>{{readForm.contact_name}}</div>
+				</el-form-item>
+				<el-form-item label="备注:" prop="cyd_log" class="labelItem">
+					<div v-if="readForm.cyd_log==null">无</div>
+					<div v-else>{{readForm.cyd_log}}</div>
+				</el-form-item>
+				<div class="footer">
+					<el-button type="success" @click="readDialogVisible = false">返回</el-button>
+				</div>
+			</el-form>
+		</el-dialog>
+
     </div>
 </template>
 
@@ -37,6 +77,9 @@
 export default {
     data() {
         return {
+            // 查看任务详情
+			readDialogVisible: false,
+			readForm: {},
             // 数据表格数据
 			tableData:[],
             sampleOrgId:{},
@@ -44,89 +87,51 @@ export default {
 					pageSize:10,
 					pageNum:1,
 					task_class:'例行监测',
-                    task_id: 33, //任务id
+                    task_id: 39, //任务id
+                    task_profile_id: 90, //task_profile_id
                     sample_org_id: 18, //抽样单位id
                     check_org_id: 272, //检测单位id
-                    sample_address:null, //抽样地址
-                    create_time:null,
-                    update_time: null,
-                    delete_time: null,
-                    properties:null, 
+                    cyd_status:'',
+                    cyd_status_condition:'',
+                    cyd_code:''
                     },
-             creater: {
-                id:'', 
-                name:null, 
-                name_other: null,
-                groupname:null, 
-                // properties:null, 
-                contact_name: null, 
-                contact_phone: null 
-                }, 
-            releaser: {
-                id:'', 
-                name:null, 
-                name_other: null, 
-                groupname: null, 
-                // properties:null, 
-                contact_name: null, 
-                contact_phone: null
-                }, 
-                year: null, 
-                batch:null, 
-                qydm: null, 
-                level:null, 
-                task_class: "例行监测",
-                ispublic:null, 
-                filenum:null, 
-                log:null, 
-                file_url: null, 
-                file_name:null, 
-                is_divide: null, 
-                create_time: null, 
-                update_time:null, 
-            	total:0,
                 tableHeader2: [{
-                            label: '任务名称',
-                            prop: 'task_name',
+                            label: '抽样单编码',
+                            prop: 'cyd_code',
                             width: 180,
                         },{
-                            label: '开始时间',
-                            prop: 'starttime',
+                            label: '抽样人员1',
+                            prop: 'cydProfile.sample_person_one',
                             width: 120,
                         },{
-                            label: '结束时间',
-                            prop: 'endtime',
+                            label: '抽样人员2',
+                            prop: 'cydProfile.sample_person_two',
                             width: 120,
                         },{
-                            label: '创建者',
-                            prop: 'releaser.name',
+                            label: '抽样时间',
+                            prop: 'cydProfile.cyd_date',
                             width: 160,
-                        },{
-                            label: '组别',
-                            prop: 'releaser.groupname',
-                            width: 120,
-                        },{
-                            label: '机构性质',
-                            prop: 'releaser.properties'
-                        },{
-                            label: '任务优先级',
-                            prop: 'releaser.level',
-                            width: 120,
-                        },{
-                            label: '文件号',
-                            prop: 'releaserfilenum'
+                        },
+                        // {
+                        //     label: '样品名称',
+                        //     prop: 'inspectedUnit.sample_name',
+                        //     width: 120,
+                        // },{
+                        //     label: '样品商标',
+                        //     prop: 'sample.data.sample_brand'
+                        // },
+                        {
+                            label: '抽样单状态',
+                            prop: 'cyd_status'
                         },
                 ]  
         }
     },
     mounted() {
-        this.getTasks()
+        this.getCyds()
     },
     created() {
-        this.id = this.$route.params.id
-        // this.task_id = this.$route.params.id
-        // console.log(this.task_id)
-        this.getTasks()
+        this.getCyds()
     },
 	methods: {
         //返回
@@ -134,33 +139,34 @@ export default {
             this.$router.push('setTaskJg')
         },
        // 获取抽样单列表
-        async getTasks() {
+        async getCyds() {
             for (var key in this.queryInfo) {
                 if (this.queryInfo[key] == '') {
                     delete this.queryInfo[key]
                 }
             }
-            const {
-                data: res
-            } = await this.$http.post(
-                "getTasks", this.queryInfo
-            );
+            const {data: res} = await this.$http.post("getCyds", this.queryInfo);
             this.tableData = res.data.rows
             console.log( this.tableData)
             this.total = res.data.total
             this.task_id = res.data.rows.task_id
             for(let i=0; i<this.tableData.length; i++){
-                if (this.tableData[i].releaser.properties == "1"){
-                      this.tableData[i].releaser.properties ="政府部门";
-                }else if(this.tableData[i].releaser.properties == "2"){
-                    this.tableData[i].releaser.properties ="事业单位";
+                if (this.tableData[i].cyd_status == "0"){
+                      this.tableData[i].cyd_status ="未发布";
+                }else if(this.tableData[i].cyd_status == "1"){
+                    this.tableData[i].cyd_status ="已发布";
+                }else if(this.tableData[i].cyd_status == "2"){
+                    this.tableData[i].cyd_status ="废止";
+                }else if(this.tableData[i].cyd_status == "3"){
+                    this.tableData[i].cyd_status ="已结束未完成";
+                }else if(this.tableData[i].cyd_status == "4"){
+                    this.tableData[i].cyd_status ="已结束已完成";
                 }else{
-                     this.tableData[i].releaser.properties ="企业";
+                     this.tableData[i].releaser.properties ="执行中";
                 }
             }
-                
-                console.log(res.data.rows)
         },
+        
         //分页器
                 handleSizeChange(val) {
                     console.log(`每页 ${val} 条`);
@@ -168,18 +174,25 @@ export default {
                 handleCurrentChange(val) {
                     this.queryInfo.pageNum = val;
                     console.log(`当前页: ${val}`);
-                    this.getTasks()
+                    this.getCyds()
                     },
                 /** 监听页码的改变 */
                 handleCurrentChange(newPage) {
                     this.queryInfo.pageNum = newPage
-                    this.getTasks()
+                    this.getCyds()
                 },
                 /** 监听每页显示多少数据的改变 */
                 handleSizeChange(newSize) {
                     this.queryInfo.pageSize = newSize
-                    this.getTasks()
+                    this.getCyds()
                 },
+            	// 查看抽样单详情
+			async readDialogVisible1(row) {
+				this.readForm.cyd_code = row.cyd_code
+				
+				this.readDialogVisible = true
+            }
+         
     }
 }
 </script>

+ 37 - 6
src/components/admin/routineMonitor.vue

@@ -14,7 +14,6 @@
 		<div class="headSearch">
 			<el-row :gutter="120" style="margin-right: 0px;">
 				<el-form :inline="true">
-				<!-- <el-form style="display: flex; flex-direction: row;" > -->
 				<el-form-item label="年度" class="select" size="small">
 					<el-date-picker v-model="queryInfo.year" style="width: 110px;" value-format="yyyy" type="year" clearable />
 				</el-form-item>
@@ -79,7 +78,7 @@
 			<template slot-scope="scope">
 				{{ scope.$index+1 }}
 			</template>
-			</el-table-column>
+		</el-table-column>
 			<el-table-column :key="table.label" v-for="table in tableHeader" :label="table.label" :prop="table.prop" align="center"
 				:width="table.width" :fixed="table.fixed" />
 				<el-table-column prop="status" label="任务状态" width="130" align="center" >
@@ -104,7 +103,7 @@
 				<template slot-scope="scope">
 					<el-col style="margin-bottom: 5px;">
 						<el-button type="success" size="mini" @click="readDialogVisible1(scope.row)" style="margin-top:5px">详情</el-button>
-						<el-button type="success" size="mini" @click="sendBack(scope.row)" style="margin-top:5px">退回</el-button>
+						<el-button type="success" size="mini" @click="sendBack(scope.row)" style="margin-top:5px" >退回</el-button>
 					</el-col>
 					<el-col style="margin-bottom: 5px;">
 						<!-- <el-button type="success" size="mini" plain @click="takeTheLeadReportList(scope.row.id)" style="margin-top:5px">牵头单位报告</el-button> -->
@@ -181,6 +180,7 @@
 		data() {
 			return {
 				queryInfo:{
+					cyd_id:'367',
 					year:'',
 					task_name:'',
 					starttime:'',
@@ -191,7 +191,7 @@
 					task_class:'例行监测',
 					task_id:'',
 					task_profile_id:''
-				},
+				}, 
 				total:0,
 				cellStyle: {
 					padding: 2 + 'px'
@@ -372,8 +372,39 @@
 				this.getTasks()
 			},
 			//退回
-			sendBack(){
-
+			async sendBack(){
+				const result = await this.$http.post("postRetask", this.queryInfo);
+				// this.tableData = res.data.rows
+				// console.log(this.tableData)
+				// this.total = res.data.total
+				
+				// if (result.code = 0){
+				// 	this.$message({
+				// 	message:'退回成功',
+				// 	type: 'success'});
+				// 	this.getTasks()}
+				// else {
+				// 	this.$message({
+				// 	message:'退回失败',
+				// 	type: 'warning'
+				// 	});
+				// 	this.getTasks()
+					if (result.data.code == 0) {
+						this.$message({
+						type: 'success',
+						// message: result.data.message
+						message:'退回成功',
+					})
+				} else {
+					this.$message({
+						type: 'warning',
+						// message: result.data.message
+						message:'退回失败',
+					})
+				}
+				console.log(result.data.code)
+				
+				
 			},
 			/** 监听页码的改变 */
 			handleCurrentChange(newPage) {

+ 1 - 1
src/components/admin/setTaskJg.vue

@@ -16,7 +16,7 @@
         <!-- 操作 -->
         <el-table-column label="操作" align="center" fixed="right">
         <template>
-            <el-button @click="read()" style="margin:5px 0" type="success" size="small">查看抽样单列表</el-button>
+            <el-button @click="read(id)" style="margin:5px 0" type="success" size="small">查看抽样单列表</el-button>
         </template>
         </el-table-column>
     </el-table>

+ 282 - 252
src/components/admin/specialMonitor.vue

@@ -1,73 +1,84 @@
+
 <template>
 	<div style="width: 100%">
-
-				<div slot="header" class="clearfix">
-		<el-breadcrumb separator-class="el-icon-arrow-right">
-			
+	<div slot="header" class="clearfix">
+		<el-breadcrumb separator-class="el-icon-arrow-right">		
 		  <el-breadcrumb-item >首页</el-breadcrumb-item>
 		  <el-breadcrumb-item>监测任务</el-breadcrumb-item>
 		  <el-breadcrumb-item>专项监测</el-breadcrumb-item>
 		  <el-breadcrumb-item>任务列表</el-breadcrumb-item>
 		</el-breadcrumb>
 		</div>
-		<!-- 头部搜查询栏 -->
+		
+		<!-- 头部查询栏 -->
 		<div class="headSearch">
 			<el-row :gutter="120" style="margin-right: 0px;">
-			<!-- <el-form style="display: flex; flex-direction: row;"> -->
 				<el-form :inline="true">
-				<el-form-item label="年度" class="select" size="mini">
-					<el-date-picker v-model="queryInfo.year" style="width: 110px;" value-format="yyyy" type="year"
-						clearable />
+				<el-form-item label="年度" class="select" size="small">
+					<el-date-picker v-model="queryInfo.year" style="width: 110px;" value-format="yyyy" type="year" clearable />
 				</el-form-item>
-				<el-form-item label="任务状态" class="select" size="mini">
+
+				<el-form-item label="任务状态" class="select" size="small">
 					<el-select v-model="queryInfo.ispublic" style="width: 110px;" clearable>
-						<el-option v-for="item in taskispublic" :key="item.value" :label="item.label"
+						<el-option 
+							v-for="item in taskispublic" 
+							:key="item.value" 
+							:label="item.label"
 							:value="item.value" >
 						</el-option>
 					</el-select>
 				</el-form-item>
-				<el-form-item label="任务时间" class="select" size="mini">
+
+				<el-form-item label="任务时间" class="select" size="small">
 					<el-date-picker v-model="queryInfo.starttime" style="width: 180px;" align="right" type="date"
 						:picker-options="pickerOptions" clearable value-format="yyyy-MM-dd" />
 				</el-form-item>
-				<el-form-item label="--" class="select" style="margin-left: 10px;" size="mini">
+
+				<el-form-item label="--" class="select" style="margin-left: 8px;" size="small">
 					<el-date-picker v-model="queryInfo.endtime" style="width: 180px;" align="right" type="date"
 						:picker-options="pickerOptions"  clearable />
 				</el-form-item>
-				<el-form-item label="任务名称" class="select" size="mini">
+
+				<el-form-item label="任务名称" class="select" size="small">
 					<el-input v-model="queryInfo.task_name"></el-input>
 				</el-form-item>
+
 				<!-- 查询 -->
 				<el-button  size="mini" style="height: 40px;margin-left: 10px;" type="success" @click="searchData()">查询</el-button>
 				<!-- 重置 -->
 				<el-button  size="mini" style="height: 40px;margin-left: 5px;" type="success" @click="reset()">重置</el-button>
-			</el-form>
-		</el-row>
+				</el-form>
+			</el-row>
 		</div>
-		<!--  头部右边按钮区域-->
+		
+		<!--头部右侧按钮区域-->
 		<div class="rightButton">
 			<el-row :gutter="90" style="margin-right: 0px;">
-			<div style="display: flex;flex-direction: row;float: right;">
-				<el-button type="primary" size="small" plain icon="el-icon-plus" @click="add()">新增</el-button>
-				<el-button type="primary" size="small" plain icon="el-icon-edit-outline" @click="ispublic()">发布
-				</el-button>
-				<el-button type="primary" size="small" plain icon="el-icon-scissors" @click="repeal()">废止</el-button>
-				<el-button type="primary" size="small" plain icon="el-icon-delete" @click="delArray()">删除</el-button>
-				<!-- <el-button type="primary" size="small" plain icon="el-icon-download">导出</el-button> -->
-			</div>
+				<div style="display: flex;flex-direction: row;float: right;">
+					<el-button type="primary" size="small" plain icon="el-icon-plus" @click="add()">新增</el-button>
+					<el-button type="primary" size="small" plain icon="el-icon-edit-outline" @click="ispublic()">发布
+					</el-button>
+					<el-button type="primary" size="small" plain icon="el-icon-scissors" @click="repeal()">废止</el-button>
+					<el-button type="primary" size="small" plain icon="el-icon-delete" @click="delArray()">删除</el-button>
+					<!-- <el-button type="primary" size="small" plain icon="el-icon-download">导出</el-button> -->
+				</div>
 			</el-row>
 		</div>
 		
-
-        <!--  表格数据区域-->
-		<el-table ref="multipleTable" :data="tableData" border stripe highlight-current-row style="width: 100%"
-			:row-style="rowStyle" :cell-style="cellStyle" @selection-change="handleSelectionChange">
-			<el-table-column type="selection" width="50"></el-table-column>
-			<el-table-column label="序号" width="50px">
-				<template slot-scope="scope">
-					{{ scope.$index+1 }}
-				</template>
-			</el-table-column>
+		<!--  表格数据区域-->
+		<el-table ref="multipleTable" 
+			:data="tableData" 
+			border stripe highlight-current-row 
+			style="width: 100%"
+			:row-style="rowStyle" 
+			:cell-style="cellStyle" 
+			@selection-change="handleSelectionChange">
+		<el-table-column type="selection" width="50"></el-table-column>
+		<el-table-column label="序号" width="50px">
+			<template slot-scope="scope">
+				{{ scope.$index+1 }}
+			</template>
+		</el-table-column>
 			<el-table-column :key="table.label" v-for="table in tableHeader" :label="table.label" :prop="table.prop" align="center"
 				:width="table.width" :fixed="table.fixed" />
 				<el-table-column prop="status" label="任务状态" width="130" align="center" >
@@ -80,7 +91,7 @@
 						<el-tag type="success"  effect="plain" v-if="scope.row.ispublic==5">执行中</el-tag>
 					</template>
 				</el-table-column>
-				<el-table-column prop="level" label="任务优先级" width="85">
+				<el-table-column prop="level" label="任务优先级" width="95" align="center">
 					<template slot-scope="scope">
 						<el-tag type="success" v-if="scope.row.level==0">一般</el-tag>
 						<el-tag type="warning" v-if="scope.row.level==1">紧急</el-tag>
@@ -91,12 +102,14 @@
 				<!-- 操作按钮区域的作用域插槽 -->
 				<template slot-scope="scope">
 					<el-col style="margin-bottom: 5px;">
-						<el-button type="success" size="mini" @click="readDialogVisible1(scope.row)">详情</el-button>
-						<el-button type="success" size="mini" plain @click="leadReport()">牵头单位报告</el-button>
+						<el-button type="success" size="mini" @click="readDialogVisible1(scope.row)" style="margin-top:5px">详情</el-button>
+						<el-button type="success" size="mini" @click="sendBack(scope.row)" style="margin-top:5px">退回</el-button>
 					</el-col>
 					<el-col style="margin-bottom: 5px;">
-						<el-button type="success" size="mini" plain @click="undertakeReportZx()">承担单位报告</el-button>
-						<el-button type="success" size="mini" plain @click="taskSampleZx()">抽样单</el-button>
+						<!-- <el-button type="success" size="mini" plain @click="takeTheLeadReportList(scope.row.id)" style="margin-top:5px">牵头单位报告</el-button> -->
+						<el-button type="success" size="mini" plain @click="getJcds(scope.row.id)" style="margin-top:5px">检测单</el-button> 
+						<!-- <el-button type="success" size="mini" plain @click="undertakeReport(scope.row.id)">承担单位报告</el-button> -->
+						<el-button type="success" size="mini" plain @click="sampleList(scope.row.id)">抽样单</el-button>
 					</el-col>
 				</template>
 			</el-table-column>
@@ -132,17 +145,17 @@
 				<el-form-item label="任务时间:" prop="starttime" width="200px" class="labelItem">
 					<div>{{readForm.starttime}} 至 {{readForm.endtime}}</div>
 				</el-form-item>
-				<el-form-item label="发布单位:" prop="releaser" class="labelItem">
-					<div>{{readForm.releaser}}</div>
+				<el-form-item label="发布单位:" prop="creater" class="labelItem">
+					<div>{{readForm.creater.name}}</div>
 				</el-form-item>
-				<el-form-item label="牵头单位:" prop="main_unit" class="labelItem">
+				<!-- <el-form-item label="牵头单位:" prop="main_unit" class="labelItem">
 					<div>{{readForm.main_unit}}</div>
-				</el-form-item>
+				</el-form-item> -->
 				<el-form-item label="附件:" prop="file_url" class="labelItem">
 					<!-- <div>{{readForm.file_url}}</div> -->
 					<el-link :href="readForm.file_url" type="primary">{{readForm.file_name}}</el-link>
 				</el-form-item>
-				<el-form-item label="文件号:" prop="filenum" width="200px" class="labelItem">
+				<el-form-item label="文件号:" prop="filenum" width="230px" class="labelItem">
 					<div v-if="readForm.filenum==null">无</div>
 					<div v-else>{{readForm.filenum}}</div>
 				</el-form-item>
@@ -157,15 +170,13 @@
 
 		</el-dialog>
 	</div>
-
 </template>
-
 <script>
-
 	const token = window.sessionStorage.getItem('token')
+	const rybh = window.sessionStorage.getItem('rybh')
 	const rymc = window.sessionStorage.getItem('rymc')
 	export default {
-		name: 'specialMonitor',
+		name: '',
 		data() {
 			return {
 				queryInfo:{
@@ -176,9 +187,60 @@
 					ispublic:'',
 					pageSize:10,
 					pageNum:1,
-					task_class:'专项监测'
+					task_class:'专项监测',
+					task_id:'',
+					task_profile_id:''
+				}, 
+				total:0,
+				cellStyle: {
+					padding: 2 + 'px'
+				},
+				rowStyle: {
+					height: 35 + 'px'
 				},
-					// 任务状态选项
+				tableHeader: [{
+						label: '任务名称',
+						prop: 'task_name',
+						width: 150
+						// fixed: 'left'
+					},
+					{
+						label: '开始时间',
+						prop: 'starttime',
+						width: 120
+					},
+					{
+						label: '结束时间',
+						prop: 'endtime',
+						width: 120
+					},
+					{
+						label: '年度',
+						prop: 'year',
+						width: 80
+						// fixed: 'left'
+					}, {
+						label: '文件号',
+						prop: 'filenum',
+						width: 180
+						// fixed: 'left'
+					},
+					{
+						label: '创建者',
+						prop: 'creater.name',
+						width: 140
+					},
+					{
+						label: '创建时间',
+						prop: 'create_time',
+						width: 180
+					}
+				],
+				// 数据表格数据
+				tableData: [],
+				// 批量删除选中数据
+				multipleSelection: [],
+				// 任务状态选项
 				taskispublic: [{
 					value: '',
 					label: '全部'
@@ -227,97 +289,72 @@
 						}
 					}]
 				},
-				cellStyle: {
-					padding: 2 + 'px'
-				},
-				rowStyle: {
-					height: 35 + 'px'
-				},
-				tableHeader: [{
-						label: '任务名称',
-						prop: 'task_name',
-						width: 150
-						// fixed: 'left'
-					},
-					{
-						label: '年度',
-						prop: 'year',
-						width: 80
-						// fixed: 'left'
-					}, {
-						label: '文件号',
-						prop: 'filenum',
-						width: 150
-						// fixed: 'left'
-					},
-					{
-						label: '开始时间',
-						prop: 'starttime',
-						width: 120
-					},
-					{
-						label: '结束时间',
-						prop: 'endtime',
-						width: 120
-					},
-					{
-						label: '创建者',
-						prop: 'releaser',
-						width: 120
-					},
-					{
-						label: '创建时间',
-						prop: 'createtime',
-						width: 180
-					}
-				],
-				// 数据表格数据
-				tableData: [],
-				total:0,
-				// 批量选中数据
-				multipleSelection: [],
 				// 查看任务详情
 				readDialogVisible: false,
 				readForm: {},
+				multipleSelection: [],
 				delarr: [],
-				pubarr: [],
+				pubarr: []
 			}
 		},
 		created() {
-			this.gettaskList()
+			this.getTasks()
 		},
 		methods: {
-			//跳转抽样单
-			taskSampleZx(id){
-				console.log(id)
+			//新增
+			add() {
+				this.$router.push('addTask')
+			},
+			//查看抽样机构
+			sampleList(id){
 				this.$router.push({
-					name:'taskSampleZx',
+					name:'setTaskJg',
 					params: {
-					task_id: id,
+					task_id:id,
 					}
 				})
-		},
-			//跳转承担单位
-			undertakeReportZx(id){
+			},
+			//查看检测机构
+			getJcds(id,profile_id) {
 				console.log(id)
 				this.$router.push({
-					name:'undertakeReportZx',
+					name:'getJcds',
 					params: {
 					task_id: id,
+					task_profile_id:profile_id
 					}
 				})
 			},
+			// takeTheLeadReportList(id) {
+			// 	console.log(id)
+			// 	this.$router.push({
+			// 		name:'takeTheLeadReportList',
+			// 		params: {
+			// 		task_id: id,
+			// 		}
+			// 	})
+			// },
+			//
+			// 	})
+			// },
+			//承担单位报告
+			// undertakeReport(id){
+			// 	console.log(id)
+			// 	this.$router.push({
+			// 		name:'undertakeReport',
+			// 		params: {
+			// 		task_id: id,
+			// 		}
+			// 	})
+			// },
+			
+		// },
+			
 			// 搜索
 			async searchData() {
 				this.queryInfo.pageNum = 1
 				this.gettaskList()
 			},
-			undertakeReportZx(){
-				this.$router.push('undertakeReportZx')
-			},
-			taskSampleZx(){
-				this.$router.push('taskSampleZx')
-			},
 			// 重置
 			reset(){
 				this.queryInfo={
@@ -328,19 +365,109 @@
 					ispublic:'',
 					pageSize:10,
 					pageNum:1,
-					task_class:'专项监测'
+					task_class:'例行监测',
+					task_id
 				}
-				this.gettaskList()
+				this.getTasks()
+			},
+			//退回
+			sendBack(){
+
+			},
+			/** 监听页码的改变 */
+			handleCurrentChange(newPage) {
+				this.queryInfo.pageNum = newPage
+				this.getTasks()
+			},
+			/** 监听每页显示多少数据的改变 */
+			handleSizeChange(newSize) {
+				this.queryInfo.pageSize = newSize
+				this.getTasks()
 			},
-			// 新增
-				add() {
-				this.$router.push('addSpecialTask')
+			// 获取任务列表
+			async getTasks() {
+				for (var key in this.queryInfo) {
+					if (this.queryInfo[key] == '') {
+						delete this.queryInfo[key]
+					}
+				}
+				const {
+					data: res
+				} = await this.$http.post(
+					"getTasks", this.queryInfo
+				);
+				this.tableData = res.data.rows
+				this.total = res.data.total
+			},
+			// 查看任务详情
+			async readDialogVisible1(row) {
+				this.readForm.batch = row.batch
+				this.readForm.task_name = row.task_name
+				this.readForm.task_class = row.task_class
+				this.readForm.level = row.level
+				// console.log(this.readForm.level)
+				this.readForm.year = row.year
+				this.readForm.starttime = row.starttime
+				this.readForm.endtime = row.endtime
+				this.readForm.releaser = row.releaser
+				this.readForm.creater = row.creater
+				this.readForm.main_unit = row.main_unit
+				this.readForm.file_url = row.file_url
+				this.readForm.file_name = row.file_name
+				this.readForm.filenum = row.filenum
+				this.readForm.log = row.log
+				this.readDialogVisible = true
+
+			},
+			// 批量删除
+			handleSelectionChange(val) {
+				this.multipleSelection = val;
+				// console.log(this.multipleSelection)
+			},
+			// 删除任务
+			async delArray() {
+				// 判断任务是否为该创建者创建
+				// for (let i = 0; i < this.multipleSelection.length; i++) {
+				// 	if (rybh != this.multipleSelection[i].releaser) {
+				// 		this.$alert('任务仅创建者可以删除!', {
+				// 			confirmButtonText: '确定',
+				// 			callback: action => {
+				// 			}
+				// 		});
+				// 	}
+				// }
+				var that = this;
+				const length = this.multipleSelection.length;
+				for (let i = 0; i < length; i++) {
+					this.delarr.push(this.multipleSelection[i].id);
+				}
+				const result = await this.$http.post('deleteTasks', {
+					delarr: that.delarr,
+					token: token
+				})
+				console.log(that.delarr);
+				if (result.data.code == 0) {
+					this.$message({
+						type: 'success',
+						message: '删除成功!'
+					});
+					that.getTasks()
+				} else {
+					this.$message({
+						type: 'error',
+						message: '删除失败!'
+					});
+				}
+				// console.log(this.$refs.multipleTable);
+				this.$refs.multipleTable.clearSelection();
+				that.delarr = [];
+				// this.$refs.multipleTable.clearSelectionFun();
 			},
 			// 发布任务
 			async ispublic() {
 				// 判断任务是否为该创建者创建
 				// for (let i = 0; i < this.multipleSelection.length; i++) {
-				// 	if (rymc != this.multipleSelection[i].releaser) {
+				// 	if (rybh != this.multipleSelection[i].releaser) {
 				// 		this.$alert('任务仅创建者可以发布!', {
 				// 			confirmButtonText: '确定',
 				// 			callback: action => {
@@ -350,7 +477,7 @@
 				// 	}
 				// }
 				var that = this;
-				let canPub = 0;
+				let canPub = 0
 				const length = this.multipleSelection.length;
 				// var val = this.selectedData;
 				console.log(this.multipleSelection)
@@ -369,16 +496,21 @@
 					}
 				}
 				if(canPub==1){
-					const result = await this.$http.post('isPublicTask', {
+					const result = await this.$http.post('putTaskPublic', {
 						pubarr: that.multipleSelection,
 						token: token,
 					})
+					console.log(result.data.code)
 					if (result.data.code == 0) {
 						this.$message({
 							type: 'success',
 							message: '发布成功!'
 						});
-						that.gettaskList()
+						that.getTasks()
+					}else{
+						this.$message({
+							type: 'error',
+							message: result.data.message})
 					}				
 				}
 			},
@@ -386,7 +518,7 @@
 			async repeal() {
 				// 判断任务是否为该创建者创建
 				for (let i = 0; i < this.multipleSelection.length; i++) {
-					if (rymc != this.multipleSelection[i].releaser) {
+					if (rybh != this.multipleSelection[i].releaser) {
 						this.$alert('任务仅创建者可以废止!', {
 							confirmButtonText: '确定',
 							callback: action => {}
@@ -399,19 +531,18 @@
 				// var val = this.selectedData;
 				this.pubarr = this.multipleSelection;
 				for (let i = 0; i < length; i++) {
-					if (this.pubarr[i].ispublic == '1') {
+					if (this.pubarr[i].ispublic == 1) {
 						this.pubarr[i].ispublic = 2
 						canPub = 1
 					} else {
 						this.$alert('任务不在可废止状态!', {
 							confirmButtonText: '确定',
 							callback: action => {
-
 							}
 						});
 					}
 					if(canPub==1){
-						const result = await this.$http.post('isPublicTask', {
+						const result = await this.$http.post('putTaskPublic', {
 							pubarr: that.pubarr,
 							token: token
 						})
@@ -420,112 +551,14 @@
 								type: 'success',
 								message: '任务已废止!'
 							});
-							that.gettaskList()
+							that.getTasks()
 						}
 					}
 					
 				}
 
-			},
-			leadReport() {
-				this.$router.push('leadReport')
-			},
-			// 批量删除
-			handleSelectionChange(val) {
-				this.multipleSelection = val;
-				// console.log(this.multipleSelection)
-			},
-			// 删除任务
-			async delArray() {
-				// 判断任务是否为该创建者创建
-				for (let i = 0; i < this.multipleSelection.length; i++) {
-					if (rymc != this.multipleSelection[i].releaser) {
-						this.$alert('任务仅创建者可以删除!', {
-							confirmButtonText: '确定',
-							callback: action => {
-
-							}
-						});
-					}
-				}
-				var that = this;
-				const length = this.multipleSelection.length;
-				// var val = this.selectedData;
-				for (let i = 0; i < length; i++) {
-					// console.log(this.multipleSelection[i])
-					this.delarr.push(this.multipleSelection[i].id);
-				}
-				const result = await this.$http.post('delTask', {
-					delarr: that.delarr,
-					token: token
-				})
-				if (result.data.code == 0) {
-					this.$message({
-						type: 'success',
-						message: '删除成功!'
-					});
-					that.gettaskList()
-				} else {
-					this.$message({
-						type: 'error',
-						message: '删除失败!'
-					});
-				}
-
-				this.$refs.multipleTable.clearSelection();
-			},
-			/** 监听页码的改变 */
-			handleCurrentChange(newPage) {
-				this.queryInfo.pageNum = newPage
-				this.gettaskList()
-			},
-			/** 监听每页显示多少数据的改变 */
-			handleSizeChange(newSize) {
-				this.queryInfo.pageSize = newSize
-				this.gettaskList()
-			},
-			
-			/** 监听页码的改变 */
-			handleCurrentChange(newPage) {
-				this.queryInfo.pageNum = newPage
-				this.gettaskList()
-			},
-			// 获取任务列表
-			async gettaskList() {
-				for (var key in this.queryInfo) {
-					if (this.queryInfo[key] == '') {
-						delete this.queryInfo[key]
-					}
-				}
-				const {data: res} = await this.$http.post("getTaskList", this.queryInfo);
-				this.tableData = res.data.rows
-				this.total = res.data.total
-			},
-			// 查看任务详情
-			async readDialogVisible1(row) {
-				this.readForm.batch = row.batch
-				this.readForm.task_name = row.task_name
-				this.readForm.task_class = row.task_class
-				this.readForm.level = row.level
-				console.log(this.readForm.level)
-				this.readForm.year = row.year
-				this.readForm.starttime = row.starttime
-				this.readForm.endtime = row.endtime
-				this.readForm.releaser = row.releaser
-				this.readForm.main_unit = row.main_unit
-				this.readForm.file_url = row.file_url
-				this.readForm.file_name = row.file_name
-				this.readForm.filenum = row.filenum
-				this.readForm.log = row.log
-				this.readDialogVisible = true
-			},
-			taskSample() {
-				this.$router.push('taskSample')
-			},
-			// takeTheLeadReporList() {
-			// 	this.$router.push('takeTheLeadReporList')
-			// },
-	}
+			}
+		},
 	}
 </script>
 
@@ -533,23 +566,7 @@
 	.el-breadcrumb {
 		margin-bottom: 20px;
 	}
-
-	.el-select {
-		width: 210px;
-		height: 100%;
-	}
-
-	.select {
-		// display: flex;
-		flex-direction: row;
-		margin-left: 35px;
-	}
-	
-		.el-form-item {
-		margin-bottom: 8px;
-	}
-
-		.el-table {
+	.el-table {
 		align-items: center;
 		margin-top: 25px;
 	}
@@ -567,7 +584,23 @@
 		margin-top: 25px;
 	}
 
-		.dialogItem /deep/ .el-dialog__body {
+	// .el-cascader {
+	// 	width: 290px;
+	// }
+
+	.el-select {
+		width: 210px;
+		height: 100%;
+	}
+
+	.select {
+		// display: flex;
+		flex-direction: row;
+		margin-left: 35px;
+		
+	}
+
+	.dialogItem /deep/ .el-dialog__body {
 		padding: 15px 12px 0;
 		color: #606266;
 		font-size: 14px;
@@ -603,9 +636,6 @@
 		border-top: 1px solid #e5e5e5;
 		text-align: center;
 	}
-	.headSearch{
-		margin-left: 15px;
-	}
 	.rightButton{
 		margin-top: 20px;
 	}

+ 8 - 0
src/router/index.js

@@ -122,6 +122,14 @@ const routes = [{
 				path: '/admin/readCheckList',
 				name:'readCheckList',
 				component: () => import('../components/admin/readCheckList')
+			},{
+				path: '/admin/reTask',
+				name:'reTask',
+				component: () => import('../components/admin/reTask')
+			},{
+				path: '/admin/editInformation',
+				name:'editInformation',
+				component: () => import('../components/admin/editInformation')
 			},
 			
 		]