资产管理初始化

This commit is contained in:
“hhk” 2024-08-08 20:11:22 +08:00
parent 6e2fb4d874
commit 3ade6b2f3b
41 changed files with 2099 additions and 5 deletions

View File

@ -0,0 +1,90 @@
package cn.iocoder.yudao.module.custom.controller.admin;
import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog;
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
import cn.iocoder.yudao.module.custom.entity.Property;
import cn.iocoder.yudao.module.custom.service.PropertyService;
import cn.iocoder.yudao.module.custom.vo.PropertyReqVO;
import cn.iocoder.yudao.module.custom.vo.PropertyRespVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;
import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.EXPORT;
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
@Tag(name = "管理后台 - 企业管理-资产")
@RestController
@RequestMapping("/company/property")
@Validated
public class PropertyController {
@Resource
private PropertyService propertyService;
@PostMapping("/create")
@Operation(summary = "创建企业管理-资产")
@PreAuthorize("@ss.hasPermission('company:property:create')")
public CommonResult<String> createProperty(@RequestBody PropertyReqVO createReqVO) {
return success(propertyService.createProperty(createReqVO));
}
@PutMapping("/update")
@Operation(summary = "更新企业管理-资产")
@PreAuthorize("@ss.hasPermission('company:property:update')")
public CommonResult<Boolean> updateProperty(@RequestBody PropertyReqVO updateReqVO) {
propertyService.updateProperty(updateReqVO);
return success(true);
}
@DeleteMapping("/delete")
@Operation(summary = "删除企业管理-资产")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('company:property:delete')")
public CommonResult<Boolean> deleteProperty(@RequestParam("id") String id) {
propertyService.deleteProperty(id);
return success(true);
}
@GetMapping("/get")
@Operation(summary = "获得企业管理-资产")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
@PreAuthorize("@ss.hasPermission('company:property:query')")
public CommonResult<PropertyRespVO> getProperty(@RequestParam("id") String id) {
Property property = propertyService.getProperty(id);
return success(BeanUtils.toBean(property, PropertyRespVO.class));
}
@GetMapping("/page")
@Operation(summary = "获得企业管理-资产分页")
@PreAuthorize("@ss.hasPermission('company:property:query')")
public CommonResult<IPage<PropertyRespVO>> getPropertyPage(PropertyReqVO pageReqVO) {
IPage<PropertyRespVO> pageResult = propertyService.getPropertyPage(pageReqVO);
return success(pageResult);
}
@GetMapping("/export-excel")
@Operation(summary = "导出企业管理-资产 Excel")
@PreAuthorize("@ss.hasPermission('company:property:export')")
@ApiAccessLog(operateType = EXPORT)
public void exportPropertyExcel(PropertyReqVO pageReqVO,
HttpServletResponse response) throws IOException {
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
List<PropertyRespVO> list = propertyService.getPropertyPage(pageReqVO).getRecords();
// 导出 Excel
ExcelUtils.write(response, "企业管理-资产.xls", "数据", PropertyRespVO.class, list);
}
}

View File

@ -0,0 +1,90 @@
package cn.iocoder.yudao.module.custom.controller.admin;
import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog;
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
import cn.iocoder.yudao.module.custom.entity.PropertyDealDO;
import cn.iocoder.yudao.module.custom.service.PropertyDealService;
import cn.iocoder.yudao.module.custom.vo.PropertyDealReqVO;
import cn.iocoder.yudao.module.custom.vo.PropertyDealRespVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;
import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.EXPORT;
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
@Tag(name = "管理后台 - 企业管理-资产处置单/变动单")
@RestController
@RequestMapping("/company/property-deal")
@Validated
public class PropertyDealController {
@Resource
private PropertyDealService propertyDealService;
@PostMapping("/create")
@Operation(summary = "创建企业管理-资产处置单/变动单")
@PreAuthorize("@ss.hasPermission('company:property-deal:create')")
public CommonResult<String> createPropertyDeal(@RequestBody PropertyDealReqVO createReqVO) {
return success(propertyDealService.createPropertyDeal(createReqVO));
}
@PutMapping("/update")
@Operation(summary = "更新企业管理-资产处置单/变动单")
@PreAuthorize("@ss.hasPermission('company:property-deal:update')")
public CommonResult<Boolean> updatePropertyDeal(@RequestBody PropertyDealReqVO updateReqVO) {
propertyDealService.updatePropertyDeal(updateReqVO);
return success(true);
}
@DeleteMapping("/delete")
@Operation(summary = "删除企业管理-资产处置单/变动单")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('company:property-deal:delete')")
public CommonResult<Boolean> deletePropertyDeal(@RequestParam("id") String id) {
propertyDealService.deletePropertyDeal(id);
return success(true);
}
@GetMapping("/get")
@Operation(summary = "获得企业管理-资产处置单/变动单")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
@PreAuthorize("@ss.hasPermission('company:property-deal:query')")
public CommonResult<PropertyDealRespVO> getPropertyDeal(@RequestParam("id") String id) {
PropertyDealDO propertyDeal = propertyDealService.getPropertyDeal(id);
return success(BeanUtils.toBean(propertyDeal, PropertyDealRespVO.class));
}
@GetMapping("/page")
@Operation(summary = "获得企业管理-资产处置单/变动单分页")
@PreAuthorize("@ss.hasPermission('company:property-deal:query')")
public CommonResult<IPage<PropertyDealRespVO>> getPropertyDealPage(PropertyDealReqVO pageReqVO) {
IPage<PropertyDealRespVO> propertyDealPage = propertyDealService.getPropertyDealPage(pageReqVO);
return success(propertyDealPage);
}
@GetMapping("/export-excel")
@Operation(summary = "导出企业管理-资产处置单/变动单 Excel")
@PreAuthorize("@ss.hasPermission('company:property-deal:export')")
@ApiAccessLog(operateType = EXPORT)
public void exportPropertyDealExcel(PropertyDealReqVO pageReqVO,
HttpServletResponse response) throws IOException {
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
List<PropertyDealRespVO> list = propertyDealService.getPropertyDealPage(pageReqVO).getRecords();
// 导出 Excel
ExcelUtils.write(response, "企业管理-资产处置单/变动单.xls", "数据", PropertyDealRespVO.class,list);
}
}

View File

