2 Commits 847fa8478d ... 0a09d6ec22

Auteur SHA1 Message Date
  yin_yu820 0a09d6ec22 Merge remote-tracking branch 'origin/master' il y a 1 semaine
  yin_yu820 55e2009e6b 流程逻辑修改,评价,待办数 il y a 1 semaine

+ 63 - 2
jp-console/jeeplus-module/ly/src/main/java/com/jeeplus/dzfoprecord/controller/DzfQuestionOpRecordController.java

@@ -5,6 +5,8 @@ package com.jeeplus.dzfoprecord.controller;
 
 import javax.servlet.http.HttpServletResponse;
 import javax.validation.Valid;
+import javax.xml.crypto.Data;
+
 import com.google.common.collect.Lists;
 import com.jeeplus.core.excel.EasyExcelUtils;
 import com.jeeplus.core.excel.ExcelOptions;
@@ -34,7 +36,10 @@ import com.jeeplus.dzfoprecord.service.DzfQuestionOpRecordService;
 import org.springframework.web.multipart.MultipartFile;
 
 import java.io.IOException;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
 import java.util.List;
+import java.util.Map;
 
 /**
  * 处理操作流程Controller
@@ -110,6 +115,12 @@ public class DzfQuestionOpRecordController {
 		// 新增流程记录
 		for(int i=0;i<op.getDzfQuestionDetilDTOList().size();i++){
 
+			//单个问题 代办人中没有当前用户,继续执行下一个问题提交
+			String des1=op.getDzfQuestionDetilDTOList().get(i).getDes1()+",";
+			if(!des1.contains(userDTO.getLoginName()+",")){
+				continue;
+			}
+
 			DzfQuestionOpRecordDTO dzfQuestionOpRecordDTO=new DzfQuestionOpRecordDTO();
 			dzfQuestionOpRecordDTO.setRecordId(op.getDzfQuestionDetilDTOList().get(i).getId());
 			dzfQuestionOpRecordDTO.setRecordType("1");
@@ -216,9 +227,15 @@ public class DzfQuestionOpRecordController {
 					String olduser=aa.getDes1()+",";
 					String oldusern=aa.getDes2()+",";
 					String newuser=olduser.replaceFirst(userDTO.getLoginName()+",","");
-					newuser=newuser.substring(0,newuser.length()-2);
 					String newusern=oldusern.replaceFirst(userDTO.getName()+",","");
-					newusern=newusern.substring(0,newusern.length()-2);
+					if(newuser.length()>1){
+						newuser=newuser.substring(0,newuser.length()-1);
+						newusern=newusern.substring(0,newusern.length()-1);
+					}else{
+					//此条问题都办结了,就提交到大走访
+						newuser="dazoufang";
+						newusern="大走访办公室";
+					}
 					aa.setDes1(newuser);
 					aa.setDes2(newusern);
 					dzfQuestionDetilService.saveOrUpdate ( DzfQuestionDetilWrapper.INSTANCE.toEntity ( aa ));
@@ -285,6 +302,10 @@ public class DzfQuestionOpRecordController {
 			aa.setStates("3");
 			aa.setDes1("");
 			aa.setDes2("");
+			LocalDateTime now = LocalDateTime.now();
+			DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
+			String formattedDateTime = now.format(formatter);
+			aa.setFinishTime(formattedDateTime);
 			dzfQuestionService.saveOrUpdate (aa);
 		}else{
 		//没有办结,那就是提交,并将附表的代办人相加赋值给主表(一个诉求,多个问题都有一个用户代办,主表会有多个这个用户)
@@ -296,6 +317,46 @@ public class DzfQuestionOpRecordController {
 		}
 	}
 
+
+	/**
+	 * 处理操作流程
+	 */
+	@ApiLog("处理操作流程")
+	@ApiOperation(value = "处理操作流程")
+	@PostMapping("savepj")
+	public  ResponseEntity <String> savepj(@Valid @RequestBody DzfQuestionDTO op) {
+
+		for(int i=0;i<op.getDzfQuestionDetilDTOList().size();i++){
+
+			DzfQuestionDetilDTO aa=dzfQuestionDetilService.findById ( op.getDzfQuestionDetilDTOList().get(i).getId() );
+
+			aa.setEvaluateFlag(op.getDzfQuestionDetilDTOList().get(i).getCurrent2());
+			aa.setDes3(op.getDzfQuestionDetilDTOList().get(i).getCurrent1());
+			aa.setDes4(op.getDzfQuestionDetilDTOList().get(i).getDelyj());
+			aa.setDes5("1");
+			dzfQuestionDetilService.saveOrUpdate ( DzfQuestionDetilWrapper.INSTANCE.toEntity ( aa ));
+
+		}
+
+		DzfQuestionDTO aa=dzfQuestionService.findById ( op.getId() );
+		aa.setStates("4");
+		dzfQuestionService.saveOrUpdate (aa);
+
+		return ResponseEntity.ok ( "保存处理操作流程成功" );
+	}
+
+	/**
+	 * 根据角色,查看待办事项数
+	 */
+	@ApiLog("根据角色,查看待办事项数")
+	@ApiOperation(value = "根据角色,查看待办事项数")
+	@GetMapping("getDelCount")
+	public ResponseEntity<Map<String, String>> getDelCount() {
+		UserDTO userDTO = UserUtils.getCurrentUserDTO();
+		return ResponseEntity.ok ( dzfQuestionOpRecordService.getDelCount ( userDTO.getLoginName(),userDTO.getId()) );
+	}
+
+
 	/**
 	 * 删除处理操作流程
 	 */

