guarantee-lsq 11 mesiacov pred
rodič
commit
fd49ae7e1d

+ 2 - 2
platform-rest/src/main/java/com/platform/rest/controller/custom/CustomFormController.java

@@ -65,9 +65,9 @@ public class CustomFormController {
      */
     @SysLog("修改自定义表单表")
     @PutMapping("/{id}")
-    @PreAuthorize("@pms.hasPermission('custom-form-edit')")
     public R update(@PathVariable("id") String id, @Validated({UpdateGroup.class}) @RequestBody CustomFormDTO customFormDTO) {
-        customFormService.modModelByDTO(customFormDTO);
+        customFormDTO.setId(id);
+        customFormService.modByDTO(customFormDTO);
         return new R<>();
     }
 

+ 2 - 0
platform-service/src/main/java/com/platform/service/custom/CustomFormService.java

@@ -35,4 +35,6 @@ public interface CustomFormService extends IBaseService<CustomForm, CustomFormDT
     AbstractPageResultBean<CustomFormVO> selectPageList(CustomFormDTO record, int pageNum, int pageSize);
 
     CustomForm saveByDTO(CustomFormDTO record);
+
+    void modByDTO(CustomFormDTO record);
 }

+ 23 - 0
platform-service/src/main/java/com/platform/service/custom/impl/CustomFormServiceImpl.java

@@ -70,6 +70,29 @@ public class CustomFormServiceImpl extends BaseServiceImpl<CustomFormMapper, Cus
         return form;
     }
 
+    @Override
+    public void modByDTO(CustomFormDTO record) {
+        // 删除之前的查询属性
+        CustomFormBomField fieldQuery = new CustomFormBomField();
+        fieldQuery.setFormId(record.getId());
+        List<CustomFormBomField> fields = customFormBomFieldMapper.select(fieldQuery);
+        if(CollectionUtil.isNotEmpty(fields)){
+            fields.forEach(item->{
+                customFormBomFieldMapper.deleteByPrimaryKey(item.getId());
+            });
+        }
+        // 封装查询参数
+        if(CollectionUtil.isNotEmpty(record.getQueryFields())){
+            List<CustomFormBomField> saveFields = packageField(record.getId(),record.getQueryFields());
+            customFormBomFieldMapper.insertListforComplex(saveFields);
+        }
+        CustomForm form = BeanConverterUtil.copyObjectProperties(record, CustomForm.class);
+        form.setUpdateTime(LocalDateTime.now());
+        form.setUpdateUserName(SecurityUtils.getUserInfo().getRealName());
+        form.setUpdateUserId(SecurityUtils.getUserInfo().getUserId());
+        mapper.updateByPrimaryKeySelective(form);
+    }
+
     private List<CustomFormBomField> packageField(String id, List<CustomFieldDTO> queryFields){
         List<CustomFormBomField> fields = new ArrayList<CustomFormBomField>();
         queryFields.forEach(field -> {