Commit 624c66e1 by 王衍超

新增接口:根据购砂单位ID 查询所有合同列表里的项目ID列表;

parent 1dac949b
......@@ -2,7 +2,7 @@ package com.xyst.dinas.contract.config;
import org.springframework.context.annotation.Bean;
import com.xyst.dinas.contract.internal.dao.ContractDaoImpl;
import com.xyst.dinas.contract.internal.dao.ContractInfoDao;
import com.xyst.dinas.contract.internal.service.ContractServiceImpl;
import com.xyst.dinas.contract.service.ContractService;
import com.xyst.dinas.contract.web.ContractController;
......@@ -24,8 +24,8 @@ public class ContractConfiguration {
return new ContractServiceImpl();
}
@Bean
public ContractDaoImpl contractDaoImpl() {
return new ContractDaoImpl();
public ContractInfoDao contractInfoDao() {
return new ContractInfoDao();
}
}
......@@ -11,15 +11,19 @@ public enum ContractStateEnum {
/**
* 未执行
*/
UN_EXECUTE("0","未执行"),
UN_EXECUTE("UN_EXECUTE","未执行"),
/**
* 执行中
*/
EXECUTING("1","执行中"),
EXECUTING("EXECUTING","执行中"),
/**
* 已完成
*/
COMPLETED("2","已完成"),
COMPLETED("COMPLETED","已完成"),
/**
* 已变更
*/
MODIFIED("MODIFIED","已变更"),
;
String code;
......
package com.xyst.dinas.contract.internal.dao;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import java.util.UUID;
import org.hibernate.HibernateException;
......@@ -13,18 +15,28 @@ import org.springframework.stereotype.Repository;
import com.beecode.bcp.type.KObject;
import com.xyst.dinas.contract.constant.ContractConstant;
import com.xyst.dinas.contract.pojo.ContractEntity;
@Repository
public class ContractDaoImpl {
public class ContractInfoDao {
@Autowired
private HibernateOperations template;
public void update(KObject kobject) {
template.update(kobject.getType().getName(), kobject);
}
public KObject load(UUID id) {
return null;
return (KObject) template.get(ContractConstant.ENTITY_CONTRACT_INFO, id);
}
public UUID create(KObject kObject) {
return (UUID) template.save(kObject.getType().getName(), kObject);
}
/**
* 通过合同编号查找合同
* @param contractCode
......@@ -41,7 +53,24 @@ public class ContractDaoImpl {
});
}
public Set<String> getProjectListByPurSandId(UUID purchaseSandId) {
HashSet<String> projectSet = new HashSet<>();
List<KObject> contracts = template.execute(new HibernateCallback<List<KObject>>() {
@Override
public List<KObject> doInHibernate(Session session) throws HibernateException {
Query<KObject> query = session.createQuery("from " + ContractConstant.ENTITY_CONTRACT + " where valid = 1 and purchaseSandUnit.id =:purchaseSandUnit", KObject.class);
query.setParameter("purchaseSandUnit", purchaseSandId);
return query.getResultList();
}
});
if(contracts==null ||contracts.isEmpty()) return projectSet;
for (KObject contract : contracts) {
UUID projectId = contract.getUuid(ContractEntity.PROJECT);
projectSet.add(projectId.toString());
}
return projectSet;
}
......
package com.xyst.dinas.contract.internal.service;
import java.util.Set;
import java.util.UUID;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -9,7 +10,7 @@ import org.springframework.transaction.annotation.Transactional;
import com.beecode.bcp.type.KObject;
import com.beecode.inz.workflow.service.InzWorkflowService;
import com.xyst.dinas.contract.constant.ContractConstant;
import com.xyst.dinas.contract.internal.dao.ContractDaoImpl;
import com.xyst.dinas.contract.internal.dao.ContractInfoDao;
import com.xyst.dinas.contract.service.ContractService;
@Service
......@@ -20,12 +21,11 @@ public class ContractServiceImpl implements ContractService{
private InzWorkflowService inzWorkflowService;
@Autowired
private ContractDaoImpl contractDao;
private ContractInfoDao contractInfoDao;
@Override
public void submitFlow(UUID id) {
KObject kobject = contractDao.load(id);
KObject kobject = contractInfoDao.load(id);
if (needSubmitFlow(kobject)) {
// 调用流程接口发起流程
inzWorkflowService.startWorkflow("SUBMIT", ContractConstant.BIZ_TYPE, kobject.getString("lendReason"), kobject);
......@@ -43,12 +43,20 @@ public class ContractServiceImpl implements ContractService{
ContractConstant.BIZ_TYPE, data);
}
@Override
public Set<String> getProjectListByPurSandId(UUID purchaseSandId) {
return contractInfoDao.getProjectListByPurSandId(purchaseSandId);
}
public void bill() {
String billDefineName = "com.beecode.inz.property.bill.Equipment";
String billDefineName = ContractConstant.ENTITY_CONTRACT;
// BillDefine billDefine = Amino.getApplicationMetadataContext().getBean(billDefineName, BillDefine.class);
// Bill equipmentBill = billService.createBill(billDefine);
// BillData equipmentBillData = equipmentBill.getData();
}
}
package com.xyst.dinas.contract.pojo;
public class ContractEntity {
/** 实体名:合同表 */
public static final String ENTITY_CONTRACT = "com.xyst.dinas.contract.datamodel.Contract";
/** 项目 */
public static final String PROJECT = "project";
}
package com.xyst.dinas.contract.service;
import java.util.Set;
import java.util.UUID;
public interface ContractService {
void submitFlow(UUID id);
/**
* 根据购砂单位ID 查询所有合同列表里的项目ID列表
* @param purchaseSandId 购砂单位ID
* @return
*/
Set<String> getProjectListByPurSandId(UUID purchaseSandId);
}
package com.xyst.dinas.contract.web;
import java.util.Set;
import java.util.UUID;
import org.json.JSONObject;
......@@ -32,13 +33,15 @@ public class ContractController {
//根据购砂单位ID 查询所有合同列表里的项目ID列表
@GetMapping("/sand/user/projectList/{regionId}")
public String getProjectListByRegionId(@PathVariable String regionId) {
@GetMapping("/sand/user/projectList/{purchaseSandId}")
public String getProjectListByPurSandId(@PathVariable String purchaseSandId) {
return "test";
UUID id = UUID.fromString(purchaseSandId);
Set<String> projectList = contractService.getProjectListByPurSandId(id);
JSONObject jsonObject = new JSONObject(projectList);
return jsonObject.toString();
}
}
\ No newline at end of file
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