hz-zhhq-app-service/greenH5modul/.svn/pristine/58/586e28f5f0eb6b6b696f2eaae3d...

170 lines
5.9 KiB
Plaintext
Raw Normal View History

2025-01-21 13:12:35 +08:00
package com.jysoft.property.service;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.UUID;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.jysoft.property.entity.GreenPropertyEntity;
import com.nationalelectirc.Constant.Constant;
import com.nationalelectirc.utils.RestResult;
import com.sgcc.uap.persistence.IHibernateDao;
import oracle.net.aso.g;
@Service
public class PropertyService {
@Autowired
private IHibernateDao iHibernateDao;
/**
* 通过用户id获取服务记录
*
* @param entity
* 数据
* @return 响应数据
*/
public RestResult getPropertyByUserId(GreenPropertyEntity entity) {
StringBuilder sql = new StringBuilder();
ArrayList<Object> paramList = new ArrayList<Object>();
sql.append(
"SELECT * FROM (SELECT gp.ID, gp.PROPERTY_ID, gdi.DATA_VALUE, gp.APPLICANT_TIME, gp.OFFICE, gp.DEMAND, gp.FEEDBACK, gp.APPROVAL_ID, gp.STATE, gp.USER_ID, gp.USER_NAME, gp.PHONE, gp.ORG_ID, gp.ORG_NAME, gp.APPROVAL_NAME, gp.\"NUMBER\" FROM GREEN_PROPERTY gp LEFT JOIN GREEN_DICTIONARY_INFO gdi ON gdi.DATA_CODE = gp.PROPERTY_ID AND gdi.DATA_TYPE='propertyType' AND gdi.IS_DELETED ='N' WHERE");
if ("1".equals(entity.getType())) {
sql.append(" 1=1");
} else {
sql.append(" gp.USER_ID =? ");
paramList.add(entity.getUserId());
}
if (entity.getState() != null && !"".equals(entity.getState())) {
sql.append("AND STATE = ? ");
paramList.add(entity.getState());
}
sql.append("AND ROWNUM > ? AND ROWNUM <= ? ORDER BY gp.APPLICANT_TIME DESC )");
System.err.println(sql.toString());
try {
int pageSize = entity.getPageSize();
int page = entity.getPageNum();
page = (page - 1) * pageSize;
int limit = ((page > 0 ? page : 1) - 1) * pageSize;
paramList.add(limit);
paramList.add(pageSize);
List<Map<String, Object>> list = iHibernateDao.queryForListWithSql(sql.toString(), paramList.toArray());
return new RestResult(Constant.SUCCESS, "查询成功", list);
} catch (Exception e) {
System.err.println(e.getMessage());
return new RestResult(Constant.FAILED, "查询失败");
}
}
/**
* 添加服务记录
*
* @param entity
* 数据
* @return 响应数据
*/
public RestResult addProperty(GreenPropertyEntity entity) {
String sql = "INSERT INTO GREEN_PROPERTY (ID, PROPERTY_ID, APPLICANT_TIME, OFFICE, DEMAND, FEEDBACK, "
+ "APPROVAL_ID, STATE, USER_ID, USER_NAME, PHONE, ORG_ID, ORG_NAME, APPROVAL_NAME,\"NUMBER\") "
+ "VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
try {
String uuid = UUID.randomUUID().toString().replace("-", "");
iHibernateDao.executeSqlUpdate(sql,
new Object[] { uuid, entity.getPropertyId(), entity.getApplicantTime(), entity.getOffice(),
entity.getDemand(), entity.getFeedback(), entity.getApprovalId(), '0', entity.getUserId(),
entity.getUserName(), entity.getPhone(), entity.getOrgId(), entity.getOrgName(),
entity.getApprovalName(), entity.getNumber() });
return new RestResult(Constant.SUCCESS, "添加成功");
} catch (Exception e) {
System.err.println(e.getMessage());
return new RestResult(Constant.FAILED, "添加失败");
}
}
/**
* 修改服务状态
*
* @param entity
* 数据
* @return 响应数据
*/
public RestResult updateProperty(GreenPropertyEntity entity) {
try {
List<Map<String, Object>> list = (List<Map<String, Object>>) getProperty(entity).getReturnData();
System.err.println(getProperty(entity).getReturnData().toString());
if (list.size() > 0) {
Map<String, Object> map = list.get(0);
String approvalId = (String) map.get("APPROVAL_ID");
if (approvalId != null && !("").equals(approvalId)) {
if (!approvalId.equals(entity.getUserId())) {
return new RestResult(Constant.FAILED, "办理人错误");
}
}
}
String state = entity.getState();
if ("0".equals(entity.getState())) {
state = "1";
}
if ("1".equals(entity.getState())) {
state = "2";
}
entity.setState(state);
String sql = "UPDATE GREEN_PROPERTY SET APPROVAL_ID =?,APPROVAL_NAME=?, FEEDBACK = ?,STATE = ? WHERE ID = ? ";
iHibernateDao.executeSqlUpdate(sql, new Object[] { entity.getUserId(), entity.getUserName(),
entity.getFeedback(), entity.getState(), entity.getId() });
return new RestResult(Constant.SUCCESS, "成功");
} catch (Exception e) {
System.err.println(e.getMessage());
return new RestResult(Constant.FAILED, "失败");
}
}
/**
* 获取服务类型
*
* @param entity
* 数据
* @return 响应数据
*/
public RestResult getPropertyType() {
String sql = "SELECT DATA_CODE,DATA_VALUE FROM GREEN_DICTIONARY_INFO WHERE DATA_TYPE ='propertyType'";
try {
List<Map<String, Object>> list = iHibernateDao.queryForListWithSql(sql);
return new RestResult(Constant.SUCCESS, "查询成功", list);
} catch (Exception e) {
System.err.println(e.getMessage());
return new RestResult(Constant.FAILED, "查询失败");
}
}
/**
* 获取服务详情
*
* @param entity
* 数据
* @return 响应数据
*/
public RestResult getProperty(GreenPropertyEntity entity) {
String sql = "SELECT gp.PROPERTY_ID, gdi.DATA_VALUE, gp.APPLICANT_TIME, gp.OFFICE, gp.DEMAND, gp.FEEDBACK, gp.APPROVAL_ID, gp.STATE, gp.USER_ID, gp.USER_NAME, gp.PHONE, gp.ORG_ID, gp.ORG_NAME, gp.APPROVAL_NAME, gp.\"NUMBER\" FROM GREEN_PROPERTY gp LEFT JOIN GREEN_DICTIONARY_INFO gdi ON gdi.DATA_CODE = gp.PROPERTY_ID AND gdi.DATA_TYPE='propertyType' AND gdi.IS_DELETED ='N' WHERE gp.ID=?";
try {
ArrayList<Object> paramList = new ArrayList<Object>();
paramList.add(entity.getId());
List<Map<String, Object>> list = iHibernateDao.queryForListWithSql(sql.toString(), paramList.toArray());
return new RestResult(Constant.SUCCESS, "查询成功", list);
} catch (Exception e) {
System.err.println(e.getMessage());
return new RestResult(Constant.FAILED, "查询失败");
}
}
}