Prechádzať zdrojové kódy

Merge branch 'dev' of huangwenjie/patient-co-management into dev

huangwenjie 7 rokov pred
rodič
commit
ed7420721d

+ 34 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/questionnaire/QuestionnaireService.java

@ -1,6 +1,7 @@
package com.yihu.wlyy.service.questionnaire;
import com.alibaba.fastjson.JSON;
import com.yihu.es.entity.FollowupContentESDO;
import com.yihu.es.entity.QuestionnaireWinningESDO;
import com.yihu.wlyy.config.SystemConfig;
import com.yihu.wlyy.config.es.ElasticFactory;
@ -22,6 +23,9 @@ import com.yihu.wlyy.util.RivaEDCode;
import com.yihu.wlyy.util.random.LotteryUtils;
import com.yihu.wlyy.util.random.dto.LotteryItem;
import io.searchbox.client.JestClient;
import io.searchbox.core.Bulk;
import io.searchbox.core.BulkResult;
import io.searchbox.core.Delete;
import org.apache.commons.lang3.StringUtils;
import org.json.JSONArray;
import org.json.JSONObject;
@ -443,4 +447,34 @@ public class QuestionnaireService extends BaseService {
		return  result;
	}
	
	/**
	 * 从ES删除中奖纪录
	 * @param idcard
	 * @param openid
	 */
	public void delWinningRecordFromES(String idcard, String openid)throws Exception  {
		JestClient jestClient = null;
		try {
			jestClient = elasticFactory.getJestClient();
			List<QuestionnaireWinningESDO> ess = getQuestionnaireWinningESDOByIdcardAndOpenid(idcard,openid);
			if(!ess.isEmpty()){
				Bulk.Builder bulk = new Bulk.Builder().defaultIndex(esIndex).defaultType(esType);
				for (QuestionnaireWinningESDO obj : ess) {
					Delete index = new Delete.Builder(obj.getId()).build();
					bulk.addAction(index);
				}
				BulkResult br = jestClient.execute(bulk.build());
				logger.info("delete data count:" + ess.size());
				logger.info("delete flag:" + br.isSucceeded());
			}
		}catch (Exception e){
			logger.error(" save error :" + e.getMessage());
			e.printStackTrace();
		} finally {
			if (jestClient != null) {
				jestClient.shutdownClient();
			}
		}
	}
}

+ 3 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/util/ElasticsearchUtil.java

@ -105,6 +105,9 @@ public class ElasticsearchUtil {
                        String key = null;
                        Object value = one.get(i);
                        if (heads.get(i).startsWith("_")) {
                            if(heads.get(i).contains("_id")){
                                clazz.getMethod("setId", String.class).invoke(saveModel, value);
                            }
                            continue;
                        }
                        key = "set" + UpFirstStr(heads.get(i));

+ 19 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/questionnaire/QuestionnaireSystemController.java

@ -78,5 +78,24 @@ public class QuestionnaireSystemController extends BaseController {
			return write(200,"操作失败!");
		}
	}
	
	@RequestMapping(value = "delrecordfromes",method = RequestMethod.POST)
	@ApiOperation("从ES删除中奖纪录")
	@ResponseBody
	public String delWinningRecordFromES(
			@ApiParam(required = false, name = "idcard", value = "身份证号")
			@RequestParam(value = "idcard", required = false)String idcard,
			@ApiParam(required = false, name = "openid", value = "openid")
			@RequestParam(value = "openid", required = false)String openid){
		try {
			logger.info("START===从ES删除中奖纪录");
			questionnaireService.delWinningRecordFromES(idcard,openid);
			logger.info("END===从ES删除中奖纪录");
			return write(200,"操作成功!");
		} catch (Exception ex) {
			error(ex);
			return write(200,"操作失败!");
		}
	}
}