初始代码

This commit is contained in:
wangmingwei
2026-04-21 16:49:46 +08:00
parent aae9dc4036
commit f0453ff3a3
2396 changed files with 256575 additions and 0 deletions

View File

@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>yunzhupaas-mdm</artifactId>
<groupId>com.yunzhupaas</groupId>
<version>5.2.0-RELEASE</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>yunzhupaas-mdm-controller</artifactId>
<dependencies>
<dependency>
<groupId>com.yunzhupaas</groupId>
<artifactId>yunzhupaas-mdm-biz</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
</project>

View File

@@ -0,0 +1,265 @@
package com.yunzhupaas.base.controller;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import com.yunzhupaas.base.ActionResult;
import com.yunzhupaas.base.UserInfo;
import com.yunzhupaas.exception.DataException;
import com.yunzhupaas.permission.entity.UserEntity;
import com.yunzhupaas.constant.MsgCode;
import com.yunzhupaas.base.service.*;
import com.yunzhupaas.base.entity.*;
import com.yunzhupaas.util.*;
import com.yunzhupaas.base.model.bcmprojecttype.*;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import com.yunzhupaas.flowable.entity.TaskEntity;
import jakarta.validation.Valid;
import java.util.*;
import com.yunzhupaas.model.ExcelModel;
import com.yunzhupaas.excel.ExcelExportStyler;
import com.yunzhupaas.excel.ExcelHelper;
import com.yunzhupaas.base.vo.PageListVO;
import com.yunzhupaas.base.vo.PaginationVO;
import com.yunzhupaas.base.vo.DownloadVO;
import com.yunzhupaas.config.ConfigValueUtil;
import com.yunzhupaas.base.entity.ProvinceEntity;
import java.io.IOException;
import java.util.stream.Collectors;
import com.yunzhupaas.flowable.entity.TaskEntity;
import com.yunzhupaas.exception.WorkFlowException;
import com.yunzhupaas.model.visualJson.UploaderTemplateModel;
import com.yunzhupaas.base.util.FormExecelUtils;
import org.springframework.transaction.annotation.Transactional;
/**
* 项目类型
* @版本: V5.2.7
* @版权: Copyright @ 2025 深圳市乐程软件有限公司版权所有
* @作者: 深圳市乐程软件有限公司
* @日期: 2026-03-26
*/
@Slf4j
@RestController
@Tag(name = "项目类型" , description = "bcm")
@RequestMapping("/api/bcm/BcmProjectType")
public class BcmProjectTypeController {
@Autowired
private GeneraterSwapUtil generaterSwapUtil;
@Autowired
private UserProvider userProvider;
@Autowired
private BcmProjectTypeService bcmProjectTypeService;
/**
* 列表
*
* @param bcmProjectTypePagination
* @return
*/
@Operation(summary = "获取列表")
@PostMapping("/getList")
public ActionResult list(@RequestBody BcmProjectTypePagination bcmProjectTypePagination)throws Exception{
List<BcmProjectTypeEntity> list= bcmProjectTypeService.getList(bcmProjectTypePagination);
List<Map<String, Object>> realList=new ArrayList<>();
for (BcmProjectTypeEntity entity : list) {
Map<String, Object> bcmProjectTypeMap=JsonUtil.entityToMap(entity);
bcmProjectTypeMap.put("id", bcmProjectTypeMap.get("project_type_id"));
//副表数据
//子表数据
realList.add(bcmProjectTypeMap);
}
//数据转换
boolean isPc = "pc".equals(ServletUtil.getHeader("yunzhupaas-origin" ));
realList = generaterSwapUtil.swapDataList(realList, BcmProjectTypeConstant.getFormData(), BcmProjectTypeConstant.getColumnData(), bcmProjectTypePagination.getModuleId(),isPc?false:false);
//返回对象
PageListVO vo = new PageListVO();
vo.setList(realList);
PaginationVO page = JsonUtil.getJsonToBean(bcmProjectTypePagination, PaginationVO.class);
vo.setPagination(page);
return ActionResult.success(vo);
}
/**
* 创建
*
* @param bcmProjectTypeForm
* @return
*/
@PostMapping()
@Operation(summary = "创建")
public ActionResult create(@RequestBody @Valid BcmProjectTypeForm bcmProjectTypeForm) {
String b = bcmProjectTypeService.checkForm(bcmProjectTypeForm,0);
if (StringUtil.isNotEmpty(b)){
return ActionResult.fail(b );
}
try{
bcmProjectTypeService.saveOrUpdate(bcmProjectTypeForm, null ,true);
}catch(Exception e){
log.error("【项目类型新增接口异常】参数:{}", bcmProjectTypeForm, e);
return ActionResult.fail(MsgCode.FA028.get());
}
return ActionResult.success(MsgCode.SU001.get());
}
/**
* 删除
* @param id
* @return
*/
@Operation(summary = "删除")
@DeleteMapping("/{id}")
@Transactional
public ActionResult delete(@PathVariable("id") String id,@RequestParam(name = "forceDel",defaultValue = "false") boolean forceDel) throws Exception{
BcmProjectTypeEntity entity= bcmProjectTypeService.getInfo(id);
if(entity!=null){
//假删除
entity.setDeleteMark(1);
entity.setDeleteUserId(userProvider.get().getUserId());
entity.setDeleteTime(new Date());
bcmProjectTypeService.setIgnoreLogicDelete().updateById(entity);
}
return ActionResult.success(MsgCode.SU003.get());
}
/**
* 批量删除
* @param obj
* @return
*/
@DeleteMapping("/batchRemove")
@Transactional
@Operation(summary = "批量删除")
public ActionResult batchRemove(@RequestBody Object obj){
Map<String, Object> objectMap = JsonUtil.entityToMap(obj);
List<String> idList = JsonUtil.getJsonToList(objectMap.get("ids"), String.class);
String errInfo = "";
List<String> successList = new ArrayList<>();
for (String allId : idList){
try {
this.delete(allId,false);
successList.add(allId);
} catch (Exception e) {
errInfo = e.getMessage();
}
}
if (successList.size() == 0 && StringUtil.isNotEmpty(errInfo)){
return ActionResult.fail(errInfo);
}
return ActionResult.success(MsgCode.SU003.get());
}
/**
* 编辑
* @param id
* @param bcmProjectTypeForm
* @return
*/
@PutMapping("/{id}")
@Operation(summary = "更新")
public ActionResult update(@PathVariable("id") String id,@RequestBody @Valid BcmProjectTypeForm bcmProjectTypeForm,
@RequestParam(value = "isImport", required = false) boolean isImport){
BcmProjectTypeEntity entity= bcmProjectTypeService.getInfo(id);
if(entity!=null){
bcmProjectTypeForm.setProjectTypeId(String.valueOf(entity.getProjectTypeId()));
if (!isImport) {
String b = bcmProjectTypeService.checkForm(bcmProjectTypeForm,1);
if (StringUtil.isNotEmpty(b)){
return ActionResult.fail(b );
}
}
try{
bcmProjectTypeService.saveOrUpdate(bcmProjectTypeForm,id,false);
}catch (DataException e1){
return ActionResult.fail(e1.getMessage());
}catch(Exception e){
log.error("【项目类型修改接口异常】参数:{}", bcmProjectTypeForm, e);
return ActionResult.fail(MsgCode.FA029.get());
}
return ActionResult.success(MsgCode.SU004.get());
}else{
return ActionResult.fail(MsgCode.FA002.get());
}
}
/**
* 表单信息(详情页)
* 详情页面使用-转换数据
* @param id
* @return
*/
@Operation(summary = "表单信息(详情页)")
@GetMapping("/detail/{id}")
public ActionResult detailInfo(@PathVariable("id") String id){
BcmProjectTypeEntity entity= bcmProjectTypeService.getInfo(id);
if(entity==null){
return ActionResult.fail(MsgCode.FA001.get());
}
Map<String, Object> bcmProjectTypeMap=JsonUtil.entityToMap(entity);
bcmProjectTypeMap.put("id", bcmProjectTypeMap.get("project_type_id"));
//副表数据
//子表数据
boolean isPc = "pc".equals(ServletUtil.getHeader("yunzhupaas-origin" ));
bcmProjectTypeMap = generaterSwapUtil.swapDataDetail(bcmProjectTypeMap,BcmProjectTypeConstant.getFormData(),"806852213774222853",isPc?false:false);
//子表数据
return ActionResult.success(bcmProjectTypeMap);
}
/**
* 获取详情(编辑页)
* 编辑页面使用-不转换数据
* @param id
* @return
*/
@Operation(summary = "信息")
@GetMapping("/{id}")
public ActionResult info(@PathVariable("id") String id){
BcmProjectTypeEntity entity= bcmProjectTypeService.getInfo(id);
if(entity==null){
return ActionResult.fail(MsgCode.FA001.get());
}
Map<String, Object> bcmProjectTypeMap=JsonUtil.entityToMap(entity);
bcmProjectTypeMap.put("id", bcmProjectTypeMap.get("project_type_id"));
//副表数据
//子表数据
bcmProjectTypeMap = generaterSwapUtil.swapDataForm(bcmProjectTypeMap,BcmProjectTypeConstant.getFormData(),BcmProjectTypeConstant.TABLEFIELDKEY,BcmProjectTypeConstant.TABLERENAMES);
return ActionResult.success(bcmProjectTypeMap);
}
/**
* 获取项目类型列表
*
* @param bcmProjectTypePagination
* @return
*/
@Operation(summary = "获取项目类型列表")
@PostMapping("/getBcmprojecttypeList")
public ActionResult getBcmprojecttypeList(@RequestBody BcmProjectTypePagination bcmProjectTypePagination)throws Exception{
List<BcmProjectTypeEntity> list= bcmProjectTypeService.getList(bcmProjectTypePagination);
List<Map<String, Object>> realList=new ArrayList<>();
for (BcmProjectTypeEntity entity : list) {
Map<String, Object> bcmProjectTypeMap=JsonUtil.entityToMap(entity);
bcmProjectTypeMap.put("id", bcmProjectTypeMap.get("project_type_id"));
//副表数据
//子表数据
realList.add(bcmProjectTypeMap);
}
//数据转换
boolean isPc = "pc".equals(ServletUtil.getHeader("yunzhupaas-origin" ));
realList = generaterSwapUtil.swapDataList(realList, BcmProjectTypeConstant.getFormData(), BcmProjectTypeConstant.getColumnData(), bcmProjectTypePagination.getModuleId(),isPc?false:false);
//返回对象
PageListVO vo = new PageListVO();
vo.setList(realList);
PaginationVO page = JsonUtil.getJsonToBean(bcmProjectTypePagination, PaginationVO.class);
vo.setPagination(page);
return ActionResult.success(vo);
}
}