+ 5 - 0
jp-console/jeeplus-module/ly/src/main/java/com/jeeplus/dzfoprecord/mapper/DzfQuestionOpRecordMapper.java

@@ -13,6 +13,7 @@ import com.jeeplus.dzfoprecord.service.dto.DzfQuestionOpRecordDTO;
 import com.jeeplus.dzfoprecord.domain.DzfQuestionOpRecord;
 
 import java.util.List;
+import java.util.Map;
 
 /**
  * 处理操作流程MAPPER接口
@@ -28,6 +29,10 @@ public interface DzfQuestionOpRecordMapper extends BaseMapper<DzfQuestionOpRecor
      */
     DzfQuestionOpRecordDTO findById(String id);
 
+    int getDelCount1(String username);
+
+    int getDelCount2(String userid);
+
     /**
      * 获取处理操作流程列表
      *

+ 11 - 0
jp-console/jeeplus-module/ly/src/main/java/com/jeeplus/dzfoprecord/mapper/xml/DzfQuestionOpRecordMapper.xml

@@ -63,4 +63,15 @@
 	</select>
 
 
+	<select id="getDelCount1" resultType="integer">
+		SELECT COUNT(id) from dzf_question
+		where FIND_IN_SET(#{username},des1) and del_flag=0
+	</select>
+
+
+	<select id="getDelCount2" resultType="integer">
+		SELECT COUNT(id) from dzf_question
+		where states='3' and create_by=#{userid} and del_flag=0
+	</select>
+
 </mapper>

+ 9 - 0
jp-console/jeeplus-module/ly/src/main/java/com/jeeplus/dzfoprecord/service/DzfQuestionOpRecordService.java

@@ -13,7 +13,9 @@ import com.jeeplus.dzfoprecord.service.dto.DzfQuestionOpRecordDTO;
 import com.jeeplus.dzfoprecord.domain.DzfQuestionOpRecord;
 import com.jeeplus.dzfoprecord.mapper.DzfQuestionOpRecordMapper;
 
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 
 /**
  * 处理操作流程Service
@@ -33,6 +35,13 @@ public class DzfQuestionOpRecordService extends ServiceImpl<DzfQuestionOpRecordM
 		return baseMapper.findById ( id );
 	}
 
+	public Map<String, String> getDelCount(String username,String userid) {
+		Map<String, String> map=new HashMap<>();
+		map.put("qcount",baseMapper.getDelCount1 ( username )+"");
+		map.put("pcount",baseMapper.getDelCount2 ( userid )+"");
+		return map;
+	}
+
 	/**
 	 * 自定义分页检索
 	 * @param page

+ 11 - 4
jp-console/jeeplus-module/ly/src/main/java/com/jeeplus/question/controller/DzfQuestionController.java

@@ -69,6 +69,8 @@ public class DzfQuestionController {
 	public ResponseEntity<IPage<DzfQuestionDTO>> list(DzfQuestionDTO dzfQuestionDTO, Page<DzfQuestionDTO> page) throws Exception {
 
 		UserDTO userDTO = UserUtils.getCurrentUserDTO();
+		String ismy=dzfQuestionDTO.getDes10();//值为1时,代表查询当前待办
+		dzfQuestionDTO.setDes10("");
 		//企业(能看到自己企业的问题)
 		if(userDTO.getRoleIds().equals("38a14f1f42ed424eab4cb5d489596b0d")){
 			EnterpriseInfoDTO ei=enterpriseInfoService.findByUserid ( userDTO.getLoginName());
@@ -86,11 +88,10 @@ public class DzfQuestionController {
 		}
 		//办理部门
 		if(userDTO.getRoleIds().equals("1910175949166673921")){
-			queryWrapper.eq ("c.des3", userDTO.getLoginName() ); // 筛选流程中涉及到自己的
-			IPage<DzfQuestionDTO> result = dzfQuestionService.findPage2 (page, queryWrapper);
+			IPage<DzfQuestionDTO> result = dzfQuestionService.findPage2 (page, queryWrapper,"1",userDTO.getLoginName());
 			return ResponseEntity.ok (result);
 		}else{
-			IPage<DzfQuestionDTO> result = dzfQuestionService.findPage (page, queryWrapper);
+			IPage<DzfQuestionDTO> result = dzfQuestionService.findPage (page, queryWrapper,ismy,userDTO.getLoginName());
 			return ResponseEntity.ok (result);
 		}
 
@@ -164,6 +165,12 @@ public class DzfQuestionController {
 			//企业提交,将挂钩干部带入到待办人中
 			dzfQuestionDTO.setDes1(ei.getBz6());
 			dzfQuestionDTO.setDes2(ei.getBz5());
+
+			for(int i=0;i<dzfQuestionDTO.getDzfQuestionDetilDTOList().size();i++){
+				dzfQuestionDTO.getDzfQuestionDetilDTOList().get(i).setDes1(ei.getBz6());
+				dzfQuestionDTO.getDzfQuestionDetilDTOList().get(i).setDes2(ei.getBz5());
+			}
+
 		}else{
 			dzfQuestionDTO.setStates("0");//新增时暂存;
 		}
@@ -291,7 +298,7 @@ public class DzfQuestionController {
             page.setSize ( -1 );
             page.setCurrent ( 0 );
         }
-        List<DzfQuestionDTO> result = dzfQuestionService.findPage ( page, queryWrapper ).getRecords ( );
+        List<DzfQuestionDTO> result = dzfQuestionService.findPage ( page, queryWrapper,"","" ).getRecords ( );
         EasyExcelUtils.newInstance ( dzfQuestionService, dzfQuestionWrapper ).exportExcel ( result,  options.getSheetName ( ), DzfQuestionDTO.class, fileName,options.getExportFields (), response );
     }
 

+ 2 - 2
jp-console/jeeplus-module/ly/src/main/java/com/jeeplus/question/mapper/DzfQuestionMapper.java

@@ -34,8 +34,8 @@ public interface DzfQuestionMapper extends BaseMapper<DzfQuestion> {
      * @param queryWrapper
      * @return
      */
