package cn.com.capcloud.core.noentitydb;

import cn.com.capcloud.ccui.core.common.json.JackJSONArray;
import cn.com.capcloud.ccui.core.common.json.JackJSONObject;
import org.springframework.jdbc.core.JdbcTemplate;
import javax.servlet.http.HttpServletRequest;
import java.util.Map;

public interface DefaultActionFace {
	public void setJdbcTemplate(JdbcTemplate jdbcTemplate);
	public JdbcTemplate getJdbcTemplate();
	public String buildExcelSql(String jsonStr, JackJSONObject retJson, HttpServletRequest request);
	public JackJSONArray saveBefore(String jsonStr, JackJSONObject retJson, HttpServletRequest request, JackJSONArray array);
	public JackJSONArray saveAfter(String jsonStr, JackJSONObject retJson, HttpServletRequest request,JackJSONArray array);
	public Map<String,Object> findOneAfter(String jsonStr,JackJSONObject retJson, HttpServletRequest request,Map<String, Object> map);
	public Map<String,Object> findOneAfterExportExcel(String jsonStr,JackJSONObject retJson, HttpServletRequest request,Map<String, Object> map);
	public Map<String,Object> findOneAfterExportWord(String jsonStr,JackJSONObject retJson, HttpServletRequest request,Map<String, Object> map);
	public String deleteBefore(String jsonStr, JackJSONObject retJson,HttpServletRequest request);
	public String deleteAfter(String jsonStr, JackJSONObject retJson,HttpServletRequest request);
	public String buildSql(String jsonStr, JackJSONObject retJson,HttpServletRequest request);
	public String buildPowerSql(String jsonStr, JackJSONObject retJson,HttpServletRequest request);//查询权限拆分出来，方便重写
	public String buildSqlCount(String jsonStr, JackJSONObject retJson,HttpServletRequest request);
	public String buildDeleteSql(String jsonStr, JackJSONObject retJson,HttpServletRequest request);
	public String createPdf(String jsonStr, JackJSONObject retJson,HttpServletRequest request);
	public JtPage showAllDesensitize(String jsonStr, JackJSONObject retJson,HttpServletRequest request,JtPage jtPage);//脱敏
	public JtPage showAllDesensitizeExportExcel(String jsonStr, JackJSONObject retJson,HttpServletRequest request,JtPage jtPage);//脱敏
	public JtPage showAllAfter(String jsonStr, JackJSONObject retJson,HttpServletRequest request,JtPage jtPage);
	public JtPage showAllAfterExportExcel(String jsonStr, JackJSONObject retJson,HttpServletRequest request,JtPage jtPage);
	public Map<String,Object> importExcelDataBefore(String jsonStr, JackJSONObject retJson,HttpServletRequest request);
	public Map<String, Object> initPageParameters(String jsonStr, HttpServletRequest request);

}
