hz-zhhq-app-service/greenH5modul/.svn/pristine/8e/8e38f3109bd44dbe8c7c2b0101e...

602 lines
25 KiB
Plaintext
Raw Normal View History

2025-01-21 13:12:35 +08:00
package com.nationalelectric.greenH5;
import java.sql.Timestamp;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.UUID;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import org.codehaus.jackson.map.ObjectMapper;
import org.codehaus.jackson.type.TypeReference;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import com.jysoft.unipush.AliasManage;
import com.nationalelectirc.Constant.Constant;
import com.nationalelectirc.utils.RestResult;
import com.nationalelectric.greenH5.bizc.BaseServiceImpl;
import com.nationalelectric.greenH5.bizc.IFeatureBizc;
import com.nationalelectric.greenH5.po.GreenFoodFeature;
import com.nationalelectric.greenH5.po.GreenFoodVote;
import com.nationalelectric.greenH5.po.GreenUserInfo;
import com.sgcc.uap.persistence.IHibernateDao;
/**
* 推荐菜
* @author Administrator
*
*/
@Controller
@RequestMapping("/feature")
public class FeatureController extends GreenBaseController {
/**
* HibernateDao逻辑构件
*/
@Autowired
IHibernateDao hibernateDao;
@Resource
private IFeatureBizc iFeatureBizc;
@Autowired
private BaseServiceImpl baseService;
/**
* 保存图片controller
*/
@Resource
private GreenImageInfoController greenImageInfoController;
@Resource
private AliasManageController aliasManageController;
/**
* 添加推荐菜
* @return
*/
@SuppressWarnings("unchecked")
@RequestMapping(value = "/add", method = RequestMethod.POST)
public @ResponseBody RestResult add(@RequestBody Object requestBody) {
try {
GreenFoodFeature feature = new ObjectMapper().convertValue(requestBody, new TypeReference<GreenFoodFeature>(){});
String userId = feature.getCreator();
GreenUserInfo info = getUserInfo(userId);
if (info == null) {
return new RestResult(Constant.FAILED, "非法用户");
}
//查询新品推荐时间
StringBuffer timeSql = new StringBuffer();
timeSql.append(" select max(activity_no) activity_no, ")
.append(" start_time1,end_time1 from t_activity where activity_code = 'dining_new_products' and is_deleted = 'N' ");
List<Object[]> timeList = hibernateDao.executeSqlQuery(timeSql.toString());
//时间
Timestamp ts = new Timestamp(new Date().getTime());
if(timeList != null && timeList.get(0)[1] != null && timeList.get(0)[2] != null
&& (ts.getTime() <= Timestamp.valueOf(timeList.get(0)[1].toString()).getTime() ||
ts.getTime() >= Timestamp.valueOf(timeList.get(0)[2].toString()).getTime())){
return new RestResult(Constant.FAILED, "提交失败,不在推荐时间内");
}
//主键
String featureId = UUID.randomUUID().toString().replaceAll("-","");
feature.setId(featureId);
feature.setModifier(userId);
feature.setGmtCreated(ts);//创建时间
feature.setGmtModified(ts);//修改时间
//单张图片
String picture64 = feature.getPicture() == null ? "" : feature.getPicture();
boolean flag=true;
String picture = "";
String pictureData = "";
if(!"".equals(picture64)){
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
String date = sdf.format(new Date()) + "/";
String uuid = date + UUID.randomUUID().toString().replaceAll("-","");
flag = baseService.saveImgToIO(uuid+Constant.IMG_SUFFIX, picture64);
picture = uuid+Constant.IMG_SUFFIX;
pictureData = uuid;
}
//清除图片地址信息
baseService.initImage();
//多张图片
// String[] pictures = feature.getPicture() == null ? new String[]{} : feature.getPicture().split("~");
// if(pictures.length > 3){
// return new RestResult(Constant.FAILED, "图上只能上传3张");
// }
//
// boolean flag=true;
// String picture = "";
// String pictureData = "";
// for(int i = 0; i < pictures.length; i++){
// //存入数据 库
//// String uuid = greenImageInfoController.saveImage(pictures[i], userId);
// String uuid = UUID.randomUUID().toString().replaceAll("-","");
// flag = baseService.saveImgToIO(uuid+Constant.IMG_SUFFIX, pictures[i]);
// if(i != 0){
// picture += ",";
// pictureData += ",";
// }
// picture += uuid+Constant.IMG_SUFFIX;
// pictureData += uuid;
// }
feature.setPicture(picture);
feature.setPictureData(pictureData);
//成功则为1 否则为0靠定时重新保存
feature.setImgStatus(flag ? 1 : 0);
//时间
SimpleDateFormat sdf = new SimpleDateFormat("yy-MM-dd hh:mm:dd");
String uploadDate = sdf.format(new Date());
feature.setUploadDate(uploadDate);
//查询活动次数
String sql = " select max(activity_no) from t_activity where activity_code = 'dining_new_products' and is_deleted = 'N' ";
List<Object> list = hibernateDao.executeSqlQuery(sql);
int activityNo = list == null ? 1 : Integer.parseInt(list.get(0).toString());
feature.setActivityNo(activityNo);
hibernateDao.saveObject(feature);
} catch (Exception e) {
System.out.print(e.getMessage());
return new RestResult(Constant.FAILED, "提交失败");
}
return new RestResult(Constant.SUCCESS,"提交成功");
}
/**
* 推荐菜投票
* @return
*/
@SuppressWarnings("unchecked")
@RequestMapping(value = "/vote", method = RequestMethod.POST)
public @ResponseBody RestResult vote(@RequestBody Object requestBody) {
try {
GreenFoodVote vote = new ObjectMapper().convertValue(requestBody, new TypeReference<GreenFoodVote>(){});
String userId = vote.getVoteUser();
GreenUserInfo info = getUserInfo(userId);
if (info == null) {
return new RestResult(Constant.FAILED, "非法用户");
}
if(vote.getFeatureId() == null || "".equals(vote.getFeatureId())){
return new RestResult(Constant.FAILED, "投票失败");
}
//查询新品投票时间
StringBuffer timeSql = new StringBuffer();
timeSql.append(" select max(activity_no) activity_no, ")
.append(" start_time2,end_time2 from t_activity where activity_code = 'dining_new_products' and is_deleted = 'N' ");
List<Object[]> timeList = hibernateDao.executeSqlQuery(timeSql.toString());
//时间
Timestamp ts = new Timestamp(new Date().getTime());
if(timeList != null && timeList.get(0)[1] != null && timeList.get(0)[2] != null
&& (ts.getTime() <= Timestamp.valueOf(timeList.get(0)[1].toString()).getTime() ||
ts.getTime() >= Timestamp.valueOf(timeList.get(0)[2].toString()).getTime())){
return new RestResult(Constant.FAILED, "不在投票时间内");
}
String sql = " select id from green_food_vote where vote_user = ? and activity_no = "
+ " (select max(activity_no) from t_activity where activity_code = 'dining_new_products' and is_deleted = 'N' ) ";
List<Object> list = hibernateDao.executeSqlQuery(sql, new String[]{userId});
if(list != null && list.size() > 0){
return new RestResult(Constant.FAILED, "您已经投票过,不能再投票");
}
//主键
String voteId = UUID.randomUUID().toString().replaceAll("-","");
vote.setId(voteId);
//时间
vote.setGmtCreated(ts);//创建时间
vote.setGmtModified(ts);//修改时间
//活动次数
vote.setActivityNo(Integer.valueOf(timeList.get(0)[0].toString()));
hibernateDao.saveObject(vote);
} catch (Exception e) {
System.out.print(e.getMessage());
return new RestResult(Constant.FAILED, "提交失败");
}
return new RestResult(Constant.SUCCESS,"提交成功");
}
/**
* 推荐菜查询-投票
* @return
*/
@SuppressWarnings("unchecked")
@RequestMapping(value = "/query", method = RequestMethod.POST)
public @ResponseBody RestResult query(@RequestBody Object requestBody) {
try {
Map<String, Object> map = new ObjectMapper().convertValue(requestBody, new TypeReference<Map<String, Object>>(){});
String userId = map.get("userId") == null || "".equals(map.get("userId")) ? null : map.get("userId").toString();
GreenUserInfo info = getUserInfo(userId);
if (info == null) {
return new RestResult(Constant.FAILED, "非法用户");
}
//分页
Integer pageSize = map.get("pageSize") == null ? 10 : Integer.parseInt(map.get("pageSize").toString());
Integer pageNum = map.get("pageNum") == null ? 1 : Integer.parseInt(map.get("pageNum").toString());
pageNum = (pageNum-1) * pageSize;
//活动次数
Integer activityNo = map.get("activityNo") == null || "".equals(map.get("activityNo")) ? null : Integer.parseInt(map.get("activityNo").toString());
StringBuffer sql = new StringBuffer();
List<Object> params = new ArrayList<Object>();
sql.append(" select gf.id,gf.kinds,gf.food_name,gf.picture,gf.creator, ")
.append(" DATE_FORMAT(gf.gmt_created,'%Y-%m-%d %H:%i:%s') time, ")
.append(" gf.material,gf.reason,gf.activity_no, ");
//是否已经投票 0 可以投票 1已经投票2投过标不能再投其他的票
sql.append(" case if((select count(gv.id) from green_food_vote gv where gv.feature_id = gf.id and gv.activity_no = gf.activity_no and gv.vote_user = ? ), 1, 0) ");
sql.append(" when 0 then if((select count(gv.id) from green_food_vote gv where gv.activity_no = gf.activity_no and gv.vote_user = ? ), 2, 0) ");
sql.append(" else if((select count(gv.id) from green_food_vote gv where gv.feature_id = gf.id and gv.activity_no = gf.activity_no and gv.vote_user = ? ), 1, 0) end is_vote, ");
params.add(userId);
params.add(userId);
params.add(userId);
//投票数量
sql.append(" ifnull((select count(gv.id) from green_food_vote gv where gv.feature_id = gf.id ), 0) vote_no ");
sql.append(" from green_food_feature gf where is_deleted = 'N' ");
if(activityNo != null){
sql.append(" and activity_no = ?");
params.add(activityNo);
}else {
sql.append(" and activity_no = (select max(activity_no) from t_activity where activity_code = 'dining_new_products' and is_deleted = 'N')");
}
sql.append(" order by gf.gmt_created desc limit ?,? ");
params.add(pageNum);
params.add(pageSize);
List<Map<String,Object>> list = hibernateDao.queryForListWithSql(sql.toString(), params.toArray());
//获取图片地址
for(Map<String,Object> m : list){
String picture=(String)m.get("picture");
m.put("picture", baseService.getImageBase64(picture));
// List<String> imageUrl = new ArrayList<String>();
// String[] arr = picture.split(",");
// for (int i = 0; i < arr.length; i++){
// imageUrl.add(baseService.getImageBase64(arr[i]));
// }
// m.put("picture", imageUrl);
}
//清除图片地址信息
baseService.initImage();
return new RestResult(Constant.SUCCESS,"成功", list);
} catch (Exception e) {
System.out.print(e.getMessage());
return new RestResult(Constant.FAILED, "提交失败");
}
}
/**
* 推荐菜查询
* @return
*/
@SuppressWarnings("unchecked")
@RequestMapping(value = "/queryMyFood", method = RequestMethod.POST)
public @ResponseBody RestResult queryMyFood(@RequestBody Object requestBody) {
try {
Map<String, Object> map = new ObjectMapper().convertValue(requestBody, new TypeReference<Map<String, Object>>(){});
String userId = map.get("userId") == null || "".equals(map.get("userId")) ? null : map.get("userId").toString();
GreenUserInfo info = getUserInfo(userId);
if (info == null) {
return new RestResult(Constant.FAILED, "非法用户");
}
Integer pageSize = map.get("pageSize") == null ? 10 : Integer.parseInt(map.get("pageSize").toString());
Integer pageNum = map.get("pageNum") == null ? 1 : Integer.parseInt(map.get("pageNum").toString());
pageNum = (pageNum-1) * pageSize;
StringBuffer sql = new StringBuffer();
List<Object> params = new ArrayList<Object>();
sql.append(" select DATE_FORMAT(activity.start_time3,'%Y-%m-%d %H:%i:%s') start_time3,DATE_FORMAT(activity.end_time3,'%Y-%m-%d %H:%i:%s') end_time3, "
+ " gf.* from green_food_lottery lo left JOIN green_food_feature gf on lo.feature_id=gf.id LEFT JOIN ")
.append(" (select activity_no,start_time3,end_time3 from t_activity where activity_code = 'dining_new_products' and is_deleted = 'N' ) activity ")
.append(" on activity.activity_no = gf.activity_no where gf.vote_no is not null and gf.is_deleted = 'N' ")
.append(" order by activity.activity_no desc, gf.gmt_created desc limit ?,? ");
params.add(pageNum);
params.add(pageSize);
List<Map<String,Object>> list = hibernateDao.queryForListWithSql(sql.toString(), params.toArray());
//获取图片地址
for(Map<String,Object> m : list){
String picture=(String)m.get("picture");
m.put("picture", baseService.getImageBase64(picture));
}
//清除图片地址信息
baseService.initImage();
return new RestResult(Constant.SUCCESS,"成功", list);
} catch (Exception e) {
System.out.print(e.getMessage());
return new RestResult(Constant.FAILED, "提交失败");
}
}
/**
* 推荐菜查询
* @return
*/
@SuppressWarnings("unchecked")
@RequestMapping(value = "/submitRecommendFood", method = RequestMethod.POST)
public @ResponseBody RestResult submitRecommendFood(@RequestBody GreenFoodFeature feature) {
try {
Timestamp ts = new Timestamp(new Date().getTime());
String featureId = UUID.randomUUID().toString().replaceAll("-","");
feature.setId(featureId);
feature.setModifier(feature.getCreator());
feature.setGmtCreated(ts);//创建时间
feature.setGmtModified(ts);//修改时间
//单张图片
String picture64 = feature.getPicture() == null ? "" : feature.getPicture();
// boolean flag=true;
// String picture = "";
// String pictureData = "";
// if(!"".equals(picture64)){
// SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
// String date = sdf.format(new Date()) + "/";
// String uuid = date + UUID.randomUUID().toString().replaceAll("-","");
// flag = baseService.saveImgToIO(uuid+Constant.IMG_SUFFIX, picture64);
// picture = uuid+Constant.IMG_SUFFIX;
// pictureData = uuid;
// }
// //清除图片地址信息
// baseService.initImage();
// feature.setPicture(picture);
feature.setPictureData(picture64);
//成功则为1 否则为0靠定时重新保存
feature.setImgStatus(1);
// feature.setImgStatus(flag ? 1 : 0);
//时间
SimpleDateFormat sdf = new SimpleDateFormat("yy-MM-dd hh:mm:dd");
String uploadDate = sdf.format(new Date());
feature.setUploadDate(uploadDate);
hibernateDao.saveObject(feature);
Integer isRelease = feature.getIsRelease();
String title = "";
String text = "";
String url = "";
if(isRelease==0){
title = "菜品推荐";
text = "您好,您的推荐菜品已提交,请点击查看。";
url = "/pages/feature/feature?type=2&currentTabIndex=2";
aliasManageController.pushToSingle(feature.getCreator(), title, text, url);
}else{
title = "菜品发布";
text = "您好,您已发布新菜品,请点击查看。";
url = "/pages/feature/feature?type=1";
aliasManageController.pushToSingle(feature.getCreator(), title, text, url);
String role = "15002";//咨询受理权限
String getUserSql = "SELECT u.id,u.ISC_ID FROM green_user_info u "
+ " LEFT JOIN green_user_role_rel r ON u.id = r.user_id "
+ " LEFT JOIN green_role_permission p ON p.role_id = r.role_id "
+ " WHERE p.permission_id = ? ";
List<Map<String,Object>> userList2 = hibernateDao.queryForListWithSql(getUserSql, new Object[]{role});
title = "菜品推荐";
text = "您好,餐厅有新品发布,请点击查看。";
url = "/pages/feature/feature?type=2";
aliasManageController.pushToSingleBatch(userList2, title, text, url);
}
return new RestResult(Constant.SUCCESS,"提交成功");
} catch (Exception e) {
System.out.print(e.getMessage());
return new RestResult(Constant.FAILED, "提交失败");
}
}
/**
* 推荐菜查询
* @return
*/
@SuppressWarnings("unchecked")
@RequestMapping(value = "/getMySubmitFeatureFood", method = RequestMethod.POST)
public @ResponseBody RestResult getMySubmitFeatureFood(@RequestBody GreenFoodFeature feature) {
try {
String creator = feature.getCreator();
int pageSize = feature.getPageSize();
int page = feature.getPageNum();
page = (page-1) * pageSize;
int limit = ((page > 0 ? page : 1) -1) * pageSize;
String sql = "SELECT * FROM(SELECT RN.*,ROWNUM rw FROM( "
+ "select f.id as \"id\",f.kinds as \"kinds\",f.food_name as \"food_name\",f.picture as \"picture\","
+ "f.picture_data as \"picture_data\",f.price as \"price\",f.unit as \"unit\",f.upload_date as \"upload_date\","
+ "f.img_status as \"img_status\",f.creator as \"creator\",f.modifier as \"modifier\",f.gmt_created as \"gmt_created\","
+ "f.gmt_modified as \"gmt_modified\",f.material as \"material\",f.reason as \"reason\",f.activity_no as \"activity_no\","
+ "f.is_deleted as \"is_deleted\",f.vote_no as \"vote_no\",f.is_release as \"is_release\" from green_food_feature f where f.is_deleted='N' and f.creator = '"+creator+"' "
+ "order by f.gmt_created desc "
+ " )rn ) WHERE rw > ? AND rw <= ? ";
List<Map<String,Object>> list = hibernateDao.queryForListWithSql(sql,new Object[]{ limit, pageSize});
for(Map<String,Object> m : list){
String picture=(String)m.get("picture");
m.put("picture", baseService.getImageBase64(picture));
}
//清除图片地址信息
baseService.initImage();
return new RestResult(Constant.SUCCESS,"成功",list);
} catch (Exception e) {
System.out.print(e.getMessage());
return new RestResult(Constant.FAILED, "失败");
}
}
/**
* 推荐菜查询
* @return
*/
@SuppressWarnings("unchecked")
@RequestMapping(value = "/getPublicFeatureFood", method = RequestMethod.POST)
public @ResponseBody RestResult getPublicFeatureFood(@RequestBody GreenFoodFeature feature) {
try {
String creator = feature.getCreator();
int pageSize = feature.getPageSize();
int page = feature.getPageNum();
page = (page-1) * pageSize;
int limit = ((page > 0 ? page : 1) -1) * pageSize;
String sql = "SELECT * FROM(SELECT RN.*,ROWNUM rw FROM( "
+ "SELECT f.id as \"id\",f.kinds as \"kinds\",f.food_name as \"food_name\",f.picture as \"picture\","
+ "f.picture_data as \"picture_data\",f.price as \"price\",f.unit as \"unit\",f.upload_date as \"upload_date\","
+ "f.img_status as \"img_status\",f.creator as \"creator\",f.modifier as \"modifier\",f.gmt_created as \"gmt_created\","
+ "f.gmt_modified as \"gmt_modified\",f.material as \"material\",f.reason as \"reason\",f.activity_no as \"activity_no\","
+ "f.is_deleted as \"is_deleted\",f.vote_no as \"vote_no\",f.is_release as \"is_release\", "
+ " v.is_vote AS \"is_vote\" FROM green_food_feature f "
+ " LEFT JOIN ( SELECT count(feature_id) AS is_vote, feature_id FROM green_food_vote "
+ " WHERE is_deleted = 'N' AND vote_user = '"+creator+"' GROUP BY feature_id ) "
+ " v ON f.id = v.feature_id WHERE f.is_deleted = 'N' AND f.is_RELEASE = 0 "
+ " order by f.gmt_created desc "
+ " )rn ) WHERE rw > ? AND rw <= ? ";
List<Map<String,Object>> list = hibernateDao.queryForListWithSql(sql,new Object[]{ limit, pageSize});
for(Map<String,Object> m : list){
String picture=(String)m.get("picture");
m.put("picture", baseService.getImageBase64(picture));
}
//清除图片地址信息
baseService.initImage();
return new RestResult(Constant.SUCCESS,"成功",list);
} catch (Exception e) {
System.out.print(e.getMessage());
return new RestResult(Constant.FAILED, "失败");
}
}
/**
* 推荐菜投票
* @return
*/
@SuppressWarnings("unchecked")
@RequestMapping(value = "/recommendFoodVoteNew", method = RequestMethod.POST)
public @ResponseBody RestResult recommendFoodVoteNew(@RequestBody Object requestBody) {
try {
GreenFoodVote vote = new ObjectMapper().convertValue(requestBody, new TypeReference<GreenFoodVote>(){});
String userId = vote.getVoteUser();
GreenUserInfo info = getUserInfo(userId);
if (info == null) {
return new RestResult(Constant.FAILED, "非法用户");
}
if(vote.getFeatureId() == null || "".equals(vote.getFeatureId())){
return new RestResult(Constant.FAILED, "投票失败");
}
String sql = " select id as \"id\" from green_food_vote where vote_user = ? and activity_no = 1 ";
/*+ " (select max(activity_no) from t_activity where activity_code = 'dining_new_products' and is_deleted = 'N' ) "*/
List<Object> list = hibernateDao.queryForListWithSql(sql, new String[]{userId});
if(list != null && list.size() > 0){
return new RestResult(Constant.FAILED, "您已经投票过,不能再投票");
}
Timestamp ts = new Timestamp(new Date().getTime());
//主键
String voteId = UUID.randomUUID().toString().replaceAll("-","");
vote.setId(voteId);
//时间
vote.setGmtCreated(ts);//创建时间
vote.setGmtModified(ts);//修改时间
//活动次数
//vote.setActivityNo(Integer.valueOf(timeList.get(0)[0].toString()));
hibernateDao.saveObject(vote);
GreenFoodFeature feature = iFeatureBizc.get(vote.getFeatureId());
Integer voteNo = feature.getVoteNo()==null?0:feature.getVoteNo();
String updateSql = "update green_food_feature set vote_no=? where id=?";
hibernateDao.executeSqlUpdate(updateSql, new Object[]{voteNo+1,vote.getFeatureId()});
} catch (Exception e) {
System.out.print(e.getMessage());
return new RestResult(Constant.FAILED, "提交失败");
}
return new RestResult(Constant.SUCCESS,"提交成功");
}
/**
* 推荐菜投票
* @return
*/
@SuppressWarnings("unchecked")
@RequestMapping(value = "/submitRelease", method = RequestMethod.POST)
public @ResponseBody RestResult submitRelease(@RequestBody GreenFoodFeature feature) {
try {
String id = feature.getId();
String[] ids = id.split(",");
String updateSql = "";
for(String str:ids){
updateSql = "update green_food_feature set is_release=1 where id='"+str+"'";
hibernateDao.executeSqlUpdate(updateSql);
}
String role = "15002";//咨询受理权限
String getUserSql = "SELECT u.id,u.ISC_ID FROM green_user_info u "
+ " LEFT JOIN green_user_role_rel r ON u.id = r.user_id "
+ " LEFT JOIN green_role_permission p ON p.role_id = r.role_id "
+ " WHERE p.permission_id = ? ";
List<Map<String,Object>> userList2 = hibernateDao.queryForListWithSql(getUserSql, new Object[]{role});
String title = "菜品推荐";
String text = "您好,餐厅有新品发布,请点击查看。";
String url = "/pages/feature/feature?type=2";
aliasManageController.pushToSingleBatch(userList2, title, text, url);
return new RestResult(Constant.SUCCESS,"发布成功");
} catch (Exception e) {
System.out.print(e.getMessage());
return new RestResult(Constant.FAILED, "发布失败");
}
}
/**
* 推荐菜查询
* @return
*/
@SuppressWarnings("unchecked")
@RequestMapping(value = "/getReleasefeatureList", method = RequestMethod.POST)
public @ResponseBody RestResult getReleasefeatureList(@RequestBody GreenFoodFeature feature) {
try {
//String creator = feature.getCreator();
int pageSize = feature.getPageSize();
int page = feature.getPageNum();
page = (page-1) * pageSize;
int limit = ((page > 0 ? page : 1) -1) * pageSize;
String sql = " SELECT * FROM(SELECT RN.*,ROWNUM rw FROM( "
+ "select f.id as \"id\",f.kinds as \"kinds\",f.food_name as \"food_name\",f.picture as \"picture\","
+ "f.picture_data as \"picture_data\",f.price as \"price\",f.unit as \"unit\",f.upload_date as \"upload_date\","
+ "f.img_status as \"img_status\",f.creator as \"creator\",f.modifier as \"modifier\",f.gmt_created as \"gmt_created\","
+ "f.gmt_modified as \"gmt_modified\",f.material as \"material\",f.reason as \"reason\",f.activity_no as \"activity_no\","
+ "f.is_deleted as \"is_deleted\",f.vote_no as \"vote_no\",f.is_release as \"is_release\", u .real_name as \"real_name\" "
+ "from green_food_feature f left join green_user_info u on f.creator = u.id where f.is_deleted='N' and f.is_release = 1 "
+ "order by f.gmt_created desc"
+ " )rn ) WHERE rw > ? AND rw <= ? ";
List<Map<String,Object>> list = hibernateDao.queryForListWithSql(sql,new Object[]{ limit, pageSize});
for(Map<String,Object> m : list){
String picture=(String)m.get("picture");
m.put("picture", baseService.getImageBase64(picture));
}
//清除图片地址信息
baseService.initImage();
return new RestResult(Constant.SUCCESS,"成功",list);
} catch (Exception e) {
System.out.print(e.getMessage());
return new RestResult(Constant.FAILED, "失败");
}
}
}