Commit 9adc876c by shiwenbo

项目增加根据项目id查询砂石类型和数量的接口

parent 6205299f
......@@ -6,5 +6,7 @@ public interface ProjectFiledConstant {
* 实体名
*/
String PROJECTFILED_NTITY = "com.xyst.dinas.project.datamodel.ProjectFiled";
String PROJECTFILED_DINASTYPE_ENTITY = "com.xyst.dinas.project.datamodel.ProjectFiled$ProjectFiledDinasDetail";
}
package com.xyst.dinas.project.dao;
import java.util.List;
import java.util.UUID;
import com.beecode.bcp.type.KObject;
public interface ProjectFiledDao {
List<KObject> queryProjectFiledByName(String name);
KObject load(UUID id);
List<KObject> loadDinasTypeDetail(UUID id);
}
package com.xyst.dinas.project.internal.dao;
import java.util.List;
import java.util.UUID;
import org.hibernate.HibernateException;
import org.hibernate.Session;
......@@ -31,4 +32,25 @@ public class ProjectFiledDaoImpl implements ProjectFiledDao, ProjectFiledConstan
});
}
@Override
public KObject load(UUID id) {
return (KObject) template.load(PROJECTFILED_NTITY, id);
}
private static final String getProjectDinasDetailById="from " + PROJECTFILED_DINASTYPE_ENTITY+" as v where v.master.id=:id and (v.master.discard is null or v.master.discard = 0)";
@Override
public List<KObject> loadDinasTypeDetail(UUID id) {
return template.execute(new HibernateCallback<List<KObject>>() {
@Override
public List<KObject> doInHibernate(Session session) throws HibernateException {
Query<KObject> query = session.createQuery(getProjectDinasDetailById, KObject.class);
query.setParameter("id", id);
return query.getResultList();
}
});
}
}
package com.xyst.dinas.project.internal.service;
import java.util.List;
import java.util.UUID;
import org.json.JSONArray;
import org.json.JSONObject;
import org.springframework.beans.factory.annotation.Autowired;
import com.beecode.bcp.type.KObject;
......@@ -24,4 +27,18 @@ public class ProjectFiledServiceImpl implements ProjectFiledService {
return flag;
}
@Override
public JSONArray getDinasTypeByProjectId(String id) {
List<KObject> detail = projectFiledDao.loadDinasTypeDetail(UUID.fromString(id));
JSONArray result = new JSONArray();
for(KObject item : detail) {
JSONObject obj = new JSONObject();
obj.put("dinasTypeId", item.get("dinasType").getUuid("id"));
obj.put("dinasTypeName", item.get("dinasType").getString("dinasTypeName"));
obj.put("weight", item.getFloat("weight"));
result.put(obj);
}
return result;
}
}
package com.xyst.dinas.project.service;
import org.json.JSONArray;
public interface ProjectFiledService {
Boolean verifyName(String name);
JSONArray getDinasTypeByProjectId(String id);
}
......@@ -41,4 +41,16 @@ public class ProjectFiledController {
}
return null;
}
/**
* @Description: 根据项目id查询砂石种类
* @param id
* @return return_type
* @throws
*/
@ResponseBody
@RequestMapping(value = "/project/projectFiled/getDinasTypeByProjectId", method = RequestMethod.GET)
public String getDinasTypeByProjectId(@RequestParam("id") String id) {
return projectFiledService.getDinasTypeByProjectId(id).toString();
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment