| | |
| | | } |
| | | |
| | | /** |
| | | * 批量插入或更新,仅限同一日的或同一月的批量数据 |
| | | * @param list |
| | | */ |
| | | fun insertOrUpdate(list: List<RiskValue>): Int { |
| | | if (list.isEmpty()) return 0 |
| | | val newDataList = mutableListOf<RiskValue>() |
| | | val oldDataList = mutableListOf<RiskValue>() |
| | | val dataList = riskValueMapper.selectByExample(Example(RiskValue::class.java).apply { |
| | | createCriteria().andEqualTo("lst", list[0].lst) |
| | | .andEqualTo("type", list[0].type) |
| | | }) |
| | | list.forEach { l -> |
| | | val r = dataList.find { d -> |
| | | d?.mnCode == l.mnCode |
| | | } |
| | | if (r != null) { |
| | | l.id = r.id |
| | | oldDataList.add(l) |
| | | } else { |
| | | newDataList.add(l) |
| | | } |
| | | } |
| | | val r1 = riskValueMapper.insertList(newDataList) |
| | | var r2 = 0 |
| | | oldDataList.forEach { |
| | | r2 += riskValueMapper.updateByPrimaryKey(it) |
| | | } |
| | | return r1 + r2 |
| | | } |
| | | |
| | | /** |
| | | * 查询 |
| | | * @param mnCode |
| | | * @param date |