Commit 0daa60d4 by 王衍超

Merge branch 'develop' of gitlab.beecode.cn:kunlun/xyst_dinas/xyst_dinas_backend into develop

parents b82e55de aa65d1c4
......@@ -5,7 +5,9 @@ import com.beecode.bap.attachment.common.Page;
import com.beecode.bcp.core.context.AminoContextHolder;
import com.beecode.bcp.type.KClass;
import com.beecode.bcp.type.KObject;
import com.beecode.bcp.type.support.KernelArray;
import com.beecode.inz.basis.internal.dao.AbstractBaseDao;
import com.xyst.dinas.biz.constant.ProductionLineConstant;
import com.xyst.dinas.biz.constant.StationConstant;
import com.xyst.dinas.biz.dao.DinasTypeDao;
import com.xyst.dinas.biz.dao.StationDao;
......@@ -15,6 +17,7 @@ import org.hibernate.criterion.Restrictions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.orm.hibernate5.HibernateTemplate;
import java.lang.reflect.Array;
import java.util.Date;
import java.util.List;
import java.util.UUID;
......@@ -78,6 +81,19 @@ public class StationDaoImpl extends AbstractBaseDao implements StationDao, Stat
kobject.set("modifyTime",new Date());
kobject.set("modifier",staff);
kobject.set("del",false);
template.deleteAll(id.get("productionLines").toList());
KObject productions = kobject.get("productionLines");
if(null!=productions){
List<KObject> kObjects = productions.toList();
for (KObject object : kObjects) {
if(null==object.getUuid("id")){
object.set("id",UUID.randomUUID());
}
object.set("station",kobject);
template.save(ProductionLineConstant.ENTITY,object);
}
}
template.merge(kobject);
}
......@@ -93,7 +109,19 @@ public class StationDaoImpl extends AbstractBaseDao implements StationDao, Stat
kObject.set("creator",staff);
kObject.set("createTime", new Date());
kObject.set("del",false);
return ((UUID)template.save(kObject));
UUID save = (UUID) template.save(kObject);
KObject productions = kObject.get("productionLines");
if(null!=productions){
List<KObject> kObjects = productions.toList();
for (KObject object : kObjects) {
if(null==object.getUuid("id")){
object.set("id",UUID.randomUUID());
}
object.set("station",kObject);
template.save(ProductionLineConstant.ENTITY,object);
}
}
return save;
}
@Override
......
......@@ -79,6 +79,8 @@ public class WarningSettingServiceImpl implements IWarningSettingService{
@Override
public KObject queryWarnSettingById(UUID id) {
KObject KObj = warnSettingDao.queryWarnSettingById(id);
String billId = KObj.getString("billId");
//KObject contract = contractService.queryContractById(UUID.fromString(billId));
return KObj;
}
......@@ -103,8 +105,12 @@ public class WarningSettingServiceImpl implements IWarningSettingService{
private String UuidListToString(List<UUID> uuids) {
StringBuilder str = new StringBuilder();
for (UUID uuid : uuids) {
str.append(uuid.toString()).append(",");
for (int i = 0; i < uuids.size(); i++) {
if (i == uuids.size() - 1) {
str.append(uuids.get(i).toString());
} else {
str.append(uuids.get(i).toString()).append(",");
}
}
return str.toString();
}
......
......@@ -60,10 +60,6 @@
<comment>场站状态,0已停业1经营中</comment>
</column>
</property>
<bag name="productionLines" lazy="true" fetch="select" inverse="true">
<key column="station_id" not-null="true" />
<one-to-many entity-name="com.xyst.dinas.biz.datamodel.ProductionLine" />
</bag>
<property name="stationCoordinate" type="nstring" not-null="false">
<column name="station_coordinate">
<comment>场站的坐标按照逗号分隔</comment>
......@@ -94,14 +90,18 @@
<comment >排序</comment>
</column>
</property>
<bag name="productionLines" lazy="true" fetch="select" inverse="true">
<key column="station_id" not-null="true" />
<one-to-many entity-name="com.xyst.dinas.biz.datamodel.ProductionLine" />
</bag>
</class>
<class entity-name="com.xyst.dinas.biz.datamodel.ProductionLine" table="xyst_dinas_biz_production_Line" optimistic-lock="version">
<class entity-name="com.xyst.dinas.biz.datamodel.ProductionLine" table="xyst_dinas_biz_production_Line">
<tuplizer entity-mode="dynamic-map" class="com.beecode.bcp.store.hibernate.KObjectEntityTuplizer"/>
<id name="id" type="uuid-binary" column="id" length="16">
<generator class="assigned" />
</id>
<many-to-one name="station" entity-name="com.xyst.dinas.biz.datamodel.ProductionLine" fetch="select">
<column name="station_id" not-null="false">
<many-to-one name="station" entity-name="com.xyst.dinas.biz.datamodel.Station" fetch="select" >
<column name="station_id" not-null="false" >
<comment>所属场站</comment>
</column>
</many-to-one>
......
package com.xyst.dinas.contract.internal.service;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.UUID;
import org.json.JSONArray;
......@@ -17,6 +19,7 @@ import com.beecode.inz.common.BaseConstants;
import com.beecode.inz.workflow.service.InzWorkflowService;
import com.xyst.dinas.biz.dao.DinasOrganizationDao;
import com.xyst.dinas.biz.warn.WarnSettingEntity;
import com.xyst.dinas.biz.warn.dao.WarnSettingDao;
import com.xyst.dinas.biz.warn.service.IWarningSettingService;
import com.xyst.dinas.contract.constant.ContractConstant;
import com.xyst.dinas.contract.enumeration.ContractStateEnum;
......@@ -43,6 +46,9 @@ public class ContractServiceImpl implements ContractService {
@Autowired
private ProjectFiledDao projectFiledDao;
@Autowired
private WarnSettingDao warnSettingDao;
@Autowired
private DinasOrganizationDao dinasOrganizationDao;
......@@ -253,5 +259,23 @@ public class ContractServiceImpl implements ContractService {
// }
}
@Override
public Object queryWarnSettingById(UUID id) {
KObject KObj = warnSettingDao.queryWarnSettingById(id);
String billId = KObj.getString("billId");
KObject contract = contractInfoDao.load(UUID.fromString(billId));
Map<String, Object> map = new HashMap<>();
map.put("contractName", contract.getString("contractName"));
map.put("purchaseSandUnitName", contract.getString("purchaseSandUnitName"));
map.put("project", contract.isNull("project") ? "" : contract.get("project").getString("projectName"));
map.put("personnel", KObj.getString("personnel"));
map.put("max", KObj.getString("max"));
map.put("min", KObj.getString("min"));
map.put("target", KObj.getString("target"));
map.put("id", KObj.getUuid("id"));
map.put("billId", KObj.getString("billId"));
return map;
}
}
package com.xyst.dinas.contract.query.processor;
import java.util.Arrays;
import java.util.List;
import java.util.UUID;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import com.beecode.bap.staff.service.StaffService;
import com.beecode.bcp.type.KObject;
import com.beecode.inz.query.entity.RowData;
import com.beecode.inz.query.processor.DataProcessor;
......@@ -22,6 +25,9 @@ public class ContractWarnSettingProcessor implements DataProcessor {
@Autowired
private ContractService contractService;
@Autowired
private StaffService staffService;
@Override
public void process(DataProcessorContext context) {
List<RowData> rowDatas = context.getRowDatas();
......@@ -32,6 +38,23 @@ public class ContractWarnSettingProcessor implements DataProcessor {
row.put("projectName", contract.isNull("project") ? "" : contract.get("project").getString("name"));
row.put("contractName", contract.getString("contractName"));
row.put("purchaseSandUnitName", contract.getString("purchaseSandUnitName"));
String personnel = row.get("personnel") != null ? row.get("personnel").toString() : "";
String personnelName = "";
if (StringUtils.isNotEmpty(personnel)) {
List<String> personnelList = Arrays.asList(personnel.split(","));
for (int i = 0; i < personnelList.size(); i++) {
String personnelId = personnelList.get(i);
KObject personnelKObject = staffService.getById(UUID.fromString(personnelId));
if (i == personnelList.size() - 1) {
personnelName += personnelKObject.getString("name");
} else {
personnelName += personnelKObject.getString("name") + ",";
}
}
}
//personnelName.substring(0, personnelName.length() - 1);
row.put("personnelName", personnelName);
}
}
}
......@@ -66,4 +66,6 @@ public interface ContractService {
* @param object
*/
void afterChangeApproved(KObject object);
Object queryWarnSettingById(UUID id);
}
......@@ -19,6 +19,7 @@ import com.beecode.bcp.type.KClass;
import com.beecode.bcp.type.KObject;
import com.beecode.bcp.type.json.JSONObjectUtils;
import com.beecode.inz.basis.team.pojo.ResponseObj;
import com.beecode.xlib.runtime.Assert;
import com.xyst.dinas.biz.warn.BaseBusinessWarn;
import com.xyst.dinas.biz.warn.service.IWarningSettingService;
import com.xyst.dinas.contract.constant.ContractConstant;
......@@ -155,5 +156,12 @@ public class ContractController {
contractBusinessWarn.warn();
}
//查询一条预警设置
@GetMapping("/contract/warnsetting/{id}")
public Object queryWarnSetting(@PathVariable UUID id) {
Assert.notNull(id,"The id must not be null");
return contractService.queryWarnSettingById(id);
}
}
\ No newline at end of file
......@@ -66,7 +66,15 @@
<description></description>
</field>
<field title='业务id'>
<name>billId</name>
<type>uuid</type>
<ref>
<type></type>
<name></name>
</ref>
<description></description>
</field>
<field title='预警指标'>
<name>target</name>
<type>string</type>
......
......@@ -100,6 +100,16 @@
<m:desc></m:desc>
</m:field>
<m:field>
<m:name>billId</m:name>
<m:title>业务id</m:title>
<m:type>uuid</m:type>
<m:ref>
<m:name></m:name>
<m:type></m:type>
</m:ref>
<m:desc></m:desc>
</m:field>
<m:field>
<m:name>personnel</m:name>
<m:title>通知人员</m:title>
<m:type>string</m:type>
......
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