View File

@@ -0,0 +1,273 @@
package com.yunzhupaas.base.controller;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import com.yunzhupaas.base.ActionResult;
import com.yunzhupaas.base.UserInfo;
import com.yunzhupaas.exception.DataException;
import com.yunzhupaas.permission.entity.UserEntity;
import com.yunzhupaas.constant.MsgCode;
import com.yunzhupaas.base.service.*;
import com.yunzhupaas.base.entity.*;
import com.yunzhupaas.util.*;
import com.yunzhupaas.base.model.mdmcompany.*;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import com.yunzhupaas.flowable.entity.TaskEntity;
import jakarta.validation.Valid;
import java.util.*;
import com.yunzhupaas.model.ExcelModel;
import com.yunzhupaas.excel.ExcelExportStyler;
import com.yunzhupaas.excel.ExcelHelper;
import com.yunzhupaas.base.vo.PageListVO;
import com.yunzhupaas.base.vo.PaginationVO;
import com.yunzhupaas.base.vo.DownloadVO;
import com.yunzhupaas.config.ConfigValueUtil;
import com.yunzhupaas.base.entity.ProvinceEntity;
import java.io.IOException;
import java.util.stream.Collectors;
import com.yunzhupaas.flowable.entity.TaskEntity;
import com.yunzhupaas.exception.WorkFlowException;
import com.yunzhupaas.model.visualJson.UploaderTemplateModel;
import com.yunzhupaas.base.util.FormExecelUtils;
import org.springframework.transaction.annotation.Transactional;
/**
* mdm_company
* @版本: V5.2.7
* @版权: Copyright @ 2025 深圳市乐程软件有限公司版权所有
* @作者: 深圳市乐程软件有限公司
* @日期: 2026-03-270
*/
@Slf4j
@RestController
@Tag(name = "mdm_company" , description = "bcm")
@RequestMapping("/api/bcm/MdmCompany")
public class MdmCompanyController {
@Autowired
private GeneraterSwapUtil generaterSwapUtil;
@Autowired
private UserProvider userProvider;
@Autowired
private MdmCompanyService mdmCompanyService;
@Autowired
private CrmCustomerService crmCustomerService;
@Autowired
private MdmCompanyContactService mdmCompanyContactService;
@Autowired
private MdmCompanyBankService mdmCompanyBankService;
/**
* 列表
*
* @param mdmCompanyPagination
* @return
*/
@Operation(summary = "获取列表")
@PostMapping("/getList")
public ActionResult list(@RequestBody MdmCompanyPagination mdmCompanyPagination)throws Exception{
List<MdmCompanyEntity> list= mdmCompanyService.getList(mdmCompanyPagination);
List<Map<String, Object>> realList=new ArrayList<>();
for (MdmCompanyEntity entity : list) {
Map<String, Object> mdmCompanyMap=JsonUtil.entityToMap(entity);
mdmCompanyMap.put("id", mdmCompanyMap.get("company_id"));
//副表数据
//子表数据
// CrmCustomerEntity crmCustomerList = entity.getCrmCustomer();
// mdmCompanyMap.put("tableField798457",JsonUtil.getJsonToBean(crmCustomerList,CrmCustomerEntity.class));
// mdmCompanyMap.put("crmCustomerList",JsonUtil.getJsonToBean(crmCustomerList,CrmCustomerEntity.class));
List<MdmCompanyContactEntity> mdmCompanyContactList = entity.getMdmCompanyContact();
mdmCompanyMap.put("tableFieldc4fb23",JsonUtil.getJsonToList(JsonUtil.getListToJsonArray(mdmCompanyContactList)));
mdmCompanyMap.put("mdmCompanyContactList",JsonUtil.getJsonToList(JsonUtil.getListToJsonArray(mdmCompanyContactList)));
List<MdmCompanyBankEntity> mdmCompanyBankList = entity.getMdmCompanyBank();
mdmCompanyMap.put("tableFieldaafa82",JsonUtil.getJsonToList(JsonUtil.getListToJsonArray(mdmCompanyBankList)));
mdmCompanyMap.put("mdmCompanyBankList",JsonUtil.getJsonToList(JsonUtil.getListToJsonArray(mdmCompanyBankList)));
realList.add(mdmCompanyMap);
}
//数据转换
boolean isPc = "pc".equals(ServletUtil.getHeader("yunzhupaas-origin" ));
realList = generaterSwapUtil.swapDataList(realList, MdmCompanyConstant.getFormData(), MdmCompanyConstant.getColumnData(), mdmCompanyPagination.getModuleId(),isPc?false:false);
//返回对象
PageListVO vo = new PageListVO();
vo.setList(realList);
PaginationVO page = JsonUtil.getJsonToBean(mdmCompanyPagination, PaginationVO.class);
vo.setPagination(page);
return ActionResult.success(vo);
}
/**
* 创建
*
* @param mdmCompanyForm
* @return
*/
@PostMapping()
@Operation(summary = "创建")
public ActionResult create(@RequestBody @Valid MdmCompanyForm mdmCompanyForm) {
String b = mdmCompanyService.checkForm(mdmCompanyForm,0);
if (StringUtil.isNotEmpty(b)){
return ActionResult.fail(b );
}
try{
mdmCompanyService.saveOrUpdate(mdmCompanyForm, null ,true);
}catch(Exception e){
log.error("【企业信息(包括:客商与企业内部单位)创建接口异常】参数:{}", mdmCompanyForm, e);
return ActionResult.fail(MsgCode.FA028.get());
}
return ActionResult.success(MsgCode.SU001.get());
}
/**
* 删除
* @param id
* @return
*/
@Operation(summary = "删除")
@DeleteMapping("/{id}")
@Transactional
public ActionResult delete(@PathVariable("id") String id,@RequestParam(name = "forceDel",defaultValue = "false") boolean forceDel) throws Exception{
MdmCompanyEntity entity= mdmCompanyService.getInfo(id);
if(entity!=null){
//假删除
entity.setDeleteMark(1);
entity.setDeleteUserId(userProvider.get().getUserId());
entity.setDeleteTime(new Date());
mdmCompanyService.setIgnoreLogicDelete().updateById(entity);
}
return ActionResult.success(MsgCode.SU003.get());
}
/**
* 批量删除
* @param obj
* @return
*/
@DeleteMapping("/batchRemove")
@Transactional
@Operation(summary = "批量删除")
public ActionResult batchRemove(@RequestBody Object obj){
Map<String, Object> objectMap = JsonUtil.entityToMap(obj);
List<String> idList = JsonUtil.getJsonToList(objectMap.get("ids"), String.class);
String errInfo = "";
List<String> successList = new ArrayList<>();
for (String allId : idList){
try {
this.delete(allId,false);
successList.add(allId);
} catch (Exception e) {
errInfo = e.getMessage();
}
}
if (successList.size() == 0 && StringUtil.isNotEmpty(errInfo)){
return ActionResult.fail(errInfo);
}
return ActionResult.success(MsgCode.SU003.get());
}
/**
* 编辑
* @param id
* @param mdmCompanyForm
* @return
*/
@PutMapping("/{id}")
@Operation(summary = "更新")
public ActionResult update(@PathVariable("id") String id,@RequestBody @Valid MdmCompanyForm mdmCompanyForm,
@RequestParam(value = "isImport", required = false) boolean isImport){
MdmCompanyEntity entity= mdmCompanyService.getInfo(id);
if(entity!=null){
mdmCompanyForm.setCompanyId(String.valueOf(entity.getCompanyId()));
if (!isImport) {
String b = mdmCompanyService.checkForm(mdmCompanyForm,1);
if (StringUtil.isNotEmpty(b)){
return ActionResult.fail(b );
}
}
try{
mdmCompanyService.saveOrUpdate(mdmCompanyForm,id,false);
}catch (DataException e1){
return ActionResult.fail(e1.getMessage());
}catch(Exception e){
log.error("【企业信息(包括:客商与企业内部单位)编辑接口异常】参数:{}", mdmCompanyForm, e);
return ActionResult.fail(MsgCode.FA029.get());
}
return ActionResult.success(MsgCode.SU004.get());
}else{
return ActionResult.fail(MsgCode.FA002.get());
}
}
/**
* 表单信息(详情页)
* 详情页面使用-转换数据
* @param id
* @return
*/
@Operation(summary = "表单信息(详情页)")
@GetMapping("/detail/{id}")
public ActionResult detailInfo(@PathVariable("id") String id){
MdmCompanyEntity entity= mdmCompanyService.getInfo(id);
if(entity==null){
return ActionResult.fail(MsgCode.FA001.get());
}
Map<String, Object> mdmCompanyMap=JsonUtil.entityToMap(entity);
mdmCompanyMap.put("id", mdmCompanyMap.get("company_id"));
//副表数据
//子表数据
CrmCustomerEntity crmCustomerList = entity.getCrmCustomer();
mdmCompanyMap.put("tableField798457",JsonUtil.getJsonToBean(crmCustomerList,CrmCustomerEntity.class));
mdmCompanyMap.put("crmCustomerList",JsonUtil.getJsonToBean(crmCustomerList,CrmCustomerEntity.class));
List<MdmCompanyContactEntity> mdmCompanyContactList = entity.getMdmCompanyContact();
mdmCompanyMap.put("tableFieldc4fb23",JsonUtil.getJsonToList(JsonUtil.getListToJsonArray(mdmCompanyContactList)));
mdmCompanyMap.put("mdmCompanyContactList",JsonUtil.getJsonToList(JsonUtil.getListToJsonArray(mdmCompanyContactList)));
List<MdmCompanyBankEntity> mdmCompanyBankList = entity.getMdmCompanyBank();
mdmCompanyMap.put("tableFieldaafa82",JsonUtil.getJsonToList(JsonUtil.getListToJsonArray(mdmCompanyBankList)));
mdmCompanyMap.put("mdmCompanyBankList",JsonUtil.getJsonToList(JsonUtil.getListToJsonArray(mdmCompanyBankList)));
boolean isPc = "pc".equals(ServletUtil.getHeader("yunzhupaas-origin" ));
mdmCompanyMap = generaterSwapUtil.swapDataDetail(mdmCompanyMap,MdmCompanyConstant.getFormData(),"807175611364673349",isPc?false:false);
//子表数据
mdmCompanyMap.put("crmCustomerList",mdmCompanyMap.get("tableField798457"));
mdmCompanyMap.put("mdmCompanyContactList",mdmCompanyMap.get("tableFieldc4fb23"));
mdmCompanyMap.put("mdmCompanyBankList",mdmCompanyMap.get("tableFieldaafa82"));
return ActionResult.success(mdmCompanyMap);
}
/**
* 获取详情(编辑页)
* 编辑页面使用-不转换数据
* @param id
* @return
*/
@Operation(summary = "信息")
@GetMapping("/{id}")
public ActionResult info(@PathVariable("id") String id){
MdmCompanyEntity entity= mdmCompanyService.getInfo(id);
if(entity==null){
return ActionResult.fail(MsgCode.FA001.get());
}
Map<String, Object> mdmCompanyMap=JsonUtil.entityToMap(entity);
mdmCompanyMap.put("id", mdmCompanyMap.get("company_id"));
//副表数据
//子表数据
CrmCustomerEntity crmCustomer = entity.getCrmCustomer();
// mdmCompanyMap.put("tableField798457",JsonUtil.getJsonToBean(crmCustomerList,CrmCustomerEntity.class));
mdmCompanyMap.put("crmCustomer",JsonUtil.getJsonToBean(crmCustomer,CrmCustomerEntity.class));
List<MdmCompanyContactEntity> mdmCompanyContactList = entity.getMdmCompanyContact();
mdmCompanyMap.put("tableFieldc4fb23",JsonUtil.getJsonToList(JsonUtil.getListToJsonArray(mdmCompanyContactList)));
mdmCompanyMap.put("mdmCompanyContactList",JsonUtil.getJsonToList(JsonUtil.getListToJsonArray(mdmCompanyContactList)));
List<MdmCompanyBankEntity> mdmCompanyBankList = entity.getMdmCompanyBank();
mdmCompanyMap.put("tableFieldaafa82",JsonUtil.getJsonToList(JsonUtil.getListToJsonArray(mdmCompanyBankList)));
mdmCompanyMap.put("mdmCompanyBankList",JsonUtil.getJsonToList(JsonUtil.getListToJsonArray(mdmCompanyBankList)));
mdmCompanyMap = generaterSwapUtil.swapDataForm(mdmCompanyMap,MdmCompanyConstant.getFormData(),MdmCompanyConstant.TABLEFIELDKEY,MdmCompanyConstant.TABLERENAMES);
return ActionResult.success(mdmCompanyMap);
}
}