@ -0,0 +1,90 @@
package cn.iocoder.yudao.module.custom.controller.admin;
import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog;
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
import cn.iocoder.yudao.module.custom.entity.PropertyDealItemDO;
import cn.iocoder.yudao.module.custom.service.PropertyDealItemService;
import cn.iocoder.yudao.module.custom.vo.PropertyDealItemReqVO;
import cn.iocoder.yudao.module.custom.vo.PropertyDealItemRespVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;
import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.EXPORT;
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
@Tag(name = "管理后台 - 企业管理-资产处置子")
@RestController
@RequestMapping("/company/property-deal-item")
@Validated
public class PropertyDealItemController {
@Resource
private PropertyDealItemService propertyDealItemService;
@PostMapping("/create")
@Operation(summary = "创建企业管理-资产处置子")
@PreAuthorize("@ss.hasPermission('company:property-deal-item:create')")
public CommonResult<String> createPropertyDealItem(@RequestBody PropertyDealItemReqVO createReqVO) {
return success(propertyDealItemService.createPropertyDealItem(createReqVO));
}
@PutMapping("/update")
@Operation(summary = "更新企业管理-资产处置子")
@PreAuthorize("@ss.hasPermission('company:property-deal-item:update')")
public CommonResult<Boolean> updatePropertyDealItem(@RequestBody PropertyDealItemReqVO updateReqVO) {
propertyDealItemService.updatePropertyDealItem(updateReqVO);
return success(true);
}
@DeleteMapping("/delete")
@Operation(summary = "删除企业管理-资产处置子")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('company:property-deal-item:delete')")
public CommonResult<Boolean> deletePropertyDealItem(@RequestParam("id") String id) {
propertyDealItemService.deletePropertyDealItem(id);
return success(true);
}
@GetMapping("/get")
@Operation(summary = "获得企业管理-资产处置子")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
@PreAuthorize("@ss.hasPermission('company:property-deal-item:query')")
public CommonResult<PropertyDealItemRespVO> getPropertyDealItem(@RequestParam("id") String id) {
PropertyDealItemDO propertyDealItem = propertyDealItemService.getPropertyDealItem(id);
return success(BeanUtils.toBean(propertyDealItem, PropertyDealItemRespVO.class));
}
@GetMapping("/page")
@Operation(summary = "获得企业管理-资产处置子分页")
@PreAuthorize("@ss.hasPermission('company:property-deal-item:query')")
public CommonResult<IPage<PropertyDealItemRespVO>> getPropertyDealItemPage(PropertyDealItemReqVO pageReqVO) {
IPage<PropertyDealItemRespVO> propertyDealItemPage = propertyDealItemService.getPropertyDealItemPage(pageReqVO);
return success(propertyDealItemPage);
}
@GetMapping("/export-excel")
@Operation(summary = "导出企业管理-资产处置子 Excel")
@PreAuthorize("@ss.hasPermission('company:property-deal-item:export')")
@ApiAccessLog(operateType = EXPORT)
public void exportPropertyDealItemExcel(PropertyDealItemReqVO pageReqVO,
HttpServletResponse response) throws IOException {
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
List<PropertyDealItemRespVO> list = propertyDealItemService.getPropertyDealItemPage(pageReqVO).getRecords();
// 导出 Excel
ExcelUtils.write(response, "企业管理-资产处置子.xls", "数据", PropertyDealItemRespVO.class,list);
}
}

View File

@ -0,0 +1,90 @@
package cn.iocoder.yudao.module.custom.controller.admin;
import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog;
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
import cn.iocoder.yudao.module.custom.entity.PropertyKeep;
import cn.iocoder.yudao.module.custom.service.PropertyKeepService;
import cn.iocoder.yudao.module.custom.vo.PropertyKeepReqVO;
import cn.iocoder.yudao.module.custom.vo.PropertyKeepRespVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;
import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.EXPORT;
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
@Tag(name = "管理后台 - 资产维修/保养记录")
@RestController
@RequestMapping("/company/property-keep")
@Validated
public class PropertyKeepController {
@Resource
private PropertyKeepService propertyKeepService;
@PostMapping("/create")
@Operation(summary = "创建资产维修/保养记录")
@PreAuthorize("@ss.hasPermission('company:property-keep:create')")
public CommonResult<String> createPropertyKeep(@RequestBody PropertyKeepReqVO createReqVO) {
return success(propertyKeepService.createPropertyKeep(createReqVO));
}
@PutMapping("/update")
@Operation(summary = "更新资产维修/保养记录")
@PreAuthorize("@ss.hasPermission('company:property-keep:update')")
public CommonResult<Boolean> updatePropertyKeep(@RequestBody PropertyKeepReqVO updateReqVO) {
propertyKeepService.updatePropertyKeep(updateReqVO);
return success(true);
}
@DeleteMapping("/delete")
@Operation(summary = "删除资产维修/保养记录")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('company:property-keep:delete')")
public CommonResult<Boolean> deletePropertyKeep(@RequestParam("id") String id) {
propertyKeepService.deletePropertyKeep(id);
return success(true);
}
@GetMapping("/get")
@Operation(summary = "获得资产维修/保养记录")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
@PreAuthorize("@ss.hasPermission('company:property-keep:query')")
public CommonResult<PropertyKeepRespVO> getPropertyKeep(@RequestParam("id") String id) {
PropertyKeep propertyKeep = propertyKeepService.getPropertyKeep(id);
return success(BeanUtils.toBean(propertyKeep, PropertyKeepRespVO.class));
}
@GetMapping("/page")
@Operation(summary = "获得资产维修/保养记录分页")
@PreAuthorize("@ss.hasPermission('company:property-keep:query')")
public CommonResult<IPage<PropertyKeepRespVO>> getPropertyKeepPage(PropertyKeepReqVO pageReqVO) {
IPage<PropertyKeepRespVO> pageResult = propertyKeepService.getPropertyKeepPage(pageReqVO);
return success(pageResult);
}
@GetMapping("/export-excel")
@Operation(summary = "导出资产维修/保养记录 Excel")
@PreAuthorize("@ss.hasPermission('company:property-keep:export')")
@ApiAccessLog(operateType = EXPORT)
public void exportPropertyKeepExcel(PropertyKeepReqVO pageReqVO,
HttpServletResponse response) throws IOException {
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
List<PropertyKeepRespVO> list = propertyKeepService.getPropertyKeepPage(pageReqVO).getRecords();
// 导出 Excel
ExcelUtils.write(response, "资产维修/保养记录.xls", "数据", PropertyKeepRespVO.class, list);
}
}

View File

