Browse Source

评价满意度数据同步

v2
蟑螂恶霸 2 years ago
parent
commit
5c4f495007
  1. 141
      lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/task/ComplaintEvaluateTask.java
  2. 16
      lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/domain/EnterpriseComplaintSatisfy.java
  3. 12
      lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/resources/mapper/EnterpriseComplaintSatisfyMapper.xml

141
lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/task/ComplaintEvaluateTask.java

@ -0,0 +1,141 @@
package com.zdxt.app.task;
import cn.hutool.core.map.MapUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.zdxt.auth.common.utils.StringUtils;
import com.zdxt.auth.dto.UserBean;
import com.zdxt.auth.feign.UserApi;
import com.zdxt.auth.project.system.dept.service.IDeptService;
import com.zdxt.auth.project.system.dict.service.IDictDataService;
import com.zdxt.auth.project.system.user.service.IUserService;
import com.zdxt.code.domain.EnterpriseComplaint;
import com.zdxt.code.domain.EnterpriseComplaintSatisfy;
import com.zdxt.code.domain.EnterpriseEvaluate;
import com.zdxt.code.domain.MssqAddOrder;
import com.zdxt.code.service.IEnterpriseComplaintSatisfyService;
import com.zdxt.code.service.IEnterpriseComplaintService;
import com.zdxt.code.service.MssqApiService;
import com.zdxt.domain.auth.DictData;
import org.apache.http.HttpEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClientBuilder;
import org.apache.http.util.EntityUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.security.MessageDigest;
import java.util.*;
import java.util.stream.Collectors;
/**
* @Author: kylin
* @Date: 2024/5/9 2:58 下午
* @Version: 1.0
* @Desc: TODO
*/
@Component("complaintEvaluateTask")
public class ComplaintEvaluateTask {
@Value("${srnwg.systemCode}")
private String systemCode;
@Value("${srnwg.integrationKey}")
private String integrationKey;
@Value("${srnwg.url}")
private String znwgUrl;
@Value("${srnwg.paasId}")
private String paasId;
@Value("${srnwg.paasToken}")
private String paasToken;
@Autowired private IEnterpriseComplaintService iEnterpriseComplaintService;
@Autowired private IEnterpriseComplaintSatisfyService iEnterpriseComplaintSatisfyService;
@Autowired private MssqApiService mssqApiService;
private static final Logger log = LoggerFactory.getLogger(ComplaintEvaluateTask.class);
public void run(){
this.evaluate();
}
/**
* 同步评价详情
*/
public void evaluate(){
try {
List<EnterpriseComplaint> list = iEnterpriseComplaintService.selectEnterpriseComplaintList(new EnterpriseComplaint());
List<String> proWoCodes = new ArrayList<>();
for (EnterpriseComplaint ec : list) {
if (StringUtils.isNotEmpty(ec.getProWoCode())) {
proWoCodes.add(ec.getProWoCode());
}
}
MssqAddOrder mssqAddOrder = new MssqAddOrder();
mssqAddOrder.setProWoCodes(proWoCodes);
String result = mssqApiService.mssqQuerySatisfy(mssqAddOrder);
JSONObject sourceObj = JSONObject.parseObject(result);
JSONArray dataOjbs = sourceObj.getJSONArray("satisfyDatas");
int editNum = 0;
int addNum = 0;
for (int i=0; i<dataOjbs.size(); i++) {
EnterpriseComplaintSatisfy ec = convertSatisfy(dataOjbs.getJSONObject(i));
if (StringUtils.isNotEmpty(ec.getProWoId())) {
EnterpriseComplaintSatisfy satisfy = iEnterpriseComplaintSatisfyService.selectEnterpriseComplaintSatisfyById(ec.getProWoId());
if (null != satisfy && StringUtils.isNotEmpty(satisfy.getProWoId())) {
editNum += iEnterpriseComplaintSatisfyService.updateEnterpriseComplaintSatisfy(ec);
} else {
addNum += iEnterpriseComplaintSatisfyService.insertEnterpriseComplaintSatisfy(ec);
}
}
}
log.info("===== 同步更新数据 {} 条 =====", editNum);
log.info("===== 同步新增数据 {} 条 =====", addNum);
} catch (Exception e) {
e.printStackTrace();
}
}
private EnterpriseComplaintSatisfy convertSatisfy(JSONObject satisfyJson) {
EnterpriseComplaintSatisfy ce = new EnterpriseComplaintSatisfy();
/** 工单id */
ce.setProWoId(satisfyJson.getString("proWoId"));
/** 工单编号 */
ce.setProWoCode(satisfyJson.getString("proWoCode"));
/** 满意度评价 (1:非常不满意;2:不满意;3:基本满意;4:满意;5:非常满意;6:未评价;7:无效评价;) */
ce.setApproveCode(satisfyJson.getInteger("approveCode"));
/** 评价时间 */
ce.setApproveTime(satisfyJson.getString("approveTime"));
/** 不满意原因 (1:对承办单位工作人员的态度和效率不满意;2:对承办单位未回复不满意;3:对回复结果不满意;4:对问题仍然未解决/未改善不满意;5:对建议未被采纳不满意;9:未评价;10:无效评价;11 :承办单位回复情况与实际情况不一致;12:回复结果解答/指引不清晰;13:按回复指引操作但问题仍未解决;14:建议采纳但暂未实施;) */
ce.setDisApproveReason(satisfyJson.getInteger("disApproveReason"));
/** 处置速度 (1:非常不满意;2:不满意;3:基本满意;4:满意;5:非常满意;6:未评价;7:无效评价;) */
ce.setDealSpeedMetrics(satisfyJson.getInteger("dealSpeedMetrics"));
/** 处置效果 (1:非常不满意;2:不满意;3:基本满意;4:满意;5:非常满意;6:未评价;7:无效评价;) */
ce.setDealEffectMetrics(satisfyJson.getInteger("dealEffectMetrics"));
/** 服务体验 (1:非常不满意;2:不满意;3:基本满意;4:满意;5:非常满意;6:未评价;7:无效评价;) */
ce.setServiceMetrics(satisfyJson.getInteger("serviceMetrics"));
/** 反馈质量 (1:非常不满意;2:不满意;3:基本满意;4:满意;5:非常满意;6:未评价;7:无效评价;) */
ce.setFeedbackQualityMetrics(satisfyJson.getInteger("feedbackQualityMetrics"));
/** 文字评价内容 */
ce.setWritingEvaluation(satisfyJson.getString("writingEvaluation"));
/** 机构code */
ce.setOrgCode(satisfyJson.getString("orgCode"));
/** 评价次数 */
ce.setAssessNumber(satisfyJson.getInteger("assessNumber"));
return ce;
}
}