-    IPage <DzfQuestionDTO> findList(Page <DzfQuestionDTO> page, @Param(Constants.WRAPPER) QueryWrapper queryWrapper);
-    IPage <DzfQuestionDTO> findList2(Page <DzfQuestionDTO> page, @Param(Constants.WRAPPER) QueryWrapper queryWrapper);
+    IPage <DzfQuestionDTO> findList(Page <DzfQuestionDTO> page, @Param(Constants.WRAPPER) QueryWrapper queryWrapper,String ismy,String username);
+    IPage <DzfQuestionDTO> findList2(Page <DzfQuestionDTO> page, @Param(Constants.WRAPPER) QueryWrapper queryWrapper,String ismy,String username);
 
     HashMap<Object, Object> getProgressMonth(@Param("start")String start,@Param("end")String end);
 

+ 2 - 2
jp-console/jeeplus-module/ly/src/main/java/com/jeeplus/question/mapper/xml/DzfQuestionDetilMapper.xml

@@ -17,7 +17,7 @@
             a.progress_name AS "progressName",
             a.evaluate_flag AS "evaluateFlag",
             a.pre_time AS "preTime",
-            a.des1 AS "des2",
+            a.des1 AS "des1",
             a.des2 AS "des2",
             a.des3 AS "des3",
             a.des4 AS "des4",
@@ -32,7 +32,7 @@
             a.update_by AS "updateBy.id",
             a.update_date AS "updateDate",
             a.del_flag AS "delFlag"
-        FROM dzf_question a
+        FROM dzf_question_detil a
         WHERE a.id = #{id} and a.del_flag = 0
 
     </select>

+ 3 - 1
jp-console/jeeplus-module/ly/src/main/java/com/jeeplus/question/mapper/xml/DzfQuestionMapper.xml

@@ -39,7 +39,6 @@
 	<sql id="dzfQuestionJoins2">
 
 		LEFT JOIN dzf_question_detil b on b.qid=a.id
-		LEFT JOIN dzf_question_op_record c on c.record_id=b.id
 	</sql>
 
 
@@ -57,6 +56,8 @@
 		FROM dzf_question a
 		<include refid="dzfQuestionJoins"/>
 	    ${ew.customSqlSegment}