@ -0,0 +1,90 @@
package cn.iocoder.yudao.module.custom.controller.admin;
import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog;
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
import cn.iocoder.yudao.module.custom.entity.PropertyPosDO;
import cn.iocoder.yudao.module.custom.service.PropertyPosService;
import cn.iocoder.yudao.module.custom.vo.PropertyPosReqVO;
import cn.iocoder.yudao.module.custom.vo.PropertyPosRespVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;
import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.EXPORT;
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
@Tag(name = "管理后台 - 企业管理-资产存放位置")
@RestController
@RequestMapping("/company/property-pos")
@Validated
public class PropertyPosController {
@Resource
private PropertyPosService propertyPosService;
@PostMapping("/create")
@Operation(summary = "创建企业管理-资产存放位置")
@PreAuthorize("@ss.hasPermission('company:property-pos:create')")
public CommonResult<String> createPropertyPos(@RequestBody PropertyPosReqVO createReqVO) {
return success(propertyPosService.createPropertyPos(createReqVO));
}
@PutMapping("/update")
@Operation(summary = "更新企业管理-资产存放位置")
@PreAuthorize("@ss.hasPermission('company:property-pos:update')")
public CommonResult<Boolean> updatePropertyPos(@RequestBody PropertyPosReqVO updateReqVO) {
propertyPosService.updatePropertyPos(updateReqVO);
return success(true);
}
@DeleteMapping("/delete")
@Operation(summary = "删除企业管理-资产存放位置")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('company:property-pos:delete')")
public CommonResult<Boolean> deletePropertyPos(@RequestParam("id") String id) {
propertyPosService.deletePropertyPos(id);
return success(true);
}
@GetMapping("/get")
@Operation(summary = "获得企业管理-资产存放位置")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
@PreAuthorize("@ss.hasPermission('company:property-pos:query')")
public CommonResult<PropertyPosRespVO> getPropertyPos(@RequestParam("id") String id) {
PropertyPosDO propertyPos = propertyPosService.getPropertyPos(id);
return success(BeanUtils.toBean(propertyPos, PropertyPosRespVO.class));
}
@GetMapping("/page")
@Operation(summary = "获得企业管理-资产存放位置分页")
@PreAuthorize("@ss.hasPermission('company:property-pos:query')")
public CommonResult<IPage<PropertyPosRespVO>> getPropertyPosPage(PropertyPosReqVO pageReqVO) {
IPage<PropertyPosRespVO> pageResult = propertyPosService.getPropertyPosPage(pageReqVO);
return success(pageResult);
}
@GetMapping("/export-excel")
@Operation(summary = "导出企业管理-资产存放位置 Excel")
@PreAuthorize("@ss.hasPermission('company:property-pos:export')")
@ApiAccessLog(operateType = EXPORT)
public void exportPropertyPosExcel(PropertyPosReqVO pageReqVO,
HttpServletResponse response) throws IOException {
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
List<PropertyPosRespVO> list = propertyPosService.getPropertyPosPage(pageReqVO).getRecords();
// 导出 Excel
ExcelUtils.write(response, "企业管理-资产存放位置.xls", "数据", PropertyPosRespVO.class,list);
}
}

View File

@ -0,0 +1,150 @@
package cn.iocoder.yudao.module.custom.entity;
import cn.iocoder.yudao.framework.tenant.core.db.TenantBaseDO;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;
import java.math.BigDecimal;
import java.time.LocalDate;
/**
* 企业管理-资产 DO
*
* @author 后台管理员
*/
@TableName("company_property")
@KeySequence("company_property_seq") // 用于 OraclePostgreSQLKingbaseDB2H2 数据库的主键自增如果是 MySQL 等数据库可不写
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class Property extends TenantBaseDO {
/**
* 主键标识
*/
@TableId(type = IdType.INPUT)
private String id;
/**
* 企业id
*/
private String corpId;
/**
* 部门id
*/
private Long deptId;
/**
* 存放位置
*/
private String posId;
/**
* 使用人id
*/
private String userId;
/**
* 资产编号
*/
private String propNo;
/**
* 资产名称
*/
private String propName;
/**
* 资产分类
*/
private String propCatg;
/**
* 预计使用年限
*/
private Integer useYear;
/**
* 价值类型
*
* 枚举 {@link TODO company_cost_type 对应的类}
*/
private String costType;
/**
* 资产数量
*/
private Integer propNum;
/**
* 资产原值
*/
private BigDecimal costTotal;
/**
* 资产状态
*
* 枚举 {@link TODO company_prop_status 对应的类}
*/
private String propStatus;
/**
* 品牌
*/
private String brand;
/**
* 规格型号
*/
private String spec;
/**
* 生产厂家
*/
private String factory;
/**
* 出场序列号/编号
*/
private String serialNo;
/**
* 数量计量单位
*/
private String unit;
/**
* 取得日期
*/
private LocalDate getDate;
/**
* 出厂日期
*/
private LocalDate prodDate;
/**
* 供应商
*/
private String supplier;
/**
* 启用日期
*/
private LocalDate openDate;
/**
* 净值
*/
private BigDecimal netValue;
/**
* 凭证号
*/
private String voucherNo;
/**
* 维修/保养周期单位
*/
private String keepCycleType;
/**
* 维修/保养周期
*/
private Integer keepCycle;
/**
* 上次维修/保养日期
*/
private LocalDate lastKeepDate;
/**
* 下次维修/保养日期
*/
private LocalDate nextKeepDate;
/**
* 附件urls
*/
private String fileUrls;
}

View File

@ -0,0 +1,55 @@
package cn.iocoder.yudao.module.custom.entity;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;
import java.time.LocalDate;
/**
* 企业管理-资产处置单/变动单 DO
*
* @author 后台管理员
*/
@TableName("company_property_deal")
@KeySequence("company_property_deal_seq") // 用于 OraclePostgreSQLKingbaseDB2H2 数据库的主键自增如果是 MySQL 等数据库可不写
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class PropertyDealDO extends BaseDO {
/**
* 主键标识
*/
@TableId(type = IdType.INPUT)
private String id;
/**
* 企业idbase_company表中的id
*/
private String corpId;
/**
* 部门idsystem_dept表中的id用来做数据权限控制
*/
private Long deptId;
/**
* 数据类型
*
* 枚举 {@link TODO property_data_type 对应的类}
*/
private String dataType;
/**
* 处置/变动单号
*/
private String dealNo;
/**
* 处置/变动日期
*/
private LocalDate dealDate;
}

View File

@ -0,0 +1,81 @@
package cn.iocoder.yudao.module.custom.entity;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;
/**
* 企业管理-资产处置子 DO
*
* @author 后台管理员
*/
@TableName("company_property_deal_item")
@KeySequence("company_property_deal_item_seq") // 用于 OraclePostgreSQLKingbaseDB2H2 数据库的主键自增如果是 MySQL 等数据库可不写
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class PropertyDealItemDO extends BaseDO {
/**
* 主键标识
*/
@TableId(type = IdType.INPUT)
private String id;
/**
* 处置单/变动单id
*/
private String dealId;
/**
* 资产id
*/
private String propertyId;
/**
* 处置方式
*
* 枚举 {@link TODO company_deal_way 对应的类}
*/
private String dealWay;
/**
* 原企业id
*/
private String oldCorpId;
/**
* 调入企业id
*/
private String corpId;
/**
* 原部门id
*/
private Long oldDeptId;
/**
* 调入部门id
*/
private Long deptId;
/**
* 原存放地id
*/
private String oldPosId;
/**
* 调入存放地id
*/
private String posId;
/**
* 原使用人id
*/
private Long oldUserId;
/**
* 调入使用人id
*/
private Long userId;
/**
* 备注
*/
private String remark;
}

View File

@ -0,0 +1,49 @@
package cn.iocoder.yudao.module.custom.entity;
import cn.iocoder.yudao.framework.tenant.core.db.TenantBaseDO;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;
import java.time.LocalDate;
/**
* 资产维修/保养记录 DO
*
* @author 后台管理员
*/
@TableName("company_property_keep")
@KeySequence("company_property_keep_seq") // 用于 OraclePostgreSQLKingbaseDB2H2 数据库的主键自增如果是 MySQL 等数据库可不写
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class PropertyKeep extends TenantBaseDO {
/**
* 主键标识
*/
@TableId(type = IdType.INPUT)
private String id;
/**
* 资产id
*/
private String propertyId;
/**
* 维修/保养日期
*/
private LocalDate keepDate;
/**
* 备注
*/
private String remark;
/**
* 附件urls
*/
private String fileUrls;
}

