OMS-GW-企业单位

This commit is contained in:
zhaoqing
2026-05-07 11:38:22 +08:00
parent c5a2d458df
commit 03a9c47db5
9 changed files with 434 additions and 0 deletions
@@ -0,0 +1,30 @@
package com.mhd.oms.application.service.erpEnterpriseUnit;
import com.mhd.common.core.web.page.TableDataInfo;
import com.mhd.oms.domain.erpEnterpriseUnit.repository.mapper.ErpEnterpriseUnitMapper;
import com.mhd.oms.domain.erpEnterpriseUnit.repository.po.ErpEnterpriseUnitPO;
import com.mhd.oms.domain.erpEnterpriseUnit.repository.todo.ErpEnterpriseUnitDO;
import com.mhd.oms.interfaces.dto.erpEnterpriseUnit.ErpEnterpriseUnitDTO;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
@Service
@Slf4j
public class ErpEnterpriseUnitApplicationService {
@Resource
private ErpEnterpriseUnitMapper erpEnterpriseUnitMapper;
public TableDataInfo queryList(ErpEnterpriseUnitDO erpEnterpriseUnitDO) {
List<ErpEnterpriseUnitPO> list = erpEnterpriseUnitMapper.queryList(erpEnterpriseUnitDO);
TableDataInfo tableDataInfo = new TableDataInfo();
tableDataInfo.setData(list);
tableDataInfo.setTotal(list.size());
tableDataInfo.setCode(200);
return tableDataInfo;
}
}
@@ -0,0 +1,66 @@
package com.mhd.oms.domain.erpEnterpriseUnit.entity;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
@Data
@ApiModel(description = "企业单位")
public class ErpEnterpriseUnit {
@ApiModelProperty(value = "主键ID")
private Long id;
@ApiModelProperty(value = "ERP单位编码")
private String erpCode;
@ApiModelProperty(value = "ERP单位名称")
private String erpName;
@ApiModelProperty(value = "推送状态:1-未推送,2-推送中,3-推送成功,4-推送失败")
private Integer pushStatus;
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "推送时间")
private Date pushTime;
@ApiModelProperty(value = "推送人")
private String pushBy;
@ApiModelProperty(value = "所属组织ID")
private Long organizationId;
@ApiModelProperty(value = "一级组织ID")
private Long topOrganizationId;
@ApiModelProperty(value = "所属组织名称")
private String organizationName;
@ApiModelProperty(value = "创建人")
private Long createBy;
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "创建时间")
private Date createTime;
@ApiModelProperty(value = "更新人")
private Long updateBy;
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "更新时间")
private Date updateTime;
@ApiModelProperty(value = "删除标记:1-正常,0-删除")
private Integer delFlag;
}
@@ -0,0 +1,22 @@
package com.mhd.oms.domain.erpEnterpriseUnit.repository.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.mhd.oms.domain.erpEnterpriseUnit.entity.ErpEnterpriseUnit;
import com.mhd.oms.domain.erpEnterpriseUnit.repository.po.ErpEnterpriseUnitPO;
import com.mhd.oms.domain.erpEnterpriseUnit.repository.todo.ErpEnterpriseUnitDO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@Mapper
public interface ErpEnterpriseUnitMapper extends BaseMapper<ErpEnterpriseUnit> {
/**
*
* @param erpEnterpriseUnitDO
* @return
*/
List<ErpEnterpriseUnitPO> queryList(@Param("erpEnterpriseUnitDO")ErpEnterpriseUnitDO erpEnterpriseUnitDO);
}
@@ -0,0 +1,68 @@
package com.mhd.oms.domain.erpEnterpriseUnit.repository.po;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
@Data
@ApiModel(description = "企业单位PO")
public class ErpEnterpriseUnitPO extends BaseVOEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "主键ID")
private Long id;
@ApiModelProperty(value = "ERP单位编码")
private String erpCode;
@ApiModelProperty(value = "ERP单位名称")
private String erpName;
@ApiModelProperty(value = "推送状态:1-未推送,2-推送中,3-推送成功,4-推送失败")
private Integer pushStatus;
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "推送时间")
private Date pushTime;
@ApiModelProperty(value = "推送人")
private String pushBy;
@ApiModelProperty(value = "所属组织ID")
private Long organizationId;
@ApiModelProperty(value = "一级组织ID")
private Long topOrganizationId;
@ApiModelProperty(value = "所属组织名称")
private String organizationName;
@ApiModelProperty(value = "创建人")
private Long createBy;
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "创建时间")
private Date createTime;
@ApiModelProperty(value = "更新人")
private Long updateBy;
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "更新时间")
private Date updateTime;
@ApiModelProperty(value = "删除标记:1-正常,0-删除")
private Integer delFlag;
}
@@ -0,0 +1,56 @@
package com.mhd.oms.domain.erpEnterpriseUnit.repository.todo;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class ErpEnterpriseUnitDO extends BaseVOEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "主键ID")
private Long id;
@ApiModelProperty(value = "ERP单位编码")
private String erpCode;
@ApiModelProperty(value = "ERP单位名称")
private String erpName;
@ApiModelProperty(value = "推送状态:1-未推送,2-推送中,3-推送成功,4-推送失败")
private Integer pushStatus;
@ApiModelProperty(value = "推送时间")
private String pushTime;
@ApiModelProperty(value = "推送时间起")
private String pushTimeFrom;
@ApiModelProperty(value = "推送时间止")
private String pushTimeTo;
@ApiModelProperty(value = "推送人")
private String pushBy;
@ApiModelProperty(value = "所属组织ID")
private Long organizationId;
@ApiModelProperty(value = "所属组织名称")
private String organizationName;
@ApiModelProperty(value = "创建时间起")
private String createTimeFrom;
@ApiModelProperty(value = "创建时间止")
private String createTimeTo;
@ApiModelProperty(value = "页码")
private Integer pageNum = 1;
@ApiModelProperty(value = "每页数量")
private Integer pageSize = 10;
}
@@ -0,0 +1,56 @@
package com.mhd.oms.interfaces.assembler.erpEnterpriseUnit;
import cn.hutool.core.util.ObjectUtil;
import com.mhd.common.core.exception.digitalLogisticsException.DigitalLogisticsException;
import com.mhd.common.core.exception.digitalLogisticsException.UserError;
import com.mhd.common.core.utils.IgnoreNullUtil;
import com.mhd.common.security.utils.SecurityUtils;
import com.mhd.oms.domain.erpEnterpriseUnit.repository.todo.ErpEnterpriseUnitDO;
import com.mhd.oms.interfaces.dto.erpEnterpriseUnit.ErpEnterpriseUnitDTO;
import com.mhd.system.api.model.LoginUser;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Component;
import java.util.Date;
@Component
public class ErpEnterpriseUnitAssembler {
/**
* 转换实体
*/
public ErpEnterpriseUnitDO toDO(ErpEnterpriseUnitDTO erpEnterpriseUnitDTO) {
ErpEnterpriseUnitDO erpEnterpriseUnitDO = new ErpEnterpriseUnitDO();
BeanUtils.copyProperties(erpEnterpriseUnitDTO, erpEnterpriseUnitDO, IgnoreNullUtil.getNullPropertyNames(erpEnterpriseUnitDTO));
LoginUser loginUser = SecurityUtils.getLoginUser();
if (ObjectUtil.isNull(loginUser)) {
throw new DigitalLogisticsException(UserError.TIMEOUT);
}
String userName = loginUser.getUsername();
Long userId = loginUser.getUserid();
if (erpEnterpriseUnitDTO.getId() != null) {
if (userId != null) {
erpEnterpriseUnitDO.setUpdateBy(userId);
} else {
erpEnterpriseUnitDO.setUpdateBy(new Long("0"));
}
erpEnterpriseUnitDO.setUpdateByName(userName);
erpEnterpriseUnitDO.setUpdateTime(new Date());
} else {
if (userId != null) {
erpEnterpriseUnitDO.setCreateBy(userId);
erpEnterpriseUnitDO.setUpdateBy(userId);
} else {
erpEnterpriseUnitDO.setCreateBy(new Long("0"));
erpEnterpriseUnitDO.setUpdateBy(new Long("0"));
}
erpEnterpriseUnitDO.setCreateByName(userName);
erpEnterpriseUnitDO.setUpdateByName(userName);
erpEnterpriseUnitDO.setCreateTime(new Date());
erpEnterpriseUnitDO.setUpdateTime(new Date());
erpEnterpriseUnitDO.setDelFlag(1);
}
return erpEnterpriseUnitDO;
}
}
@@ -0,0 +1,54 @@
package com.mhd.oms.interfaces.dto.erpEnterpriseUnit;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel(description = "企业单位DTO")
public class ErpEnterpriseUnitDTO {
@ApiModelProperty(value = "主键ID")
private Long id;
@ApiModelProperty(value = "ERP单位编码")
private String erpCode;
@ApiModelProperty(value = "ERP单位名称")
private String erpName;
@ApiModelProperty(value = "推送状态:1-未推送,2-推送中,3-推送成功,4-推送失败")
private Integer pushStatus;
@ApiModelProperty(value = "推送时间")
private String pushTime;
@ApiModelProperty(value = "推送时间起")
private String pushTimeFrom;
@ApiModelProperty(value = "推送时间止")
private String pushTimeTo;
@ApiModelProperty(value = "推送人")
private String pushBy;
@ApiModelProperty(value = "所属组织ID")
private Long organizationId;
@ApiModelProperty(value = "所属组织名称")
private String organizationName;
@ApiModelProperty(value = "创建时间起")
private String createTimeFrom;
@ApiModelProperty(value = "创建时间止")
private String createTimeTo;
@ApiModelProperty(value = "页码")
private Integer pageNum = 1;
@ApiModelProperty(value = "每页数量")
private Integer pageSize = 10;
}
@@ -0,0 +1,43 @@
package com.mhd.oms.interfaces.facade.erpEnterpriseUnit;
import com.mhd.common.core.web.controller.BaseController;
import com.mhd.common.core.web.page.TableDataInfo;
import com.mhd.oms.application.service.erpEnterpriseUnit.ErpEnterpriseUnitApplicationService;
import com.mhd.oms.domain.erpEnterpriseUnit.repository.todo.ErpEnterpriseUnitDO;
import com.mhd.oms.interfaces.assembler.erpEnterpriseUnit.ErpEnterpriseUnitAssembler;
import com.mhd.oms.interfaces.dto.erpEnterpriseUnit.ErpEnterpriseUnitDTO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
@Api(tags = "企业单位管理")
@RestController
@RequestMapping("/erpEnterpriseUnitApi")
@Slf4j
public class ErpEnterpriseUnitApi extends BaseController {
@Resource
private ErpEnterpriseUnitApplicationService erpEnterpriseUnitApplicationService;
@Resource
private ErpEnterpriseUnitAssembler erpEnterpriseUnitAssembler;
@ApiOperation("查询企业单位列表")
@GetMapping("/list")
public TableDataInfo list(ErpEnterpriseUnitDTO erpEnterpriseUnitDTO){
ErpEnterpriseUnitDO erpEnterpriseUnitDO = erpEnterpriseUnitAssembler.toDO(erpEnterpriseUnitDTO);
startPage();
return erpEnterpriseUnitApplicationService.queryList(erpEnterpriseUnitDO);
}
}
@@ -0,0 +1,39 @@
<?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="com.mhd.oms.domain.erpEnterpriseUnit.repository.mapper.ErpEnterpriseUnitMapper">
<select id="queryList" resultType="com.mhd.oms.domain.erpEnterpriseUnit.repository.po.ErpEnterpriseUnitPO">
SELECT *
FROM erp_enterprise_unit
WHERE del_flag = 1
<if test="erpEnterpriseUnitDO.erpCode != null and erpEnterpriseUnitDO.erpCode != ''">
AND erp_code LIKE CONCAT('%', #{do.erpCode}, '%')
</if>
<if test="erpEnterpriseUnitDO.erpName != null and erpEnterpriseUnitDO.erpName != ''">
AND erp_name LIKE CONCAT('%', #{do.erpName}, '%')
</if>
<if test="erpEnterpriseUnitDO.pushStatus != null">
AND push_status = #{do.pushStatus}
</if>
<if test="erpEnterpriseUnitDO.pushTimeFrom != null and erpEnterpriseUnitDO.pushTimeFrom != ''">
AND DATE_FORMAT(push_time, '%Y-%m-%d') &gt;= #{do.pushTimeFrom}
</if>
<if test="erpEnterpriseUnitDO.pushTimeTo != null and erpEnterpriseUnitDO.pushTimeTo != ''">
AND DATE_FORMAT(push_time, '%Y-%m-%d') &lt;= #{do.pushTimeTo}
</if>
<if test="erpEnterpriseUnitDO.organizationId != null">
AND organization_id = #{do.organizationId}
</if>
<if test="erpEnterpriseUnitDO.createTimeFrom != null and erpEnterpriseUnitDO.createTimeFrom != ''">
AND DATE_FORMAT(create_time, '%Y-%m-%d') &gt;= #{do.createTimeFrom}
</if>
<if test="erpEnterpriseUnitDO.createTimeTo != null and erpEnterpriseUnitDO.createTimeTo != ''">
AND DATE_FORMAT(create_time, '%Y-%m-%d') &lt;= #{do.createTimeTo}
</if>
ORDER BY create_time DESC
</select>
</mapper>