16
lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/domain/EnterpriseComplaintSatisfy.java

@ -16,7 +16,7 @@ public class EnterpriseComplaintSatisfy extends BaseDomain
private String proWoId;
/** 工单编号 */
private String prWoCode;
private String proWoCode;
/** 满意度评价 (1:非常不满意;2:不满意;3:基本满意;4:满意;5:非常满意;6:未评价;7:无效评价;) */
private Integer approveCode;
@ -57,16 +57,16 @@ public class EnterpriseComplaintSatisfy extends BaseDomain
{
return proWoId;
}
public void setPrWoCode(String prWoCode)
{
this.prWoCode = prWoCode;
public String getProWoCode() {
return proWoCode;
}
public String getPrWoCode()
{
return prWoCode;
public void setProWoCode(String proWoCode) {
this.proWoCode = proWoCode;
}
public void setApproveCode(Integer approveCode)
public void setApproveCode(Integer approveCode)
{
this.approveCode = approveCode;
}

12
lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/resources/mapper/EnterpriseComplaintSatisfyMapper.xml

@ -6,7 +6,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<resultMap type="com.zdxt.code.domain.EnterpriseComplaintSatisfy" id="EnterpriseComplaintSatisfyResult">
<result property="proWoId" column="pro_wo_id" />
<result property="prWoCode" column="pr_wo_code" />
<result property="proWoCode" column="pro_wo_code" />
<result property="approveCode" column="approve_code" />
<result property="approveTime" column="approve_time" />
<result property="disApproveReason" column="dis_approve_reason" />
@ -24,13 +24,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</resultMap>
<sql id="selectEnterpriseComplaintSatisfyVo">
select pro_wo_id, pr_wo_code, approve_code, approve_time, dis_approve_reason, deal_speed_metrics, deal_effect_metrics, service_metrics, feedback_quality_metrics, writing_evaluation, org_Code, assess_Number, creator, create_time, updator, update_time from enterprise_complaint_satisfy
select pro_wo_id, pro_wo_code, approve_code, approve_time, dis_approve_reason, deal_speed_metrics, deal_effect_metrics, service_metrics, feedback_quality_metrics, writing_evaluation, org_Code, assess_Number, creator, create_time, updator, update_time from enterprise_complaint_satisfy
</sql>
<select id="selectEnterpriseComplaintSatisfyList" parameterType="EnterpriseComplaintSatisfy" resultMap="EnterpriseComplaintSatisfyResult">
<include refid="selectEnterpriseComplaintSatisfyVo"/>
<where>
<if test="prWoCode != null and prWoCode != ''"> and pr_wo_code = #{prWoCode}</if>
<if test="proWoCode != null and proWoCode != ''"> and pro_wo_code = #{proWoCode}</if>
<if test="approveCode != null "> and approve_code = #{approveCode}</if>
<if test="approveTime != null and approveTime != ''"> and approve_time = #{approveTime}</if>
<if test="disApproveReason != null "> and dis_approve_reason = #{disApproveReason}</if>
@ -55,7 +55,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
insert into enterprise_complaint_satisfy
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="proWoId != null and proWoId != ''">pro_wo_id,</if>
<if test="prWoCode != null and prWoCode != ''">pr_wo_code,</if>
<if test="proWoCode != null and proWoCode != ''">pro_wo_code,</if>
<if test="approveCode != null ">approve_code,</if>
<if test="approveTime != null and approveTime != ''">approve_time,</if>
<if test="disApproveReason != null ">dis_approve_reason,</if>
@ -73,7 +73,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="proWoId != null and proWoId != ''">#{proWoId},</if>
<if test="prWoCode != null and prWoCode != ''">#{prWoCode},</if>
<if test="proWoCode != null and proWoCode != ''">#{proWoCode},</if>
<if test="approveCode != null ">#{approveCode},</if>
<if test="approveTime != null and approveTime != ''">#{approveTime},</if>
<if test="disApproveReason != null ">#{disApproveReason},</if>
@ -94,7 +94,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<update id="updateEnterpriseComplaintSatisfy" parameterType="EnterpriseComplaintSatisfy">
update enterprise_complaint_satisfy
<trim prefix="SET" suffixOverrides=",">
<if test="prWoCode != null and prWoCode != ''">pr_wo_code = #{prWoCode},</if>
<if test="proWoCode != null and proWoCode != ''">pro_wo_code = #{proWoCode},</if>
<if test="approveCode != null ">approve_code = #{approveCode},</if>
<if test="approveTime != null and approveTime != ''">approve_time = #{approveTime},</if>
<if test="disApproveReason != null ">dis_approve_reason = #{disApproveReason},</if>

Loading…
Cancel
Save