package cn.ksource.web.facade.wbx.lxwh;
|
|
import java.util.Map;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
|
import cn.ksource.beans.CI_REMIND_ITEM;
|
import cn.ksource.core.dao.BaseDao;
|
import cn.ksource.core.dao.SqlParameter;
|
import cn.ksource.core.page.PageInfo;
|
import cn.ksource.core.util.ConvertUtil;
|
import cn.ksource.core.util.StringUtil;
|
@Service("lxwhItemFacade")
|
@SuppressWarnings("unchecked")
|
public class LxwhItemFacadeImpl implements LxwhItemFacade {
|
|
@Autowired
|
private BaseDao baseDao;
|
|
@Override
|
public int lxwhxListCount(Map<String, String> params) {
|
String categoryId = params.get("pId");
|
SqlParameter param = new SqlParameter();
|
|
String sql = "SELECT COUNT(ID) FROM CI_REMIND_ITEM WHERE ITEM_TYPE = 1 ";
|
|
|
if(StringUtil.notEmpty(categoryId)) {
|
sql += " AND BUSINESS_ID = :categoryId ";
|
param.put("categoryId", categoryId);
|
}
|
|
sql += " ORDER BY ORDER_NUM ";
|
|
return baseDao.queryForInteger(sql,param);
|
}
|
|
@Override
|
public PageInfo lxwhxListData(PageInfo pageInfo, Map<String, String> params) {
|
String categoryId = params.get("pId");
|
SqlParameter param = new SqlParameter();
|
|
String sql = "SELECT * FROM CI_REMIND_ITEM WHERE ITEM_TYPE = 1 ";
|
|
if(StringUtil.notEmpty(categoryId)) {
|
sql += " AND BUSINESS_ID = :categoryId ";
|
param.put("categoryId", categoryId);
|
}
|
|
sql += " ORDER BY ORDER_NUM ";
|
|
PageInfo info = baseDao.queryforSplitPageInfo(pageInfo, sql, param);
|
|
return info;
|
}
|
|
|
@Override
|
public CI_REMIND_ITEM getZntxItem(String id) {
|
return new CI_REMIND_ITEM(id).getInstanceById();
|
}
|
|
@Override
|
public void saveItem(CI_REMIND_ITEM item) {
|
String id = item.getId();
|
item.insertOrUpdate();
|
if(StringUtil.isEmpty(id)){
|
SqlParameter param = new SqlParameter();
|
param.addValue("item_id", item.getId())
|
.addValue("id", StringUtil.getUUID())
|
.addValue("customer_id","-1");
|
String sql = " insert into ci_remind_customer_item (id,customer_id,item_id,using_state) "
|
+ " values (:id,:customer_id,:item_id,1) ";
|
baseDao.execute(sql, param);
|
}
|
}
|
|
@Override
|
public int updateItem(String id, int state) {
|
int count = 0;
|
SqlParameter param = new SqlParameter();
|
param.addValue("item_id", id)
|
.addValue("state",state)
|
.addValue("customer_id","-1");
|
if(ConvertUtil.obj2Integer(state)==2){
|
String countsql = "SELECT COUNT(A.ID) FROM CI_REMIND_CUSTOMER_ITEM_CYCLE A,CI_REMIND_CUSTOMER_ITEM B WHERE A.PROJECT_ITEM_ID = B.ID AND B.ITEM_ID = :item_id ";
|
count = baseDao.queryForInteger(countsql,param);
|
if(count == 0){
|
countsql = "SELECT COUNT(A.ID) FROM CI_REMIND_TIMERTASK A,CI_REMIND_CUSTOMER_ITEM B WHERE A.CUSTOMER_ITEM_ID = B.ID AND B.ITEM_ID = :item_id ";
|
count = baseDao.queryForInteger(countsql,param);
|
}
|
if(count == 0){
|
countsql = "SELECT COUNT(A.ID) FROM CI_REMIND_CILIST A,CI_REMIND_CUSTOMER_ITEM B WHERE A.PROJECT_ITEM_ID = B.ID AND B.ITEM_ID = :item_id ";
|
count = baseDao.queryForInteger(countsql,param);
|
}
|
if(count == 0){
|
CI_REMIND_ITEM remind = new CI_REMIND_ITEM();
|
remind.setId(id);
|
remind.setState(state);
|
remind.update();
|
String sql = "UPDATE CI_REMIND_CUSTOMER_ITEM SET USING_STATE = :state WHERE ITEM_ID = :item_id AND CUSTOMER_ID = :customer_id ";
|
baseDao.execute(sql, param);
|
}
|
}else{
|
CI_REMIND_ITEM remind = new CI_REMIND_ITEM();
|
remind.setId(id);
|
remind.setState(state);
|
remind.update();
|
String sql = "UPDATE CI_REMIND_CUSTOMER_ITEM SET USING_STATE = :state WHERE ITEM_ID = :item_id AND CUSTOMER_ID = :customer_id ";
|
baseDao.execute(sql, param);
|
}
|
return count ;
|
|
}
|
|
}
|