View File

@ -0,0 +1,59 @@
package cn.iocoder.yudao.module.custom.entity;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;
import java.math.BigDecimal;
/**
* 企业管理-资产存放位置 DO
*
* @author vinjor-m
*/
@TableName("company_property_pos")
@KeySequence("company_property_pos_seq") // 用于 OraclePostgreSQLKingbaseDB2H2 数据库的主键自增如果是 MySQL 等数据库可不写
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class PropertyPosDO extends BaseDO {
/**
* 主键标识
*/
@TableId(type = IdType.INPUT)
private String id;
/**
* 企业idbase_company表中的id
*/
private String corpId;
/**
* 部门idsystem_dept表中的id用来做数据权限控制
*/
private Long deptId;
/**
* 存放地名称
*/
private String posName;
/**
* 存放地地址
*/
private String address;
/**
* 面积
*/
private BigDecimal area;
/**
* 存放类型
*
* 枚举 {@link TODO company_deposit_type 对应的类}
*/
private String depositType;
}

View File

@ -0,0 +1,22 @@
package cn.iocoder.yudao.module.custom.mapper;
import cn.iocoder.yudao.module.custom.entity.PropertyDealItemDO;
import cn.iocoder.yudao.module.custom.vo.PropertyDealItemReqVO;
import cn.iocoder.yudao.module.custom.vo.PropertyDealItemRespVO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Mapper;
/**
* 企业管理-资产处置子 Mapper
*
* @author 后台管理员
*/
@Mapper
public interface PropertyDealItemMapper extends BaseMapper<PropertyDealItemDO> {
default IPage<PropertyDealItemRespVO> selectPage(PropertyDealItemReqVO reqVO) {
return null;
}
}

View File

@ -0,0 +1,22 @@
package cn.iocoder.yudao.module.custom.mapper;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.module.custom.entity.PropertyDealDO;
import cn.iocoder.yudao.module.custom.vo.PropertyDealReqVO;
import cn.iocoder.yudao.module.custom.vo.PropertyDealRespVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Mapper;
/**
* 企业管理-资产处置单/变动单 Mapper
*
* @author 后台管理员
*/
@Mapper
public interface PropertyDealMapper extends BaseMapperX<PropertyDealDO> {
default IPage<PropertyDealRespVO> selectPage(PropertyDealReqVO reqVO) {
return null;
}
}

View File

@ -0,0 +1,22 @@
package cn.iocoder.yudao.module.custom.mapper;
import cn.iocoder.yudao.module.custom.entity.PropertyKeep;
import cn.iocoder.yudao.module.custom.vo.PropertyKeepReqVO;
import cn.iocoder.yudao.module.custom.vo.PropertyKeepRespVO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Mapper;
/**
* 资产维修/保养记录 Mapper
*
* @author 后台管理员
*/
@Mapper
public interface PropertyKeepMapper extends BaseMapper<PropertyKeep> {
default IPage<PropertyKeepRespVO> selectPage(PropertyKeepReqVO reqVO) {
return null;
}
}

View File

@ -0,0 +1,22 @@
package cn.iocoder.yudao.module.custom.mapper;
import cn.iocoder.yudao.module.custom.entity.Property;
import cn.iocoder.yudao.module.custom.vo.PropertyReqVO;
import cn.iocoder.yudao.module.custom.vo.PropertyRespVO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Mapper;
/**
* 企业管理-资产 Mapper
*
* @author 后台管理员
*/
@Mapper
public interface PropertyMapper extends BaseMapper<Property> {
default IPage<PropertyRespVO> selectPage(PropertyReqVO reqVO) {
return null;
}
}

View File

@ -0,0 +1,22 @@
package cn.iocoder.yudao.module.custom.mapper;
import cn.iocoder.yudao.module.custom.entity.PropertyPosDO;
import cn.iocoder.yudao.module.custom.vo.PropertyPosReqVO;
import cn.iocoder.yudao.module.custom.vo.PropertyPosRespVO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Mapper;
/**
* 企业管理-资产存放位置 Mapper
*
* @author vinjor-m
*/
@Mapper
public interface PropertyPosMapper extends BaseMapper<PropertyPosDO> {
default IPage<PropertyPosRespVO> selectPage(PropertyPosReqVO reqVO) {
return null;
}
}

View File

@ -0,0 +1,55 @@
package cn.iocoder.yudao.module.custom.service;
import cn.iocoder.yudao.module.custom.entity.PropertyDealItemDO;
import cn.iocoder.yudao.module.custom.vo.PropertyDealItemReqVO;
import cn.iocoder.yudao.module.custom.vo.PropertyDealItemRespVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* 企业管理-资产处置子 Service 接口
*
* @author 后台管理员
*/
public interface PropertyDealItemService extends IService<PropertyDealItemDO> {
/**
* 创建企业管理-资产处置子
*
* @param createReqVO 创建信息
* @return 编号
*/
String createPropertyDealItem(PropertyDealItemReqVO createReqVO);
/**
* 更新企业管理-资产处置子
*
* @param updateReqVO 更新信息
*/
void updatePropertyDealItem(PropertyDealItemReqVO updateReqVO);
/**
* 删除企业管理-资产处置子
*
* @param id 编号
*/
void deletePropertyDealItem(String id);
/**
* 获得企业管理-资产处置子
*
* @param id 编号
* @return 企业管理-资产处置子
*/
PropertyDealItemDO getPropertyDealItem(String id);
/**
* 获得企业管理-资产处置子分页
*
* @param pageReqVO 分页查询
* @return 企业管理-资产处置子分页
*/
IPage<PropertyDealItemRespVO> getPropertyDealItemPage(PropertyDealItemReqVO pageReqVO);
}

View File

@ -0,0 +1,54 @@
package cn.iocoder.yudao.module.custom.service;
import cn.iocoder.yudao.module.custom.entity.PropertyDealDO;
import cn.iocoder.yudao.module.custom.vo.PropertyDealReqVO;
import cn.iocoder.yudao.module.custom.vo.PropertyDealRespVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* 企业管理-资产处置单/变动单 Service 接口
*
* @author 后台管理员
*/
public interface PropertyDealService extends IService<PropertyDealDO> {
/**
* 创建企业管理-资产处置单/变动单
*
* @param createReqVO 创建信息
* @return 编号
*/
String createPropertyDeal(PropertyDealReqVO createReqVO);
/**
* 更新企业管理-资产处置单/变动单
*
* @param updateReqVO 更新信息
*/
void updatePropertyDeal(PropertyDealReqVO updateReqVO);
/**
* 删除企业管理-资产处置单/变动单
*
* @param id 编号
*/
void deletePropertyDeal(String id);
/**
* 获得企业管理-资产处置单/变动单
*
* @param id 编号
* @return 企业管理-资产处置单/变动单
*/
PropertyDealDO getPropertyDeal(String id);
/**
* 获得企业管理-资产处置单/变动单分页
*
* @param pageReqVO 分页查询
* @return 企业管理-资产处置单/变动单分页
*/
IPage<PropertyDealRespVO> getPropertyDealPage(PropertyDealReqVO pageReqVO);
}

