预警标准时设itemsId为'-1'

更改唯一性约束
This commit is contained in:
zhaokaiyao@91isoft.com
2021-08-31 14:47:54 +08:00
parent 8040cc0711
commit a843354794
3 changed files with 13 additions and 2 deletions
@@ -115,6 +115,12 @@ public class ScheduledJob {
List<WarningEO> standInfoXCXSSRQ = sarStandardInfoDao.selectWithinTerm(term, "XCXSSRQ"); List<WarningEO> standInfoXCXSSRQ = sarStandardInfoDao.selectWithinTerm(term, "XCXSSRQ");
for (WarningEO warningEO : standInfoXCXSSRQ) { for (WarningEO warningEO : standInfoXCXSSRQ) {
warningEO.setId(UUIDUtils.randomUUID20()) warningEO.setId(UUIDUtils.randomUUID20())
/**
* //如果插入的值均为NULL,则根据索引的原理,
* 全NULL值不被记录在索引上,所以插入全NULL值时,可以有重复的
* 则此处设为 '-1'
*/
.setItemsId("-1")
.setPower("1") .setPower("1")
.setMark("3") .setMark("3")
.setPutTime(warningEO.getXCXSSRQ()) .setPutTime(warningEO.getXCXSSRQ())
@@ -129,6 +135,10 @@ public class ScheduledJob {
List<WarningEO> standInfoZCCSSRQ = sarStandardInfoDao.selectWithinTerm(term, "ZCCSSRQ"); List<WarningEO> standInfoZCCSSRQ = sarStandardInfoDao.selectWithinTerm(term, "ZCCSSRQ");
for (WarningEO warningEO : standInfoZCCSSRQ) { for (WarningEO warningEO : standInfoZCCSSRQ) {
warningEO.setId(UUIDUtils.randomUUID20()) warningEO.setId(UUIDUtils.randomUUID20())
/**
* 同上
*/
.setItemsId("-1")
.setPower("1") .setPower("1")
.setMark("4") .setMark("4")
.setPutTime(warningEO.getZCCSSRQ()) .setPutTime(warningEO.getZCCSSRQ())
@@ -138,7 +148,7 @@ public class ScheduledJob {
//持久化至预警表 忽略标准id和标志位都一样的数据 //持久化至预警表 忽略标准id和标志位都一样的数据
if (warningList.size()!=0){ if (warningList.size()!=0){
//此表的STAND_ID和MARK字段以及ITEMS_ID和MARK字段需两个建立唯一性约束 //此表的STAND_ID和MARK字段以及ITEMS_ID字段需个建立唯一性约束
int count = sarStandardWarningDao.ignoreInsert(warningList); int count = sarStandardWarningDao.ignoreInsert(warningList);
System.out.println("已预警 " + count + " 条标准或条款!!"); System.out.println("已预警 " + count + " 条标准或条款!!");
} }
@@ -25,6 +25,7 @@
items.TERMS_CONDITIONS, items.TERMS_CONDITIONS,
items.DUTY_ENGINEER, items.DUTY_ENGINEER,
items.STAND_ID, items.STAND_ID,
info.STAND_NAME,
info.STAND_TYPE, info.STAND_TYPE,
info.STAND_NUMBER, info.STAND_NUMBER,
attrInfo.CLLX, attrInfo.CLLX,
@@ -4,7 +4,7 @@
<insert id="ignoreInsert" parameterType="java.util.LinkedList"> <insert id="ignoreInsert" parameterType="java.util.LinkedList">
INSERT IGNORE INTO sar_stand_warning (ID,STAND_ID, STAND_TYPE, STAND_CODE,STAND_NAME,PUT_TIME,APPLY_TYPE,DUTY_ENGINEER,ITEMS_ID,ITEMS_NUM,ITEMS_NAME,POLICY_ID,POLICY_NAME,MARK,POWER) REPLACE INTO sar_stand_warning (ID,STAND_ID, STAND_TYPE, STAND_CODE,STAND_NAME,PUT_TIME,APPLY_TYPE,DUTY_ENGINEER,ITEMS_ID,ITEMS_NUM,ITEMS_NAME,POLICY_ID,POLICY_NAME,MARK,POWER)
VALUES VALUES
<if test="warningEOS !=null and warningEOS.size()!=0"> <if test="warningEOS !=null and warningEOS.size()!=0">
<foreach collection="warningEOS" item="item" index="index" separator=","> <foreach collection="warningEOS" item="item" index="index" separator=",">