+		<if test="ismy == 1">and FIND_IN_SET(#{username},a.des1)  </if>
+
 		group by a.id
 	</select>
 
@@ -66,6 +67,7 @@
 		FROM dzf_question a
 		<include refid="dzfQuestionJoins2"/>
 		${ew.customSqlSegment}
+		<if test="ismy == 1">and FIND_IN_SET(#{username},a.des1)  </if>
 		group by a.id
 	</select>
 

+ 4 - 4
jp-console/jeeplus-module/ly/src/main/java/com/jeeplus/question/service/DzfQuestionService.java

@@ -53,14 +53,14 @@ public class DzfQuestionService extends ServiceImpl<DzfQuestionMapper, DzfQuesti
 	 * @param queryWrapper
 	 * @return
 	 */
-	public IPage <DzfQuestionDTO> findPage(Page <DzfQuestionDTO> page, QueryWrapper queryWrapper) {
+	public IPage <DzfQuestionDTO> findPage(Page <DzfQuestionDTO> page, QueryWrapper queryWrapper,String ismy,String username) {
 		queryWrapper.eq ("a.del_flag", 0 ); // 排除已经删除
-		return  baseMapper.findList (page, queryWrapper);
+		return  baseMapper.findList (page, queryWrapper,ismy,username);
 	}
 
-	public IPage <DzfQuestionDTO> findPage2(Page <DzfQuestionDTO> page, QueryWrapper queryWrapper) {
+	public IPage <DzfQuestionDTO> findPage2(Page <DzfQuestionDTO> page, QueryWrapper queryWrapper,String ismy,String username) {
 		queryWrapper.eq ("a.del_flag", 0 ); // 排除已经删除
-		return  baseMapper.findList2 (page, queryWrapper);
+		return  baseMapper.findList2 (page, queryWrapper,ismy,username);
 	}
 
 	/**

+ 4 - 0
jp-console/jeeplus-module/ly/src/main/java/com/jeeplus/question/service/dto/DzfQuestionDetilDTO.java

@@ -118,6 +118,10 @@ public class DzfQuestionDetilDTO extends BaseDTO {
 	 */
 	public String current;
 
+	public String current1;
+
+	public String current2;
+
 	public String finishdate;
 
 	public String delyj;

+ 16 - 0
jp-mobile/api/auth/loginService.js

@@ -367,5 +367,21 @@ export default {
 			params: params
 		})
 	},
+	
+	savepj: function(params) {
+		return request({
+			url: '/dzfoprecord/dzfQuestionOpRecord/savepj',
+			method: 'post',
+			params: params
+		})
+	},
+	
+	getDelCount: function(params) {
+		return request({
+			url: '/dzfoprecord/dzfQuestionOpRecord/getDelCount',
+			method: 'get',
+			params: params
+		})
+	},
 
 }

+ 28 - 74
jp-mobile/pages/index/Dzfindex.vue

@@ -43,12 +43,12 @@
 					<!-- 企业 -->
 					<view class="btn-Imbox" @click="totongxunlu3" v-if="roleIds=='38a14f1f42ed424eab4cb5d489596b0d'">
 						<image  class="center-img" src="/static/img/cd1.png"></image>
-						<p>问题诉求</p>
+						<p>问题诉求{{p1}}</p>
 					</view>
 					<!-- 企业 -->
 					<view class="btn-Imbox" @click="totongxunlu4" v-if="roleIds=='38a14f1f42ed424eab4cb5d489596b0d'">
 						<image  class="center-img" src="/static/img/cd2.png"></image>
-						<p>满意度评价</p>
+						<p>满意度评价{{p2}}</p>
 					</view> 
 					<!-- 企业 -->
 					<view class="btn-Imbox" @click="totongxunlu3" v-if="roleIds=='38a14f1f42ed424eab4cb5d489596b0d'">
@@ -61,14 +61,14 @@
 						<image  class="center-img" src="/static/img/cd5.png"></image>
 						<p>服务对接</p>
 					</view>
-					<!-- 挂钩干部或大走访办公室 -->
-					<view class="btn-Imbox" @click="totongxunlu3" v-if="roleIds=='1910141956174053377'||roleIds=='1910175386924417025'">
+					<!-- 挂钩干部或大走访办公室或交办部门 -->
+					<view class="btn-Imbox" @click="totongxunlu3" v-if="roleIds=='1910141956174053377'||roleIds=='1910175386924417025'||roleIds=='1910175949166673921'">
 						<image  class="center-img" src="/static/img/cd4.png"></image>
-						<p>问题处理</p>
+						<p>问题处理{{p1}}</p>
 					</view>
 					
-					<!-- 大走访办公室 -->
-					<view class="btn-Imbox" @click="totongxunlu5" v-if="roleIds=='1910175386924417025'">
+					<!-- 大走访办公室或交办部门 -->
+					<view class="btn-Imbox" @click="totongxunlu5" v-if="roleIds=='1910175386924417025'||roleIds=='1910175949166673921'">
 						<image  class="center-img" src="/static/img/cd6.png"></image>
 						<p>进度统计</p>
 					</view>		
@@ -115,7 +115,8 @@
 				roleIds:'',
 				pageInfo: {},
 				loginid:"",
-				
+				p1:"",
+				p2:"",
 				stype: "", // 企业 => 3  楼宇 => 2  园区 => 1  zfadmin => 4  admin=> 5
 				
 				searchForm: {
@@ -155,16 +156,28 @@
 			}	
 					
 			this.roleIds= $auth.getUserInfo().roleIds;		
+			
+			loginService.getDelCount().then(({
+				data
+			}) => {
+				if(data.qcount!='0'){
+					this.p1="("+data.qcount+")";
+				}
+				if(data.pcount!='0'){
+					this.p2="("+data.pcount+")";
+				}
+			}).catch((e) => {
+				uni.hideLoading();
+			})
+			
+			
 		},
 		onShow() {
 			this.isLogin=this.$auth.checkisLogin();
 		},
 		
 		created() {
-			this.getPageInfo();
-			this.getParkList()
-			this.getParkList2()	
-			this.getParkList3()	
+			
 		},
 
 
@@ -220,47 +233,7 @@
 				})
 			},
 			
-			//选择属地
-			getParkList2() {
-				loginService.getAreaList({
-				}).then(({
-					data
-				}) => {
-					this.parkList2 = data.map((item) => {
-						return {
-							label: item.des1,
-							value: item.des1
-						}
-					})
-					this.parkList2.unshift({
-					    label: "盐都区",
-					    value: ""
-					});
-				}).catch(e => {
-					console.log(e)
-				})
-			},
 			