View File

@ -0,0 +1,54 @@
package cn.iocoder.yudao.module.custom.service;
import cn.iocoder.yudao.module.custom.entity.PropertyKeep;
import cn.iocoder.yudao.module.custom.vo.PropertyKeepReqVO;
import cn.iocoder.yudao.module.custom.vo.PropertyKeepRespVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* 资产维修/保养记录 Service 接口
*
* @author 后台管理员
*/
public interface PropertyKeepService extends IService<PropertyKeep> {
/**
* 创建资产维修/保养记录
*
* @param createReqVO 创建信息
* @return 编号
*/
String createPropertyKeep(PropertyKeepReqVO createReqVO);
/**
* 更新资产维修/保养记录
*
* @param updateReqVO 更新信息
*/
void updatePropertyKeep(PropertyKeepReqVO updateReqVO);
/**
* 删除资产维修/保养记录
*
* @param id 编号
*/
void deletePropertyKeep(String id);
/**
* 获得资产维修/保养记录
*
* @param id 编号
* @return 资产维修/保养记录
*/
PropertyKeep getPropertyKeep(String id);
/**
* 获得资产维修/保养记录分页
*
* @param pageReqVO 分页查询
* @return 资产维修/保养记录分页
*/
IPage<PropertyKeepRespVO> getPropertyKeepPage(PropertyKeepReqVO pageReqVO);
}

View File

@ -0,0 +1,54 @@
package cn.iocoder.yudao.module.custom.service;
import cn.iocoder.yudao.module.custom.entity.PropertyPosDO;
import cn.iocoder.yudao.module.custom.vo.PropertyPosReqVO;
import cn.iocoder.yudao.module.custom.vo.PropertyPosRespVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* 企业管理-资产存放位置 Service 接口
*
* @author vinjor-m
*/
public interface PropertyPosService extends IService<PropertyPosDO> {
/**
* 创建企业管理-资产存放位置
*
* @param createReqVO 创建信息
* @return 编号
*/
String createPropertyPos(PropertyPosReqVO createReqVO);
/**
* 更新企业管理-资产存放位置
*
* @param updateReqVO 更新信息
*/
void updatePropertyPos(PropertyPosReqVO updateReqVO);
/**
* 删除企业管理-资产存放位置
*
* @param id 编号
*/
void deletePropertyPos(String id);
/**
* 获得企业管理-资产存放位置
*
* @param id 编号
* @return 企业管理-资产存放位置
*/
PropertyPosDO getPropertyPos(String id);
/**
* 获得企业管理-资产存放位置分页
*
* @param pageReqVO 分页查询
* @return 企业管理-资产存放位置分页
*/
IPage<PropertyPosRespVO> getPropertyPosPage(PropertyPosReqVO pageReqVO);
}

View File

@ -0,0 +1,54 @@
package cn.iocoder.yudao.module.custom.service;
import cn.iocoder.yudao.module.custom.entity.Property;
import cn.iocoder.yudao.module.custom.vo.PropertyReqVO;
import cn.iocoder.yudao.module.custom.vo.PropertyRespVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* 企业管理-资产 Service 接口
*
* @author 后台管理员
*/
public interface PropertyService extends IService<Property> {
/**
* 创建企业管理-资产
*
* @param createReqVO 创建信息
* @return 编号
*/
String createProperty(PropertyReqVO createReqVO);
/**
* 更新企业管理-资产
*
* @param updateReqVO 更新信息
*/
void updateProperty(PropertyReqVO updateReqVO);
/**
* 删除企业管理-资产
*
* @param id 编号
*/
void deleteProperty(String id);
/**
* 获得企业管理-资产
*
* @param id 编号
* @return 企业管理-资产
*/
Property getProperty(String id);
/**
* 获得企业管理-资产分页
*
* @param pageReqVO 分页查询
* @return 企业管理-资产分页
*/
IPage<PropertyRespVO> getPropertyPage(PropertyReqVO pageReqVO);
}

View File

@ -2,6 +2,7 @@ package cn.iocoder.yudao.module.custom.service.impl;
import cn.hutool.core.util.ObjectUtil;
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.custom.entity.CarMain;
import cn.iocoder.yudao.module.custom.entity.CustomerCar;
import cn.iocoder.yudao.module.custom.mapper.CarMainMapper;
@ -18,9 +19,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
@ -72,9 +71,10 @@ public class CarMainServiceImpl extends ServiceImpl<CarMainMapper, CarMain> impl
if(brandAndModel.size()>1){
//填入了型号
carMain.setCarModel(brandAndModel.get(1));
}else {
carMain.setCarModel("");
}
//todo 计算下次保养时间下次保养里程下次年检时间保险到期时间
baseMapper.insert(carMain);
// 返回
return CommonResult.success("新增成功");
@ -103,7 +103,14 @@ public class CarMainServiceImpl extends ServiceImpl<CarMainMapper, CarMain> impl
// 插入
CarMain carMain = BeanUtils.toBean(updateReqVO, CarMain.class);
carMain.setCarBrand(brandAndModel.get(0));
carMain.setCarModel(brandAndModel.get(1));
//判断是否仅填入了品牌
if(brandAndModel.size()>1){
//填入了型号
carMain.setCarModel(brandAndModel.get(1));
}else {
carMain.setCarModel("");
}
//todo 计算下次保养时间下次保养里程下次年检时间保险到期时间
baseMapper.updateById(carMain);
return CommonResult.success("修改成功");
}

View File

@ -0,0 +1,56 @@
package cn.iocoder.yudao.module.custom.service.impl;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.custom.entity.PropertyDealItemDO;
import cn.iocoder.yudao.module.custom.mapper.PropertyDealItemMapper;
import cn.iocoder.yudao.module.custom.service.PropertyDealItemService;
import cn.iocoder.yudao.module.custom.vo.PropertyDealItemReqVO;
import cn.iocoder.yudao.module.custom.vo.PropertyDealItemRespVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
/**
* 企业管理-资产处置子 Service 实现类
*
* @author 后台管理员
*/
@Service
@Validated
public class PropertyDealItemServiceImpl extends ServiceImpl<PropertyDealItemMapper, PropertyDealItemDO> implements PropertyDealItemService {
@Override
public String createPropertyDealItem(PropertyDealItemReqVO createReqVO) {
// 插入
PropertyDealItemDO propertyDealItem = BeanUtils.toBean(createReqVO, PropertyDealItemDO.class);
baseMapper.insert(propertyDealItem);
// 返回
return propertyDealItem.getId();
}
@Override
public void updatePropertyDealItem(PropertyDealItemReqVO updateReqVO) {
// 更新
PropertyDealItemDO updateObj = BeanUtils.toBean(updateReqVO, PropertyDealItemDO.class);
baseMapper.updateById(updateObj);
}
@Override
public void deletePropertyDealItem(String id) {
// 删除
baseMapper.deleteById(id);
}
@Override
public PropertyDealItemDO getPropertyDealItem(String id) {
return baseMapper.selectById(id);
}
@Override
public IPage<PropertyDealItemRespVO> getPropertyDealItemPage(PropertyDealItemReqVO pageReqVO) {
return baseMapper.selectPage(pageReqVO);
}
}