View File

@@ -0,0 +1,257 @@
package com.yunzhupaas.base.controller;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import com.yunzhupaas.base.ActionResult;
import com.yunzhupaas.base.UserInfo;
import com.yunzhupaas.exception.DataException;
import com.yunzhupaas.permission.entity.UserEntity;
import com.yunzhupaas.constant.MsgCode;
import com.yunzhupaas.base.service.*;
import com.yunzhupaas.base.entity.*;
import com.yunzhupaas.util.*;
import com.yunzhupaas.base.model.mdmcontracttype.*;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import com.yunzhupaas.flowable.entity.TaskEntity;
import jakarta.validation.Valid;
import java.util.*;
import com.yunzhupaas.model.ExcelModel;
import com.yunzhupaas.excel.ExcelExportStyler;
import com.yunzhupaas.excel.ExcelHelper;
import com.yunzhupaas.base.vo.PageListVO;
import com.yunzhupaas.base.vo.PaginationVO;
import com.yunzhupaas.base.vo.DownloadVO;
import com.yunzhupaas.config.ConfigValueUtil;
import com.yunzhupaas.base.entity.ProvinceEntity;
import java.io.IOException;
import java.util.stream.Collectors;
import com.yunzhupaas.flowable.entity.TaskEntity;
import com.yunzhupaas.exception.WorkFlowException;
import com.yunzhupaas.model.visualJson.UploaderTemplateModel;
import com.yunzhupaas.base.util.FormExecelUtils;
import org.springframework.transaction.annotation.Transactional;
/**
* mdmContractType
* @版本: V5.2.7
* @版权: Copyright @ 2025 深圳市乐程软件有限公司版权所有
* @作者: 深圳市乐程软件有限公司
* @日期: 2026-03-30
*/
@Slf4j
@RestController
@Tag(name = "mdmContractType" , description = "bcm")
@RequestMapping("/api/bcm/MdmContractType")
public class MdmContractTypeController {
@Autowired
private GeneraterSwapUtil generaterSwapUtil;
@Autowired
private UserProvider userProvider;
@Autowired
private MdmContractTypeService mdmContractTypeService;
/**
* 列表
*
* @param mdmContractTypePagination
* @return
*/
@Operation(summary = "获取列表")
@PostMapping("/getList")
public ActionResult list(@RequestBody MdmContractTypePagination mdmContractTypePagination)throws Exception{
List<MdmContractTypeEntity> list= mdmContractTypeService.getList(mdmContractTypePagination);
List<Map<String, Object>> realList=new ArrayList<>();
for (MdmContractTypeEntity entity : list) {
Map<String, Object> mdmContractTypeMap=JsonUtil.entityToMap(entity);
mdmContractTypeMap.put("id", mdmContractTypeMap.get("id"));
//副表数据
//子表数据
realList.add(mdmContractTypeMap);
}
//数据转换
boolean isPc = "pc".equals(ServletUtil.getHeader("yunzhupaas-origin" ));
realList = generaterSwapUtil.swapDataList(realList, MdmContractTypeConstant.getFormData(), MdmContractTypeConstant.getColumnData(), mdmContractTypePagination.getModuleId(),isPc?false:false);
//返回对象
PageListVO vo = new PageListVO();
vo.setList(realList);
PaginationVO page = JsonUtil.getJsonToBean(mdmContractTypePagination, PaginationVO.class);
vo.setPagination(page);
return ActionResult.success(vo);
}
/**
* 创建
*
* @param mdmContractTypeForm
* @return
*/
@PostMapping()
@Operation(summary = "创建")
public ActionResult create(@RequestBody @Valid MdmContractTypeForm mdmContractTypeForm) {
String b = mdmContractTypeService.checkForm(mdmContractTypeForm,0);
if (StringUtil.isNotEmpty(b)){
return ActionResult.fail(b );
}
try{
mdmContractTypeService.saveOrUpdate(mdmContractTypeForm, null ,true);
}catch(Exception e){
log.error("【合同类型配置创建接口异常】参数:{}", mdmContractTypeForm, e);
return ActionResult.fail(MsgCode.FA028.get());
}
return ActionResult.success(MsgCode.SU001.get());
}
/**
* 删除
* @param id
* @return
*/
@Operation(summary = "删除")
@DeleteMapping("/{id}")
@Transactional
public ActionResult delete(@PathVariable("id") String id,@RequestParam(name = "forceDel",defaultValue = "false") boolean forceDel) throws Exception{
MdmContractTypeEntity entity= mdmContractTypeService.getInfo(id);
if(entity!=null){
//假删除
entity.setDeleteMark(1);
entity.setDeleteUserId(userProvider.get().getUserId());
entity.setDeleteTime(new Date());
mdmContractTypeService.setIgnoreLogicDelete().updateById(entity);
}
return ActionResult.success(MsgCode.SU003.get());
}
/**
* 批量删除
* @param obj
* @return
*/
@DeleteMapping("/batchRemove")
@Transactional
@Operation(summary = "批量删除")
public ActionResult batchRemove(@RequestBody Object obj){
Map<String, Object> objectMap = JsonUtil.entityToMap(obj);
List<String> idList = JsonUtil.getJsonToList(objectMap.get("ids"), String.class);
String errInfo = "";
List<String> successList = new ArrayList<>();
for (String allId : idList){
try {
this.delete(allId,false);
successList.add(allId);
} catch (Exception e) {
errInfo = e.getMessage();
}
}
if (successList.size() == 0 && StringUtil.isNotEmpty(errInfo)){
return ActionResult.fail(errInfo);
}
return ActionResult.success(MsgCode.SU003.get());
}
/**
* 编辑
* @param id
* @param mdmContractTypeForm
* @return
*/
@PutMapping("/{id}")
@Operation(summary = "更新")
public ActionResult update(@PathVariable("id") String id,@RequestBody @Valid MdmContractTypeForm mdmContractTypeForm,
@RequestParam(value = "isImport", required = false) boolean isImport){
MdmContractTypeEntity entity= mdmContractTypeService.getInfo(id);
if(entity!=null){
mdmContractTypeForm.setId(String.valueOf(entity.getId()));
if (!isImport) {
String b = mdmContractTypeService.checkForm(mdmContractTypeForm,1);
if (StringUtil.isNotEmpty(b)){
return ActionResult.fail(b );
}
}
try{
mdmContractTypeService.saveOrUpdate(mdmContractTypeForm,id,false);
}catch (DataException e1){
return ActionResult.fail(e1.getMessage());
}catch(Exception e){
log.error("【合同类型配置编辑接口异常】参数:{}", mdmContractTypeForm, e);
return ActionResult.fail(MsgCode.FA029.get());
}
return ActionResult.success(MsgCode.SU004.get());
}else{
return ActionResult.fail(MsgCode.FA002.get());
}
}
/**
* 表单信息(详情页)
* 详情页面使用-转换数据
* @param id
* @return
*/
@Operation(summary = "表单信息(详情页)")
@GetMapping("/detail/{id}")
public ActionResult detailInfo(@PathVariable("id") String id){
MdmContractTypeEntity entity= mdmContractTypeService.getInfo(id);
if(entity==null){
return ActionResult.fail(MsgCode.FA001.get());
}
Map<String, Object> mdmContractTypeMap=JsonUtil.entityToMap(entity);
mdmContractTypeMap.put("id", mdmContractTypeMap.get("id"));
//副表数据
//子表数据
boolean isPc = "pc".equals(ServletUtil.getHeader("yunzhupaas-origin" ));
mdmContractTypeMap = generaterSwapUtil.swapDataDetail(mdmContractTypeMap,MdmContractTypeConstant.getFormData(),"808252366691240901",isPc?false:false);
//子表数据
return ActionResult.success(mdmContractTypeMap);
}
/**
* 获取详情(编辑页)
* 编辑页面使用-不转换数据
* @param id
* @return
*/
@Operation(summary = "信息")
@GetMapping("/{id}")
public ActionResult info(@PathVariable("id") String id){
MdmContractTypeEntity entity= mdmContractTypeService.getInfo(id);
if(entity==null){
return ActionResult.fail(MsgCode.FA001.get());
}
Map<String, Object> mdmContractTypeMap=JsonUtil.entityToMap(entity);
mdmContractTypeMap.put("id", mdmContractTypeMap.get("id"));
//副表数据
//子表数据
mdmContractTypeMap = generaterSwapUtil.swapDataForm(mdmContractTypeMap,MdmContractTypeConstant.getFormData(),MdmContractTypeConstant.TABLEFIELDKEY,MdmContractTypeConstant.TABLERENAMES);
return ActionResult.success(mdmContractTypeMap);
}
/**
* 根据类型查询
*
* @param mdmContractTypePagination
* @return
*/
@Operation(summary = "根据类型查询")
@PostMapping("/listByContractMode")
public ActionResult listByContractMode(@RequestBody MdmContractTypePagination mdmContractTypePagination)throws Exception{
List<MdmContractTypeEntity> list= mdmContractTypeService.getList(mdmContractTypePagination);
List<Map<String, Object>> realList=new ArrayList<>();
for (MdmContractTypeEntity entity : list) {
Map<String, Object> mdmContractTypeMap=JsonUtil.entityToMap(entity);
mdmContractTypeMap.put("id", mdmContractTypeMap.get("id"));
//副表数据
//子表数据
realList.add(mdmContractTypeMap);
}
//数据转换
boolean isPc = "pc".equals(ServletUtil.getHeader("yunzhupaas-origin" ));
realList = generaterSwapUtil.swapDataList(realList, MdmContractTypeConstant.getFormData(), MdmContractTypeConstant.getColumnData(), mdmContractTypePagination.getModuleId(),isPc?false:false);
return ActionResult.success(realList);
}
}