-			//选择行业
-			getParkList() {
-				loginService.getHyList({
-				}).then(({
-					data
-				}) => {
-					this.parkList = data.map((item) => {
-						return {
-							label: item.industry,
-							value: item.industry
-						}
-					})
-					this.parkList.unshift({
-					    label: "全部",
-					    value: ""
-					});
-				}).catch(e => {
-					console.log(e)
-				})
-			},
 			
 			/*获取数据列表 */
 			upCallback(page) {
@@ -271,27 +244,6 @@
 				{"name":"涉企政策","des":"对企业的相关优惠政策,我们会及时更公布,让企业更好更精准的了解相关政策优惠,决定企业走向。"}];
 				
 				
-				// loginService.comlist({
-				// 	current: page.num,
-				// 	size: page.size,
-				// 	name: this.curWord,
-				// 	des1: this.parkId,
-				// 	orders: [{ column: 'a.create_date', asc: false }],
-				// 	...this.searchForm
-				// }).then(({
-				// 	data
-				// }) => {
-				// 	let curPageData = data.records
-				// 	this.mescroll.endBySize(curPageData.length, data.total);
-				// 	//如果是第一页需手动制空列表
-				// 	if (page.num == 1)
-				// 		this.dataList = [];
-				// 	//追加新数据
-				// 	this.dataList=[]; = this.dataList.concat(curPageData);
-				// }).catch(e => {
-				// 	//联网失败, 结束加载
-				// 	this.mescroll.endErr();
-				// })
 			},
 			
 			gotoBuildInfo(name) {
@@ -351,7 +303,9 @@
 				})
 			},
 			totongxunlu4(){
-				console.log("满意度评价")
+				uni.navigateTo({
+					url: '/pages/question/questionList?w=2'
+				})
 			},
 			totongxunlu5(){
 											

+ 1 - 1
jp-mobile/pages/login/login.vue

@@ -82,7 +82,7 @@
 				  this.refreshUserInfo();
 				  setTimeout(function() {
 					  uni.reLaunch({
-					  	url: '../index/index',
+					  	url: '../index/Tabindex',
 					  });
 				  },1000)
 				  

+ 202 - 24
jp-mobile/pages/question/questionInfo.vue

@@ -1,8 +1,8 @@
 <template>
 	<view>
-		<cu-custom bgColor="bg-blue" :isBack="true" v-if="title == '问题诉求情况'">
+		<cu-custom bgColor="bg-blue" :isBack="true" >
 			<block slot="backText">返回</block>
-			<block slot="content">问题诉求情况</block>
+			<block slot="content">{{title}}</block>
 		</cu-custom>
 		
 		<form @submit="formSubmit" class="cu-list menu">
@@ -141,8 +141,23 @@
 					</radio-group>
 				</view>
 				
-				<!-- 挂钩干部或大走访办公室 -->			
-				<view class="cu-form-group margin-top" v-if="roleIds=='1910175386924417025'||roleIds=='1910141956174053377'" >
+				<!-- 交办部门 -->
+				<view class="cu-form-group margin-top" v-if="roleIds=='1910175949166673921'" >
+					<view class="title">
+						问题处理
+					</view>
+					<radio-group @change="(e) => radioChange(e, index2)" class="radiog">
+						<label class="uni-list-cell uni-list-cell-pd"  v-for="(item3, index3) in dels3" :key="item3">
+							<view>
+								<radio :value="item3" :checked="index3 === item.current" :disabled="index3 != item.current&&!item.cansubmit"/>
+							</view>
+							<view style="padding-left: 15rpx;">{{item3}}</view>
+						</label>
+					</radio-group>
+				</view>
+				
+				<!-- 挂钩干部或大走访办公室或交办部门 -->			
+				<view class="cu-form-group margin-top" v-if="roleIds=='1910175386924417025'||roleIds=='1910141956174053377'||roleIds=='1910175949166673921'" >
 					<view class="title">
 						预计办结时间
 					</view>					
@@ -172,6 +187,13 @@
 					></zqs-select>
 				</view>	
 				
+				<view v-if="item.showjbdw2" class="cu-form-group margin-top"  >
+					<view class="title">
+						交办单位
+					</view>		
+				    <view class="input2" >{{item.des2||'请选择'}}</view>
+				</view>	
+				
 				
 				<view class="cu-form-group margin-top" v-if="(roleIds=='1910175386924417025'||roleIds=='1910141956174053377')&&showjbdw">
 					<view class="title">
@@ -180,7 +202,7 @@
 					<textarea v-model="item.delyj" placeholder="请填写交办要求"  ></textarea>
 				</view>
 				
-				<view class="cu-form-group margin-top" v-if="(roleIds=='1910175386924417025'||roleIds=='1910141956174053377')&&!showjbdw">
+				<view class="cu-form-group margin-top" v-if="(roleIds=='1910175386924417025'||roleIds=='1910141956174053377'||roleIds=='1910175949166673921')&&!showjbdw">
 					<view class="title">
 						处理建议
 					</view>
@@ -203,7 +225,7 @@
 				</view> -->
 				
 				
-				<view class="cu-form-group margin-top" style="border-bottom: 3px solid #eee;" v-if="roleIds=='1910175386924417025'||roleIds=='1910141956174053377'">
+				<view class="cu-form-group margin-top" style="border-bottom: 3px solid #eee;" v-if="roleIds=='1910175386924417025'||roleIds=='1910141956174053377'||roleIds=='1910175949166673921'">
 					<uni-file-picker style="margin-bottom: 10px;" limit="3" ref="picFile" v-model="item.fj"
 						fileMediatype="all" mode="grid" title="附件上传" :auto-upload="autoUpload" @select="select"
 						@progress="progress" @success="success" @fail="fail" @delete="deleteFile"
@@ -212,7 +234,7 @@
 				</view>
 				
 				<!-- 流程展示 -->
-				<view v-for="(record, index4) in item.oplist" :key="index4" class="record-item" @click="viewDetails(record)" style="border-bottom: 6px solid #eee;">
+				<view v-for="(record, index4) in item.oplist" :key="index4" class="record-item" @click="viewDetails(record)" style="border-bottom: 2px solid #eee;">
 					
 					<view style="display: flex; flex-direction:row;align-items: center; "> 
 						<view v-if="item.oplist.length!=1" :class="index4 === item.oplist.length - 1 ? 'record-p2' : 'record-p1'"></view>
@@ -232,7 +254,48 @@
 				</view>
 				
 				
+				<view v-if="canpj">
+					
+					<view class="cu-form-group margin-top"  >
+						<view class="title" style="color: #3c9cff;">
+							企业主要负责人知晓情况:
+						</view>
+						<radio-group @change="(e) => radioChange2(e, index2,1)" class="radiog radiog2">
+							<label class="uni-list-cell uni-list-cell-pd"  v-for="(item3, index3) in dels4" :key="item3">
+								<view>
+									<radio :value="item3" :checked="index3 === item.current" />
+								</view>
+								<view style="padding-left: 15rpx;place-self: center;padding-right: 18rpx;">{{item3}}</view>
+							</label>
+						</radio-group>
+					</view>
+					
+					<view class="cu-form-group margin-top"  >
+						<view class="title" style="padding-right: 0;color: #3c9cff;">
+							满意度评价:
+						</view>
+						<radio-group @change="(e) => radioChange2(e, index2,2)" class="radiog radiog2">
+							<label class="uni-list-cell uni-list-cell-pd"  v-for="(item3, index3) in dels5" :key="item3">
+								<view>
+									<radio :value="item3" :checked="index3 === item.current" />
+								</view>
+								<view style="padding-left: 5rpx;place-self: center;padding-right: 9rpx;">{{item3}}</view>
+							</label>
+						</radio-group>
+					</view>
+					
+					
+					<view class="cu-form-group margin-top" v-if="item.showpjedit">
+						<view class="title">
+							说明
+						</view>
+						<textarea v-model="item.delyj" placeholder="请填写说明"  ></textarea>
+					</view>
+				</view>
 				
+				<view style="border-bottom: 8px solid #eee;">
+					
+				</view>
 				
 				
 
@@ -247,6 +310,10 @@
 				<button v-if="roleIds=='38a14f1f42ed424eab4cb5d489596b0d'" @click="save" class="bt1  block  margin-tb-sm lg">暂存</button>
 				<button form-type="submit" class="bt1 cu-btn block bg-blue margin-tb-sm lg">提交</button>
 			</view>
+			
+			<view class="flexC" v-if="canpj">
+				<button  @click="pjsave" class="bt1 cu-btn block bg-blue margin-tb-sm lg">立即评价</button>
+			</view>
 			<view style="height: 40rpx;"></view>
 		</form>
 	</view>
@@ -266,6 +333,7 @@
 			return {
 				title: '问题诉求情况',
 				cansubmit: false,
+				canpj:false,
 				roleIds:'',
 				uid:'',
 				inputForm: {
@@ -307,6 +375,9 @@
 				questionList:[{qname:"",qtype:"",qTypeindex:"",gaps:"",des:"",t1:"",t1s:""}],
 				dels:["办结","反馈大走访活动办","正在办理","难以化解","持续跟踪","提请会办"],
 				dels2:["办结","交办"],
+				dels3:["办结","正在办理","难以化解","持续跟踪","提请会办"],
+				dels4:["是","否"],
+				dels5:["非常满意","满意","不满意"],
 				index:0,
 				ischeck: false,
 				
@@ -354,9 +425,9 @@
 		},
 		async onLoad(query) {			
 			this.uid= $auth.getUserInfo().id;
+			this.roleIds= $auth.getUserInfo().roleIds;
 			
-			
-			if(query.ischeck!=undefined&&query.ischeck=='1'){
+			if(query.ischeck!=undefined){
 				//查看
 				this.ischeck=true;
 				let data2 = await loginService.getdzfQuestionqueryById({id:query.id})
@@ -381,6 +452,7 @@
 				for (let i = 0; i < data2.data.dzfQuestionDetilDTOList.length; i++) {		
 					let opsize=data2.data.dzfQuestionDetilDTOList[i].oplist.length;
 									
+					data2.data.dzfQuestionDetilDTOList[i].showpjedit=false	
 					for (let j = 0; j < opsize; j++) {
 						
 						//当前登录人
@@ -391,16 +463,43 @@
 							}else if(data2.data.dzfQuestionDetilDTOList[i].oplist[j].opType=='4'){
 								data2.data.dzfQuestionDetilDTOList[i].current=1
 							}else if(data2.data.dzfQuestionDetilDTOList[i].oplist[j].opType=='5'){
-								data2.data.dzfQuestionDetilDTOList[i].current=2
-							}else if(data2.data.dzfQuestionDetilDTOList[i].oplist[j].opType=='6'){
-								data2.data.dzfQuestionDetilDTOList[i].current=3
+								//挂钩干部
+								if(this.roleIds=='1910141956174053377'){
+									data2.data.dzfQuestionDetilDTOList[i].current=2
+								//交办部门
+								}else{
+									data2.data.dzfQuestionDetilDTOList[i].current=1
+								}
+							}else if(data2.data.dzfQuestionDetilDTOList[i].oplist[j].opType=='6'){								
+								//挂钩干部
+								if(this.roleIds=='1910141956174053377'){
+									data2.data.dzfQuestionDetilDTOList[i].current=3
+								//交办部门
+								}else{
+									data2.data.dzfQuestionDetilDTOList[i].current=2
+								}
 							}else if(data2.data.dzfQuestionDetilDTOList[i].oplist[j].opType=='7'){
-								data2.data.dzfQuestionDetilDTOList[i].current=4
+								//挂钩干部
+								if(this.roleIds=='1910141956174053377'){
+									data2.data.dzfQuestionDetilDTOList[i].current=4
+								//交办部门
+								}else{
+									data2.data.dzfQuestionDetilDTOList[i].current=3
+								}
 							}else if(data2.data.dzfQuestionDetilDTOList[i].oplist[j].opType=='8'){
-								data2.data.dzfQuestionDetilDTOList[i].current=5
+								//挂钩干部
+								if(this.roleIds=='1910141956174053377'){
+									data2.data.dzfQuestionDetilDTOList[i].current=5
+								//交办部门
+								}else{
+									data2.data.dzfQuestionDetilDTOList[i].current=4
+								}
+							}
+							//大走访办公室角色
+							else if(data2.data.dzfQuestionDetilDTOList[i].oplist[j].opType=='9'){
+								data2.data.dzfQuestionDetilDTOList[i].current=1
+								data2.data.dzfQuestionDetilDTOList[i].showjbdw2=true;
 							}
-							
-							
 							//处理建议
 							data2.data.dzfQuestionDetilDTOList[i].delyj=data2.data.dzfQuestionDetilDTOList[i].oplist[j].des6
 						
@@ -434,8 +533,10 @@
 				this.questionList=data2.data.dzfQuestionDetilDTOList;
 				
 				
-				this.roleIds= $auth.getUserInfo().roleIds;
-		
+				if(query.ischeck=='2'){
+					this.title="诉求办理评价";
+					this.canpj=true;
+				}
 				
 
 			}else{
@@ -489,8 +590,8 @@
 							break;
 						}
 					}
-				//其他选择	
-				}else{
+				//挂钩干部	
+				}else if(this.roleIds=='1910141956174053377'){
 					
 					console.log("选择:"+evt.detail.value);
 					for (let i = 0; i < this.dels.length; i++) {
@@ -499,11 +600,50 @@
 							break;
 						}
 					}
+				//交办部门	
+				}else if(this.roleIds=='1910175949166673921'){
+					
+					console.log("选择:"+evt.detail.value);
+					for (let i = 0; i < this.dels3.length; i++) {
+						if (this.dels3[i] === evt.detail.value) {
+							this.questionList[index2].current = i;
+							break;
+						}
+					}
+				}	
+				
+			},
+			radioChange2: function(evt,index2,witch) {	
+				
+				if(evt.detail.value=='非常满意'||evt.detail.value=='满意'){
+					this.questionList[index2].showpjedit=false;
+					this.questionList[index2].pjyj="";
+				}else if(evt.detail.value=='不满意'){
+					this.questionList[index2].showpjedit=true;	
+				}
+				if(witch==1){
+					for (let i = 0; i < this.dels4.length; i++) {
+						if (this.dels4[i] === evt.detail.value) {
+							this.questionList[index2].current1 = i;
+							break;
+						}
+					}
+				}else{
+					for (let i = 0; i < this.dels5.length; i++) {
+						if (this.dels5[i] === evt.detail.value) {
+							this.questionList[index2].current2 = i;
+							break;
+						}
+					}
 				}
 				
 				
 				
+					
+				
 			},
+			
+			
 			addfj(){
 				
 			},
@@ -621,6 +761,42 @@
 				// this.inputForm.dzfQuestionDetilDTOList=this.questionList;
 				// this.checkinput();
 			},