View File

@ -0,0 +1,57 @@
package cn.iocoder.yudao.module.custom.service.impl;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.custom.entity.PropertyDealDO;
import cn.iocoder.yudao.module.custom.mapper.PropertyDealMapper;
import cn.iocoder.yudao.module.custom.service.PropertyDealService;
import cn.iocoder.yudao.module.custom.vo.PropertyDealReqVO;
import cn.iocoder.yudao.module.custom.vo.PropertyDealRespVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
/**
* 企业管理-资产处置单/变动单 Service 实现类
*
* @author 后台管理员
*/
@Service
@Validated
public class PropertyDealServiceImpl extends ServiceImpl<PropertyDealMapper,PropertyDealDO> implements PropertyDealService {
@Override
public String createPropertyDeal(PropertyDealReqVO createReqVO) {
// 插入
PropertyDealDO propertyDeal = BeanUtils.toBean(createReqVO, PropertyDealDO.class);
baseMapper.insert(propertyDeal);
// 返回
return propertyDeal.getId();
}
@Override
public void updatePropertyDeal(PropertyDealReqVO updateReqVO) {
// 更新
PropertyDealDO updateObj = BeanUtils.toBean(updateReqVO, PropertyDealDO.class);
baseMapper.updateById(updateObj);
}
@Override
public void deletePropertyDeal(String id) {
// 删除
baseMapper.deleteById(id);
}
@Override
public PropertyDealDO getPropertyDeal(String id) {
return baseMapper.selectById(id);
}
@Override
public IPage<PropertyDealRespVO> getPropertyDealPage(PropertyDealReqVO pageReqVO) {
return baseMapper.selectPage(pageReqVO);
}
}

View File

@ -0,0 +1,56 @@
package cn.iocoder.yudao.module.custom.service.impl;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.custom.entity.PropertyKeep;
import cn.iocoder.yudao.module.custom.mapper.PropertyKeepMapper;
import cn.iocoder.yudao.module.custom.service.PropertyKeepService;
import cn.iocoder.yudao.module.custom.vo.PropertyKeepReqVO;
import cn.iocoder.yudao.module.custom.vo.PropertyKeepRespVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
/**
* 资产维修/保养记录 Service 实现类
*
* @author 后台管理员
*/
@Service
@Validated
public class PropertyKeepServiceImpl extends ServiceImpl<PropertyKeepMapper, PropertyKeep> implements PropertyKeepService {
@Override
public String createPropertyKeep(PropertyKeepReqVO createReqVO) {
// 插入
PropertyKeep propertyKeep = BeanUtils.toBean(createReqVO, PropertyKeep.class);
baseMapper.insert(propertyKeep);
// 返回
return propertyKeep.getId();
}
@Override
public void updatePropertyKeep(PropertyKeepReqVO updateReqVO) {
// 更新
PropertyKeep updateObj = BeanUtils.toBean(updateReqVO, PropertyKeep.class);
baseMapper.updateById(updateObj);
}
@Override
public void deletePropertyKeep(String id) {
// 删除
baseMapper.deleteById(id);
}
@Override
public PropertyKeep getPropertyKeep(String id) {
return baseMapper.selectById(id);
}
@Override
public IPage<PropertyKeepRespVO> getPropertyKeepPage(PropertyKeepReqVO pageReqVO) {
return baseMapper.selectPage(pageReqVO);
}
}

View File

@ -0,0 +1,57 @@
package cn.iocoder.yudao.module.custom.service.impl;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.custom.entity.PropertyPosDO;
import cn.iocoder.yudao.module.custom.mapper.PropertyPosMapper;
import cn.iocoder.yudao.module.custom.service.PropertyPosService;
import cn.iocoder.yudao.module.custom.vo.PropertyPosReqVO;
import cn.iocoder.yudao.module.custom.vo.PropertyPosRespVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
/**
* 企业管理-资产存放位置 Service 实现类
*
* @author vinjor-m
*/
@Service
@Validated
public class PropertyPosServiceImpl extends ServiceImpl<PropertyPosMapper, PropertyPosDO> implements PropertyPosService {
@Override
public String createPropertyPos(PropertyPosReqVO createReqVO) {
// 插入
PropertyPosDO propertyPos = BeanUtils.toBean(createReqVO, PropertyPosDO.class);
baseMapper.insert(propertyPos);
// 返回
return propertyPos.getId();
}
@Override
public void updatePropertyPos(PropertyPosReqVO updateReqVO) {
// 更新
PropertyPosDO updateObj = BeanUtils.toBean(updateReqVO, PropertyPosDO.class);
baseMapper.updateById(updateObj);
}
@Override
public void deletePropertyPos(String id) {
// 删除
baseMapper.deleteById(id);
}
@Override
public PropertyPosDO getPropertyPos(String id) {
return baseMapper.selectById(id);
}
@Override
public IPage<PropertyPosRespVO> getPropertyPosPage(PropertyPosReqVO pageReqVO) {
return baseMapper.selectPage(pageReqVO);
}
}

View File

@ -0,0 +1,55 @@
package cn.iocoder.yudao.module.custom.service.impl;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.custom.entity.Property;
import cn.iocoder.yudao.module.custom.mapper.PropertyMapper;
import cn.iocoder.yudao.module.custom.service.PropertyService;
import cn.iocoder.yudao.module.custom.vo.PropertyReqVO;
import cn.iocoder.yudao.module.custom.vo.PropertyRespVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
/**
* 企业管理-资产 Service 实现类
*
* @author 后台管理员
*/
@Service
@Validated
public class PropertyServiceImpl extends ServiceImpl<PropertyMapper, Property> implements PropertyService {
@Override
public String createProperty(PropertyReqVO createReqVO) {
// 插入
Property property = BeanUtils.toBean(createReqVO, Property.class);
baseMapper.insert(property);
// 返回
return property.getId();
}
@Override
public void updateProperty(PropertyReqVO updateReqVO) {
// 更新
Property updateObj = BeanUtils.toBean(updateReqVO, Property.class);
baseMapper.updateById(updateObj);
}
@Override
public void deleteProperty(String id) {
// 删除
baseMapper.deleteById(id);
}
@Override
public Property getProperty(String id) {
return baseMapper.selectById(id);
}
@Override
public IPage<PropertyRespVO> getPropertyPage(PropertyReqVO pageReqVO) {
return baseMapper.selectPage(pageReqVO);
}
}

View File

