diff --git a/sample-form-manager/src/main/java/com/mortals/xhx/module/device/service/DeviceMatterDatumService.java b/sample-form-manager/src/main/java/com/mortals/xhx/module/device/service/DeviceMatterDatumService.java index 7097d80c73392c2d0941d06fa3d854e6308751ca..3dc658069392b7c3aa5c26bb61f8ffb84a1f9965 100644 --- a/sample-form-manager/src/main/java/com/mortals/xhx/module/device/service/DeviceMatterDatumService.java +++ b/sample-form-manager/src/main/java/com/mortals/xhx/module/device/service/DeviceMatterDatumService.java @@ -1,14 +1,19 @@ package com.mortals.xhx.module.device.service; + import com.mortals.framework.service.ICRUDService; +import com.mortals.xhx.module.device.dao.DeviceMatterDatumDao; import com.mortals.xhx.module.device.model.DeviceMatterDatumEntity; + /** -* DeviceMatterDatumService -* -* 设备事项申请材料业务 service接口 -* -* @author zxfei -* @date 2023-02-25 -*/ -public interface DeviceMatterDatumService extends ICRUDService{ + * DeviceMatterDatumService + *

+ * 设备事项申请材料业务 service接口 + * + * @author zxfei + * @date 2023-02-25 + */ +public interface DeviceMatterDatumService extends ICRUDService { + + DeviceMatterDatumDao getDao(); } \ No newline at end of file diff --git a/sample-form-manager/src/main/java/com/mortals/xhx/module/device/service/impl/DeviceMatterDatumServiceImpl.java b/sample-form-manager/src/main/java/com/mortals/xhx/module/device/service/impl/DeviceMatterDatumServiceImpl.java index 1a0e97aa48bf47075486d6e0a0e1a77ad3d1f574..991650e45c50c4c459e3b4017dec4e6a83e90fdb 100644 --- a/sample-form-manager/src/main/java/com/mortals/xhx/module/device/service/impl/DeviceMatterDatumServiceImpl.java +++ b/sample-form-manager/src/main/java/com/mortals/xhx/module/device/service/impl/DeviceMatterDatumServiceImpl.java @@ -1,6 +1,7 @@ package com.mortals.xhx.module.device.service.impl; import com.mortals.framework.model.PageInfo; import com.mortals.xhx.module.device.model.DeviceEntity; +import com.mortals.xhx.module.device.model.DeviceMatterDatumQuery; import com.mortals.xhx.module.device.service.DeviceService; import com.mortals.xhx.module.matter.model.MatterDatumEntity; import com.mortals.xhx.module.matter.model.MatterDatumQuery; @@ -55,6 +56,11 @@ public class DeviceMatterDatumServiceImpl extends AbstractCRUDServiceImpl0){ + throw new AppException("当前设备关联事项已存在,不能新增!"); + } + //entity.getMatterId() if(!ObjectUtils.isEmpty(entity.getMatterId())){ MatterEntity matterEntity = matterService.get(entity.getMatterId()); diff --git a/sample-form-manager/src/main/java/com/mortals/xhx/module/device/web/DeviceMatterDatumController.java b/sample-form-manager/src/main/java/com/mortals/xhx/module/device/web/DeviceMatterDatumController.java index c8ed17a43bf92bd42c84930f3aa2ef1b65ba5cbe..51aded148c4f8eac127b2ede215bc885322069e1 100644 --- a/sample-form-manager/src/main/java/com/mortals/xhx/module/device/web/DeviceMatterDatumController.java +++ b/sample-form-manager/src/main/java/com/mortals/xhx/module/device/web/DeviceMatterDatumController.java @@ -2,6 +2,7 @@ package com.mortals.xhx.module.device.web; import com.mortals.framework.exception.AppException; import com.mortals.framework.web.BaseCRUDJsonBodyMappingController; import com.mortals.xhx.base.system.param.service.ParamService; +import com.mortals.xhx.module.device.model.DeviceMatterDatumQuery; import com.mortals.xhx.module.matter.model.MatterDatumEntity; import com.mortals.xhx.module.matter.model.MatterDatumQuery; import com.mortals.xhx.module.matter.service.MatterDatumService; @@ -17,12 +18,10 @@ import com.mortals.xhx.module.device.model.DeviceMatterDatumEntity; import com.mortals.xhx.module.device.service.DeviceMatterDatumService; import org.apache.commons.lang3.ArrayUtils; import com.mortals.framework.util.StringUtils; -import java.util.HashMap; -import java.util.List; -import java.util.Map; + +import java.util.*; import java.util.stream.Collectors; import com.alibaba.fastjson.JSONObject; -import java.util.Arrays; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import static com.mortals.framework.ap.SysConstains.*; @@ -55,6 +54,20 @@ public class DeviceMatterDatumController extends BaseCRUDJsonBodyMappingControll } + @Override + protected void batchSaveBefore(List list, Map model, Context context) throws AppException { + Iterator iterator = list.iterator(); + while (iterator.hasNext()) { + DeviceMatterDatumEntity next = iterator.next(); + int count = this.service.getDao().getCount(new DeviceMatterDatumQuery().deviceId(next.getDeviceId()).matterId(next.getMatterId())); + if(count>0){ + iterator.remove(); + } + } + + super.batchSaveBefore(list, model, context); + } + @Override protected int infoAfter(Long id, Map model, DeviceMatterDatumEntity entity, Context context) throws AppException { List matterDatumEntities = matterDatumService.find(new MatterDatumQuery().matterId(entity.getMatterId()));