+			
+			pjsave(){
+				let cansave=true;
+				for (let i = 0; i < this.questionList.length; i++) {
+					
+					this.questionList[i].checkUserList="";
+					if (this.questionList[i].current1 ==undefined||this.questionList[i].current2 ==undefined) {											
+						cansave=false;
+					}
+				}
+				
+				this.inputForm.dzfQuestionDetilDTOList=this.questionList;
+				if(cansave){
+					uni.showLoading()
+					loginService.savepj(this.inputForm).then(({
+						data
+					}) => {
+						uni.hideLoading();
+						uni.showToast({
+							title: "评价成功!",
+							icon: "success"
+						});
+						uni.redirectTo({
+							url: '/pages/question/questionList?w=2'
+						})
+					}).catch((e) => {
+						uni.hideLoading();
+					})
+				}else{
+					uni.showToast({
+						title: "评价意见还未填写!",
+						icon: "success"
+					});
+				}
+				
+			},
 			formSubmit: function(e) {	
 				//将交办单位的名称带出
 				for (let i = 0; i < this.questionList.length; i++) {
@@ -631,7 +807,7 @@
 						          const item = this.pickerData.find((option) => option.value === value);
 						          return item ? item.label : value; // 如果找不到,返回 value
 						        })
-						        .join(", ");
+						        .join(",");
 
 					}
 					this.questionList[i].checkUserList=this.questionList[i].checkUserList.join(",");