@ -0,0 +1,63 @@
package cn.iocoder.yudao.module.custom.vo;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "管理后台 - 企业管理-资产处置子分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class PropertyDealItemReqVO extends PageParam {
@Schema(description = "主键标识", requiredMode = Schema.RequiredMode.REQUIRED, example = "18095")
private String id;
@Schema(description = "处置单/变动单id", example = "12936")
private String dealId;
@Schema(description = "资产id", example = "14421")
private String propertyId;
@Schema(description = "处置方式")
private String dealWay;
@Schema(description = "原企业id", example = "17291")
private String oldCorpId;
@Schema(description = "调入企业id", example = "21009")
private String corpId;
@Schema(description = "原部门id", example = "23846")
private Long oldDeptId;
@Schema(description = "调入部门id", example = "3881")
private Long deptId;
@Schema(description = "原存放地id", example = "8837")
private String oldPosId;
@Schema(description = "调入存放地id", example = "28147")
private String posId;
@Schema(description = "原使用人id", example = "23983")
private Long oldUserId;
@Schema(description = "调入使用人id", example = "918")
private Long userId;
@Schema(description = "备注", example = "你说的对")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
}

View File

@ -0,0 +1,74 @@
package cn.iocoder.yudao.module.custom.vo;
import cn.iocoder.yudao.framework.excel.core.annotations.DictFormat;
import cn.iocoder.yudao.framework.excel.core.convert.DictConvert;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.time.LocalDateTime;
@Schema(description = "管理后台 - 企业管理-资产处置子 Response VO")
@Data
@ExcelIgnoreUnannotated
public class PropertyDealItemRespVO {
@Schema(description = "主键标识", requiredMode = Schema.RequiredMode.REQUIRED, example = "18095")
@ExcelProperty("主键标识")
private String id;
@Schema(description = "处置单/变动单id", example = "12936")
@ExcelProperty("处置单/变动单id")
private String dealId;
@Schema(description = "资产id", example = "14421")
@ExcelProperty("资产id")
private String propertyId;
@Schema(description = "处置方式")
@ExcelProperty(value = "处置方式", converter = DictConvert.class)
@DictFormat("company_deal_way") // TODO 代码优化建议设置到对应的 DictTypeConstants 枚举类中
private String dealWay;
@Schema(description = "原企业id", example = "17291")
@ExcelProperty("原企业id")
private String oldCorpId;
@Schema(description = "调入企业id", example = "21009")
@ExcelProperty("调入企业id")
private String corpId;
@Schema(description = "原部门id", example = "23846")
@ExcelProperty("原部门id")
private Long oldDeptId;
@Schema(description = "调入部门id", example = "3881")
@ExcelProperty("调入部门id")
private Long deptId;
@Schema(description = "原存放地id", example = "8837")
@ExcelProperty("原存放地id")
private String oldPosId;
@Schema(description = "调入存放地id", example = "28147")
@ExcelProperty("调入存放地id")
private String posId;
@Schema(description = "原使用人id", example = "23983")
@ExcelProperty("原使用人id")
private Long oldUserId;
@Schema(description = "调入使用人id", example = "918")
@ExcelProperty("调入使用人id")
private Long userId;
@Schema(description = "备注", example = "你说的对")
@ExcelProperty("备注")
private String remark;
@Schema(description = "创建时间")
@ExcelProperty("创建时间")
private LocalDateTime createTime;
}

View File

@ -0,0 +1,44 @@
package cn.iocoder.yudao.module.custom.vo;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDate;
import java.time.LocalDateTime;
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "管理后台 - 企业管理-资产处置单/变动单分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class PropertyDealReqVO extends PageParam {
@Schema(description = "主键标识", requiredMode = Schema.RequiredMode.REQUIRED, example = "18095")
private String id;
@Schema(description = "企业idbase_company表中的id", example = "21595")
private String corpId;
@Schema(description = "部门idsystem_dept表中的id用来做数据权限控制", example = "19510")
private Long deptId;
@Schema(description = "数据类型", example = "1")
private String dataType;
@Schema(description = "处置/变动单号")
private String dealNo;
@Schema(description = "处置/变动日期")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDate[] dealDate;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
}

View File

@ -0,0 +1,47 @@
package cn.iocoder.yudao.module.custom.vo;
import cn.iocoder.yudao.framework.excel.core.annotations.DictFormat;
import cn.iocoder.yudao.framework.excel.core.convert.DictConvert;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.time.LocalDate;
import java.time.LocalDateTime;
@Schema(description = "管理后台 - 企业管理-资产处置单/变动单 Response VO")
@Data
@ExcelIgnoreUnannotated
public class PropertyDealRespVO {
@Schema(description = "主键标识", requiredMode = Schema.RequiredMode.REQUIRED, example = "29577")
@ExcelProperty("主键标识")
private String id;
@Schema(description = "企业idbase_company表中的id", example = "21595")
@ExcelProperty("企业idbase_company表中的id")
private String corpId;
@Schema(description = "部门idsystem_dept表中的id用来做数据权限控制", example = "19510")
@ExcelProperty("部门idsystem_dept表中的id用来做数据权限控制")
private Long deptId;
@Schema(description = "数据类型", example = "1")
@ExcelProperty(value = "数据类型", converter = DictConvert.class)
@DictFormat("property_data_type") // TODO 代码优化建议设置到对应的 DictTypeConstants 枚举类中
private String dataType;
@Schema(description = "处置/变动单号")
@ExcelProperty("处置/变动单号")
private String dealNo;
@Schema(description = "处置/变动日期")
@ExcelProperty("处置/变动日期")
private LocalDate dealDate;
@Schema(description = "创建时间")
@ExcelProperty("创建时间")
private LocalDateTime createTime;
}

View File

@ -0,0 +1,41 @@
package cn.iocoder.yudao.module.custom.vo;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDate;
import java.time.LocalDateTime;
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY;
@Schema(description = "管理后台 - 资产维修/保养记录分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class PropertyKeepReqVO extends PageParam {
@Schema(description = "主键标识", requiredMode = Schema.RequiredMode.REQUIRED, example = "22729")
private String id;
@Schema(description = "资产id", example = "20917")
private String propertyId;
@Schema(description = "维修/保养日期")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY)
private LocalDate keepDate;
@Schema(description = "备注", example = "你说的对")
private String remark;
@Schema(description = "附件urls")
private String fileUrls;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY)
private LocalDateTime createTime;
}

View File

@ -0,0 +1,20 @@
package cn.iocoder.yudao.module.custom.vo;
import cn.iocoder.yudao.module.custom.entity.Property;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.time.LocalDateTime;
@Schema(description = "管理后台 - 资产维修/保养记录 Response VO")
@Data
@ExcelIgnoreUnannotated
public class PropertyKeepRespVO extends Property {
@Schema(description = "创建时间")
@ExcelProperty("创建时间")
private LocalDateTime createTime;
}

View File

