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