@@ -648,8 +824,7 @@
 					});
 				}else{
 					
-					
-					
+							
 					
 					
 					uni.showLoading()										
@@ -661,7 +836,7 @@
 							title: "提交成功!",
 							icon: "success"
 						});
-						uni.navigateTo({
+						uni.redirectTo({
 							url: '/pages/question/questionList'
 						})
 					}).catch((e) => {
@@ -795,6 +970,9 @@
 		flex:1;
 		margin: 10rpx;
 	}
+	.radiog2{
+		display: flex;
+	}
 	.uni-list-cell{
 		display: flex;
 		

+ 45 - 19
jp-mobile/pages/question/questionList.vue

@@ -44,6 +44,19 @@
 														
 				</view> -->
 				
+				<view class="tabs" v-if="showTab">
+				  <view 
+					v-for="(tab, index) in tabs" 
+					:key="index" 
+					class="tab-item" 
+					:class="{ active: activeTab === index }" 
+					@click="switchTab(index)"
+				  >
+					{{ tab.name }}
+				  </view>
+				</view>
+				
+
 				
 				
 				<mescroll-body ref="mescrollRef" @init="mescrollInit" @down="downCallback" :up="upOption" @up="upCallback">
@@ -63,7 +76,7 @@
 									提交人:{{item.qyFzr}}
 							</view>
 							<view class="item-title">
-									办结时间:{{item.des5||'----'}}
+									办结时间:{{item.finishTime||'----'}}
 							</view>
 			
 						</view>
@@ -111,6 +124,7 @@
 		data() {
 			return {
 				canAdd:false,
+				showTab:true,
 				userid:"",
 				isLogin:"",
 				pageInfo: {},
@@ -119,17 +133,17 @@
 				isBack: true, // 是否显示返回按钮
 				bgColor: 'bg-blue', // 背景颜色
 				tabs: [
-				        { name: '全部' },
-				        { name: '供' },
-				        { name: '需' }
+				        { name: '待办' },
+				        { name: '全部' }
 				      ],
 				activeTab: 0,
 				stype: "", // 企业 => 3  楼宇 => 2  园区 => 1  zfadmin => 4  admin=> 5
 				md:"1",
 				searchForm: {
 					des1:"",
-					des10:"",
+					des10:"1",
 					qyName:"",
+					
 				},
 				
 				curWord: "", //当前搜索关键词
@@ -152,26 +166,29 @@
 		},
 		onLoad(query) {
 			if(query!=undefined&&query!=null&&query!=''){
+				
 				if(query.loginid!=undefined){
 					this.loginid=query.loginid
 					this.autoLogin();
 				}		
 					
-				if (query && query.w=='1' ) {
-					this.md = "1";					
-					this.title="问题诉求";
-				}else if(query && query.w=='2'){
-					this.md = "2";
-					this.title="问题诉求";
-					this.searchForm.des10="1";
-				}	
+				if (query && query.w=='2' ) {
+					//满意度评价
+					this.searchForm.states="3";
+					this.searchForm.des10="";
+					this.tabs=[{ name: '待评价' }  ]
+				}
 			}
 			
 			//只有企业角色才能发起问题诉求			
 			if($auth.getUserInfo().roleIds=="38a14f1f42ed424eab4cb5d489596b0d"){
 				this.canAdd	=true;
 			}
-					
+				
+			//除了交办部门其他都显示筛选	
+			if($auth.getUserInfo().roleIds=="1910175949166673921"){
+				this.showTab=false;
+			}		
 						
 		},
 		onShow() {
@@ -226,9 +243,18 @@
 				
 				//此条信息是处理人	
 				}else{
-					uni.navigateTo({
-						url: `/pages/question/questionInfo?id=${id}&ischeck=1`
-					})
+					
+					if(this.searchForm.states=="3"){
+						uni.navigateTo({
+							url: `/pages/question/questionInfo?id=${id}&ischeck=2`
+						})
+					}else{
+						uni.navigateTo({
+							url: `/pages/question/questionInfo?id=${id}&ischeck=1`
+						})
+					}
+								
+					
 				}
 				
 			},
@@ -396,9 +422,9 @@
 			switchTab(index) {
 			  this.activeTab = index;
 			  if(this.activeTab==0){
-				  this.searchForm.des1="";
+				  this.searchForm.des10="1";
 			  }else{
-				  this.searchForm.des1=this.activeTab;
+				  this.searchForm.des10="";
 			  }
 			  
 			  this.doSearch();