View File

@@ -0,0 +1,232 @@
package com.yunzhupaas.base.controller;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import com.yunzhupaas.base.ActionResult;
import com.yunzhupaas.base.UserInfo;
import com.yunzhupaas.exception.DataException;
import com.yunzhupaas.permission.entity.UserEntity;
import com.yunzhupaas.constant.MsgCode;
import com.yunzhupaas.base.service.*;
import com.yunzhupaas.base.entity.*;
import com.yunzhupaas.util.*;
import com.yunzhupaas.base.model.mdmproject.*;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import com.yunzhupaas.flowable.entity.TaskEntity;
import jakarta.validation.Valid;
import java.util.*;
import com.yunzhupaas.model.ExcelModel;
import com.yunzhupaas.excel.ExcelExportStyler;
import com.yunzhupaas.excel.ExcelHelper;
import com.yunzhupaas.base.vo.PageListVO;
import com.yunzhupaas.base.vo.PaginationVO;
import com.yunzhupaas.base.vo.DownloadVO;
import com.yunzhupaas.config.ConfigValueUtil;
import com.yunzhupaas.base.entity.ProvinceEntity;
import java.io.IOException;
import java.util.stream.Collectors;
import com.yunzhupaas.flowable.entity.TaskEntity;
import com.yunzhupaas.exception.WorkFlowException;
import com.yunzhupaas.model.visualJson.UploaderTemplateModel;
import com.yunzhupaas.base.util.FormExecelUtils;
import org.springframework.transaction.annotation.Transactional;
/**
* 项目结构
* @版本: V5.2.7
* @版权: Copyright @ 2025 深圳市乐程软件有限公司版权所有
* @作者: 深圳市乐程软件有限公司
* @日期: 2026-03-26
*/
@Slf4j
@RestController
@Tag(name = "项目结构" , description = "bcm")
@RequestMapping("/api/bcm/MdmProject")
public class MdmProjectController {
@Autowired
private GeneraterSwapUtil generaterSwapUtil;
@Autowired
private UserProvider userProvider;
@Autowired
private MdmProjectService mdmProjectService;
/**
* 列表
*
* @param mdmProjectPagination
* @return
*/
@Operation(summary = "获取列表")
@PostMapping("/getList")
public ActionResult list(@RequestBody MdmProjectPagination mdmProjectPagination)throws Exception{
List<MdmProjectEntity> list= mdmProjectService.getList(mdmProjectPagination);
List<Map<String, Object>> realList=new ArrayList<>();
for (MdmProjectEntity entity : list) {
Map<String, Object> mdmProjectMap=JsonUtil.entityToMap(entity);
mdmProjectMap.put("id", mdmProjectMap.get("project_id"));
//副表数据
//子表数据
realList.add(mdmProjectMap);
}
//数据转换
boolean isPc = "pc".equals(ServletUtil.getHeader("yunzhupaas-origin" ));
realList = generaterSwapUtil.swapDataList(realList, MdmProjectConstant.getFormData(), MdmProjectConstant.getColumnData(), mdmProjectPagination.getModuleId(),isPc?false:false);
//返回对象
PageListVO vo = new PageListVO();
vo.setList(realList);
PaginationVO page = JsonUtil.getJsonToBean(mdmProjectPagination, PaginationVO.class);
vo.setPagination(page);
return ActionResult.success(vo);
}
/**
* 创建
*
* @param mdmProjectForm
* @return
*/
@PostMapping()
@Operation(summary = "创建")
public ActionResult create(@RequestBody @Valid MdmProjectForm mdmProjectForm) {
String b = mdmProjectService.checkForm(mdmProjectForm,0);
if (StringUtil.isNotEmpty(b)){
return ActionResult.fail(b );
}
try{
mdmProjectService.saveOrUpdate(mdmProjectForm, null ,true);
}catch(Exception e){
log.error("【项目结构创建项目接口异常】参数:{}", mdmProjectForm, e);
return ActionResult.fail(MsgCode.FA028.get());
}
return ActionResult.success(MsgCode.SU001.get());
}
/**
* 删除
* @param id
* @return
*/
@Operation(summary = "删除")
@DeleteMapping("/{id}")
@Transactional
public ActionResult delete(@PathVariable("id") String id,@RequestParam(name = "forceDel",defaultValue = "false") boolean forceDel) throws Exception{
MdmProjectEntity entity= mdmProjectService.getInfo(id);
if(entity!=null){
//主表数据删除
mdmProjectService.delete(entity);
}
return ActionResult.success(MsgCode.SU003.get());
}
/**
* 批量删除
* @param obj
* @return
*/
@DeleteMapping("/batchRemove")
@Transactional
@Operation(summary = "批量删除")
public ActionResult batchRemove(@RequestBody Object obj){
Map<String, Object> objectMap = JsonUtil.entityToMap(obj);
List<String> idList = JsonUtil.getJsonToList(objectMap.get("ids"), String.class);
String errInfo = "";
List<String> successList = new ArrayList<>();
for (String allId : idList){
try {
this.delete(allId,false);
successList.add(allId);
} catch (Exception e) {
errInfo = e.getMessage();
}
}
if (successList.size() == 0 && StringUtil.isNotEmpty(errInfo)){
return ActionResult.fail(errInfo);
}
return ActionResult.success(MsgCode.SU003.get());
}
/**
* 编辑
* @param id
* @param mdmProjectForm
* @return
*/
@PutMapping("/{id}")
@Operation(summary = "更新")
public ActionResult update(@PathVariable("id") String id,@RequestBody @Valid MdmProjectForm mdmProjectForm,
@RequestParam(value = "isImport", required = false) boolean isImport){
MdmProjectEntity entity= mdmProjectService.getInfo(id);
if(entity!=null){
mdmProjectForm.setProjectId(String.valueOf(entity.getProjectId()));
if (!isImport) {
String b = mdmProjectService.checkForm(mdmProjectForm,1);
if (StringUtil.isNotEmpty(b)){
return ActionResult.fail(b );
}
}
try{
mdmProjectService.saveOrUpdate(mdmProjectForm,id,false);
}catch (DataException e1){
return ActionResult.fail(e1.getMessage());
}catch(Exception e){
log.error("【项目结构修改项目接口异常】参数:{}", mdmProjectForm, e);
return ActionResult.fail(MsgCode.FA029.get());
}
return ActionResult.success(MsgCode.SU004.get());
}else{
return ActionResult.fail(MsgCode.FA002.get());
}
}
/**
* 表单信息(详情页)
* 详情页面使用-转换数据
* @param id
* @return
*/
@Operation(summary = "表单信息(详情页)")
@GetMapping("/detail/{id}")
public ActionResult detailInfo(@PathVariable("id") String id){
MdmProjectEntity entity= mdmProjectService.getInfo(id);
if(entity==null){
return ActionResult.fail(MsgCode.FA001.get());
}
Map<String, Object> mdmProjectMap=JsonUtil.entityToMap(entity);
mdmProjectMap.put("id", mdmProjectMap.get("project_id"));
//副表数据
//子表数据
boolean isPc = "pc".equals(ServletUtil.getHeader("yunzhupaas-origin" ));
mdmProjectMap = generaterSwapUtil.swapDataDetail(mdmProjectMap,MdmProjectConstant.getFormData(),"806868519370098181",isPc?false:false);
//子表数据
return ActionResult.success(mdmProjectMap);
}
/**
* 获取详情(编辑页)
* 编辑页面使用-不转换数据
* @param id
* @return
*/
@Operation(summary = "信息")
@GetMapping("/{id}")
public ActionResult info(@PathVariable("id") String id){
MdmProjectEntity entity= mdmProjectService.getInfo(id);
if(entity==null){
return ActionResult.fail(MsgCode.FA001.get());
}
Map<String, Object> mdmProjectMap=JsonUtil.entityToMap(entity);
mdmProjectMap.put("id", mdmProjectMap.get("project_id"));
//副表数据
//子表数据
mdmProjectMap = generaterSwapUtil.swapDataForm(mdmProjectMap,MdmProjectConstant.getFormData(),MdmProjectConstant.TABLEFIELDKEY,MdmProjectConstant.TABLERENAMES);
return ActionResult.success(mdmProjectMap);
}
}