You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
169 lines
6.3 KiB
169 lines
6.3 KiB
package jnpf.controller; |
|
|
|
import io.swagger.v3.oas.annotations.Operation; |
|
import io.swagger.v3.oas.annotations.tags.Tag; |
|
import jnpf.base.ActionResult; |
|
import jnpf.base.UserInfo; |
|
import jnpf.base.vo.PageListVO; |
|
import jnpf.base.vo.PaginationVO; |
|
import jnpf.controller.util.SwapUtil; |
|
import jnpf.entity.Base_datainterfaceEntity; |
|
import jnpf.exception.DataException; |
|
import jnpf.model.base_datainterface.*; |
|
import jnpf.permission.entity.UserEntity; |
|
import jnpf.service.Base_datainterfaceService; |
|
import jnpf.util.*; |
|
import lombok.extern.slf4j.Slf4j; |
|
import org.springframework.beans.factory.annotation.Autowired; |
|
import org.springframework.transaction.annotation.Transactional; |
|
import org.springframework.web.bind.annotation.*; |
|
|
|
import javax.validation.Valid; |
|
import java.io.IOException; |
|
import java.util.ArrayList; |
|
import java.util.List; |
|
import java.util.Map; |
|
|
|
/** |
|
* base_datainterface |
|
* @版本: V3.5 |
|
* @版权: 引迈信息技术有限公司(https://www.jnpfsoft.com) |
|
* @作者: JNPF开发平台组 |
|
* @日期: 2024-06-19 |
|
*/ |
|
@Slf4j |
|
@RestController |
|
@Tag(name = "base_datainterface" , description = "example") |
|
@RequestMapping("/Base_datainterface") |
|
public class Base_datainterfaceController { |
|
|
|
@Autowired |
|
private SwapUtil generaterSwapUtil; |
|
|
|
@Autowired |
|
private UserProvider userProvider; |
|
|
|
@Autowired |
|
private Base_datainterfaceService base_datainterfaceService; |
|
|
|
|
|
|
|
/** |
|
* 列表 |
|
* |
|
* @param base_datainterfacePagination |
|
* @return |
|
*/ |
|
@Operation(summary = "获取列表") |
|
@PostMapping("/getList") |
|
public ActionResult list(@RequestBody Base_datainterfacePagination base_datainterfacePagination)throws IOException{ |
|
List<Base_datainterfaceEntity> list= base_datainterfaceService.getList(base_datainterfacePagination); |
|
List<Map<String, Object>> realList=new ArrayList<>(); |
|
for (Base_datainterfaceEntity entity : list) { |
|
Map<String, Object> base_datainterfaceMap=JsonUtil.entityToMap(entity); |
|
base_datainterfaceMap.put("id", base_datainterfaceMap.get("id")); |
|
//副表数据 |
|
//子表数据 |
|
realList.add(base_datainterfaceMap); |
|
} |
|
//数据转换 |
|
realList = generaterSwapUtil.swapDataList(realList, Base_datainterfaceConstant.getFormData(), Base_datainterfaceConstant.getColumnData(), base_datainterfacePagination.getModuleId(),false); |
|
|
|
//返回对象 |
|
PageListVO vo = new PageListVO(); |
|
vo.setList(realList); |
|
PaginationVO page = JsonUtil.getJsonToBean(base_datainterfacePagination, PaginationVO.class); |
|
vo.setPagination(page); |
|
return ActionResult.success(vo); |
|
} |
|
/** |
|
* 创建 |
|
* |
|
* @param base_datainterfaceForm |
|
* @return |
|
*/ |
|
@PostMapping() |
|
@Transactional |
|
@Operation(summary = "创建") |
|
public ActionResult create(@RequestBody @Valid Base_datainterfaceForm base_datainterfaceForm) throws DataException { |
|
String b = base_datainterfaceService.checkForm(base_datainterfaceForm,0); |
|
if (StringUtil.isNotEmpty(b)){ |
|
return ActionResult.fail(b ); |
|
} |
|
String mainId = RandomUtil.uuId() ; |
|
UserInfo userInfo=userProvider.get(); |
|
UserEntity userEntity = generaterSwapUtil.getUser(userInfo.getUserId()); |
|
base_datainterfaceForm = JsonUtil.getJsonToBean( |
|
SwapUtil.swapDatetime(Base_datainterfaceConstant.getFormData(),base_datainterfaceForm),Base_datainterfaceForm.class); |
|
Base_datainterfaceEntity entity = JsonUtil.getJsonToBean(base_datainterfaceForm, Base_datainterfaceEntity.class); |
|
entity.setId(mainId); |
|
base_datainterfaceService.save(entity); |
|
return ActionResult.success("创建成功"); |
|
} |
|
/** |
|
* 编辑 |
|
* @param id |
|
* @param base_datainterfaceForm |
|
* @return |
|
*/ |
|
@PutMapping("/{id}") |
|
@Transactional |
|
@Operation(summary = "更新") |
|
public ActionResult update(@PathVariable("id") String id,@RequestBody @Valid Base_datainterfaceForm base_datainterfaceForm) throws DataException { |
|
String b = base_datainterfaceService.checkForm(base_datainterfaceForm,1); |
|
if (StringUtil.isNotEmpty(b)){ |
|
return ActionResult.fail(b ); |
|
} |
|
UserInfo userInfo=userProvider.get(); |
|
Base_datainterfaceEntity entity= base_datainterfaceService.getInfo(id); |
|
if(entity!=null){ |
|
base_datainterfaceForm = JsonUtil.getJsonToBean( |
|
SwapUtil.swapDatetime(Base_datainterfaceConstant.getFormData(),base_datainterfaceForm),Base_datainterfaceForm.class); |
|
Base_datainterfaceEntity subentity=JsonUtil.getJsonToBean(base_datainterfaceForm, Base_datainterfaceEntity.class); |
|
boolean b1 = base_datainterfaceService.updateById(subentity); |
|
if (!b1){ |
|
return ActionResult.fail("当前表单原数据已被调整,请重新进入该页面编辑并提交数据"); |
|
} |
|
return ActionResult.success("更新成功"); |
|
}else{ |
|
return ActionResult.fail("更新失败,数据不存在"); |
|
} |
|
} |
|
/** |
|
* 删除 |
|
* @param id |
|
* @return |
|
*/ |
|
@Operation(summary = "删除") |
|
@DeleteMapping("/{id}") |
|
@Transactional |
|
public ActionResult delete(@PathVariable("id") String id){ |
|
Base_datainterfaceEntity entity= base_datainterfaceService.getInfo(id); |
|
if(entity!=null){ |
|
//主表数据删除 |
|
base_datainterfaceService.delete(entity); |
|
} |
|
return ActionResult.success("删除成功"); |
|
} |
|
/** |
|
* 获取详情(编辑页) |
|
* 编辑页面使用-不转换数据 |
|
* @param id |
|
* @return |
|
*/ |
|
@Operation(summary = "信息") |
|
@GetMapping("/{id}") |
|
public ActionResult info(@PathVariable("id") String id){ |
|
Base_datainterfaceEntity entity= base_datainterfaceService.getInfo(id); |
|
if(entity==null){ |
|
return ActionResult.fail("表单数据不存在!"); |
|
} |
|
Map<String, Object> base_datainterfaceMap=JsonUtil.entityToMap(entity); |
|
base_datainterfaceMap.put("id", base_datainterfaceMap.get("id")); |
|
//副表数据 |
|
//子表数据 |
|
base_datainterfaceMap = generaterSwapUtil.swapDataForm(base_datainterfaceMap,Base_datainterfaceConstant.getFormData(),Base_datainterfaceConstant.TABLEFIELDKEY,Base_datainterfaceConstant.TABLERENAMES); |
|
return ActionResult.success(base_datainterfaceMap); |
|
} |
|
|
|
}
|
|
|