@ -0,0 +1,46 @@
package cn.iocoder.yudao.module.custom.vo;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import org.springframework.format.annotation.DateTimeFormat;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "管理后台 - 企业管理-资产存放位置分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class PropertyPosReqVO extends PageParam {
@Schema(description = "主键标识", requiredMode = Schema.RequiredMode.REQUIRED, example = "18095")
private String id;
@Schema(description = "企业idbase_company表中的id", example = "5018")
private String corpId;
@Schema(description = "部门idsystem_dept表中的id用来做数据权限控制", example = "25943")
private Long deptId;
@Schema(description = "存放地名称", example = "王五")
private String posName;
@Schema(description = "存放地地址")
private String address;
@Schema(description = "面积")
private BigDecimal area;
@Schema(description = "存放类型", example = "2")
private String depositType;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
}

View File

@ -0,0 +1,51 @@
package cn.iocoder.yudao.module.custom.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.math.BigDecimal;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import com.alibaba.excel.annotation.*;
import cn.iocoder.yudao.framework.excel.core.annotations.DictFormat;
import cn.iocoder.yudao.framework.excel.core.convert.DictConvert;
@Schema(description = "管理后台 - 企业管理-资产存放位置 Response VO")
@Data
@ExcelIgnoreUnannotated
public class PropertyPosRespVO {
@Schema(description = "主键标识", requiredMode = Schema.RequiredMode.REQUIRED, example = "19336")
@ExcelProperty("主键标识")
private String id;
@Schema(description = "企业idbase_company表中的id", example = "5018")
@ExcelProperty("企业idbase_company表中的id")
private String corpId;
@Schema(description = "部门idsystem_dept表中的id用来做数据权限控制", example = "25943")
@ExcelProperty("部门idsystem_dept表中的id用来做数据权限控制")
private Long deptId;
@Schema(description = "存放地名称", example = "王五")
@ExcelProperty("存放地名称")
private String posName;
@Schema(description = "存放地地址")
@ExcelProperty("存放地地址")
private String address;
@Schema(description = "面积")
@ExcelProperty("面积")
private BigDecimal area;
@Schema(description = "存放类型", example = "2")
@ExcelProperty(value = "存放类型", converter = DictConvert.class)
@DictFormat("company_deposit_type") // TODO 代码优化建议设置到对应的 DictTypeConstants 枚举类中
private String depositType;
@Schema(description = "创建时间")
@ExcelProperty("创建时间")
private LocalDateTime createTime;
}

View File

@ -0,0 +1,115 @@
package cn.iocoder.yudao.module.custom.vo;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import org.springframework.format.annotation.DateTimeFormat;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY;
@Schema(description = "管理后台 - 企业管理-资产分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class PropertyReqVO extends PageParam {
@Schema(description = "主键标识", requiredMode = Schema.RequiredMode.REQUIRED, example = "22729")
private String id;
@Schema(description = "企业id", example = "9124")
private String corpId;
@Schema(description = "部门id", example = "2480")
private Long deptId;
@Schema(description = "存放位置", example = "7241")
private String posId;
@Schema(description = "使用人id", example = "6217")
private String userId;
@Schema(description = "资产编号")
private String propNo;
@Schema(description = "资产名称", example = "芋艿")
private String propName;
@Schema(description = "资产分类")
private String propCatg;
@Schema(description = "预计使用年限")
private Integer useYear;
@Schema(description = "价值类型", example = "01")
private String costType;
@Schema(description = "资产数量")
private Integer propNum;
@Schema(description = "资产原值(元)")
private BigDecimal costTotal;
@Schema(description = "资产状态", example = "02")
private String propStatus;
@Schema(description = "品牌")
private String brand;
@Schema(description = "规格型号")
private String spec;
@Schema(description = "生产厂家")
private String factory;
@Schema(description = "出场序列号/编号")
private String serialNo;
@Schema(description = "数量计量单位")
private String unit;
@Schema(description = "取得日期")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY)
private LocalDate[] getDate;
@Schema(description = "出厂日期")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY)
private LocalDate[] prodDate;
@Schema(description = "供应商")
private String supplier;
@Schema(description = "启用日期")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY)
private LocalDate[] openDate;
@Schema(description = "净值(元)")
private BigDecimal netValue;
@Schema(description = "凭证号")
private String voucherNo;
@Schema(description = "维修/保养周期单位", example = "2")
private String keepCycleType;
@Schema(description = "维修/保养周期")
private Integer keepCycle;
@Schema(description = "上次维修/保养日期")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY)
private LocalDate[] lastKeepDate;
@Schema(description = "下次维修/保养日期")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY)
private LocalDate[] nextKeepDate;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY)
private LocalDateTime createTime;
}

View File

@ -0,0 +1,20 @@
package cn.iocoder.yudao.module.custom.vo;
import cn.iocoder.yudao.module.custom.entity.Property;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.time.LocalDateTime;
@Schema(description = "管理后台 - 企业管理-资产 Response VO")
@Data
@ExcelIgnoreUnannotated
public class PropertyRespVO extends Property {
@Schema(description = "创建时间")
@ExcelProperty("创建时间")
private LocalDateTime createTime;
}

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.iocoder.yudao.module.company.dal.mysql.propertydealitem.PropertyDealItemMapper">
<!--
一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。
无法满足的场景,例如说多表关联查询,才使用 XML 编写 SQL。
代码生成器暂时只生成 Mapper XML 文件本身,更多推荐 MybatisX 快速开发插件来生成查询。
文档可见https://www.iocoder.cn/MyBatis/x-plugins/
-->
</mapper>

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.iocoder.yudao.module.company.dal.mysql.propertydeal.PropertyDealMapper">
<!--
一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。
无法满足的场景,例如说多表关联查询,才使用 XML 编写 SQL。
代码生成器暂时只生成 Mapper XML 文件本身,更多推荐 MybatisX 快速开发插件来生成查询。
文档可见https://www.iocoder.cn/MyBatis/x-plugins/
-->
</mapper>

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.iocoder.yudao.module.company.dal.mysql.propertykeep.PropertyKeepMapper">
<!--
一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。
无法满足的场景,例如说多表关联查询,才使用 XML 编写 SQL。
代码生成器暂时只生成 Mapper XML 文件本身,更多推荐 MybatisX 快速开发插件来生成查询。
文档可见https://www.iocoder.cn/MyBatis/x-plugins/
-->
</mapper>

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.iocoder.yudao.module.company.dal.mysql.property.PropertyMapper">
<!--
一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。
无法满足的场景,例如说多表关联查询,才使用 XML 编写 SQL。
代码生成器暂时只生成 Mapper XML 文件本身,更多推荐 MybatisX 快速开发插件来生成查询。
文档可见https://www.iocoder.cn/MyBatis/x-plugins/
-->
</mapper>

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.iocoder.yudao.module.company.dal.mysql.property.PropertyPosMapper">
<!--
一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。
无法满足的场景,例如说多表关联查询,才使用 XML 编写 SQL。
代码生成器暂时只生成 Mapper XML 文件本身,更多推荐 MybatisX 快速开发插件来生成查询。
文档可见https://www.iocoder.cn/MyBatis/x-plugins/
-->
</mapper>