first commit
This commit is contained in:
+98
@@ -0,0 +1,98 @@
|
||||
package com.mhd.basic.domain.abnormalAddressBook.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
import java.math.BigDecimal;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
|
||||
|
||||
/**
|
||||
* 异常匹配地址簿对象 abnormal_address_book
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-07-23
|
||||
*/
|
||||
|
||||
@Data
|
||||
public class AbnormalAddressBook extends BaseVOEntity{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("异常匹配地址簿id")
|
||||
@TableId(type = IdType.AUTO)
|
||||
private Long abnormalAddressBookId;
|
||||
|
||||
@ApiModelProperty("一级组织表id")
|
||||
@Excel(name = "一级组织表id")
|
||||
private Long topOrganizationId;
|
||||
|
||||
@ApiModelProperty("id")
|
||||
@Excel(name = "id")
|
||||
private Long organizationId;
|
||||
|
||||
@ApiModelProperty("组织表name")
|
||||
@Excel(name = "组织表name")
|
||||
private String organizationName;
|
||||
|
||||
@ApiModelProperty("用户ID")
|
||||
@Excel(name = "用户ID")
|
||||
private Long userId;
|
||||
|
||||
@ApiModelProperty("地址类型(1-装货签到,2-卸货签到)")
|
||||
@Excel(name = "地址类型", readConverterExp = "1=-装货签到,2-卸货签到")
|
||||
private Integer addressSignType;
|
||||
|
||||
@ApiModelProperty("货源单id")
|
||||
@Excel(name = "货源单id")
|
||||
private String orderId;
|
||||
|
||||
@ApiModelProperty("运单id")
|
||||
@Excel(name = "运单id")
|
||||
private String transportationId;
|
||||
|
||||
@ApiModelProperty("运输单号")
|
||||
@Excel(name = "运输单号")
|
||||
private String transportationNumber;
|
||||
|
||||
@ApiModelProperty("货源单号")
|
||||
@Excel(name = "货源单号")
|
||||
private String goodsNumber;
|
||||
|
||||
@ApiModelProperty("省市区编码")
|
||||
@Excel(name = "省市区编码")
|
||||
private String actualAreaId;
|
||||
|
||||
@ApiModelProperty("省市区名称")
|
||||
@Excel(name = "省市区名称")
|
||||
private String actualAreaName;
|
||||
|
||||
@ApiModelProperty("原地址")
|
||||
@Excel(name = "原地址")
|
||||
private String originalAddress;
|
||||
|
||||
@ApiModelProperty("实际签到地址")
|
||||
@Excel(name = "实际签到地址")
|
||||
private String actualAddress;
|
||||
|
||||
@ApiModelProperty("实际签到地经度")
|
||||
@Excel(name = "实际签到地经度")
|
||||
private String actualLongitude;
|
||||
|
||||
@ApiModelProperty("实际签到地纬度")
|
||||
@Excel(name = "实际签到地纬度")
|
||||
private String actualLatitude;
|
||||
|
||||
@ApiModelProperty("审核人用户ID")
|
||||
@Excel(name = "审核人用户ID")
|
||||
private Long auditBy;
|
||||
|
||||
@ApiModelProperty("审核人名称")
|
||||
@Excel(name = "审核人名称")
|
||||
private String auditByName;
|
||||
|
||||
|
||||
}
|
||||
+45
@@ -0,0 +1,45 @@
|
||||
package com.mhd.basic.domain.abnormalAddressBook.repository.facade;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.mhd.basic.domain.abnormalAddressBook.entity.AbnormalAddressBook;
|
||||
import com.mhd.basic.domain.abnormalAddressBook.repository.po.AbnormalAddressBookPO;
|
||||
import com.mhd.basic.domain.abnormalAddressBook.repository.todo.AbnormalAddressBookDO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 异常匹配地址簿Service接口
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-07-23
|
||||
*/
|
||||
public interface IAbnormalAddressBookService extends IService<AbnormalAddressBook>
|
||||
{
|
||||
/**
|
||||
* 分页查询异常匹配地址簿列表
|
||||
*/
|
||||
public List<AbnormalAddressBookPO> queryList(AbnormalAddressBookDO abnormalAddressBookDO);
|
||||
|
||||
/**
|
||||
* 新增异常匹配地址簿
|
||||
*/
|
||||
public Boolean insert(AbnormalAddressBookDO abnormalAddressBookDO);
|
||||
|
||||
/**
|
||||
* 修改异常匹配地址簿
|
||||
*/
|
||||
public Boolean update(AbnormalAddressBookDO abnormalAddressBookDO);
|
||||
|
||||
/**
|
||||
* 批量删除异常匹配地址簿
|
||||
*/
|
||||
public Boolean delete(Long[] abnormalAddressBookIds);
|
||||
|
||||
|
||||
/**
|
||||
* 查询异常匹配地址簿
|
||||
*/
|
||||
public AbnormalAddressBookPO getInfo(Long abnormalAddressBookId);
|
||||
|
||||
AbnormalAddressBookPO matchAddressBook(AbnormalAddressBookDO abnormalAddressBookDO);
|
||||
}
|
||||
+26
@@ -0,0 +1,26 @@
|
||||
package com.mhd.basic.domain.abnormalAddressBook.repository.mapper;
|
||||
|
||||
import java.util.List;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.mhd.basic.domain.abnormalAddressBook.entity.AbnormalAddressBook;
|
||||
import com.mhd.basic.domain.abnormalAddressBook.repository.po.AbnormalAddressBookPO;
|
||||
import com.mhd.basic.domain.abnormalAddressBook.repository.todo.AbnormalAddressBookDO;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
|
||||
/**
|
||||
* 异常匹配地址簿Mapper接口
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-07-23
|
||||
*/
|
||||
public interface AbnormalAddressBookMapper extends BaseMapper<AbnormalAddressBook>
|
||||
{
|
||||
/**
|
||||
* 查询异常匹配地址簿列表
|
||||
*/
|
||||
public List<AbnormalAddressBookPO> queryList(AbnormalAddressBookDO abnormalAddressBookDO);
|
||||
|
||||
|
||||
AbnormalAddressBookPO matchAddressBook(AbnormalAddressBookDO abnormalAddressBookDO);
|
||||
}
|
||||
+86
@@ -0,0 +1,86 @@
|
||||
package com.mhd.basic.domain.abnormalAddressBook.repository.persistence;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.mhd.basic.domain.abnormalAddressBook.entity.AbnormalAddressBook;
|
||||
import com.mhd.basic.domain.abnormalAddressBook.repository.facade.IAbnormalAddressBookService;
|
||||
import com.mhd.basic.domain.abnormalAddressBook.repository.mapper.AbnormalAddressBookMapper;
|
||||
import com.mhd.basic.domain.abnormalAddressBook.repository.po.AbnormalAddressBookPO;
|
||||
import com.mhd.basic.domain.abnormalAddressBook.repository.todo.AbnormalAddressBookDO;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 异常匹配地址簿Service业务层处理
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-07-23
|
||||
*/
|
||||
@Service
|
||||
public class AbnormalAddressBookImpl extends ServiceImpl<AbnormalAddressBookMapper, AbnormalAddressBook> implements IAbnormalAddressBookService{
|
||||
@Autowired
|
||||
private AbnormalAddressBookMapper abnormalAddressBookMapper;
|
||||
|
||||
/**
|
||||
* 查询异常匹配地址簿列表
|
||||
*/
|
||||
@Override
|
||||
public List<AbnormalAddressBookPO> queryList(AbnormalAddressBookDO abnormalAddressBookDO)
|
||||
{
|
||||
return abnormalAddressBookMapper.queryList(abnormalAddressBookDO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增异常匹配地址簿
|
||||
*/
|
||||
@Override
|
||||
public Boolean insert(AbnormalAddressBookDO abnormalAddressBookDO) {
|
||||
AbnormalAddressBook abnormalAddressBook = new AbnormalAddressBook();
|
||||
BeanUtils.copyProperties(abnormalAddressBookDO,abnormalAddressBook);
|
||||
return this.save(abnormalAddressBook);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改异常匹配地址簿
|
||||
*/
|
||||
@Override
|
||||
public Boolean update(AbnormalAddressBookDO abnormalAddressBookDO) {
|
||||
AbnormalAddressBook abnormalAddressBook = new AbnormalAddressBook();
|
||||
BeanUtils.copyProperties(abnormalAddressBookDO,abnormalAddressBook);
|
||||
return this.updateById(abnormalAddressBook);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除异常匹配地址簿
|
||||
*/
|
||||
@Override
|
||||
public Boolean delete(Long[] abnormalAddressBookIds ) {
|
||||
List<AbnormalAddressBook> list = new ArrayList<>();
|
||||
for (Long id : abnormalAddressBookIds) {
|
||||
AbnormalAddressBook abnormalAddressBook = new AbnormalAddressBook();
|
||||
abnormalAddressBook.setAbnormalAddressBookId(id);
|
||||
abnormalAddressBook.setDelFlag(2);
|
||||
list.add(abnormalAddressBook);
|
||||
}
|
||||
return this.updateBatchById(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改异常匹配地址簿
|
||||
*/
|
||||
@Override
|
||||
public AbnormalAddressBookPO getInfo(Long abnormalAddressBookId) {
|
||||
AbnormalAddressBook abnormalAddressBook = this.getById(abnormalAddressBookId);
|
||||
AbnormalAddressBookPO abnormalAddressBookPO = new AbnormalAddressBookPO();
|
||||
BeanUtils.copyProperties(abnormalAddressBook,abnormalAddressBookPO);
|
||||
return abnormalAddressBookPO;
|
||||
}
|
||||
|
||||
@Override
|
||||
public AbnormalAddressBookPO matchAddressBook(AbnormalAddressBookDO abnormalAddressBookDO) {
|
||||
return abnormalAddressBookMapper.matchAddressBook(abnormalAddressBookDO);
|
||||
}
|
||||
}
|
||||
+98
@@ -0,0 +1,98 @@
|
||||
package com.mhd.basic.domain.abnormalAddressBook.repository.po;
|
||||
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import java.math.BigDecimal;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
|
||||
|
||||
/**
|
||||
* 异常匹配地址簿对象 abnormal_address_book
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-07-23
|
||||
*/
|
||||
|
||||
@Data
|
||||
@ApiModel(value = "异常匹配地址簿对象", description = "异常匹配地址簿响应对象")
|
||||
public class AbnormalAddressBookPO extends BaseVOEntity{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("异常匹配地址簿id")
|
||||
private Long abnormalAddressBookId;
|
||||
|
||||
@ApiModelProperty("一级组织表id")
|
||||
@Excel(name = "一级组织表id")
|
||||
private Long topOrganizationId;
|
||||
|
||||
@ApiModelProperty("id")
|
||||
@Excel(name = "id")
|
||||
private Long organizationId;
|
||||
|
||||
@ApiModelProperty("组织表name")
|
||||
@Excel(name = "组织表name")
|
||||
private String organizationName;
|
||||
|
||||
@ApiModelProperty("用户ID")
|
||||
@Excel(name = "用户ID")
|
||||
private Long userId;
|
||||
|
||||
@ApiModelProperty("地址类型(1-装货签到,2-卸货签到)")
|
||||
@Excel(name = "地址类型", readConverterExp = "1=-装货签到,2-卸货签到")
|
||||
private Integer addressSignType;
|
||||
|
||||
@ApiModelProperty("货源单id")
|
||||
@Excel(name = "货源单id")
|
||||
private String orderId;
|
||||
|
||||
@ApiModelProperty("运单id")
|
||||
@Excel(name = "运单id")
|
||||
private String transportationId;
|
||||
|
||||
@ApiModelProperty("运输单号")
|
||||
@Excel(name = "运输单号")
|
||||
private String transportationNumber;
|
||||
|
||||
@ApiModelProperty("货源单号")
|
||||
@Excel(name = "货源单号")
|
||||
private String goodsNumber;
|
||||
|
||||
@ApiModelProperty("省市区编码")
|
||||
@Excel(name = "省市区编码")
|
||||
private String actualAreaId;
|
||||
|
||||
@ApiModelProperty("省市区名称")
|
||||
@Excel(name = "省市区名称")
|
||||
private String actualAreaName;
|
||||
|
||||
@ApiModelProperty("原地址")
|
||||
@Excel(name = "原地址")
|
||||
private String originalAddress;
|
||||
|
||||
@ApiModelProperty("实际签到地址")
|
||||
@Excel(name = "实际签到地址")
|
||||
private String actualAddress;
|
||||
|
||||
@ApiModelProperty("实际签到地经度")
|
||||
@Excel(name = "实际签到地经度")
|
||||
private String actualLongitude;
|
||||
|
||||
@ApiModelProperty("实际签到地纬度")
|
||||
@Excel(name = "实际签到地纬度")
|
||||
private String actualLatitude;
|
||||
|
||||
@ApiModelProperty("审核人用户ID")
|
||||
@Excel(name = "审核人用户ID")
|
||||
private Long auditBy;
|
||||
|
||||
@ApiModelProperty("审核人名称")
|
||||
@Excel(name = "审核人名称")
|
||||
private String auditByName;
|
||||
|
||||
|
||||
|
||||
}
|
||||
+116
@@ -0,0 +1,116 @@
|
||||
package com.mhd.basic.domain.abnormalAddressBook.repository.todo;
|
||||
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import java.math.BigDecimal;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* 异常匹配地址簿对象 abnormal_address_book
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-07-23
|
||||
*/
|
||||
|
||||
@Data
|
||||
public class AbnormalAddressBookDO extends BaseVOEntity{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("异常匹配地址簿id")
|
||||
private Long abnormalAddressBookId;
|
||||
|
||||
@ApiModelProperty("一级组织表id")
|
||||
@Excel(name = "一级组织表id")
|
||||
private Long topOrganizationId;
|
||||
|
||||
@ApiModelProperty("id")
|
||||
@Excel(name = "id")
|
||||
private Long organizationId;
|
||||
|
||||
@ApiModelProperty("组织表name")
|
||||
@Excel(name = "组织表name")
|
||||
private String organizationName;
|
||||
|
||||
@ApiModelProperty("用户ID")
|
||||
@Excel(name = "用户ID")
|
||||
private Long userId;
|
||||
|
||||
@ApiModelProperty("地址类型(1-装货签到,2-卸货签到)")
|
||||
@Excel(name = "地址类型", readConverterExp = "1=-装货签到,2-卸货签到")
|
||||
private Integer addressSignType;
|
||||
|
||||
@ApiModelProperty("货源单id")
|
||||
@Excel(name = "货源单id")
|
||||
private String orderId;
|
||||
|
||||
@ApiModelProperty("运单id")
|
||||
@Excel(name = "运单id")
|
||||
private String transportationId;
|
||||
|
||||
@ApiModelProperty("运输单号")
|
||||
@Excel(name = "运输单号")
|
||||
private String transportationNumber;
|
||||
|
||||
@ApiModelProperty("货源单号")
|
||||
@Excel(name = "货源单号")
|
||||
private String goodsNumber;
|
||||
|
||||
@ApiModelProperty("省市区编码")
|
||||
@Excel(name = "省市区编码")
|
||||
private String actualAreaId;
|
||||
|
||||
@ApiModelProperty("省市区名称")
|
||||
@Excel(name = "省市区名称")
|
||||
private String actualAreaName;
|
||||
|
||||
@ApiModelProperty("原地址")
|
||||
@Excel(name = "原地址")
|
||||
private String originalAddress;
|
||||
|
||||
@ApiModelProperty("实际签到地址")
|
||||
@Excel(name = "实际签到地址")
|
||||
private String actualAddress;
|
||||
|
||||
@ApiModelProperty("实际签到地经度")
|
||||
@Excel(name = "实际签到地经度")
|
||||
private String actualLongitude;
|
||||
|
||||
@ApiModelProperty("实际签到地纬度")
|
||||
@Excel(name = "实际签到地纬度")
|
||||
private String actualLatitude;
|
||||
|
||||
@ApiModelProperty("审核人用户ID")
|
||||
@Excel(name = "审核人用户ID")
|
||||
private Long auditBy;
|
||||
|
||||
@ApiModelProperty("审核人名称")
|
||||
@Excel(name = "审核人名称")
|
||||
private String auditByName;
|
||||
|
||||
@ApiModelProperty(name = "组织ID集合")
|
||||
private List<Long> organizationIdList;
|
||||
|
||||
@ApiModelProperty(name = "权限菜单ID")
|
||||
private Long permissionMenuId;
|
||||
/**
|
||||
* 创建日期开始
|
||||
*/
|
||||
@ApiModelProperty("创建日期开始")
|
||||
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
|
||||
@DateTimeFormat(pattern="yyyy-MM-dd")
|
||||
private Date startTime;
|
||||
/**
|
||||
* 创建日期结束
|
||||
*/
|
||||
@ApiModelProperty("创建日期结束")
|
||||
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
|
||||
@DateTimeFormat(pattern="yyyy-MM-dd")
|
||||
private Date endTime;
|
||||
}
|
||||
+72
@@ -0,0 +1,72 @@
|
||||
package com.mhd.basic.domain.abnormalAddressBook.service;
|
||||
|
||||
import com.mhd.basic.domain.abnormalAddressBook.entity.AbnormalAddressBook;
|
||||
import com.mhd.basic.domain.abnormalAddressBook.repository.facade.IAbnormalAddressBookService;
|
||||
import com.mhd.basic.domain.abnormalAddressBook.repository.po.AbnormalAddressBookPO;
|
||||
import com.mhd.basic.domain.abnormalAddressBook.repository.todo.AbnormalAddressBookDO;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
/**
|
||||
* 异常匹配地址簿
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-07-23
|
||||
*/
|
||||
@Service
|
||||
@Slf4j
|
||||
public class AbnormalAddressBookDomainService {
|
||||
|
||||
@Autowired
|
||||
private IAbnormalAddressBookService abnormalAddressBookService;
|
||||
|
||||
|
||||
/**
|
||||
* 分页查询异常匹配地址簿列表
|
||||
*/
|
||||
public List<AbnormalAddressBookPO> queryList(AbnormalAddressBookDO abnormalAddressBookDO) {
|
||||
return abnormalAddressBookService.queryList(abnormalAddressBookDO);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 新增异常匹配地址簿
|
||||
*/
|
||||
public Boolean insert(AbnormalAddressBookDO abnormalAddressBookDO) {
|
||||
|
||||
return abnormalAddressBookService.insert(abnormalAddressBookDO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改异常匹配地址簿
|
||||
*/
|
||||
public Boolean update(AbnormalAddressBookDO abnormalAddressBookDO) {
|
||||
return abnormalAddressBookService.update(abnormalAddressBookDO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除异常匹配地址簿
|
||||
*/
|
||||
public Boolean delete(Long[] abnormalAddressBookIds) {
|
||||
return abnormalAddressBookService.delete(abnormalAddressBookIds);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取异常匹配地址簿详细信息
|
||||
*/
|
||||
public AbnormalAddressBookPO getInfo(Long abnormalAddressBookId)
|
||||
{
|
||||
return abnormalAddressBookService.getInfo(abnormalAddressBookId);
|
||||
}
|
||||
|
||||
|
||||
public void saveBatchAddressBook(List<AbnormalAddressBook> list) {
|
||||
abnormalAddressBookService.saveBatch(list);
|
||||
}
|
||||
|
||||
public AbnormalAddressBookPO matchAddressBook(AbnormalAddressBookDO abnormalAddressBookDO) {
|
||||
return abnormalAddressBookService.matchAddressBook(abnormalAddressBookDO);
|
||||
}
|
||||
}
|
||||
+62
@@ -0,0 +1,62 @@
|
||||
package com.mhd.basic.domain.addressBook.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 地址簿对象 实体
|
||||
*
|
||||
* 2023-04-04
|
||||
*
|
||||
* @author 王子豪
|
||||
*/
|
||||
@Data
|
||||
@TableName("address_book")
|
||||
public class AddressBook extends BaseVOEntity implements Serializable
|
||||
{
|
||||
@ApiModelProperty(name = "地址簿id")
|
||||
@TableId(type = IdType.AUTO)
|
||||
private Long addressBookId;
|
||||
@ApiModelProperty(name = "用户ID")
|
||||
private Long userId;
|
||||
@ApiModelProperty(name = "联系人")
|
||||
private String linkMan;
|
||||
@ApiModelProperty(name = "联系方式")
|
||||
private String linkPhone;
|
||||
@ApiModelProperty(name = "省份编码")
|
||||
private Long provinceCode;
|
||||
@ApiModelProperty(name = "城市编码")
|
||||
private Long cityCode;
|
||||
@ApiModelProperty(name = "县区编码")
|
||||
private Long countyCode;
|
||||
@ApiModelProperty(name = "省份名称")
|
||||
private String provinceName;
|
||||
@ApiModelProperty(name = "城市名称")
|
||||
private String cityName;
|
||||
@ApiModelProperty(name = "县区名称")
|
||||
private String countyName;
|
||||
@ApiModelProperty(name = "省市区名称")
|
||||
private String areaName;
|
||||
@ApiModelProperty(name = "地址")
|
||||
private String address;
|
||||
@ApiModelProperty(name = "门牌信息")
|
||||
private String doorplate;
|
||||
@ApiModelProperty(name = "备注")
|
||||
private String remark;
|
||||
@ApiModelProperty(name = "是否默认地址:1.默认2.不默认")
|
||||
private Integer defaultStatus;
|
||||
@ApiModelProperty(name = "经度")
|
||||
private String longitude;
|
||||
@ApiModelProperty(name = "纬度")
|
||||
private String latitude;
|
||||
@ApiModelProperty(name = "地址小区")
|
||||
private String addressPlot;
|
||||
@ApiModelProperty(name = "单位名称")
|
||||
private String unitName;
|
||||
}
|
||||
+132
@@ -0,0 +1,132 @@
|
||||
package com.mhd.basic.domain.addressBook.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 常用路线对象 common_route
|
||||
*
|
||||
* @author mhd
|
||||
* @date 2023-04-19
|
||||
*/
|
||||
@Data
|
||||
@TableName("common_route")
|
||||
public class CommonRoute extends BaseVOEntity
|
||||
{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/** 常用路线id */
|
||||
@ApiModelProperty(name = "常用路线id")
|
||||
@TableId(type = IdType.AUTO)
|
||||
private Long commonRouteId;
|
||||
|
||||
/** 用户ID */
|
||||
@ApiModelProperty(name = "用户ID")
|
||||
private Long userId;
|
||||
|
||||
/** 发货地址簿id */
|
||||
@ApiModelProperty(name = "发货地址簿id")
|
||||
@TableField(updateStrategy = FieldStrategy.IGNORED)
|
||||
private Long sendAddressId;
|
||||
|
||||
/** 途径地地址簿id集合 */
|
||||
@ApiModelProperty(name = "途径地地址簿id集合")
|
||||
private String throughAddressId;
|
||||
|
||||
/** 收货地址簿id */
|
||||
@ApiModelProperty(name = "收货地址簿id")
|
||||
@TableField(updateStrategy = FieldStrategy.IGNORED)
|
||||
private Long receiveAddressId;
|
||||
|
||||
@ApiModelProperty("发货联系人")
|
||||
@Excel(name = "发货联系人")
|
||||
private String mailName;
|
||||
|
||||
@ApiModelProperty("发货联系方式")
|
||||
@Excel(name = "发货联系方式")
|
||||
private String mailPhone;
|
||||
|
||||
@ApiModelProperty("发货县区编码")
|
||||
@Excel(name = "发货县区编码")
|
||||
private Long mailCountyCode;
|
||||
|
||||
@ApiModelProperty("发货县区名称")
|
||||
@Excel(name = "发货县区名称")
|
||||
private String mailCountyName;
|
||||
|
||||
@ApiModelProperty("发货门牌信息")
|
||||
@Excel(name = "发货门牌信息")
|
||||
private String mailDoorplate;
|
||||
|
||||
/** 发货地址 */
|
||||
@ApiModelProperty(name = "发货地址")
|
||||
private String mailAddress;
|
||||
|
||||
/** 发货地址经度 */
|
||||
@ApiModelProperty(name = "发货地址经度")
|
||||
private String sendLongitude;
|
||||
|
||||
/** 发货地址纬度 */
|
||||
@ApiModelProperty(name = "发货地址纬度")
|
||||
private String sendLatitude;
|
||||
|
||||
@ApiModelProperty("收货联系人")
|
||||
@Excel(name = "收货联系人")
|
||||
private String addresseeName;
|
||||
|
||||
@ApiModelProperty("收货联系方式")
|
||||
@Excel(name = "收货联系方式")
|
||||
private String addresseePhone;
|
||||
|
||||
@ApiModelProperty("收货县区编码")
|
||||
@Excel(name = "收货县区编码")
|
||||
private Long addresseeCountyCode;
|
||||
|
||||
@ApiModelProperty("收货县区名称")
|
||||
@Excel(name = "收货县区名称")
|
||||
private String addresseeCountyName;
|
||||
|
||||
@ApiModelProperty("收货门牌信息")
|
||||
@Excel(name = "收货门牌信息")
|
||||
private String addresseeDoorplate;
|
||||
|
||||
/** 收货地址 */
|
||||
@ApiModelProperty(name = "收货地址")
|
||||
private String addresseeAddress;
|
||||
|
||||
/** 收货地址经度 */
|
||||
@ApiModelProperty(name = "收货地址经度")
|
||||
private String receiveLongitude;
|
||||
|
||||
/** 收货地址纬度 */
|
||||
@ApiModelProperty(name = "收货地址纬度")
|
||||
private String receiveLatitude;
|
||||
|
||||
@ApiModelProperty(name = "发货地址小区")
|
||||
private String mailAddressPlot;
|
||||
|
||||
@ApiModelProperty(name = "收货地址小区")
|
||||
private String addresseeAddressPlot;
|
||||
|
||||
@ApiModelProperty(name = "线路名称")
|
||||
private java.lang.String lineName;
|
||||
|
||||
@ApiModelProperty(name = "运距(千米)")
|
||||
private java.math.BigDecimal haulDistance;
|
||||
|
||||
/** 发货单位名称 */
|
||||
@ApiModelProperty(name = "发货单位名称")
|
||||
private String sendUnitName;
|
||||
|
||||
/** 收货单位名称 */
|
||||
@ApiModelProperty(name = "收货单位名称")
|
||||
private String receiveUnitName;
|
||||
|
||||
@ApiModelProperty(name = "运费单价")
|
||||
private BigDecimal freightUnitPrice;
|
||||
}
|
||||
+98
@@ -0,0 +1,98 @@
|
||||
package com.mhd.basic.domain.addressBook.repository.facade;
|
||||
|
||||
import com.mhd.basic.domain.addressBook.entity.AddressBook;
|
||||
import com.mhd.basic.domain.addressBook.entity.CommonRoute;
|
||||
import com.mhd.common.core.domain.po.AddressBookPo;
|
||||
import com.mhd.common.core.domain.po.CommonRoutePo;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 地址簿 业务层
|
||||
*
|
||||
* 2023-04-04
|
||||
*
|
||||
* @author 王子豪
|
||||
*/
|
||||
public interface AddressBookRepositoryInterface
|
||||
{
|
||||
/**
|
||||
* 查询地址簿
|
||||
*
|
||||
* @param addressBookId 地址簿主键
|
||||
* @return 地址簿
|
||||
*/
|
||||
public AddressBookPo selectAddressBookByAddressBookId(Long addressBookId);
|
||||
|
||||
/**
|
||||
* 查询地址簿列表
|
||||
*
|
||||
* @param addressBookPo 地址簿
|
||||
* @return 地址簿集合
|
||||
*/
|
||||
public List<AddressBookPo> selectAddressBookList(AddressBookPo addressBookPo);
|
||||
|
||||
/**
|
||||
* 新增地址簿
|
||||
*
|
||||
* @param addressBook 地址簿
|
||||
* @return 结果
|
||||
*/
|
||||
public int insertAddressBook(AddressBook addressBook);
|
||||
|
||||
/**
|
||||
* 修改地址簿
|
||||
*
|
||||
* @param addressBook 地址簿
|
||||
* @return 结果
|
||||
*/
|
||||
public int updateAddressBook(AddressBook addressBook);
|
||||
|
||||
/**
|
||||
* 批量删除地址簿
|
||||
*
|
||||
* @param addressBookIds 需要删除的地址簿主键集合
|
||||
* @return 结果
|
||||
*/
|
||||
public int deleteAddressBookByAddressBookIds(Long[] addressBookIds);
|
||||
|
||||
/**
|
||||
* 删除地址簿信息
|
||||
*
|
||||
* @param addressBookId 地址簿主键
|
||||
* @return 结果
|
||||
*/
|
||||
public int deleteAddressBookByAddressBookId(Long addressBookId);
|
||||
|
||||
/**
|
||||
* 查询常用路线集合
|
||||
*
|
||||
* @param commonRoutePo 常用路线
|
||||
* @return 常用路线集合
|
||||
*/
|
||||
public List<CommonRoutePo> selectCommonRouteList(CommonRoutePo commonRoutePo);
|
||||
|
||||
/**
|
||||
* 新增常用路线
|
||||
*
|
||||
* @param commonRoute 常用路线
|
||||
* @return 结果
|
||||
*/
|
||||
public int insertCommonRoute(CommonRoute commonRoute);
|
||||
|
||||
/**
|
||||
* 修改常用路线
|
||||
*
|
||||
* @param commonRoute 常用路线
|
||||
* @return 结果
|
||||
*/
|
||||
public int updateCommonRoute(CommonRoute commonRoute);
|
||||
|
||||
/**
|
||||
* 根据货单id查询地址簿列表
|
||||
*
|
||||
* @param manifestId 货单id
|
||||
* @return 地址簿集合
|
||||
*/
|
||||
public List<AddressBookPo> selectAddressBookListByManifestId(Long manifestId);
|
||||
}
|
||||
+34
@@ -0,0 +1,34 @@
|
||||
package com.mhd.basic.domain.addressBook.repository.facade;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.mhd.basic.domain.addressBook.entity.CommonRoute;
|
||||
import com.mhd.common.core.domain.po.CommonRoutePo;
|
||||
import com.mhd.basic.domain.addressBook.todo.CommonRouteDo;
|
||||
|
||||
/**
|
||||
* 常用路线Service接口
|
||||
*
|
||||
* @author mhd
|
||||
* @date 2023-04-19
|
||||
*/
|
||||
public interface CommonRouteInterface extends IService<CommonRoute>
|
||||
{
|
||||
/**
|
||||
* 查询常用路线
|
||||
*
|
||||
* @param commonRouteId 常用路线主键
|
||||
* @return 常用路线
|
||||
*/
|
||||
public CommonRoutePo selectCommonRouteByCommonRouteId(Long commonRouteId);
|
||||
|
||||
/**
|
||||
* 查询常用路线列表
|
||||
*
|
||||
* @param commonRouteDo 常用路线
|
||||
* @return 常用路线集合
|
||||
*/
|
||||
public List<CommonRoutePo> selectCommonRouteList(CommonRouteDo commonRouteDo);
|
||||
|
||||
}
|
||||
+101
@@ -0,0 +1,101 @@
|
||||
package com.mhd.basic.domain.addressBook.repository.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.mhd.basic.domain.addressBook.entity.AddressBook;
|
||||
import com.mhd.basic.domain.addressBook.entity.CommonRoute;
|
||||
import com.mhd.common.core.domain.po.AddressBookPo;
|
||||
import com.mhd.common.core.domain.po.CommonRoutePo;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 地址簿 数据层
|
||||
*
|
||||
* 2023-04-04
|
||||
*
|
||||
* @author 王子豪
|
||||
*/
|
||||
public interface AddressBookMapper extends BaseMapper<AddressBook>
|
||||
{
|
||||
/**
|
||||
* 查询地址簿
|
||||
*
|
||||
* @param addressBookId 地址簿主键
|
||||
* @return 地址簿
|
||||
*/
|
||||
public AddressBookPo selectAddressBookByAddressBookId(Long addressBookId);
|
||||
|
||||
/**
|
||||
* 查询地址簿列表
|
||||
*
|
||||
* @param addressBookPo 地址簿
|
||||
* @return 地址簿集合
|
||||
*/
|
||||
public List<AddressBookPo> selectAddressBookList(AddressBookPo addressBookPo);
|
||||
|
||||
/**
|
||||
* 新增地址簿
|
||||
*
|
||||
* @param addressBook 地址簿
|
||||
* @return 结果
|
||||
*/
|
||||
public int insertAddressBook(AddressBook addressBook);
|
||||
|
||||
/**
|
||||
* 修改地址簿
|
||||
*
|
||||
* @param addressBook 地址簿
|
||||
* @return 结果
|
||||
*/
|
||||
public int updateAddressBook(AddressBook addressBook);
|
||||
|
||||
/**
|
||||
* 删除地址簿
|
||||
*
|
||||
* @param addressBookId 地址簿主键
|
||||
* @return 结果
|
||||
*/
|
||||
public int deleteAddressBookByAddressBookId(Long addressBookId);
|
||||
|
||||
/**
|
||||
* 批量删除地址簿
|
||||
*
|
||||
* @param addressBookIds 需要删除的数据主键集合
|
||||
* @return 结果
|
||||
*/
|
||||
public int deleteAddressBookByAddressBookIds(Long[] addressBookIds);
|
||||
|
||||
/**
|
||||
* 查询常用路线集合
|
||||
*
|
||||
* @param commonRoutePo 常用路线
|
||||
* @return 常用路线集合
|
||||
*/
|
||||
public List<CommonRoutePo> selectCommonRouteList(CommonRoutePo commonRoutePo);
|
||||
|
||||
/**
|
||||
* 新增常用路线
|
||||
*
|
||||
* @param commonRoute 常用路线
|
||||
* @return 结果
|
||||
*/
|
||||
public int insertCommonRoute(CommonRoute commonRoute);
|
||||
|
||||
/**
|
||||
* 修改常用路线
|
||||
*
|
||||
* @param commonRoute 常用路线
|
||||
* @return 结果
|
||||
*/
|
||||
public int updateCommonRoute(CommonRoute commonRoute);
|
||||
|
||||
/**
|
||||
* 根据货单id查询地址簿列表
|
||||
*
|
||||
* @param manifestId 货单id
|
||||
* @return 地址簿集合
|
||||
*/
|
||||
public List<AddressBookPo> selectAddressBookListByManifestId(Long manifestId);
|
||||
|
||||
|
||||
}
|
||||
+35
@@ -0,0 +1,35 @@
|
||||
package com.mhd.basic.domain.addressBook.repository.mapper;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.mhd.basic.domain.addressBook.entity.CommonRoute;
|
||||
import com.mhd.common.core.domain.po.CommonRoutePo;
|
||||
import com.mhd.basic.domain.addressBook.todo.CommonRouteDo;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
/**
|
||||
* 常用路线Mapper接口
|
||||
*
|
||||
* @author mhd
|
||||
* @date 2023-04-19
|
||||
*/
|
||||
public interface CommonRouteMapper extends BaseMapper<CommonRoute>
|
||||
{
|
||||
/**
|
||||
* 查询常用路线
|
||||
*
|
||||
* @param commonRouteId 常用路线主键
|
||||
* @return 常用路线
|
||||
*/
|
||||
public CommonRoutePo selectCommonRouteByCommonRouteId(@Param("commonRouteId") Long commonRouteId);
|
||||
|
||||
/**
|
||||
* 查询常用路线列表
|
||||
*
|
||||
* @param commonRouteDo 常用路线
|
||||
* @return 常用路线集合
|
||||
*/
|
||||
public List<CommonRoutePo> selectCommonRouteList(@Param("commonRouteDo") CommonRouteDo commonRouteDo);
|
||||
|
||||
}
|
||||
+143
@@ -0,0 +1,143 @@
|
||||
package com.mhd.basic.domain.addressBook.repository.persistence;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.mhd.basic.domain.addressBook.entity.AddressBook;
|
||||
import com.mhd.basic.domain.addressBook.entity.CommonRoute;
|
||||
import com.mhd.basic.domain.addressBook.repository.facade.AddressBookRepositoryInterface;
|
||||
import com.mhd.basic.domain.addressBook.repository.mapper.AddressBookMapper;
|
||||
import com.mhd.common.core.domain.po.AddressBookPo;
|
||||
import com.mhd.common.core.domain.po.CommonRoutePo;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* 地址簿 业务层
|
||||
*
|
||||
* 2023-04-04
|
||||
*
|
||||
* @author 王子豪
|
||||
*/
|
||||
@Service
|
||||
public class AddressBookRepositoryImpl extends ServiceImpl<AddressBookMapper,AddressBook> implements AddressBookRepositoryInterface
|
||||
{
|
||||
@Autowired
|
||||
private AddressBookMapper addressBookMapper;
|
||||
|
||||
/**
|
||||
* 查询地址簿
|
||||
*
|
||||
* @param addressBookId 地址簿主键
|
||||
* @return 地址簿
|
||||
*/
|
||||
@Override
|
||||
public AddressBookPo selectAddressBookByAddressBookId(Long addressBookId)
|
||||
{
|
||||
return addressBookMapper.selectAddressBookByAddressBookId(addressBookId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询地址簿列表
|
||||
*
|
||||
* @param addressBookPo 地址簿
|
||||
* @return 地址簿
|
||||
*/
|
||||
@Override
|
||||
public List<AddressBookPo> selectAddressBookList(AddressBookPo addressBookPo)
|
||||
{
|
||||
return addressBookMapper.selectAddressBookList(addressBookPo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增地址簿
|
||||
*
|
||||
* @param addressBook 地址簿
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
public int insertAddressBook(AddressBook addressBook)
|
||||
{
|
||||
return addressBookMapper.insertAddressBook(addressBook);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改地址簿
|
||||
*
|
||||
* @param addressBook 地址簿
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
public int updateAddressBook(AddressBook addressBook)
|
||||
{
|
||||
return addressBookMapper.updateAddressBook(addressBook);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除地址簿
|
||||
*
|
||||
* @param addressBookIds 需要删除的地址簿主键
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
public int deleteAddressBookByAddressBookIds(Long[] addressBookIds)
|
||||
{
|
||||
return addressBookMapper.deleteAddressBookByAddressBookIds(addressBookIds);
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除地址簿信息
|
||||
*
|
||||
* @param addressBookId 地址簿主键
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
public int deleteAddressBookByAddressBookId(Long addressBookId)
|
||||
{
|
||||
return addressBookMapper.deleteAddressBookByAddressBookId(addressBookId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询常用路线集合
|
||||
*
|
||||
* @param commonRoutePo 常用路线
|
||||
* @return 常用路线集合
|
||||
*/
|
||||
@Override
|
||||
public List<CommonRoutePo> selectCommonRouteList(CommonRoutePo commonRoutePo){
|
||||
return addressBookMapper.selectCommonRouteList(commonRoutePo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增常用路线
|
||||
*
|
||||
* @param commonRoute 常用路线
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
public int insertCommonRoute(CommonRoute commonRoute){
|
||||
return addressBookMapper.insertCommonRoute(commonRoute);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改常用路线
|
||||
*
|
||||
* @param commonRoute 常用路线
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
public int updateCommonRoute(CommonRoute commonRoute){
|
||||
return addressBookMapper.updateCommonRoute(commonRoute);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据货单id查询地址簿列表
|
||||
*
|
||||
* @param manifestId 货单id
|
||||
* @return 地址簿集合
|
||||
*/
|
||||
@Override
|
||||
public List<AddressBookPo> selectAddressBookListByManifestId(Long manifestId){
|
||||
return addressBookMapper.selectAddressBookListByManifestId(manifestId);
|
||||
}
|
||||
}
|
||||
+50
@@ -0,0 +1,50 @@
|
||||
package com.mhd.basic.domain.addressBook.repository.persistence;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.mhd.basic.domain.addressBook.entity.CommonRoute;
|
||||
import com.mhd.basic.domain.addressBook.repository.facade.CommonRouteInterface;
|
||||
import com.mhd.basic.domain.addressBook.repository.mapper.CommonRouteMapper;
|
||||
import com.mhd.common.core.domain.po.CommonRoutePo;
|
||||
import com.mhd.basic.domain.addressBook.todo.CommonRouteDo;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* 常用路线Service业务层处理
|
||||
*
|
||||
* @author mhd
|
||||
* @date 2023-04-19
|
||||
*/
|
||||
@Service
|
||||
public class CommonRouteImpl extends ServiceImpl<CommonRouteMapper, CommonRoute> implements CommonRouteInterface
|
||||
{
|
||||
@Autowired
|
||||
private CommonRouteMapper commonRouteMapper;
|
||||
|
||||
/**
|
||||
* 查询常用路线
|
||||
*
|
||||
* @param commonRouteId 常用路线主键
|
||||
* @return 常用路线
|
||||
*/
|
||||
@Override
|
||||
public CommonRoutePo selectCommonRouteByCommonRouteId(Long commonRouteId)
|
||||
{
|
||||
return commonRouteMapper.selectCommonRouteByCommonRouteId(commonRouteId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询常用路线列表
|
||||
*
|
||||
* @param commonRouteDo 常用路线
|
||||
* @return 常用路线
|
||||
*/
|
||||
@Override
|
||||
public List<CommonRoutePo> selectCommonRouteList(CommonRouteDo commonRouteDo)
|
||||
{
|
||||
return commonRouteMapper.selectCommonRouteList(commonRouteDo);
|
||||
}
|
||||
|
||||
}
|
||||
+160
@@ -0,0 +1,160 @@
|
||||
package com.mhd.basic.domain.addressBook.service;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.mhd.basic.domain.addressBook.entity.AddressBook;
|
||||
import com.mhd.basic.domain.addressBook.entity.CommonRoute;
|
||||
import com.mhd.basic.domain.addressBook.repository.persistence.AddressBookRepositoryImpl;
|
||||
import com.mhd.common.core.domain.po.AddressBookPo;
|
||||
import com.mhd.common.core.domain.po.CommonRoutePo;
|
||||
import com.mhd.common.security.utils.SecurityUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 地址簿 防腐层
|
||||
*
|
||||
* 本层为防腐层,业务逻辑可在本层完成
|
||||
*
|
||||
* 2023-04-04
|
||||
*
|
||||
* @author 王子豪
|
||||
*/
|
||||
@Service
|
||||
public class AddressBookDomainService
|
||||
{
|
||||
@Autowired
|
||||
private AddressBookRepositoryImpl addressBookRepositoryImpl;
|
||||
|
||||
/**
|
||||
* 查询地址簿
|
||||
*
|
||||
* @param addressBookId 地址簿主键
|
||||
* @return 地址簿
|
||||
*/
|
||||
public AddressBookPo selectAddressBookByAddressBookId(Long addressBookId)
|
||||
{
|
||||
return addressBookRepositoryImpl.selectAddressBookByAddressBookId(addressBookId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询地址簿列表
|
||||
*
|
||||
* @param addressBookPo 地址簿
|
||||
* @return 地址簿
|
||||
*/
|
||||
public List<AddressBookPo> selectAddressBookList(AddressBookPo addressBookPo)
|
||||
{
|
||||
return addressBookRepositoryImpl.selectAddressBookList(addressBookPo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增地址簿
|
||||
*
|
||||
* @param addressBook 地址簿
|
||||
* @return 结果
|
||||
*/
|
||||
public int insertAddressBook(AddressBook addressBook)
|
||||
{
|
||||
return addressBookRepositoryImpl.insertAddressBook(addressBook);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改地址簿
|
||||
*
|
||||
* @param addressBook 地址簿
|
||||
* @return 结果
|
||||
*/
|
||||
public int updateAddressBook(AddressBook addressBook)
|
||||
{
|
||||
return addressBookRepositoryImpl.updateAddressBook(addressBook);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除地址簿
|
||||
*
|
||||
* @param addressBookIds 需要删除的地址簿主键
|
||||
* @return 结果
|
||||
*/
|
||||
public int deleteAddressBookByAddressBookIds(Long[] addressBookIds)
|
||||
{
|
||||
return addressBookRepositoryImpl.deleteAddressBookByAddressBookIds(addressBookIds);
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除地址簿信息
|
||||
*
|
||||
* @param addressBookId 地址簿主键
|
||||
* @return 结果
|
||||
*/
|
||||
public int deleteAddressBookByAddressBookId(Long addressBookId)
|
||||
{
|
||||
return addressBookRepositoryImpl.deleteAddressBookByAddressBookId(addressBookId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询常用路线集合
|
||||
*
|
||||
* @param commonRoutePo 常用路线
|
||||
* @return 常用路线集合
|
||||
*/
|
||||
public List<CommonRoutePo> selectCommonRouteList(CommonRoutePo commonRoutePo){
|
||||
return addressBookRepositoryImpl.selectCommonRouteList(commonRoutePo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增常用路线
|
||||
*
|
||||
* @param commonRoute 常用路线
|
||||
* @return 结果
|
||||
*/
|
||||
public int insertCommonRoute(CommonRoute commonRoute){
|
||||
return addressBookRepositoryImpl.insertCommonRoute(commonRoute);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改常用路线
|
||||
*
|
||||
* @param commonRoute 常用路线
|
||||
* @return 结果
|
||||
*/
|
||||
public int updateCommonRoute(CommonRoute commonRoute){
|
||||
return addressBookRepositoryImpl.updateCommonRoute(commonRoute);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据货单id查询地址簿列表
|
||||
*
|
||||
* @param manifestId 货单id
|
||||
* @return 地址簿集合
|
||||
*/
|
||||
public List<AddressBookPo> selectAddressBookListByManifestId(Long manifestId){
|
||||
return addressBookRepositoryImpl.selectAddressBookListByManifestId(manifestId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除地址簿
|
||||
* @param addressBookId
|
||||
* @return
|
||||
*/
|
||||
public int deleteAddressBookById(Long addressBookId) {
|
||||
AddressBook addressBook = new AddressBook();
|
||||
addressBook.setAddressBookId(addressBookId);
|
||||
addressBook.setUpdateBy(SecurityUtils.getUserId());
|
||||
addressBook.setUpdateByName(SecurityUtils.getUsername());
|
||||
addressBook.setUpdateTime(new Date());
|
||||
addressBook.setDelFlag(2);
|
||||
return addressBookRepositoryImpl.updateAddressBook(addressBook);
|
||||
}
|
||||
|
||||
/**
|
||||
* 使用lambda表达式做条件查询单个地址
|
||||
* @param queryWrapper 查询条件
|
||||
* @return
|
||||
*/
|
||||
public AddressBook selectOneByLambda(LambdaQueryWrapper<AddressBook> queryWrapper) {
|
||||
return addressBookRepositoryImpl.getOne(queryWrapper);
|
||||
}
|
||||
}
|
||||
+70
@@ -0,0 +1,70 @@
|
||||
package com.mhd.basic.domain.addressBook.service;
|
||||
|
||||
import com.mhd.basic.domain.addressBook.entity.CommonRoute;
|
||||
import com.mhd.basic.domain.addressBook.repository.facade.CommonRouteInterface;
|
||||
import com.mhd.common.core.domain.po.CommonRoutePo;
|
||||
import com.mhd.basic.domain.addressBook.todo.CommonRouteDo;
|
||||
import com.mhd.common.security.utils.SecurityUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 常用路线Service业务层处理
|
||||
*
|
||||
* @author mhd
|
||||
* @date 2023-04-19
|
||||
*/
|
||||
@Service
|
||||
public class CommonRouteDomainService
|
||||
{
|
||||
@Autowired
|
||||
private CommonRouteInterface commonRouteInterface;
|
||||
|
||||
/**
|
||||
* 查询常用路线
|
||||
*
|
||||
* @param commonRouteId 常用路线主键
|
||||
* @return 常用路线
|
||||
*/
|
||||
public CommonRoutePo selectCommonRouteByCommonRouteId(Long commonRouteId)
|
||||
{
|
||||
return commonRouteInterface.selectCommonRouteByCommonRouteId(commonRouteId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询常用路线列表
|
||||
*
|
||||
* @param commonRouteDo 常用路线
|
||||
* @return 常用路线
|
||||
*/
|
||||
public List<CommonRoutePo> selectCommonRouteList(CommonRouteDo commonRouteDo)
|
||||
{
|
||||
return commonRouteInterface.selectCommonRouteList(commonRouteDo);
|
||||
}
|
||||
|
||||
public boolean insertCommonRoute(CommonRoute commonRoute) {
|
||||
return commonRouteInterface.save(commonRoute);
|
||||
}
|
||||
|
||||
public boolean updateCommonRoute(CommonRoute commonRoute) {
|
||||
return commonRouteInterface.updateById(commonRoute);
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除常用线路
|
||||
* @param commonRouteId
|
||||
* @return
|
||||
*/
|
||||
public boolean removeCommonRouteById(Long commonRouteId) {
|
||||
CommonRoute commonRoute = new CommonRoute();
|
||||
commonRoute.setCommonRouteId(commonRouteId);
|
||||
commonRoute.setUpdateBy(SecurityUtils.getUserId());
|
||||
commonRoute.setUpdateByName(SecurityUtils.getUsername());
|
||||
commonRoute.setUpdateTime(new Date());
|
||||
commonRoute.setDelFlag(2);
|
||||
return commonRouteInterface.updateById(commonRoute);
|
||||
}
|
||||
}
|
||||
+129
@@ -0,0 +1,129 @@
|
||||
package com.mhd.basic.domain.addressBook.todo;
|
||||
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 常用路线对象 common_route
|
||||
*
|
||||
* @author mhd
|
||||
* @date 2023-04-19
|
||||
*/
|
||||
@Data
|
||||
public class CommonRouteDo extends BaseVOEntity
|
||||
{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/** 常用路线id */
|
||||
@ApiModelProperty(name = "常用路线id")
|
||||
private Long commonRouteId;
|
||||
|
||||
/** 用户ID */
|
||||
@ApiModelProperty(name = "用户ID")
|
||||
private Long userId;
|
||||
|
||||
/** 发货地址簿id */
|
||||
@ApiModelProperty(name = "发货地址簿id")
|
||||
private Long sendAddressId;
|
||||
|
||||
/** 途径地地址簿id集合 */
|
||||
@ApiModelProperty(name = "途径地地址簿id集合")
|
||||
private String throughAddressId;
|
||||
|
||||
/** 收货地址簿id */
|
||||
@ApiModelProperty(name = "收货地址簿id")
|
||||
private Long receiveAddressId;
|
||||
|
||||
@ApiModelProperty("发货联系人")
|
||||
@Excel(name = "发货联系人")
|
||||
private String mailName;
|
||||
|
||||
@ApiModelProperty("发货联系方式")
|
||||
@Excel(name = "发货联系方式")
|
||||
private String mailPhone;
|
||||
|
||||
@ApiModelProperty("发货县区编码")
|
||||
@Excel(name = "发货县区编码")
|
||||
private Long mailCountyCode;
|
||||
|
||||
@ApiModelProperty("发货县区名称")
|
||||
@Excel(name = "发货县区名称")
|
||||
private String mailCountyName;
|
||||
|
||||
@ApiModelProperty("发货门牌信息")
|
||||
@Excel(name = "发货门牌信息")
|
||||
private String mailDoorplate;
|
||||
|
||||
/** 发货地址 */
|
||||
@ApiModelProperty(name = "发货地址")
|
||||
private String mailAddress;
|
||||
|
||||
/** 发货地址经度 */
|
||||
@ApiModelProperty(name = "发货地址经度")
|
||||
private String sendLongitude;
|
||||
|
||||
/** 发货地址纬度 */
|
||||
@ApiModelProperty(name = "发货地址纬度")
|
||||
private String sendLatitude;
|
||||
|
||||
@ApiModelProperty("收货联系人")
|
||||
@Excel(name = "收货联系人")
|
||||
private String addresseeName;
|
||||
|
||||
@ApiModelProperty("收货联系方式")
|
||||
@Excel(name = "收货联系方式")
|
||||
private String addresseePhone;
|
||||
|
||||
@ApiModelProperty("收货县区编码")
|
||||
@Excel(name = "收货县区编码")
|
||||
private Long addresseeCountyCode;
|
||||
|
||||
@ApiModelProperty("收货县区名称")
|
||||
@Excel(name = "收货县区名称")
|
||||
private String addresseeCountyName;
|
||||
|
||||
@ApiModelProperty("收货门牌信息")
|
||||
@Excel(name = "收货门牌信息")
|
||||
private String addresseeDoorplate;
|
||||
|
||||
/** 收货地址 */
|
||||
@ApiModelProperty(name = "收货地址")
|
||||
private String addresseeAddress;
|
||||
|
||||
/** 收货地址经度 */
|
||||
@ApiModelProperty(name = "收货地址经度")
|
||||
private String receiveLongitude;
|
||||
|
||||
/** 收货地址纬度 */
|
||||
@ApiModelProperty(name = "收货地址纬度")
|
||||
private String receiveLatitude;
|
||||
|
||||
@ApiModelProperty(name = "APP查询条件")
|
||||
private String synthesize;
|
||||
|
||||
@ApiModelProperty(name = "发货地址小区")
|
||||
private String mailAddressPlot;
|
||||
|
||||
@ApiModelProperty(name = "收货地址小区")
|
||||
private String addresseeAddressPlot;
|
||||
|
||||
@ApiModelProperty(name = "线路名称")
|
||||
private java.lang.String lineName;
|
||||
|
||||
@ApiModelProperty(name = "运距(千米)")
|
||||
private java.math.BigDecimal haulDistance;
|
||||
/** 发货单位名称 */
|
||||
@ApiModelProperty(name = "发货单位名称")
|
||||
private String sendUnitName;
|
||||
|
||||
/** 收货单位名称 */
|
||||
@ApiModelProperty(name = "收货单位名称")
|
||||
private String receiveUnitName;
|
||||
|
||||
@ApiModelProperty(name = "运费单价")
|
||||
private BigDecimal freightUnitPrice;
|
||||
}
|
||||
+35
@@ -0,0 +1,35 @@
|
||||
package com.mhd.basic.domain.areaAggregate.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
|
||||
/**
|
||||
* @Description 城市信息表
|
||||
* @Author Alex
|
||||
* @Date 2022/12/15 15:47
|
||||
*/
|
||||
@Data
|
||||
@TableName("sys_city")
|
||||
public class SysCityEntity extends BaseVOEntity {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
@TableId(type = IdType.AUTO)
|
||||
@ApiModelProperty(name = "城市表id")
|
||||
private Long cityId;
|
||||
@ApiModelProperty(name = "城市编码")
|
||||
private Long cityCode;
|
||||
@ApiModelProperty(name = "城市编码-最新")
|
||||
private Long cityCodeNew;
|
||||
@ApiModelProperty(name = "省编码")
|
||||
private Long provinceCode;
|
||||
@ApiModelProperty(name = "城市名称")
|
||||
private String cityName;
|
||||
@ApiModelProperty(name = "城市备注信息")
|
||||
private String cityRemark;
|
||||
|
||||
}
|
||||
+35
@@ -0,0 +1,35 @@
|
||||
package com.mhd.basic.domain.areaAggregate.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
|
||||
/**
|
||||
* @Description 区县信息表
|
||||
* @Author Alex
|
||||
* @Date 2022/12/15 15:47
|
||||
*/
|
||||
@Data
|
||||
@TableName("sys_county")
|
||||
public class SysCountyEntity extends BaseVOEntity {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
@TableId(type = IdType.AUTO)
|
||||
@ApiModelProperty(name = "区县表id")
|
||||
private Long countyId;
|
||||
@ApiModelProperty(name = "区县编码")
|
||||
private Long countyCode;
|
||||
@ApiModelProperty(name = "区县编码-最新")
|
||||
private Long countyCodeNew;
|
||||
@ApiModelProperty(name = "区县名称")
|
||||
private String countyName;
|
||||
@ApiModelProperty(name = "城市编码")
|
||||
private Long cityCode;
|
||||
@ApiModelProperty(name = "区县备注信息")
|
||||
private String countyRemark;
|
||||
|
||||
}
|
||||
+32
@@ -0,0 +1,32 @@
|
||||
package com.mhd.basic.domain.areaAggregate.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
|
||||
/**
|
||||
* @Description 省份信息表
|
||||
* @Author Alex
|
||||
* @Date 2022/12/15 15:47
|
||||
*/
|
||||
@Data
|
||||
@TableName("sys_province")
|
||||
public class SysProvinceEntity extends BaseVOEntity {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
@TableId(type = IdType.AUTO)
|
||||
@ApiModelProperty(name = "省份表id")
|
||||
private Long provinceId;
|
||||
@ApiModelProperty(name = "省份编码")
|
||||
private Long provinceCode;
|
||||
@ApiModelProperty(name = "省份名称")
|
||||
private String provinceName;
|
||||
@ApiModelProperty(name = "省份备注信息")
|
||||
private String provinceRemark;
|
||||
|
||||
|
||||
}
|
||||
+33
@@ -0,0 +1,33 @@
|
||||
package com.mhd.basic.domain.areaAggregate.factory;
|
||||
|
||||
import com.mhd.basic.domain.areaAggregate.entity.SysCityEntity;
|
||||
import com.mhd.basic.domain.areaAggregate.entity.SysCountyEntity;
|
||||
import com.mhd.basic.domain.areaAggregate.entity.SysProvinceEntity;
|
||||
import com.mhd.basic.domain.areaAggregate.repository.todo.SysProvinceCityCountyDO;
|
||||
import com.mhd.common.core.utils.IgnoreNullUtil;
|
||||
import com.mhd.common.core.utils.bean.BeanUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
public class SysProvinceCityCountyFactory {
|
||||
|
||||
public SysProvinceEntity getProvinceEntity(SysProvinceCityCountyDO sysProvinceDO) {
|
||||
SysProvinceEntity sysProvinceEntity = new SysProvinceEntity();
|
||||
BeanUtils.copyProperties(sysProvinceDO, sysProvinceEntity, IgnoreNullUtil.getNullPropertyNames(sysProvinceDO));
|
||||
return sysProvinceEntity;
|
||||
}
|
||||
|
||||
public SysCityEntity getCityEntity(SysProvinceCityCountyDO sysProvinceDO) {
|
||||
SysCityEntity sysCityEntity = new SysCityEntity();
|
||||
BeanUtils.copyProperties(sysProvinceDO, sysCityEntity, IgnoreNullUtil.getNullPropertyNames(sysProvinceDO));
|
||||
return sysCityEntity;
|
||||
}
|
||||
|
||||
public SysCountyEntity getCountyEntity(SysProvinceCityCountyDO sysProvinceDO) {
|
||||
SysCountyEntity sysCountyEntity = new SysCountyEntity();
|
||||
BeanUtils.copyProperties(sysProvinceDO, sysCountyEntity, IgnoreNullUtil.getNullPropertyNames(sysProvinceDO));
|
||||
return sysCountyEntity;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
+74
@@ -0,0 +1,74 @@
|
||||
package com.mhd.basic.domain.areaAggregate.repository.facade;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.mhd.basic.domain.areaAggregate.repository.po.SysAreaPO;
|
||||
import com.mhd.basic.domain.areaAggregate.repository.todo.SysProvinceCityCountyDO;
|
||||
import com.mhd.basic.domain.areaAggregate.entity.SysCityEntity;
|
||||
import com.mhd.basic.domain.areaAggregate.entity.SysCountyEntity;
|
||||
import com.mhd.basic.domain.areaAggregate.entity.SysProvinceEntity;
|
||||
import com.mhd.basic.domain.brand.entity.Brand;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface SysProvinceCityCountyRepositoryInterface{
|
||||
|
||||
List<SysProvinceEntity> selectProvinceList(SysProvinceCityCountyDO sysProvinceDO);
|
||||
|
||||
List<SysAreaPO> selectProvinceAreaList(SysProvinceCityCountyDO sysProvinceDO);
|
||||
|
||||
List<SysAreaPO> selectAllAreaList(SysProvinceCityCountyDO sysProvinceDO);
|
||||
List<SysAreaPO> selectBranchAreaChildrenList(SysProvinceCityCountyDO sysProvinceDO);
|
||||
|
||||
List<SysAreaPO> selectSsqhList();
|
||||
|
||||
List<SysAreaPO> selectCityAreaList(SysProvinceCityCountyDO sysProvinceDO);
|
||||
|
||||
List<SysAreaPO> selectCountyAreaList(SysProvinceCityCountyDO sysProvinceDO);
|
||||
|
||||
SysProvinceEntity findProvinceById(Long provinceId);
|
||||
|
||||
SysProvinceEntity findProvinceByProvinceCode(Long provinceCode);
|
||||
|
||||
SysProvinceEntity addProvince(SysProvinceEntity sysProvinceEntity);
|
||||
|
||||
SysProvinceEntity updateProvince(SysProvinceEntity sysProvinceEntity);
|
||||
|
||||
List<SysCityEntity> selectCityList(SysProvinceCityCountyDO sysProvinceDO);
|
||||
|
||||
SysCityEntity findCityById(Long cityId);
|
||||
|
||||
SysCityEntity findCityByCityCode(Long cityCode);
|
||||
|
||||
SysCityEntity addCity(SysCityEntity sysCityEntity);
|
||||
|
||||
SysCityEntity updateCity(SysCityEntity sysCityEntity);
|
||||
|
||||
List<SysCountyEntity> selectCountyList(SysProvinceCityCountyDO sysProvinceDO);
|
||||
|
||||
SysCountyEntity findCountyById(Long countyId);
|
||||
|
||||
SysCountyEntity findCountyByCountyCode(Long countyCode);
|
||||
|
||||
SysCountyEntity addCounty(SysCountyEntity sysCountyEntity);
|
||||
|
||||
SysCountyEntity updateCounty(SysCountyEntity sysCountyEntity);
|
||||
|
||||
SysProvinceEntity findProvinceMaxCode();
|
||||
|
||||
SysCityEntity findCityMaxCode(Long provinceCode);
|
||||
|
||||
SysCountyEntity findCountyMaxCode(Long cityCode);
|
||||
|
||||
SysAreaPO findAreaInfo(SysProvinceCityCountyDO sysProvinceDO);
|
||||
|
||||
SysAreaPO findAreaInfoByCityCode(SysProvinceCityCountyDO sysProvinceDO);
|
||||
|
||||
SysAreaPO findAreaInfoByProvince(SysProvinceCityCountyDO sysProvinceDO);
|
||||
|
||||
void deleteProvinceByCode(String code);
|
||||
|
||||
void deleteCityByCode(String code);
|
||||
|
||||
void deleteCountryByCode(String code);
|
||||
}
|
||||
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
package com.mhd.basic.domain.areaAggregate.repository.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.mhd.basic.domain.areaAggregate.entity.SysCityEntity;
|
||||
import com.mhd.basic.domain.areaAggregate.repository.po.SysAreaPO;
|
||||
import com.mhd.basic.domain.areaAggregate.repository.todo.SysProvinceCityCountyDO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface SysCityMapper extends BaseMapper<SysCityEntity> {
|
||||
|
||||
List<SysCityEntity> selectList(SysProvinceCityCountyDO sysProvinceDO);
|
||||
|
||||
List<SysAreaPO> selectCityAreaList(SysProvinceCityCountyDO sysProvinceDO);
|
||||
|
||||
SysCityEntity findById(Long cityId);
|
||||
|
||||
SysCityEntity findByCityCode(Long cityCode);
|
||||
|
||||
SysCityEntity findCityMaxCode(Long provinceCode);
|
||||
}
|
||||
+27
@@ -0,0 +1,27 @@
|
||||
package com.mhd.basic.domain.areaAggregate.repository.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.mhd.basic.domain.areaAggregate.entity.SysCountyEntity;
|
||||
import com.mhd.basic.domain.areaAggregate.repository.po.SysAreaPO;
|
||||
import com.mhd.basic.domain.areaAggregate.repository.todo.SysProvinceCityCountyDO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface SysCountyMapper extends BaseMapper<SysCountyEntity> {
|
||||
|
||||
List<SysCountyEntity> selectList(SysProvinceCityCountyDO sysProvinceDO);
|
||||
|
||||
List<SysAreaPO> selectCountyAreaList(SysProvinceCityCountyDO sysProvinceDO);
|
||||
|
||||
SysCountyEntity findById(Long countyId);
|
||||
|
||||
SysCountyEntity findByCountyCode(Long countyCode);
|
||||
|
||||
SysCountyEntity findCountyMaxCode(Long cityCode);
|
||||
|
||||
SysAreaPO findAreaInfo(SysProvinceCityCountyDO sysProvinceDO);
|
||||
|
||||
SysAreaPO findAreaInfoByCityCode(SysProvinceCityCountyDO sysProvinceDO);
|
||||
|
||||
SysAreaPO findAreaInfoByProvince(SysProvinceCityCountyDO sysProvinceDO);
|
||||
}
|
||||
+27
@@ -0,0 +1,27 @@
|
||||
package com.mhd.basic.domain.areaAggregate.repository.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.mhd.basic.domain.areaAggregate.repository.po.SysAreaPO;
|
||||
import com.mhd.basic.domain.areaAggregate.repository.todo.SysProvinceCityCountyDO;
|
||||
import com.mhd.basic.domain.areaAggregate.entity.SysProvinceEntity;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface SysProvinceMapper extends BaseMapper<SysProvinceEntity> {
|
||||
|
||||
List<SysProvinceEntity> selectList(SysProvinceCityCountyDO sysProvinceDO);
|
||||
|
||||
List<SysAreaPO> selectProvinceAreaList(SysProvinceCityCountyDO sysProvinceDO);
|
||||
|
||||
List<SysAreaPO> selectAllAreaList(SysProvinceCityCountyDO sysProvinceDO);
|
||||
List<SysAreaPO> selectBranchAreaChildrenList(SysProvinceCityCountyDO sysProvinceDO);
|
||||
|
||||
List<SysAreaPO> selectSsqhList();
|
||||
|
||||
SysProvinceEntity findById(Long provinceId);
|
||||
|
||||
SysProvinceEntity findByProvinceCode(Long provinceCode);
|
||||
|
||||
SysProvinceEntity findProvinceMaxCode();
|
||||
|
||||
}
|
||||
+196
@@ -0,0 +1,196 @@
|
||||
package com.mhd.basic.domain.areaAggregate.repository.persistence;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.mhd.basic.domain.areaAggregate.entity.SysCityEntity;
|
||||
import com.mhd.basic.domain.areaAggregate.entity.SysCountyEntity;
|
||||
import com.mhd.basic.domain.areaAggregate.entity.SysProvinceEntity;
|
||||
import com.mhd.basic.domain.areaAggregate.repository.facade.SysProvinceCityCountyRepositoryInterface;
|
||||
import com.mhd.basic.domain.areaAggregate.repository.mapper.SysCityMapper;
|
||||
import com.mhd.basic.domain.areaAggregate.repository.mapper.SysCountyMapper;
|
||||
import com.mhd.basic.domain.areaAggregate.repository.mapper.SysProvinceMapper;
|
||||
import com.mhd.basic.domain.areaAggregate.repository.po.SysAreaPO;
|
||||
import com.mhd.basic.domain.areaAggregate.repository.todo.SysProvinceCityCountyDO;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
public class SysProvinceCityCountyRepositoryImpl implements SysProvinceCityCountyRepositoryInterface {
|
||||
|
||||
@Resource
|
||||
private SysProvinceMapper sysProvinceMapper;
|
||||
@Resource
|
||||
private SysCityMapper sysCityMapper;
|
||||
@Resource
|
||||
private SysCountyMapper sysCountyMapper;
|
||||
|
||||
@Override
|
||||
public List<SysProvinceEntity> selectProvinceList(SysProvinceCityCountyDO sysProvinceDO) {
|
||||
return sysProvinceMapper.selectList(sysProvinceDO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<SysAreaPO> selectProvinceAreaList(SysProvinceCityCountyDO sysProvinceDO) {
|
||||
return sysProvinceMapper.selectProvinceAreaList(sysProvinceDO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<SysAreaPO> selectAllAreaList(SysProvinceCityCountyDO sysProvinceDO) {
|
||||
return sysProvinceMapper.selectAllAreaList(sysProvinceDO);
|
||||
}
|
||||
@Override
|
||||
public List<SysAreaPO> selectBranchAreaChildrenList(SysProvinceCityCountyDO sysProvinceDO) {
|
||||
return sysProvinceMapper.selectBranchAreaChildrenList(sysProvinceDO);
|
||||
}
|
||||
@Override
|
||||
public List<SysAreaPO> selectSsqhList() {
|
||||
return sysProvinceMapper.selectSsqhList();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<SysAreaPO> selectCityAreaList(SysProvinceCityCountyDO sysProvinceDO) {
|
||||
return sysCityMapper.selectCityAreaList(sysProvinceDO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<SysAreaPO> selectCountyAreaList(SysProvinceCityCountyDO sysProvinceDO) {
|
||||
return sysCountyMapper.selectCountyAreaList(sysProvinceDO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysProvinceEntity findProvinceById(Long provinceId) {
|
||||
return sysProvinceMapper.findById(provinceId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysProvinceEntity findProvinceByProvinceCode(Long provinceCode) {
|
||||
return sysProvinceMapper.findByProvinceCode(provinceCode);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysProvinceEntity addProvince(SysProvinceEntity sysProvinceEntity) {
|
||||
sysProvinceMapper.insert(sysProvinceEntity);
|
||||
return sysProvinceEntity;
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysProvinceEntity updateProvince(SysProvinceEntity sysProvinceEntity) {
|
||||
sysProvinceMapper.updateById(sysProvinceEntity);
|
||||
return sysProvinceEntity;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<SysCityEntity> selectCityList(SysProvinceCityCountyDO sysProvinceDO) {
|
||||
return sysCityMapper.selectList(sysProvinceDO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysCityEntity findCityById(Long cityId) {
|
||||
return sysCityMapper.findById(cityId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysCityEntity findCityByCityCode(Long cityCode) {
|
||||
return sysCityMapper.findByCityCode(cityCode);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysCityEntity addCity(SysCityEntity sysCityEntity) {
|
||||
sysCityMapper.insert(sysCityEntity);
|
||||
return sysCityEntity;
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysCityEntity updateCity(SysCityEntity sysCityEntity) {
|
||||
sysCityMapper.updateById(sysCityEntity);
|
||||
return sysCityEntity;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<SysCountyEntity> selectCountyList(SysProvinceCityCountyDO sysProvinceDO) {
|
||||
return sysCountyMapper.selectList(sysProvinceDO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysCountyEntity findCountyById(Long countyId) {
|
||||
return sysCountyMapper.findById(countyId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysCountyEntity findCountyByCountyCode(Long countyCode) {
|
||||
return sysCountyMapper.findByCountyCode(countyCode);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysCountyEntity addCounty(SysCountyEntity sysCountyEntity) {
|
||||
sysCountyMapper.insert(sysCountyEntity);
|
||||
return sysCountyEntity;
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysCountyEntity updateCounty(SysCountyEntity sysCountyEntity) {
|
||||
sysCountyMapper.updateById(sysCountyEntity);
|
||||
return sysCountyEntity;
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysProvinceEntity findProvinceMaxCode(){
|
||||
return sysProvinceMapper.findProvinceMaxCode();
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysCityEntity findCityMaxCode(Long provinceCode){
|
||||
return sysCityMapper.findCityMaxCode(provinceCode);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysCountyEntity findCountyMaxCode(Long cityCode){
|
||||
return sysCountyMapper.findCountyMaxCode(cityCode);
|
||||
}
|
||||
@Override
|
||||
public SysAreaPO findAreaInfo(SysProvinceCityCountyDO sysProvinceDO){
|
||||
return sysCountyMapper.findAreaInfo(sysProvinceDO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysAreaPO findAreaInfoByCityCode(SysProvinceCityCountyDO sysProvinceDO) {
|
||||
return sysCountyMapper.findAreaInfoByCityCode(sysProvinceDO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysAreaPO findAreaInfoByProvince(SysProvinceCityCountyDO sysProvinceDO) {
|
||||
return sysCountyMapper.findAreaInfoByProvince(sysProvinceDO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteProvinceByCode(String code) {
|
||||
LambdaUpdateWrapper<SysProvinceEntity> updateWrapper = new LambdaUpdateWrapper<>();
|
||||
updateWrapper.set(SysProvinceEntity::getDelFlag,2);
|
||||
|
||||
updateWrapper.eq(SysProvinceEntity::getProvinceCode,code);
|
||||
updateWrapper.eq(SysProvinceEntity::getDelFlag,1);
|
||||
sysProvinceMapper.update(new SysProvinceEntity(),updateWrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteCityByCode(String code) {
|
||||
LambdaUpdateWrapper<SysCityEntity> updateWrapper = new LambdaUpdateWrapper<>();
|
||||
updateWrapper.set(SysCityEntity::getDelFlag,2);
|
||||
|
||||
updateWrapper.eq(SysCityEntity::getCityCode,code);
|
||||
updateWrapper.eq(SysCityEntity::getDelFlag,1);
|
||||
sysCityMapper.update(new SysCityEntity(),updateWrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteCountryByCode(String code) {
|
||||
LambdaUpdateWrapper<SysCountyEntity> updateWrapper = new LambdaUpdateWrapper<>();
|
||||
updateWrapper.set(SysCountyEntity::getDelFlag,2);
|
||||
|
||||
updateWrapper.eq(SysCountyEntity::getCountyCode,code);
|
||||
updateWrapper.eq(SysCountyEntity::getDelFlag,1);
|
||||
sysCountyMapper.update(new SysCountyEntity(),updateWrapper);
|
||||
}
|
||||
}
|
||||
+29
@@ -0,0 +1,29 @@
|
||||
package com.mhd.basic.domain.areaAggregate.repository.po;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class SysAreaPO {
|
||||
@ApiModelProperty(name = "areaId")
|
||||
private String areaId="";
|
||||
@ApiModelProperty(name = "parentAreaCode")
|
||||
private Long parentAreaCode = 0L;
|
||||
@ApiModelProperty(name = "编码")
|
||||
private Long areaCode = 0L;
|
||||
@ApiModelProperty(name = "编码-最新")
|
||||
private Long areaCodeNew = 0L;
|
||||
@ApiModelProperty(name = "名称")
|
||||
private String areaName = "";
|
||||
@ApiModelProperty(name = "备注信息")
|
||||
private String areaRemark = "";
|
||||
@ApiModelProperty(name = "省市县名称")
|
||||
private String provinceCityCountyName = "";
|
||||
|
||||
@ApiModelProperty(name = "省")
|
||||
private String provinceName = "";
|
||||
@ApiModelProperty(name = "市")
|
||||
private String cityName = "";
|
||||
@ApiModelProperty(name = "县区")
|
||||
private String countyName = "";
|
||||
}
|
||||
+41
@@ -0,0 +1,41 @@
|
||||
package com.mhd.basic.domain.areaAggregate.repository.po;
|
||||
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class SysProvinceCityCountyPO extends BaseVOEntity {
|
||||
|
||||
@ApiModelProperty(name = "省份表id")
|
||||
private Long provinceId;
|
||||
@ApiModelProperty(name = "省份编码")
|
||||
private Long provinceCode;
|
||||
@ApiModelProperty(name = "省份名称")
|
||||
private String provinceName;
|
||||
@ApiModelProperty(name = "省份备注信息")
|
||||
private String provinceRemark;
|
||||
|
||||
@ApiModelProperty(name = "城市表id")
|
||||
private Long cityId;
|
||||
@ApiModelProperty(name = "城市编码")
|
||||
private Long cityCode;
|
||||
@ApiModelProperty(name = "城市编码-最新")
|
||||
private Long cityCodeNew;
|
||||
@ApiModelProperty(name = "城市名称")
|
||||
private String cityName;
|
||||
@ApiModelProperty(name = "城市备注信息")
|
||||
private String cityRemark;
|
||||
|
||||
@ApiModelProperty(name = "区县表id")
|
||||
private Long countyId;
|
||||
@ApiModelProperty(name = "区县编码")
|
||||
private Long countyCode;
|
||||
@ApiModelProperty(name = "区县编码-最新")
|
||||
private Long countyCodeNew;
|
||||
@ApiModelProperty(name = "区县名称")
|
||||
private String countyName;
|
||||
@ApiModelProperty(name = "区县备注信息")
|
||||
private String countyRemark;
|
||||
|
||||
}
|
||||
+48
@@ -0,0 +1,48 @@
|
||||
package com.mhd.basic.domain.areaAggregate.repository.todo;
|
||||
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class SysProvinceCityCountyDO extends BaseVOEntity {
|
||||
|
||||
@ApiModelProperty(name = "省份表id")
|
||||
private Long provinceId;
|
||||
@ApiModelProperty(name = "省份编码")
|
||||
private Long provinceCode;
|
||||
@ApiModelProperty(name = "省份名称")
|
||||
private String provinceName;
|
||||
@ApiModelProperty(name = "省份备注信息")
|
||||
private String provinceRemark;
|
||||
|
||||
@ApiModelProperty(name = "城市表id")
|
||||
private Long cityId;
|
||||
@ApiModelProperty(name = "城市编码")
|
||||
private Long cityCode;
|
||||
@ApiModelProperty(name = "城市编码-最新")
|
||||
private Long cityCodeNew;
|
||||
@ApiModelProperty(name = "城市名称")
|
||||
private String cityName;
|
||||
@ApiModelProperty(name = "城市备注信息")
|
||||
private String cityRemark;
|
||||
|
||||
@ApiModelProperty(name = "区县表id")
|
||||
private Long countyId;
|
||||
@ApiModelProperty(name = "区县编码")
|
||||
private Long countyCode;
|
||||
@ApiModelProperty(name = "区县编码-最新")
|
||||
private Long countyCodeNew;
|
||||
@ApiModelProperty(name = "区县名称")
|
||||
private String countyName;
|
||||
@ApiModelProperty(name = "区县备注信息")
|
||||
private String countyRemark;
|
||||
|
||||
@ApiModelProperty(name = "区县编码集合")
|
||||
private List<Long> countyCodes;
|
||||
@ApiModelProperty(name = "查询条件名称")
|
||||
private String name;
|
||||
|
||||
}
|
||||
+366
@@ -0,0 +1,366 @@
|
||||
package com.mhd.basic.domain.areaAggregate.service;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.google.common.base.Strings;
|
||||
import com.mhd.basic.domain.areaAggregate.entity.SysCityEntity;
|
||||
import com.mhd.basic.domain.areaAggregate.entity.SysCountyEntity;
|
||||
import com.mhd.basic.domain.areaAggregate.entity.SysProvinceEntity;
|
||||
import com.mhd.basic.domain.areaAggregate.repository.facade.SysProvinceCityCountyRepositoryInterface;
|
||||
import com.mhd.basic.domain.areaAggregate.repository.po.SysAreaPO;
|
||||
import com.mhd.basic.domain.areaAggregate.repository.todo.SysProvinceCityCountyDO;
|
||||
import com.mhd.basic.domain.areaAggregate.factory.SysProvinceCityCountyFactory;
|
||||
import com.mhd.common.core.exception.ServiceException;
|
||||
import com.mhd.common.security.utils.SecurityUtils;
|
||||
import com.mhd.system.api.model.LoginUser;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
public class SysProvinceCityCountyDomainService {
|
||||
|
||||
@Autowired
|
||||
private SysProvinceCityCountyFactory sysProvinceFactory;
|
||||
@Resource
|
||||
private SysProvinceCityCountyRepositoryInterface sysProvinceRepositoryInterface;
|
||||
|
||||
|
||||
public List<SysProvinceEntity> selectProvinceList(SysProvinceCityCountyDO sysProvinceDO) {
|
||||
return sysProvinceRepositoryInterface.selectProvinceList(sysProvinceDO);
|
||||
}
|
||||
|
||||
/**
|
||||
* @Description 新增省
|
||||
* @Author Alex
|
||||
* @Date 2022/12/21 16:56
|
||||
*/
|
||||
public SysProvinceEntity addProvince(SysProvinceCityCountyDO sysProvinceDO) {
|
||||
if(ObjectUtil.isNotNull(sysProvinceDO.getProvinceId())){
|
||||
return updateProvince(sysProvinceDO);
|
||||
}else {
|
||||
SysProvinceEntity sysProvinceEntity = sysProvinceFactory.getProvinceEntity(sysProvinceDO);
|
||||
//获取登录人信息
|
||||
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||
SysProvinceEntity sysProvinceEntityDB = sysProvinceRepositoryInterface.findProvinceByProvinceCode(sysProvinceDO.getProvinceCode());
|
||||
//查询当前省份code最大的省份
|
||||
SysProvinceEntity sysProvince = sysProvinceRepositoryInterface.findProvinceMaxCode();
|
||||
if (ObjectUtil.isNotNull(sysProvinceEntityDB)) {
|
||||
throw new ServiceException("该省份编码【" + sysProvinceDO.getProvinceCode() + "】已存在!");
|
||||
}
|
||||
if (ObjectUtil.isNotNull(loginUser)) {
|
||||
sysProvinceEntity.setCreateBy(loginUser.getUserid());
|
||||
sysProvinceEntity.setCreateByName(loginUser.getUserPo().getUserName());
|
||||
}
|
||||
//判断当前是否有省
|
||||
// if (sysProvince != null) {
|
||||
// sysProvinceEntity.setProvinceCode(sysProvince.getProvinceCode() + new Long("1"));
|
||||
// } else {
|
||||
// sysProvinceEntity.setProvinceCode(new Long("11"));
|
||||
// }
|
||||
sysProvinceEntity.setCreateTime(new Date());
|
||||
sysProvinceEntity.setDelFlag(1);
|
||||
return sysProvinceRepositoryInterface.addProvince(sysProvinceEntity);
|
||||
}
|
||||
}
|
||||
|
||||
public SysProvinceEntity updateProvince(SysProvinceCityCountyDO sysProvinceDO) {
|
||||
if (ObjectUtil.isNull(sysProvinceDO.getProvinceId())) {
|
||||
throw new ServiceException("省份id不存在!");
|
||||
}
|
||||
SysProvinceEntity sysProvinceEntity = sysProvinceFactory.getProvinceEntity(sysProvinceDO);
|
||||
SysProvinceEntity sysProvinceEntityDBa = sysProvinceRepositoryInterface.findProvinceById(sysProvinceDO.getProvinceId());
|
||||
if (ObjectUtil.isNull(sysProvinceEntityDBa)) {
|
||||
throw new ServiceException("省份不存在!");
|
||||
} else {
|
||||
SysProvinceEntity sysProvinceEntityDBb = sysProvinceRepositoryInterface.findProvinceByProvinceCode(sysProvinceDO.getProvinceCode());
|
||||
if (ObjectUtil.isNotNull(sysProvinceEntityDBb) && !sysProvinceEntityDBb.getProvinceId().equals(sysProvinceDO.getProvinceId())) {
|
||||
throw new ServiceException("该省份编码【" + sysProvinceDO.getProvinceCode() + "】已存在!");
|
||||
}
|
||||
}
|
||||
//获取登录人信息
|
||||
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||
if (ObjectUtil.isNotNull(loginUser)) {
|
||||
sysProvinceEntity.setUpdateBy(loginUser.getUserid());
|
||||
sysProvinceEntity.setUpdateByName(loginUser.getUserPo().getUserName());
|
||||
}
|
||||
sysProvinceEntity.setUpdateTime(new Date());
|
||||
return sysProvinceRepositoryInterface.updateProvince(sysProvinceEntity);
|
||||
}
|
||||
|
||||
public int deleteProvinceByIds(List<Long> ids) {
|
||||
for (Long provinceId : ids) {
|
||||
SysProvinceEntity sysProvinceEntity = sysProvinceRepositoryInterface.findProvinceById(provinceId);
|
||||
if (ObjectUtil.isNotNull(sysProvinceEntity)) {
|
||||
//获取登录人信息
|
||||
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||
if (ObjectUtil.isNotNull(loginUser)) {
|
||||
sysProvinceEntity.setUpdateBy(loginUser.getUserid());
|
||||
sysProvinceEntity.setUpdateByName(loginUser.getUserPo().getUserName());
|
||||
}
|
||||
//删除标记:0-无状态,1-正常,2-已删除
|
||||
sysProvinceEntity.setDelFlag(2);
|
||||
sysProvinceEntity.setUpdateTime(new Date());
|
||||
sysProvinceRepositoryInterface.updateProvince(sysProvinceEntity);
|
||||
}
|
||||
}
|
||||
return ids.size();
|
||||
}
|
||||
|
||||
public List<SysCityEntity> selectCityList(SysProvinceCityCountyDO sysProvinceDO) {
|
||||
return sysProvinceRepositoryInterface.selectCityList(sysProvinceDO);
|
||||
}
|
||||
|
||||
public SysCityEntity addCity(SysProvinceCityCountyDO sysProvinceDO) {
|
||||
if (ObjectUtil.isNull(sysProvinceDO.getProvinceCode())
|
||||
|| ObjectUtil.isNull(sysProvinceDO.getCityCode())
|
||||
|| Strings.isNullOrEmpty(sysProvinceDO.getCityName())) {
|
||||
throw new ServiceException("必填信息不允许为空!");
|
||||
}
|
||||
if (ObjectUtil.isNotNull(sysProvinceDO.getCityId())) {
|
||||
return updateCity(sysProvinceDO);
|
||||
} else {
|
||||
SysProvinceEntity sysProvinceEntity = sysProvinceRepositoryInterface.findProvinceByProvinceCode(sysProvinceDO.getProvinceCode());
|
||||
if (ObjectUtil.isNull(sysProvinceEntity)) {
|
||||
throw new ServiceException("省份编码" + sysProvinceDO.getProvinceCode() + "不存在!");
|
||||
}
|
||||
SysCityEntity sysCityEntity = sysProvinceFactory.getCityEntity(sysProvinceDO);
|
||||
sysCityEntity.setProvinceCode(new Long(sysProvinceDO.getProvinceCode()));
|
||||
|
||||
//获取登录人信息
|
||||
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||
SysCityEntity sysCityEntityDB = sysProvinceRepositoryInterface.findCityByCityCode(sysProvinceDO.getCityCode());
|
||||
//查询当前省份下的城市code最大的城市
|
||||
// SysCityEntity sysCity = sysProvinceRepositoryInterface.findCityMaxCode(new Long(sysProvinceDO.getProvinceCode()));
|
||||
if (ObjectUtil.isNotNull(sysCityEntityDB)) {
|
||||
throw new ServiceException("该城市编码【" + sysProvinceDO.getCityCode() + "】已存在!");
|
||||
}
|
||||
if (ObjectUtil.isNull(sysCityEntity.getCityCodeNew())) {
|
||||
sysCityEntity.setCityCodeNew(sysCityEntity.getCityCode());
|
||||
}
|
||||
if (ObjectUtil.isNotNull(loginUser)) {
|
||||
sysCityEntity.setCreateBy(loginUser.getUserid());
|
||||
sysCityEntity.setCreateByName(loginUser.getUserPo().getUserName());
|
||||
}
|
||||
/* //判断当前省份下的城市是否存在
|
||||
if(sysCity != null){
|
||||
sysCityEntity.setCityCode(sysCity.getCityCode()+new Long("1"));
|
||||
sysCityEntity.setCityCodeNew(sysCity.getCityCode()+new Long("1"));
|
||||
}else {
|
||||
sysCityEntity.setCityCode(new Long(sysCity.getCityCode()+"01"));
|
||||
sysCityEntity.setCityCodeNew(new Long(sysCity.getCityCode()+"01"));
|
||||
}*/
|
||||
sysCityEntity.setCreateTime(new Date());
|
||||
sysCityEntity.setDelFlag(1);
|
||||
return sysProvinceRepositoryInterface.addCity(sysCityEntity);
|
||||
}
|
||||
}
|
||||
|
||||
public SysCityEntity updateCity(SysProvinceCityCountyDO sysProvinceDO) {
|
||||
if (ObjectUtil.isNull(sysProvinceDO.getProvinceCode())) {
|
||||
throw new ServiceException("省份编码不存在!");
|
||||
}
|
||||
SysProvinceEntity sysProvinceEntity = sysProvinceRepositoryInterface.findProvinceByProvinceCode(sysProvinceDO.getProvinceCode());
|
||||
if (ObjectUtil.isNull(sysProvinceEntity)) {
|
||||
throw new ServiceException("省份编码【" + sysProvinceDO.getProvinceCode() + "】不存在!");
|
||||
}
|
||||
if (ObjectUtil.isNull(sysProvinceDO.getCityId())) {
|
||||
throw new ServiceException("城市id不存在!");
|
||||
}
|
||||
SysCityEntity sysCityEntity = sysProvinceFactory.getCityEntity(sysProvinceDO);
|
||||
SysCityEntity sysCityEntityDBa = sysProvinceRepositoryInterface.findCityById(sysProvinceDO.getCityId());
|
||||
if (ObjectUtil.isNull(sysCityEntityDBa)) {
|
||||
throw new ServiceException("城市不存在!");
|
||||
} else {
|
||||
SysCityEntity sysCityEntityDBb = sysProvinceRepositoryInterface.findCityByCityCode(sysProvinceDO.getCityCode());
|
||||
if (ObjectUtil.isNotNull(sysCityEntityDBb) && !sysCityEntityDBb.getCityId().equals(sysProvinceDO.getCityId())) {
|
||||
throw new ServiceException("该城市编码【" + sysProvinceDO.getCityCode() + "】已存在!");
|
||||
}
|
||||
}
|
||||
//获取登录人信息
|
||||
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||
if (ObjectUtil.isNotNull(loginUser)) {
|
||||
sysCityEntity.setUpdateBy(loginUser.getUserid());
|
||||
sysCityEntity.setUpdateByName(loginUser.getUserPo().getUserName());
|
||||
}
|
||||
sysCityEntity.setUpdateTime(new Date());
|
||||
return sysProvinceRepositoryInterface.updateCity(sysCityEntity);
|
||||
}
|
||||
|
||||
public int deleteCityByIds(List<Long> ids) {
|
||||
for (Long cityId : ids) {
|
||||
SysCityEntity sysCityEntity = sysProvinceRepositoryInterface.findCityById(cityId);
|
||||
if (ObjectUtil.isNotNull(sysCityEntity)) {
|
||||
//获取登录人信息
|
||||
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||
if (ObjectUtil.isNotNull(loginUser)) {
|
||||
sysCityEntity.setUpdateBy(loginUser.getUserid());
|
||||
sysCityEntity.setUpdateByName(loginUser.getUserPo().getUserName());
|
||||
}
|
||||
//删除标记:0-无状态,1-正常,2-已删除
|
||||
sysCityEntity.setDelFlag(2);
|
||||
sysCityEntity.setUpdateTime(new Date());
|
||||
sysProvinceRepositoryInterface.updateCity(sysCityEntity);
|
||||
}
|
||||
}
|
||||
return ids.size();
|
||||
}
|
||||
|
||||
public List<SysCountyEntity> selectCountyList(SysProvinceCityCountyDO sysProvinceDO) {
|
||||
return sysProvinceRepositoryInterface.selectCountyList(sysProvinceDO);
|
||||
}
|
||||
|
||||
public SysCountyEntity addCounty(SysProvinceCityCountyDO sysProvinceDO) {
|
||||
if (ObjectUtil.isNull(sysProvinceDO.getCityCode())
|
||||
|| ObjectUtil.isNull(sysProvinceDO.getCountyCode())
|
||||
|| Strings.isNullOrEmpty(sysProvinceDO.getCountyName())) {
|
||||
throw new ServiceException("必填信息不允许为空!");
|
||||
}
|
||||
if (ObjectUtil.isNotNull(sysProvinceDO.getCountyId())) {
|
||||
return updateCounty(sysProvinceDO);
|
||||
} else {
|
||||
SysCountyEntity sysCountyEntity = sysProvinceFactory.getCountyEntity(sysProvinceDO);
|
||||
//获取登录人信息
|
||||
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||
SysCountyEntity sysCountyEntityDB = sysProvinceRepositoryInterface.findCountyByCountyCode(sysProvinceDO.getCountyCode());
|
||||
if (ObjectUtil.isNotNull(sysCountyEntityDB)) {
|
||||
throw new ServiceException("该区县编码【" + sysProvinceDO.getCountyCode() + "】已存在!");
|
||||
}
|
||||
if(ObjectUtil.isNull(sysCountyEntity.getCountyCodeNew())){
|
||||
sysCountyEntity.setCountyCodeNew(sysCountyEntity.getCountyCode());
|
||||
}
|
||||
//查询当前城市下的县区code最大的县区
|
||||
// SysCountyEntity sysCounty = sysProvinceRepositoryInterface.findCountyMaxCode(new Long(sysProvinceDO.getCityCode()));
|
||||
|
||||
if (ObjectUtil.isNotNull(loginUser)) {
|
||||
sysCountyEntity.setCreateBy(loginUser.getUserid());
|
||||
sysCountyEntity.setCreateByName(loginUser.getUserPo().getUserName());
|
||||
}
|
||||
//判断当前省份下的城市是否存在
|
||||
/*if (sysCounty != null) {
|
||||
sysCountyEntity.setCountyCode(sysCounty.getCountyCode() + new Long("1"));
|
||||
sysCountyEntity.setCountyCodeNew(sysCounty.getCountyCode() + new Long("1"));
|
||||
} else {
|
||||
sysCountyEntity.setCountyCode(new Long(sysCounty.getCountyCode() + "01"));
|
||||
sysCountyEntity.setCountyCodeNew(new Long(sysCounty.getCountyCode() + "01"));
|
||||
}*/
|
||||
sysCountyEntity.setCreateTime(new Date());
|
||||
sysCountyEntity.setDelFlag(1);
|
||||
return sysProvinceRepositoryInterface.addCounty(sysCountyEntity);
|
||||
}
|
||||
}
|
||||
|
||||
public SysCountyEntity updateCounty(SysProvinceCityCountyDO sysProvinceDO) {
|
||||
if (ObjectUtil.isNull(sysProvinceDO.getCityCode())) {
|
||||
throw new ServiceException("城市编码不存在!");
|
||||
}
|
||||
SysCityEntity sysCityEntity = sysProvinceRepositoryInterface.findCityByCityCode(sysProvinceDO.getCityCode());
|
||||
if (ObjectUtil.isNull(sysCityEntity)) {
|
||||
throw new ServiceException("城市编码【" + sysProvinceDO.getCityCode() + "】不存在!");
|
||||
}
|
||||
if (ObjectUtil.isNull(sysProvinceDO.getCountyId())) {
|
||||
throw new ServiceException("区县id不存在!");
|
||||
}
|
||||
SysCountyEntity sysCountyEntity = sysProvinceFactory.getCountyEntity(sysProvinceDO);
|
||||
SysCountyEntity sysCountyEntityDBa = sysProvinceRepositoryInterface.findCountyById(sysProvinceDO.getCountyId());
|
||||
if (ObjectUtil.isNull(sysCountyEntityDBa)) {
|
||||
throw new ServiceException("区县不存在!");
|
||||
} else {
|
||||
SysCountyEntity sysCountyEntityDBb = sysProvinceRepositoryInterface.findCountyByCountyCode(sysProvinceDO.getCountyCode());
|
||||
if (ObjectUtil.isNotNull(sysCountyEntityDBb) && !sysCountyEntityDBb.getCountyId().equals(sysProvinceDO.getCountyId())) {
|
||||
throw new ServiceException("该区县编码【" + sysProvinceDO.getCountyCode() + "】已存在!");
|
||||
}
|
||||
}
|
||||
//获取登录人信息
|
||||
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||
if (ObjectUtil.isNotNull(loginUser)) {
|
||||
sysCountyEntity.setUpdateBy(loginUser.getUserid());
|
||||
sysCountyEntity.setUpdateByName(loginUser.getUserPo().getUserName());
|
||||
}
|
||||
sysCountyEntity.setUpdateTime(new Date());
|
||||
return sysProvinceRepositoryInterface.updateCounty(sysCountyEntity);
|
||||
}
|
||||
|
||||
public int deleteCountyByIds(List<String> ids) {
|
||||
for (String cityId : ids) {
|
||||
if (ObjectUtil.isNull(cityId)) {
|
||||
throw new ServiceException("区县id不允许为空!");
|
||||
}
|
||||
Long cityIdLong = Long.valueOf(cityId);
|
||||
SysCountyEntity sysCountyEntity = sysProvinceRepositoryInterface.findCountyById(cityIdLong);
|
||||
if (ObjectUtil.isNotNull(sysCountyEntity)) {
|
||||
//获取登录人信息
|
||||
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||
if (ObjectUtil.isNotNull(loginUser)) {
|
||||
sysCountyEntity.setUpdateBy(loginUser.getUserid());
|
||||
sysCountyEntity.setUpdateByName(loginUser.getUserPo().getUserName());
|
||||
}
|
||||
//删除标记:0-无状态,1-正常,2-已删除
|
||||
sysCountyEntity.setDelFlag(2);
|
||||
sysCountyEntity.setUpdateTime(new Date());
|
||||
sysProvinceRepositoryInterface.updateCounty(sysCountyEntity);
|
||||
}
|
||||
}
|
||||
return ids.size();
|
||||
}
|
||||
|
||||
|
||||
public List<SysAreaPO> selectProvinceAreaList(SysProvinceCityCountyDO sysProvinceDO) {
|
||||
return sysProvinceRepositoryInterface.selectProvinceAreaList(sysProvinceDO);
|
||||
}
|
||||
|
||||
public List<SysAreaPO> selectCityAreaList(SysProvinceCityCountyDO sysProvinceDO) {
|
||||
return sysProvinceRepositoryInterface.selectCityAreaList(sysProvinceDO);
|
||||
}
|
||||
|
||||
public List<SysAreaPO> selectCountyAreaList(SysProvinceCityCountyDO sysProvinceDO) {
|
||||
return sysProvinceRepositoryInterface.selectCountyAreaList(sysProvinceDO);
|
||||
}
|
||||
|
||||
public List<SysAreaPO> selectAreaChildrenList(SysProvinceCityCountyDO sysProvinceDO) {
|
||||
return sysProvinceRepositoryInterface.selectAllAreaList(sysProvinceDO);
|
||||
}
|
||||
public List<SysAreaPO> selectBranchAreaChildrenList(SysProvinceCityCountyDO sysProvinceDO) {
|
||||
return sysProvinceRepositoryInterface.selectBranchAreaChildrenList(sysProvinceDO);
|
||||
}
|
||||
public List<SysAreaPO> selectSsqhList() {
|
||||
return sysProvinceRepositoryInterface.selectSsqhList();
|
||||
}
|
||||
|
||||
public List<SysAreaPO> selectAllAreaList(SysProvinceCityCountyDO sysProvinceDO) {
|
||||
return sysProvinceRepositoryInterface.selectAllAreaList(sysProvinceDO);
|
||||
}
|
||||
|
||||
public SysAreaPO findAreaInfo(SysProvinceCityCountyDO sysProvinceDO){
|
||||
return sysProvinceRepositoryInterface.findAreaInfo(sysProvinceDO);
|
||||
}
|
||||
|
||||
public SysAreaPO findAreaInfoByCityCode(SysProvinceCityCountyDO sysProvinceDO) {
|
||||
return sysProvinceRepositoryInterface.findAreaInfoByCityCode(sysProvinceDO);
|
||||
}
|
||||
|
||||
public SysAreaPO findAreaInfoByProvince(SysProvinceCityCountyDO sysProvinceDO) {
|
||||
return sysProvinceRepositoryInterface.findAreaInfoByProvince(sysProvinceDO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据code删除省份
|
||||
*/
|
||||
public void deleteprovinceByCode(String code) {
|
||||
sysProvinceRepositoryInterface.deleteProvinceByCode(code);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据code删除市
|
||||
*/
|
||||
public void deleteCityByCode(String code) {
|
||||
sysProvinceRepositoryInterface.deleteCityByCode(code);
|
||||
}
|
||||
|
||||
public void deleteCountryByCode(String code) {
|
||||
sysProvinceRepositoryInterface.deleteCountryByCode(code);
|
||||
}
|
||||
}
|
||||
+62
@@ -0,0 +1,62 @@
|
||||
package com.mhd.basic.domain.associationWarehouse.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
import java.math.BigDecimal;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
|
||||
|
||||
/**
|
||||
* 关联仓库对象 association_warehouse
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-06-11
|
||||
*/
|
||||
|
||||
@Data
|
||||
public class AssociationWarehouse extends BaseVOEntity{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("关联仓库id")
|
||||
@TableId(type = IdType.AUTO)
|
||||
private Long associationWarehouseId;
|
||||
|
||||
@ApiModelProperty("组织表ID")
|
||||
@Excel(name = "组织表ID")
|
||||
private Long organizationId;
|
||||
|
||||
@ApiModelProperty("组织名称")
|
||||
@Excel(name = "组织名称")
|
||||
private String organizationName;
|
||||
|
||||
@ApiModelProperty("一级组织表ID")
|
||||
@Excel(name = "一级组织表ID")
|
||||
private Long topOrganizationId;
|
||||
|
||||
@ApiModelProperty("关联ID(组织或员工用户ID)")
|
||||
@Excel(name = "关联ID(组织或员工用户ID)")
|
||||
private Long correlationId;
|
||||
|
||||
@ApiModelProperty("是否默认仓库: 1-否 2-是 ")
|
||||
@Excel(name = "是否默认仓库: 1-否 2-是 ")
|
||||
private Integer isDefault;
|
||||
|
||||
@ApiModelProperty("仓库ID")
|
||||
@Excel(name = "仓库ID")
|
||||
private Long warehouseId;
|
||||
|
||||
@ApiModelProperty("仓库编码")
|
||||
@Excel(name = "仓库编码")
|
||||
private String warehouseCode;
|
||||
|
||||
@ApiModelProperty("仓库名称")
|
||||
@Excel(name = "仓库名称")
|
||||
private String warehouseName;
|
||||
|
||||
|
||||
}
|
||||
+38
@@ -0,0 +1,38 @@
|
||||
package com.mhd.basic.domain.associationWarehouse.repository.facade;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.mhd.basic.domain.associationWarehouse.entity.AssociationWarehouse;
|
||||
import com.mhd.basic.domain.associationWarehouse.repository.po.AssociationWarehousePO;
|
||||
import com.mhd.basic.domain.associationWarehouse.repository.todo.AssociationWarehouseDO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 关联仓库Service接口
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-06-11
|
||||
*/
|
||||
public interface IAssociationWarehouseService extends IService<AssociationWarehouse>
|
||||
{
|
||||
/**
|
||||
* 分页查询关联仓库列表
|
||||
*/
|
||||
public List<AssociationWarehousePO> queryList(AssociationWarehouseDO associationWarehouseDO);
|
||||
|
||||
/**
|
||||
* 新增关联仓库
|
||||
*/
|
||||
public Boolean associationWarehouse(AssociationWarehouseDO associationWarehouseDO);
|
||||
|
||||
/**
|
||||
* 批量删除关联仓库
|
||||
*/
|
||||
public Boolean delete(Long[] associationWarehouseIds);
|
||||
|
||||
|
||||
/**
|
||||
* 查询关联仓库
|
||||
*/
|
||||
public AssociationWarehousePO getInfo(Long associationWarehouseId);
|
||||
}
|
||||
+22
@@ -0,0 +1,22 @@
|
||||
package com.mhd.basic.domain.associationWarehouse.repository.mapper;
|
||||
|
||||
import java.util.List;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.mhd.basic.domain.associationWarehouse.entity.AssociationWarehouse;
|
||||
import com.mhd.basic.domain.associationWarehouse.repository.po.AssociationWarehousePO;
|
||||
import com.mhd.basic.domain.associationWarehouse.repository.todo.AssociationWarehouseDO;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
/**
|
||||
* 关联仓库Mapper接口
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-06-11
|
||||
*/
|
||||
public interface AssociationWarehouseMapper extends BaseMapper<AssociationWarehouse>
|
||||
{
|
||||
/**
|
||||
* 查询关联仓库列表
|
||||
*/
|
||||
public List<AssociationWarehousePO> queryList(AssociationWarehouseDO associationWarehouseDO);
|
||||
|
||||
}
|
||||
+175
@@ -0,0 +1,175 @@
|
||||
package com.mhd.basic.domain.associationWarehouse.repository.persistence;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.mhd.basic.domain.associationWarehouse.entity.AssociationWarehouse;
|
||||
import com.mhd.basic.domain.associationWarehouse.repository.facade.IAssociationWarehouseService;
|
||||
import com.mhd.basic.domain.associationWarehouse.repository.mapper.AssociationWarehouseMapper;
|
||||
import com.mhd.basic.domain.associationWarehouse.repository.po.AssociationWarehousePO;
|
||||
import com.mhd.basic.domain.associationWarehouse.repository.todo.AssociationWarehouseDO;
|
||||
import com.mhd.basic.domain.warehouse.entity.Warehouse;
|
||||
import com.mhd.basic.domain.warehouse.repository.mapper.WarehouseMapper;
|
||||
import com.mhd.common.core.exception.ServiceException;
|
||||
import com.mhd.common.core.utils.StringUtils;
|
||||
import com.mhd.common.security.utils.SecurityUtils;
|
||||
import com.mhd.system.api.model.LoginUser;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 关联仓库Service业务层处理
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-06-11
|
||||
*/
|
||||
@Service
|
||||
public class AssociationWarehouseImpl extends ServiceImpl<AssociationWarehouseMapper, AssociationWarehouse> implements IAssociationWarehouseService{
|
||||
@Autowired
|
||||
private AssociationWarehouseMapper associationWarehouseMapper;
|
||||
@Autowired
|
||||
private WarehouseMapper warehouseMapper;
|
||||
|
||||
/**
|
||||
* 查询关联仓库列表
|
||||
*/
|
||||
@Override
|
||||
public List<AssociationWarehousePO> queryList(AssociationWarehouseDO associationWarehouseDO)
|
||||
{
|
||||
return associationWarehouseMapper.queryList(associationWarehouseDO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增关联仓库
|
||||
*/
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean associationWarehouse(AssociationWarehouseDO associationWarehouseDO) {
|
||||
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||
List<AssociationWarehouse> associationWarehouseList = new ArrayList<>();
|
||||
//批量绑定
|
||||
if(null != associationWarehouseDO.getIsBatch() && associationWarehouseDO.getIsBatch() == 1){
|
||||
if(CollectionUtils.isEmpty(associationWarehouseDO.getWarehouseIdIdList())){
|
||||
throw new ServiceException("请选择绑定仓库!");
|
||||
}
|
||||
if(CollectionUtils.isEmpty(associationWarehouseDO.getCorrelationIdList())){
|
||||
throw new ServiceException("请选择绑定人员!");
|
||||
}
|
||||
//首先根据要绑定的仓库id集合查询已经绑定的数据
|
||||
List<AssociationWarehouse> associationWarehouses = associationWarehouseMapper.selectList(new QueryWrapper<AssociationWarehouse>().lambda().in(AssociationWarehouse::getWarehouseId, associationWarehouseDO.getWarehouseIdIdList()));
|
||||
// 根据仓库id进行分组,为下面比较新增做准备
|
||||
Map<Long, List<Long>> correlationIdGroupMap = new HashMap<>();
|
||||
if (!CollectionUtils.isEmpty(associationWarehouses)) {
|
||||
correlationIdGroupMap = associationWarehouses.stream()
|
||||
.collect(Collectors.groupingBy(
|
||||
AssociationWarehouse::getWarehouseId,
|
||||
Collectors.mapping(AssociationWarehouse::getCorrelationId, Collectors.toList())
|
||||
));
|
||||
}
|
||||
//循环所有仓库id
|
||||
for (Long warehouseIdId : associationWarehouseDO.getWarehouseIdIdList()){
|
||||
List<Long> correlationIdList = associationWarehouseDO.getCorrelationIdList();
|
||||
//移除已经绑定的人员
|
||||
List<Long> removedCorrelationIds = correlationIdGroupMap.get(warehouseIdId);
|
||||
if(!CollectionUtils.isEmpty(removedCorrelationIds)){
|
||||
correlationIdList.removeAll(removedCorrelationIds);
|
||||
}
|
||||
for (Long correlationId : correlationIdList){
|
||||
AssociationWarehouse associationWarehouse = new AssociationWarehouse();
|
||||
associationWarehouse.setOrganizationId(loginUser.getUserPo().getOrganizationId());
|
||||
associationWarehouse.setOrganizationName(loginUser.getUserPo().getOrganizationName());
|
||||
associationWarehouse.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId());
|
||||
associationWarehouse.setCorrelationId(correlationId);
|
||||
//设置仓库信息
|
||||
associationWarehouseDO.setWarehouseId(warehouseIdId);
|
||||
warehouseParam(associationWarehouseDO);
|
||||
associationWarehouse.setWarehouseId(associationWarehouseDO.getWarehouseId());
|
||||
associationWarehouse.setWarehouseCode(associationWarehouseDO.getWarehouseCode());
|
||||
associationWarehouse.setWarehouseName(associationWarehouseDO.getWarehouseName());
|
||||
associationWarehouse.setCreateBy(loginUser.getUserid());
|
||||
associationWarehouse.setCreateByName(loginUser.getUsername());
|
||||
associationWarehouse.setCreateTime(new Date());
|
||||
associationWarehouseList.add(associationWarehouse);
|
||||
}
|
||||
}
|
||||
}else {
|
||||
//单个仓库
|
||||
List<Long> warehouseIdIdList = associationWarehouseDO.getWarehouseIdIdList();
|
||||
if(CollectionUtils.isEmpty(warehouseIdIdList) || associationWarehouseDO.getWarehouseIdIdList().size() != 1){
|
||||
throw new ServiceException("请正确选择绑定仓库!");
|
||||
}
|
||||
associationWarehouseDO.setWarehouseId(associationWarehouseDO.getWarehouseIdIdList().get(0));
|
||||
//设置仓库信息
|
||||
warehouseParam(associationWarehouseDO);
|
||||
for (Long correlationId : associationWarehouseDO.getCorrelationIdList()){
|
||||
AssociationWarehouse associationWarehouse = new AssociationWarehouse();
|
||||
associationWarehouse.setOrganizationId(loginUser.getUserPo().getOrganizationId());
|
||||
associationWarehouse.setOrganizationName(loginUser.getUserPo().getOrganizationName());
|
||||
associationWarehouse.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId());
|
||||
associationWarehouse.setCorrelationId(correlationId);
|
||||
associationWarehouse.setWarehouseId(associationWarehouseDO.getWarehouseId());
|
||||
associationWarehouse.setWarehouseCode(associationWarehouseDO.getWarehouseCode());
|
||||
associationWarehouse.setWarehouseName(associationWarehouseDO.getWarehouseName());
|
||||
associationWarehouse.setCreateBy(loginUser.getUserid());
|
||||
associationWarehouse.setCreateByName(loginUser.getUsername());
|
||||
associationWarehouse.setCreateTime(new Date());
|
||||
associationWarehouseList.add(associationWarehouse);
|
||||
}
|
||||
//标记删除
|
||||
remove(new QueryWrapper<AssociationWarehouse>().lambda()
|
||||
.eq(AssociationWarehouse::getWarehouseId, associationWarehouseDO.getWarehouseId()));
|
||||
}
|
||||
return saveBatch(associationWarehouseList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除关联仓库
|
||||
*/
|
||||
@Override
|
||||
public Boolean delete(Long[] associationWarehouseIds ) {
|
||||
List<AssociationWarehouse> list = new ArrayList<>();
|
||||
for (Long id : associationWarehouseIds) {
|
||||
AssociationWarehouse associationWarehouse = new AssociationWarehouse();
|
||||
associationWarehouse.setAssociationWarehouseId(id);
|
||||
associationWarehouse.setDelFlag(2);
|
||||
list.add(associationWarehouse);
|
||||
}
|
||||
return this.updateBatchById(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改关联仓库
|
||||
*/
|
||||
@Override
|
||||
public AssociationWarehousePO getInfo(Long associationWarehouseId) {
|
||||
AssociationWarehouse associationWarehouse = this.getById(associationWarehouseId);
|
||||
AssociationWarehousePO associationWarehousePO = new AssociationWarehousePO();
|
||||
BeanUtils.copyProperties(associationWarehouse,associationWarehousePO);
|
||||
return associationWarehousePO;
|
||||
}
|
||||
|
||||
/**
|
||||
* @description 封装仓库信息
|
||||
* @author ZhouGY
|
||||
* @date 2024/5/10 20:28
|
||||
* @param associationWarehouseDO
|
||||
*/
|
||||
private void warehouseParam(AssociationWarehouseDO associationWarehouseDO){
|
||||
Warehouse warehouseDb = warehouseMapper.selectOne(new QueryWrapper<Warehouse>().lambda()
|
||||
.in(Warehouse::getWarehouseId, associationWarehouseDO.getWarehouseId())
|
||||
.eq(Warehouse::getDelFlag, 1));
|
||||
if (warehouseDb == null){
|
||||
throw new ServiceException("仓库信息不存在");
|
||||
}
|
||||
associationWarehouseDO.setWarehouseId(warehouseDb.getWarehouseId());
|
||||
associationWarehouseDO.setWarehouseCode(warehouseDb.getWarehouseCode());
|
||||
associationWarehouseDO.setWarehouseName(warehouseDb.getWarehouseName());
|
||||
}
|
||||
|
||||
}
|
||||
+62
@@ -0,0 +1,62 @@
|
||||
package com.mhd.basic.domain.associationWarehouse.repository.po;
|
||||
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import java.math.BigDecimal;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
|
||||
|
||||
/**
|
||||
* 关联仓库对象 association_warehouse
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-06-11
|
||||
*/
|
||||
|
||||
@Data
|
||||
@ApiModel(value = "关联仓库对象", description = "关联仓库响应对象")
|
||||
public class AssociationWarehousePO extends BaseVOEntity{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("关联仓库id")
|
||||
private Long associationWarehouseId;
|
||||
|
||||
@ApiModelProperty("组织表ID")
|
||||
@Excel(name = "组织表ID")
|
||||
private Long organizationId;
|
||||
|
||||
@ApiModelProperty("组织名称")
|
||||
@Excel(name = "组织名称")
|
||||
private String organizationName;
|
||||
|
||||
@ApiModelProperty("一级组织表ID")
|
||||
@Excel(name = "一级组织表ID")
|
||||
private Long topOrganizationId;
|
||||
|
||||
@ApiModelProperty("关联ID(组织或员工用户ID)")
|
||||
@Excel(name = "关联ID(组织或员工用户ID)")
|
||||
private Long correlationId;
|
||||
|
||||
@ApiModelProperty("是否默认仓库: 1-否 2-是 ")
|
||||
@Excel(name = "是否默认仓库: 1-否 2-是 ")
|
||||
private Integer isDefault;
|
||||
|
||||
@ApiModelProperty("仓库ID")
|
||||
@Excel(name = "仓库ID")
|
||||
private Long warehouseId;
|
||||
|
||||
@ApiModelProperty("仓库编码")
|
||||
@Excel(name = "仓库编码")
|
||||
private String warehouseCode;
|
||||
|
||||
@ApiModelProperty("仓库名称")
|
||||
@Excel(name = "仓库名称")
|
||||
private String warehouseName;
|
||||
|
||||
|
||||
|
||||
}
|
||||
+75
@@ -0,0 +1,75 @@
|
||||
package com.mhd.basic.domain.associationWarehouse.repository.todo;
|
||||
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import java.math.BigDecimal;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* 关联仓库对象 association_warehouse
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-06-11
|
||||
*/
|
||||
|
||||
@Data
|
||||
public class AssociationWarehouseDO extends BaseVOEntity{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("关联仓库id")
|
||||
private Long associationWarehouseId;
|
||||
|
||||
@ApiModelProperty("组织表ID")
|
||||
@Excel(name = "组织表ID")
|
||||
private Long organizationId;
|
||||
|
||||
@ApiModelProperty("组织名称")
|
||||
@Excel(name = "组织名称")
|
||||
private String organizationName;
|
||||
|
||||
@ApiModelProperty("一级组织表ID")
|
||||
@Excel(name = "一级组织表ID")
|
||||
private Long topOrganizationId;
|
||||
|
||||
@ApiModelProperty("关联ID(组织或员工用户ID)")
|
||||
@Excel(name = "关联ID(组织或员工用户ID)")
|
||||
private Long correlationId;
|
||||
|
||||
@ApiModelProperty("是否默认仓库: 1-否 2-是 ")
|
||||
@Excel(name = "是否默认仓库: 1-否 2-是 ")
|
||||
private Integer isDefault;
|
||||
|
||||
@ApiModelProperty("仓库ID")
|
||||
@Excel(name = "仓库ID")
|
||||
private Long warehouseId;
|
||||
|
||||
@ApiModelProperty("仓库编码")
|
||||
@Excel(name = "仓库编码")
|
||||
private String warehouseCode;
|
||||
|
||||
@ApiModelProperty("仓库名称")
|
||||
@Excel(name = "仓库名称")
|
||||
private String warehouseName;
|
||||
|
||||
@ApiModelProperty(name = "组织ID集合")
|
||||
private List<Long> organizationIdList;
|
||||
|
||||
@ApiModelProperty(name = "权限菜单ID")
|
||||
private Long permissionMenuId;
|
||||
|
||||
@ApiModelProperty(name = "关联仓库id集合")
|
||||
private List<Long> warehouseIdIdList;
|
||||
|
||||
@ApiModelProperty(name = "关联用户id集合")
|
||||
private List<Long> correlationIdList;
|
||||
|
||||
@ApiModelProperty("是否批量: 1-是 2-否 ")
|
||||
@Excel(name = "是否批量: 1-是 2-否 ")
|
||||
private Integer isBatch;
|
||||
}
|
||||
+149
@@ -0,0 +1,149 @@
|
||||
package com.mhd.basic.domain.associationWarehouse.service;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
||||
import com.mhd.basic.domain.common.cache.AssociationWarehouseCacheUtil;
|
||||
import com.mhd.system.api.domain.cache.AssociationWarehouseCacheDO;
|
||||
import com.mhd.basic.domain.associationWarehouse.entity.AssociationWarehouse;
|
||||
import com.mhd.basic.domain.associationWarehouse.repository.facade.IAssociationWarehouseService;
|
||||
import com.mhd.basic.domain.associationWarehouse.repository.po.AssociationWarehousePO;
|
||||
import com.mhd.basic.domain.associationWarehouse.repository.todo.AssociationWarehouseDO;
|
||||
import com.mhd.common.core.exception.ServiceException;
|
||||
import com.mhd.common.core.utils.bean.BeanUtils;
|
||||
import com.mhd.common.redis.service.RedisService;
|
||||
import com.mhd.common.security.utils.SecurityUtils;
|
||||
import com.mhd.system.api.model.LoginUser;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
/**
|
||||
* 关联仓库
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-06-11
|
||||
*/
|
||||
@Service
|
||||
@Slf4j
|
||||
public class AssociationWarehouseDomainService {
|
||||
|
||||
@Autowired
|
||||
private IAssociationWarehouseService associationWarehouseService;
|
||||
|
||||
|
||||
/**
|
||||
* 分页查询关联仓库列表
|
||||
*/
|
||||
public List<AssociationWarehousePO> queryList(AssociationWarehouseDO associationWarehouseDO) {
|
||||
return associationWarehouseService.queryList(associationWarehouseDO);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 新增关联仓库
|
||||
*/
|
||||
public Boolean associationWarehouse(AssociationWarehouseDO associationWarehouseDO) {
|
||||
|
||||
return associationWarehouseService.associationWarehouse(associationWarehouseDO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除关联仓库
|
||||
*/
|
||||
public Boolean delete(Long[] associationWarehouseIds) {
|
||||
return associationWarehouseService.delete(associationWarehouseIds);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取关联仓库详细信息
|
||||
*/
|
||||
public AssociationWarehousePO getInfo(Long associationWarehouseId)
|
||||
{
|
||||
return associationWarehouseService.getInfo(associationWarehouseId);
|
||||
}
|
||||
|
||||
/**
|
||||
* @description 切换仓库
|
||||
* @author ZhouGY
|
||||
* @date 2024/6/11 15:34
|
||||
* @param associationWarehouseDO
|
||||
* @return List<AssociationWarehousePO>
|
||||
*/
|
||||
public AssociationWarehouseCacheDO setWarehouseInfo(AssociationWarehouseDO associationWarehouseDO) {
|
||||
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||
AssociationWarehouse associationWarehouse = associationWarehouseService.getOne(new QueryWrapper<AssociationWarehouse>().lambda()
|
||||
.eq(AssociationWarehouse::getCorrelationId, loginUser.getUserid())
|
||||
.eq(AssociationWarehouse::getWarehouseId, associationWarehouseDO.getWarehouseId())
|
||||
.eq(AssociationWarehouse::getDelFlag, 1));
|
||||
if (ObjectUtil.isNull(associationWarehouse)){
|
||||
throw new ServiceException("用户关联仓库不存在");
|
||||
}
|
||||
AssociationWarehouseCacheDO associationWarehouseCacheDO = new AssociationWarehouseCacheDO();
|
||||
BeanUtils.copyProperties(associationWarehouse, associationWarehouseCacheDO);
|
||||
//将之前默认仓库置空
|
||||
associationWarehouseService.update(null, new UpdateWrapper<AssociationWarehouse>().lambda()
|
||||
.set(AssociationWarehouse::getIsDefault, 1)
|
||||
.set(AssociationWarehouse::getUpdateBy, loginUser.getUserid())
|
||||
.set(AssociationWarehouse::getUpdateByName, loginUser.getUsername())
|
||||
.eq(AssociationWarehouse::getCorrelationId, loginUser.getUserid())
|
||||
.eq(AssociationWarehouse::getIsDefault, 2)
|
||||
.eq(AssociationWarehouse::getDelFlag, 1));
|
||||
//设置新的默认仓库
|
||||
associationWarehouseService.update(null, new UpdateWrapper<AssociationWarehouse>().lambda()
|
||||
.set(AssociationWarehouse::getIsDefault, 2)
|
||||
.set(AssociationWarehouse::getUpdateBy, loginUser.getUserid())
|
||||
.set(AssociationWarehouse::getUpdateByName, loginUser.getUsername())
|
||||
.eq(AssociationWarehouse::getCorrelationId, loginUser.getUserid())
|
||||
.eq(AssociationWarehouse::getWarehouseId, associationWarehouseDO.getWarehouseId())
|
||||
.eq(AssociationWarehouse::getDelFlag, 1));
|
||||
AssociationWarehouseCacheUtil.setCache(associationWarehouseCacheDO.getCorrelationId(), associationWarehouseCacheDO);
|
||||
return associationWarehouseCacheDO;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @description 查询关联仓库列表根据关联id
|
||||
* @author ZhouGY
|
||||
* @date 2024/6/11 15:34
|
||||
* @param correlationId
|
||||
* @return List<AssociationWarehousePO>
|
||||
*/
|
||||
public AssociationWarehouseCacheDO getWarehouseInfo(Long correlationId) {
|
||||
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||
AssociationWarehouseCacheDO associationWarehouseCacheDO = AssociationWarehouseCacheUtil.getCache(correlationId);
|
||||
if (ObjectUtil.isNotNull(associationWarehouseCacheDO)){
|
||||
return associationWarehouseCacheDO;
|
||||
}
|
||||
AssociationWarehouse associationWarehouse = associationWarehouseService.getOne(new QueryWrapper<AssociationWarehouse>().lambda()
|
||||
.eq(AssociationWarehouse::getCorrelationId, loginUser.getUserid())
|
||||
.eq(AssociationWarehouse::getIsDefault, 2)
|
||||
.eq(AssociationWarehouse::getDelFlag, 1));
|
||||
if (ObjectUtil.isNotNull(associationWarehouse)){
|
||||
associationWarehouseCacheDO = new AssociationWarehouseCacheDO();
|
||||
BeanUtils.copyProperties(associationWarehouse, associationWarehouseCacheDO);
|
||||
}else {
|
||||
//首次 没有查到默认取第一条数据
|
||||
List<AssociationWarehouse> associationWarehouseList = associationWarehouseService.list(new QueryWrapper<AssociationWarehouse>().lambda()
|
||||
.eq(AssociationWarehouse::getCorrelationId, loginUser.getUserid())
|
||||
.orderByAsc(AssociationWarehouse::getAssociationWarehouseId));
|
||||
if (CollectionUtils.isEmpty(associationWarehouseList)){
|
||||
throw new ServiceException("未查询到登录用户关联仓库信息");
|
||||
}
|
||||
AssociationWarehouse associationWarehouseAsc = associationWarehouseList.get(0);
|
||||
associationWarehouseCacheDO = new AssociationWarehouseCacheDO();
|
||||
BeanUtils.copyProperties(associationWarehouseAsc, associationWarehouseCacheDO);
|
||||
}
|
||||
associationWarehouseService.update(null, new UpdateWrapper<AssociationWarehouse>().lambda()
|
||||
.set(AssociationWarehouse::getIsDefault, 2)
|
||||
.set(AssociationWarehouse::getUpdateBy, loginUser.getUserid())
|
||||
.set(AssociationWarehouse::getUpdateByName, loginUser.getUsername())
|
||||
.eq(AssociationWarehouse::getCorrelationId, loginUser.getUserid())
|
||||
.eq(AssociationWarehouse::getWarehouseId, associationWarehouseCacheDO.getWarehouseId()));
|
||||
AssociationWarehouseCacheUtil.removeDictCache(associationWarehouseCacheDO.getCorrelationId());
|
||||
return associationWarehouseCacheDO;
|
||||
}
|
||||
|
||||
}
|
||||
+53
@@ -0,0 +1,53 @@
|
||||
package com.mhd.basic.domain.basicAgreementAggregate.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
|
||||
/**
|
||||
* @Description 系统协议模版表
|
||||
* @Author Alex
|
||||
* @Date 2022/12/15 15:47
|
||||
*/
|
||||
@Data
|
||||
@TableName("basic_agreement")
|
||||
public class BasicAgreementEntity extends BaseVOEntity {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
@TableId(type = IdType.AUTO)
|
||||
@ApiModelProperty(name = "系统协议表ID")
|
||||
private Long basicAgreementId;
|
||||
@ApiModelProperty(name = "系统协议内容")
|
||||
private String basicAgreementContent;
|
||||
@ApiModelProperty(name = "系统协议类型数据字典ID")
|
||||
private String basicAgreementTypeId;
|
||||
@ApiModelProperty(name = "系统协议类型名称")
|
||||
private String basicAgreementTypeName;
|
||||
@ApiModelProperty(name = "系统协议类型编码")
|
||||
private String basicAgreementTypeCode;
|
||||
@ApiModelProperty(name = "系统协议状态:0-无状态,1-正常,2-停用")
|
||||
private Integer basicAgreementStatus;
|
||||
|
||||
@ApiModelProperty(name = "一级组织表ID")
|
||||
private Long topOrganizationId;
|
||||
|
||||
@ApiModelProperty("组织表ID")
|
||||
private Long organizationId;
|
||||
|
||||
@ApiModelProperty("组织名称")
|
||||
private String organizationName;
|
||||
|
||||
@ApiModelProperty("备注")
|
||||
private String remark;
|
||||
|
||||
@ApiModelProperty("显示名称")
|
||||
private String displayName;
|
||||
|
||||
@ApiModelProperty("租户id")
|
||||
private Long tenantsId;
|
||||
|
||||
}
|
||||
+48
@@ -0,0 +1,48 @@
|
||||
package com.mhd.basic.domain.basicAgreementAggregate.factory;
|
||||
|
||||
import com.mhd.basic.domain.basicAgreementAggregate.entity.BasicAgreementEntity;
|
||||
import com.mhd.basic.domain.basicAgreementAggregate.repository.todo.BasicAgreementDO;
|
||||
import com.mhd.common.core.utils.IgnoreNullUtil;
|
||||
import com.mhd.common.core.utils.bean.BeanUtils;
|
||||
import com.mhd.common.security.utils.SecurityUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
@Service
|
||||
public class BasicAgreementFactory {
|
||||
|
||||
public BasicAgreementEntity getAgreementEntity(BasicAgreementDO basicAgreementDO) {
|
||||
BasicAgreementEntity basicAgreementEntity = new BasicAgreementEntity();
|
||||
BeanUtils.copyProperties(basicAgreementDO, basicAgreementEntity, IgnoreNullUtil.getNullPropertyNames(basicAgreementDO));
|
||||
//获取登录人
|
||||
String userName= SecurityUtils.getLoginUser().getUsername();
|
||||
// 获取登录人id
|
||||
Long userId = SecurityUtils.getLoginUser().getUserid();
|
||||
if(basicAgreementEntity.getBasicAgreementId() != null){
|
||||
if(userId != null){
|
||||
basicAgreementEntity.setUpdateBy(userId);
|
||||
}else {
|
||||
basicAgreementEntity.setUpdateBy(new Long("0"));
|
||||
}
|
||||
basicAgreementEntity.setUpdateByName(userName);
|
||||
basicAgreementEntity.setUpdateTime(new Date());
|
||||
}else {
|
||||
if(userId != null){
|
||||
basicAgreementEntity.setCreateBy(userId);
|
||||
basicAgreementEntity.setUpdateBy(userId);
|
||||
}else {
|
||||
basicAgreementEntity.setCreateBy(new Long("0"));
|
||||
basicAgreementEntity.setUpdateBy(new Long("0"));
|
||||
}
|
||||
basicAgreementEntity.setCreateByName(userName);
|
||||
basicAgreementEntity.setUpdateByName(userName);
|
||||
basicAgreementEntity.setCreateTime(new Date());
|
||||
basicAgreementEntity.setUpdateTime(new Date());
|
||||
basicAgreementEntity.setDelFlag(1);
|
||||
}
|
||||
return basicAgreementEntity;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
+24
@@ -0,0 +1,24 @@
|
||||
package com.mhd.basic.domain.basicAgreementAggregate.repository.facade;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.mhd.basic.domain.basicAgreementAggregate.repository.po.BasicAgreementPO;
|
||||
import com.mhd.basic.domain.basicAgreementAggregate.entity.BasicAgreementEntity;
|
||||
import com.mhd.basic.domain.basicAgreementAggregate.repository.todo.BasicAgreementDO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface BasicAgreementRepositoryInterface extends IService<BasicAgreementEntity> {
|
||||
List<BasicAgreementEntity> selectList(BasicAgreementDO basicAgreementDO);
|
||||
|
||||
BasicAgreementPO findAgreement(BasicAgreementDO basicAgreementDO);
|
||||
|
||||
int addAgreement(BasicAgreementEntity basicAgreementEntity);
|
||||
|
||||
int updateAgreement(BasicAgreementEntity basicAgreementEntity);
|
||||
|
||||
BasicAgreementEntity selectById(Long basicAgreementId);
|
||||
|
||||
BasicAgreementEntity selectByCode(String basicAgreementTypeCode);
|
||||
|
||||
}
|
||||
|
||||
+19
@@ -0,0 +1,19 @@
|
||||
package com.mhd.basic.domain.basicAgreementAggregate.repository.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.mhd.basic.domain.basicAgreementAggregate.repository.po.BasicAgreementPO;
|
||||
import com.mhd.basic.domain.basicAgreementAggregate.repository.todo.BasicAgreementDO;
|
||||
import com.mhd.basic.domain.basicAgreementAggregate.entity.BasicAgreementEntity;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface BasicAgreementMapper extends BaseMapper<BasicAgreementEntity> {
|
||||
|
||||
List<BasicAgreementEntity> selectList(@Param("basicAgreementDO") BasicAgreementDO basicAgreementDO);
|
||||
|
||||
BasicAgreementPO findAgreement(@Param("basicAgreementDO")BasicAgreementDO basicAgreementDO);
|
||||
|
||||
BasicAgreementEntity selectByCode(@Param("basicAgreementTypeCode")String basicAgreementTypeCode);
|
||||
|
||||
}
|
||||
+49
@@ -0,0 +1,49 @@
|
||||
package com.mhd.basic.domain.basicAgreementAggregate.repository.persistence;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.mhd.basic.domain.basicAgreementAggregate.repository.facade.BasicAgreementRepositoryInterface;
|
||||
import com.mhd.basic.domain.basicAgreementAggregate.repository.po.BasicAgreementPO;
|
||||
import com.mhd.basic.domain.basicAgreementAggregate.repository.todo.BasicAgreementDO;
|
||||
import com.mhd.basic.domain.basicAgreementAggregate.entity.BasicAgreementEntity;
|
||||
import com.mhd.basic.domain.basicAgreementAggregate.repository.mapper.BasicAgreementMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
public class BasicAgreementRepositoryImpl extends ServiceImpl<BasicAgreementMapper,BasicAgreementEntity> implements BasicAgreementRepositoryInterface {
|
||||
|
||||
@Resource
|
||||
private BasicAgreementMapper basicAgreementMapper;
|
||||
|
||||
@Override
|
||||
public List<BasicAgreementEntity> selectList(BasicAgreementDO basicAgreementDO) {
|
||||
return basicAgreementMapper.selectList(basicAgreementDO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public BasicAgreementPO findAgreement(BasicAgreementDO basicAgreementDO){
|
||||
return basicAgreementMapper.findAgreement(basicAgreementDO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int addAgreement(BasicAgreementEntity basicAgreementEntity) {
|
||||
return basicAgreementMapper.insert(basicAgreementEntity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int updateAgreement(BasicAgreementEntity basicAgreementEntity) {
|
||||
return basicAgreementMapper.updateById(basicAgreementEntity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public BasicAgreementEntity selectById(Long basicAgreementId) {
|
||||
return basicAgreementMapper.selectById(basicAgreementId);
|
||||
}
|
||||
@Override
|
||||
public BasicAgreementEntity selectByCode(String basicAgreementTypeCode) {
|
||||
return basicAgreementMapper.selectByCode(basicAgreementTypeCode);
|
||||
}
|
||||
|
||||
}
|
||||
+40
@@ -0,0 +1,40 @@
|
||||
package com.mhd.basic.domain.basicAgreementAggregate.repository.po;
|
||||
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class BasicAgreementPO extends BaseVOEntity {
|
||||
|
||||
@ApiModelProperty(name = "系统协议表ID")
|
||||
private Long basicAgreementId = 0L;
|
||||
@ApiModelProperty(name = "系统协议内容")
|
||||
private String basicAgreementContent = "";
|
||||
@ApiModelProperty(name = "系统协议类型数据字典ID")
|
||||
private Long basicAgreementTypeId = 0L;
|
||||
@ApiModelProperty(name = "系统协议类型名称")
|
||||
private String basicAgreementTypeName = "";
|
||||
@ApiModelProperty(name = "系统协议类型编码")
|
||||
private String basicAgreementTypeCode = "";
|
||||
@ApiModelProperty(name = "系统协议状态:0-无状态,1-正常,2-停用")
|
||||
private Integer basicAgreementStatus = 0;
|
||||
|
||||
@ApiModelProperty(name = "一级组织表ID")
|
||||
private Long topOrganizationId;
|
||||
|
||||
@ApiModelProperty("组织表ID")
|
||||
private Long organizationId;
|
||||
|
||||
@ApiModelProperty("组织名称")
|
||||
private String organizationName;
|
||||
|
||||
@ApiModelProperty("备注")
|
||||
private String remark;
|
||||
|
||||
@ApiModelProperty("显示名称")
|
||||
private String displayName;
|
||||
|
||||
@ApiModelProperty("租户id")
|
||||
private Long tenantsId;
|
||||
}
|
||||
+40
@@ -0,0 +1,40 @@
|
||||
package com.mhd.basic.domain.basicAgreementAggregate.repository.todo;
|
||||
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class BasicAgreementDO extends BaseVOEntity {
|
||||
|
||||
@ApiModelProperty(name = "系统协议表ID")
|
||||
private Long basicAgreementId;
|
||||
@ApiModelProperty(name = "系统协议内容")
|
||||
private String basicAgreementContent;
|
||||
@ApiModelProperty(name = "系统协议类型数据字典ID")
|
||||
private String basicAgreementTypeId;
|
||||
@ApiModelProperty(name = "系统协议类型名称")
|
||||
private String basicAgreementTypeName;
|
||||
@ApiModelProperty(name = "系统协议类型编码")
|
||||
private String basicAgreementTypeCode;
|
||||
@ApiModelProperty(name = "系统协议状态:0-无状态,1-正常,2-停用")
|
||||
private Integer basicAgreementStatus;
|
||||
|
||||
@ApiModelProperty(name = "一级组织表ID")
|
||||
private Long topOrganizationId;
|
||||
|
||||
@ApiModelProperty("组织表ID")
|
||||
private Long organizationId;
|
||||
|
||||
@ApiModelProperty("组织名称")
|
||||
private String organizationName;
|
||||
|
||||
@ApiModelProperty("备注")
|
||||
private String remark;
|
||||
|
||||
@ApiModelProperty("显示名称")
|
||||
private String displayName;
|
||||
|
||||
@ApiModelProperty("租户id")
|
||||
private Long tenantsId;
|
||||
}
|
||||
+100
@@ -0,0 +1,100 @@
|
||||
package com.mhd.basic.domain.basicAgreementAggregate.service;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.mhd.basic.domain.basicAgreementAggregate.entity.BasicAgreementEntity;
|
||||
import com.mhd.basic.domain.basicAgreementAggregate.repository.facade.BasicAgreementRepositoryInterface;
|
||||
import com.mhd.basic.domain.basicAgreementAggregate.repository.po.BasicAgreementPO;
|
||||
import com.mhd.basic.domain.basicAgreementAggregate.repository.todo.BasicAgreementDO;
|
||||
import com.mhd.basic.domain.basicAgreementAggregate.factory.BasicAgreementFactory;
|
||||
import com.mhd.common.core.exception.ServiceException;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
public class BasicAgreementDomainService {
|
||||
|
||||
@Autowired
|
||||
private BasicAgreementFactory basicAgreementFactory;
|
||||
@Resource
|
||||
private BasicAgreementRepositoryInterface basicAgreementRepositoryInterface;
|
||||
|
||||
public List<BasicAgreementEntity> selectList(BasicAgreementDO basicAgreementDO) {
|
||||
return basicAgreementRepositoryInterface.selectList(basicAgreementDO);
|
||||
}
|
||||
|
||||
public BasicAgreementPO findAgreement(BasicAgreementDO basicAgreementDO){
|
||||
return basicAgreementRepositoryInterface.findAgreement(basicAgreementDO);
|
||||
}
|
||||
|
||||
public int addAgreement(BasicAgreementEntity basicAgreementEntity) {
|
||||
return basicAgreementRepositoryInterface.addAgreement(basicAgreementEntity);
|
||||
}
|
||||
|
||||
/**
|
||||
* @Description 新增协议
|
||||
* @Author Alex
|
||||
* @Date 2022/11/24 11:05
|
||||
*/
|
||||
public int updateAgreement(BasicAgreementEntity basicAgreementEntity) {
|
||||
return basicAgreementRepositoryInterface.updateAgreement(basicAgreementEntity);
|
||||
}
|
||||
|
||||
public int deleteByIds(List<Long> ids) {
|
||||
for (Long basicAgreementId : ids) {
|
||||
BasicAgreementEntity basicAgreementEntity = basicAgreementRepositoryInterface.selectById(basicAgreementId);
|
||||
if (ObjectUtil.isNotNull(basicAgreementEntity)) {
|
||||
//删除标记:0-无状态,1-正常,2-已删除
|
||||
basicAgreementEntity.setDelFlag(2);
|
||||
basicAgreementEntity.setUpdateTime(new Date());
|
||||
basicAgreementRepositoryInterface.updateAgreement(basicAgreementEntity);
|
||||
}
|
||||
}
|
||||
return ids.size();
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据code和组织获取协议内容
|
||||
* @param basicAgreementDO
|
||||
* @return
|
||||
*/
|
||||
public BasicAgreementEntity getAgreementByCode(BasicAgreementDO basicAgreementDO) {
|
||||
LambdaQueryWrapper<BasicAgreementEntity> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(BasicAgreementEntity::getBasicAgreementTypeCode,basicAgreementDO.getBasicAgreementTypeCode());
|
||||
queryWrapper.eq(BasicAgreementEntity::getOrganizationId,basicAgreementDO.getOrganizationId());
|
||||
queryWrapper.eq(BasicAgreementEntity::getBasicAgreementStatus,1);
|
||||
queryWrapper.eq(BasicAgreementEntity::getDelFlag,1);
|
||||
return basicAgreementRepositoryInterface.getOne(queryWrapper);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据协议id查询协议内容
|
||||
* @param basicAgreementId
|
||||
* @return
|
||||
*/
|
||||
public BasicAgreementEntity selectByAgreementId(Long basicAgreementId) {
|
||||
LambdaQueryWrapper<BasicAgreementEntity> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(BasicAgreementEntity::getBasicAgreementId,basicAgreementId);
|
||||
queryWrapper.eq(BasicAgreementEntity::getDelFlag,1);
|
||||
return basicAgreementRepositoryInterface.getOne(queryWrapper);
|
||||
}
|
||||
|
||||
public BasicAgreementEntity findAgreementByCodeAndOrg(BasicAgreementDO basicAgreementDO) {
|
||||
if(StringUtils.isEmpty(basicAgreementDO.getBasicAgreementTypeCode())){
|
||||
throw new ServiceException("协议code不能为空");
|
||||
}
|
||||
if(basicAgreementDO.getOrganizationId() == null){
|
||||
throw new ServiceException("组织id不能为空");
|
||||
}
|
||||
LambdaQueryWrapper<BasicAgreementEntity> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(BasicAgreementEntity::getBasicAgreementTypeCode,basicAgreementDO.getBasicAgreementTypeCode());
|
||||
queryWrapper.eq(BasicAgreementEntity::getOrganizationId,basicAgreementDO.getOrganizationId());
|
||||
queryWrapper.eq(BasicAgreementEntity::getDelFlag,1);
|
||||
return basicAgreementRepositoryInterface.getOne(queryWrapper);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,62 @@
|
||||
package com.mhd.basic.domain.batch.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
import java.math.BigDecimal;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
|
||||
|
||||
/**
|
||||
* 批次管理对象 batch
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-05-07
|
||||
*/
|
||||
|
||||
@Data
|
||||
public class Batch extends BaseVOEntity{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("批次id")
|
||||
@TableId(type = IdType.AUTO)
|
||||
private Long batchId;
|
||||
|
||||
@ApiModelProperty("组织表ID")
|
||||
@Excel(name = "组织表ID")
|
||||
private Long organizationId;
|
||||
|
||||
@ApiModelProperty("组织名称")
|
||||
@Excel(name = "组织名称")
|
||||
private String organizationName;
|
||||
|
||||
@ApiModelProperty("一级组织表ID")
|
||||
@Excel(name = "一级组织表ID")
|
||||
private Long topOrganizationId;
|
||||
|
||||
@ApiModelProperty("批次编码")
|
||||
@Excel(name = "批次编码")
|
||||
private String batchCode;
|
||||
|
||||
@ApiModelProperty("批次名称")
|
||||
@Excel(name = "批次名称")
|
||||
private String batchName;
|
||||
|
||||
@ApiModelProperty("备注")
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
|
||||
@ApiModelProperty("启用状态: 1-启用 2-停用")
|
||||
@Excel(name = "启用状态: 1-启用 2-停用")
|
||||
private Integer openingUp;
|
||||
|
||||
@ApiModelProperty("是否作废: 1-否 2-是")
|
||||
@Excel(name = "是否作废: 1-否 2-是")
|
||||
private Integer nullify;
|
||||
|
||||
|
||||
}
|
||||
+43
@@ -0,0 +1,43 @@
|
||||
package com.mhd.basic.domain.batch.repository.facade;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.mhd.basic.domain.batch.entity.Batch;
|
||||
import com.mhd.basic.domain.batch.repository.po.BatchPO;
|
||||
import com.mhd.basic.domain.batch.repository.todo.BatchDO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 批次管理Service接口
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-05-07
|
||||
*/
|
||||
public interface IBatchService extends IService<Batch>
|
||||
{
|
||||
/**
|
||||
* 分页查询批次管理列表
|
||||
*/
|
||||
public List<BatchPO> queryList(BatchDO batchDO);
|
||||
|
||||
/**
|
||||
* 新增批次管理
|
||||
*/
|
||||
public Long insert(BatchDO batchDO);
|
||||
|
||||
/**
|
||||
* 修改批次管理
|
||||
*/
|
||||
public Boolean update(BatchDO batchDO);
|
||||
|
||||
/**
|
||||
* 批量删除批次管理
|
||||
*/
|
||||
public Boolean delete(Long[] batchIds);
|
||||
|
||||
|
||||
/**
|
||||
* 查询批次管理
|
||||
*/
|
||||
public BatchPO getInfo(Long batchId);
|
||||
}
|
||||
+22
@@ -0,0 +1,22 @@
|
||||
package com.mhd.basic.domain.batch.repository.mapper;
|
||||
|
||||
import java.util.List;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.mhd.basic.domain.batch.entity.Batch;
|
||||
import com.mhd.basic.domain.batch.repository.po.BatchPO;
|
||||
import com.mhd.basic.domain.batch.repository.todo.BatchDO;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
/**
|
||||
* 批次管理Mapper接口
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-05-07
|
||||
*/
|
||||
public interface BatchMapper extends BaseMapper<Batch>
|
||||
{
|
||||
/**
|
||||
* 查询批次管理列表
|
||||
*/
|
||||
public List<BatchPO> queryList(BatchDO batchDO);
|
||||
|
||||
}
|
||||
+114
@@ -0,0 +1,114 @@
|
||||
package com.mhd.basic.domain.batch.repository.persistence;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.mhd.basic.domain.batch.entity.Batch;
|
||||
import com.mhd.basic.domain.batch.repository.facade.IBatchService;
|
||||
import com.mhd.basic.domain.batch.repository.mapper.BatchMapper;
|
||||
import com.mhd.basic.domain.batch.repository.po.BatchPO;
|
||||
import com.mhd.basic.domain.batch.repository.todo.BatchDO;
|
||||
import com.mhd.basic.domain.brand.entity.Brand;
|
||||
import com.mhd.basic.domain.brand.repository.todo.BrandDO;
|
||||
import com.mhd.common.core.domain.po.UserPo;
|
||||
import com.mhd.common.core.exception.ServiceException;
|
||||
import com.mhd.common.security.utils.SecurityUtils;
|
||||
import com.mhd.system.api.model.LoginUser;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 批次管理Service业务层处理
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-05-07
|
||||
*/
|
||||
@Service
|
||||
public class BatchImpl extends ServiceImpl<BatchMapper, Batch> implements IBatchService{
|
||||
@Autowired
|
||||
private BatchMapper batchMapper;
|
||||
|
||||
/**
|
||||
* 查询批次管理列表
|
||||
*/
|
||||
@Override
|
||||
public List<BatchPO> queryList(BatchDO batchDO)
|
||||
{
|
||||
return batchMapper.queryList(batchDO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增批次管理
|
||||
*/
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Long insert(BatchDO batchDO) {
|
||||
//唯一性校验
|
||||
verifyUniqueness(batchDO);
|
||||
Batch batch = new Batch();
|
||||
BeanUtils.copyProperties(batchDO,batch);
|
||||
this.save(batch);
|
||||
return batch.getBatchId();
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改批次管理
|
||||
*/
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean update(BatchDO batchDO) {
|
||||
//唯一性校验
|
||||
verifyUniqueness(batchDO);
|
||||
Batch batch = new Batch();
|
||||
BeanUtils.copyProperties(batchDO,batch);
|
||||
return this.updateById(batch);
|
||||
}
|
||||
|
||||
/**
|
||||
* @description 校验唯一
|
||||
* @author ZhouGY
|
||||
* @date 2024/5/9 21:10
|
||||
* @param batchDO
|
||||
*/
|
||||
private void verifyUniqueness(BatchDO batchDO){
|
||||
int count = batchMapper.selectCount(new QueryWrapper<Batch>().lambda()
|
||||
.eq(Batch::getBatchCode,batchDO.getBatchCode())
|
||||
.eq(Batch::getOrganizationId, batchDO.getOrganizationId())
|
||||
.ne(batchDO.getBatchId() != null, Batch::getBatchId, batchDO.getBatchId())
|
||||
.eq(Batch::getDelFlag,1));
|
||||
if (count > 0){
|
||||
throw new ServiceException("批次编码【" + batchDO.getBatchCode() + "】已存在");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除批次管理
|
||||
*/
|
||||
@Override
|
||||
public Boolean delete(Long[] batchIds ) {
|
||||
List<Batch> list = new ArrayList<>();
|
||||
for (Long id : batchIds) {
|
||||
Batch batch = new Batch();
|
||||
batch.setBatchId(id);
|
||||
batch.setDelFlag(2);
|
||||
list.add(batch);
|
||||
}
|
||||
return this.updateBatchById(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改批次管理
|
||||
*/
|
||||
@Override
|
||||
public BatchPO getInfo(Long batchId) {
|
||||
Batch batch = this.getById(batchId);
|
||||
BatchPO batchPO = new BatchPO();
|
||||
BeanUtils.copyProperties(batch,batchPO);
|
||||
return batchPO;
|
||||
}
|
||||
}
|
||||
+69
@@ -0,0 +1,69 @@
|
||||
package com.mhd.basic.domain.batch.repository.po;
|
||||
|
||||
import com.mhd.basic.domain.batchDetail.repository.po.BatchDetailPO;
|
||||
import com.mhd.basic.domain.batchDetail.repository.todo.BatchDetailDO;
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.List;
|
||||
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
|
||||
|
||||
/**
|
||||
* 批次管理对象 batch
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-05-07
|
||||
*/
|
||||
|
||||
@Data
|
||||
@ApiModel(value = "批次管理对象", description = "批次管理响应对象")
|
||||
public class BatchPO extends BaseVOEntity{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("批次id")
|
||||
private Long batchId;
|
||||
|
||||
@ApiModelProperty("组织表ID")
|
||||
@Excel(name = "组织表ID")
|
||||
private Long organizationId;
|
||||
|
||||
@ApiModelProperty("组织名称")
|
||||
@Excel(name = "组织名称")
|
||||
private String organizationName;
|
||||
|
||||
@ApiModelProperty("一级组织表ID")
|
||||
@Excel(name = "一级组织表ID")
|
||||
private Long topOrganizationId;
|
||||
|
||||
@ApiModelProperty("批次编码")
|
||||
@Excel(name = "批次编码")
|
||||
private String batchCode;
|
||||
|
||||
@ApiModelProperty("批次名称")
|
||||
@Excel(name = "批次名称")
|
||||
private String batchName;
|
||||
|
||||
@ApiModelProperty("备注")
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
|
||||
@ApiModelProperty("启用状态: 1-启用 2-停用")
|
||||
@Excel(name = "启用状态: 1-启用 2-停用")
|
||||
private Integer openingUp;
|
||||
|
||||
@ApiModelProperty("是否作废: 1-否 2-是")
|
||||
@Excel(name = "是否作废: 1-否 2-是")
|
||||
private Integer nullify;
|
||||
|
||||
@ApiModelProperty("批次明细集合")
|
||||
private List<BatchDetailPO> batchDetailList;
|
||||
|
||||
|
||||
|
||||
}
|
||||
+69
@@ -0,0 +1,69 @@
|
||||
package com.mhd.basic.domain.batch.repository.todo;
|
||||
|
||||
import com.mhd.basic.domain.batchDetail.repository.todo.BatchDetailDO;
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import java.math.BigDecimal;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* 批次管理对象 batch
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-05-07
|
||||
*/
|
||||
|
||||
@Data
|
||||
public class BatchDO extends BaseVOEntity{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("批次id")
|
||||
private Long batchId;
|
||||
|
||||
@ApiModelProperty("组织表ID")
|
||||
@Excel(name = "组织表ID")
|
||||
private Long organizationId;
|
||||
|
||||
@ApiModelProperty("组织名称")
|
||||
@Excel(name = "组织名称")
|
||||
private String organizationName;
|
||||
|
||||
@ApiModelProperty("一级组织表ID")
|
||||
@Excel(name = "一级组织表ID")
|
||||
private Long topOrganizationId;
|
||||
|
||||
@ApiModelProperty("批次编码")
|
||||
@Excel(name = "批次编码")
|
||||
private String batchCode;
|
||||
|
||||
@ApiModelProperty("批次名称")
|
||||
@Excel(name = "批次名称")
|
||||
private String batchName;
|
||||
|
||||
@ApiModelProperty("备注")
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
|
||||
@ApiModelProperty("启用状态: 1-启用 2-停用")
|
||||
@Excel(name = "启用状态: 1-启用 2-停用")
|
||||
private Integer openingUp;
|
||||
|
||||
@ApiModelProperty("是否作废: 1-否 2-是")
|
||||
@Excel(name = "是否作废: 1-否 2-是")
|
||||
private Integer nullify;
|
||||
|
||||
@ApiModelProperty(name = "组织ID集合")
|
||||
private List<Long> organizationIdList;
|
||||
|
||||
@ApiModelProperty(name = "权限菜单ID")
|
||||
private Long permissionMenuId;
|
||||
|
||||
@ApiModelProperty("批次明细集合")
|
||||
private List<BatchDetailDO> batchDetailList;
|
||||
}
|
||||
+103
@@ -0,0 +1,103 @@
|
||||
package com.mhd.basic.domain.batch.service;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
||||
import com.mhd.basic.domain.batch.entity.Batch;
|
||||
import com.mhd.basic.domain.batch.repository.facade.IBatchService;
|
||||
import com.mhd.basic.domain.batch.repository.po.BatchPO;
|
||||
import com.mhd.basic.domain.batch.repository.todo.BatchDO;
|
||||
import com.mhd.basic.domain.batchDetail.repository.facade.IBatchDetailService;
|
||||
import com.mhd.basic.domain.batchDetail.repository.po.BatchDetailPO;
|
||||
import com.mhd.basic.domain.batchDetail.repository.todo.BatchDetailDO;
|
||||
import com.mhd.basic.domain.brand.entity.Brand;
|
||||
import com.mhd.common.core.domain.po.UserPo;
|
||||
import com.mhd.common.security.utils.SecurityUtils;
|
||||
import com.mhd.system.api.model.LoginUser;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
/**
|
||||
* 批次管理
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-05-07
|
||||
*/
|
||||
@Service
|
||||
@Slf4j
|
||||
public class BatchDomainService {
|
||||
|
||||
@Autowired
|
||||
private IBatchService batchService;
|
||||
@Autowired
|
||||
private IBatchDetailService batchDetailService;
|
||||
|
||||
|
||||
/**
|
||||
* 分页查询批次管理列表
|
||||
*/
|
||||
public List<BatchPO> queryList(BatchDO batchDO) {
|
||||
return batchService.queryList(batchDO);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 新增批次管理
|
||||
*/
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insert(BatchDO batchDO) {
|
||||
Long batchId = batchService.insert(batchDO);
|
||||
batchDO.setBatchId(batchId);
|
||||
return batchDetailService.batchInsertOrUpdate(batchDO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改批次管理
|
||||
*/
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean update(BatchDO batchDO) {
|
||||
batchService.update(batchDO);
|
||||
return batchDetailService.batchInsertOrUpdate(batchDO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除批次管理
|
||||
*/
|
||||
public Boolean delete(Long[] batchIds) {
|
||||
return batchService.delete(batchIds);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取批次管理详细信息
|
||||
*/
|
||||
public BatchPO getInfo(Long batchId)
|
||||
{
|
||||
BatchPO batchPO = batchService.getInfo(batchId);
|
||||
BatchDetailDO batchDetailDO = new BatchDetailDO();
|
||||
batchDetailDO.setBatchId(batchId);
|
||||
List<BatchDetailPO> batchDetailPOList = batchDetailService.queryList(batchDetailDO);
|
||||
batchPO.setBatchDetailList(batchDetailPOList);
|
||||
return batchPO;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @description 根据id作废批次
|
||||
* @author ZhouGY
|
||||
* @date 2024/5/10 15:28
|
||||
* @param batchId
|
||||
* @return Boolean
|
||||
*/
|
||||
public Boolean nullifyByIds(Long[] batchId) {
|
||||
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||
return batchService.update(null, new UpdateWrapper<Batch>().lambda()
|
||||
.set(Batch::getNullify, 1)
|
||||
.set(Batch::getUpdateTime, new Date())
|
||||
.set(Batch::getUpdateBy, loginUser.getUserid())
|
||||
.set(Batch::getUpdateByName, loginUser.getUsername())
|
||||
.in(Batch::getBatchId, Arrays.asList(batchId)));
|
||||
}
|
||||
}
|
||||
+66
@@ -0,0 +1,66 @@
|
||||
package com.mhd.basic.domain.batchDetail.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
import java.math.BigDecimal;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
|
||||
|
||||
/**
|
||||
* 批次管理详情对象 batch_detail
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-05-07
|
||||
*/
|
||||
|
||||
@Data
|
||||
public class BatchDetail extends BaseVOEntity{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("批次管理详情id")
|
||||
@TableId(type = IdType.AUTO)
|
||||
private Long batchDetailId;
|
||||
|
||||
@ApiModelProperty("组织表ID")
|
||||
@Excel(name = "组织表ID")
|
||||
private Long organizationId;
|
||||
|
||||
@ApiModelProperty("组织名称")
|
||||
@Excel(name = "组织名称")
|
||||
private String organizationName;
|
||||
|
||||
@ApiModelProperty("一级组织表ID")
|
||||
@Excel(name = "一级组织表ID")
|
||||
private Long topOrganizationId;
|
||||
|
||||
@ApiModelProperty("批次id")
|
||||
@Excel(name = "批次id")
|
||||
private Long batchId;
|
||||
|
||||
@ApiModelProperty("批次标签")
|
||||
@Excel(name = "批次标签")
|
||||
private String batchLabels;
|
||||
|
||||
@ApiModelProperty("输入控制: 1-必填 2-可选")
|
||||
@Excel(name = "输入控制: 1-必填 2-可选")
|
||||
private String inputControl;
|
||||
|
||||
@ApiModelProperty("属性格式:1-下拉框 2-日期 3-日期时间 4-数字 5-文本")
|
||||
@Excel(name = "属性格式:1-下拉框 2-日期 3-日期时间 4-数字 5-文本")
|
||||
private String attributeFormat;
|
||||
|
||||
@ApiModelProperty("属性选项")
|
||||
@Excel(name = "属性选项")
|
||||
private String attributeOption;
|
||||
|
||||
@ApiModelProperty("备注")
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
|
||||
|
||||
}
|
||||
+49
@@ -0,0 +1,49 @@
|
||||
package com.mhd.basic.domain.batchDetail.repository.facade;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.mhd.basic.domain.batch.repository.todo.BatchDO;
|
||||
import com.mhd.basic.domain.batchDetail.entity.BatchDetail;
|
||||
import com.mhd.basic.domain.batchDetail.repository.po.BatchDetailPO;
|
||||
import com.mhd.basic.domain.batchDetail.repository.todo.BatchDetailDO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 批次管理详情Service接口
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-05-07
|
||||
*/
|
||||
public interface IBatchDetailService extends IService<BatchDetail>
|
||||
{
|
||||
/**
|
||||
* 分页查询批次管理详情列表
|
||||
*/
|
||||
public List<BatchDetailPO> queryList(BatchDetailDO batchDetailDO);
|
||||
|
||||
/**
|
||||
* 新增批次管理详情
|
||||
*/
|
||||
public Boolean insert(BatchDetailDO batchDetailDO);
|
||||
|
||||
/**
|
||||
* 批量新增批次管理详情
|
||||
*/
|
||||
public Boolean batchInsertOrUpdate(BatchDO batchDO);
|
||||
|
||||
/**
|
||||
* 修改批次管理详情
|
||||
*/
|
||||
public Boolean update(BatchDetailDO batchDetailDO);
|
||||
|
||||
/**
|
||||
* 批量删除批次管理详情
|
||||
*/
|
||||
public Boolean delete(Long[] batchDetailIds);
|
||||
|
||||
|
||||
/**
|
||||
* 查询批次管理详情
|
||||
*/
|
||||
public BatchDetailPO getInfo(Long batchDetailId);
|
||||
}
|
||||
+22
@@ -0,0 +1,22 @@
|
||||
package com.mhd.basic.domain.batchDetail.repository.mapper;
|
||||
|
||||
import java.util.List;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.mhd.basic.domain.batchDetail.entity.BatchDetail;
|
||||
import com.mhd.basic.domain.batchDetail.repository.po.BatchDetailPO;
|
||||
import com.mhd.basic.domain.batchDetail.repository.todo.BatchDetailDO;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
/**
|
||||
* 批次管理详情Mapper接口
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-05-07
|
||||
*/
|
||||
public interface BatchDetailMapper extends BaseMapper<BatchDetail>
|
||||
{
|
||||
/**
|
||||
* 查询批次管理详情列表
|
||||
*/
|
||||
public List<BatchDetailPO> queryList(BatchDetailDO batchDetailDO);
|
||||
|
||||
}
|
||||
+159
@@ -0,0 +1,159 @@
|
||||
package com.mhd.basic.domain.batchDetail.repository.persistence;
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.mhd.basic.domain.batch.repository.todo.BatchDO;
|
||||
import com.mhd.basic.domain.batchDetail.entity.BatchDetail;
|
||||
import com.mhd.basic.domain.batchDetail.repository.facade.IBatchDetailService;
|
||||
import com.mhd.basic.domain.batchDetail.repository.mapper.BatchDetailMapper;
|
||||
import com.mhd.basic.domain.batchDetail.repository.po.BatchDetailPO;
|
||||
import com.mhd.basic.domain.batchDetail.repository.todo.BatchDetailDO;
|
||||
import com.mhd.common.core.domain.po.UserPo;
|
||||
import com.mhd.common.core.exception.ServiceException;
|
||||
import com.mhd.common.security.utils.SecurityUtils;
|
||||
import com.mhd.system.api.model.LoginUser;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.function.Function;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 批次管理详情Service业务层处理
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-05-07
|
||||
*/
|
||||
@Service
|
||||
public class BatchDetailImpl extends ServiceImpl<BatchDetailMapper, BatchDetail> implements IBatchDetailService{
|
||||
@Autowired
|
||||
private BatchDetailMapper batchDetailMapper;
|
||||
|
||||
/**
|
||||
* 查询批次管理详情列表
|
||||
*/
|
||||
@Override
|
||||
public List<BatchDetailPO> queryList(BatchDetailDO batchDetailDO)
|
||||
{
|
||||
return batchDetailMapper.queryList(batchDetailDO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增批次管理详情
|
||||
*/
|
||||
@Override
|
||||
public Boolean insert(BatchDetailDO batchDetailDO) {
|
||||
BatchDetail batchDetail = new BatchDetail();
|
||||
BeanUtils.copyProperties(batchDetailDO,batchDetail);
|
||||
return this.save(batchDetail);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量新增批次管理详情
|
||||
*/
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean batchInsertOrUpdate(BatchDO batchDO) {
|
||||
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||
UserPo userPo = loginUser.getUserPo();
|
||||
List<BatchDetailDO> batchDetailDOList = batchDO.getBatchDetailList();
|
||||
//验证提交的数据是否存在重复
|
||||
long count = batchDetailDOList.stream().map(BatchDetailDO::getBatchLabels).distinct().count();
|
||||
if (batchDetailDOList.size() != count){
|
||||
throw new ServiceException("批次标签不允许重复,请检查提交的数据");
|
||||
}
|
||||
List<BatchDetail> batchDetailDbList = batchDetailMapper.selectList(new QueryWrapper<BatchDetail>().lambda()
|
||||
.eq(BatchDetail::getBatchId, batchDO.getBatchId()));
|
||||
List<BatchDetail> batchDetailListSave = new ArrayList<>();
|
||||
List<BatchDetail> batchDetailListUpdates = new ArrayList<>();
|
||||
if (CollectionUtil.isNotEmpty(batchDetailDbList)){
|
||||
Map<String, BatchDetail> batchDetailMap = batchDetailDbList.stream().collect(Collectors.toMap(BatchDetail::getBatchLabels, Function.identity()));
|
||||
for (BatchDetailDO batchDetailDO : batchDetailDOList){
|
||||
BatchDetail batchDetailDb = batchDetailMap.get(batchDetailDO.getBatchLabels());
|
||||
if (batchDetailDb != null){
|
||||
batchDetailDb.setBatchLabels(batchDetailDO.getBatchLabels());
|
||||
batchDetailDb.setInputControl(batchDetailDO.getInputControl());
|
||||
batchDetailDb.setAttributeFormat(batchDetailDO.getAttributeFormat());
|
||||
batchDetailDb.setAttributeOption(batchDetailDO.getAttributeOption());
|
||||
batchDetailDb.setRemark(batchDetailDO.getRemark());
|
||||
batchDetailDb.setDelFlag(1);
|
||||
batchDetailListUpdates.add(batchDetailDb);
|
||||
} else {
|
||||
BatchDetail batchDetail = new BatchDetail();
|
||||
BeanUtils.copyProperties(batchDetailDO, batchDetail);
|
||||
batchDetail.setBatchId(batchDO.getBatchId());
|
||||
batchDetail.setOrganizationId(batchDO.getOrganizationId());
|
||||
batchDetail.setOrganizationName(batchDO.getOrganizationName());
|
||||
batchDetail.setTopOrganizationId(batchDO.getTopOrganizationId());
|
||||
batchDetail.setCreateBy(userPo.getUserId());
|
||||
batchDetail.setCreateByName(userPo.getUserName());
|
||||
batchDetail.setCreateTime(new Date());
|
||||
batchDetailListSave.add(batchDetail);
|
||||
}
|
||||
}
|
||||
}
|
||||
//删除 之前存在 现在没有的
|
||||
List<Long> batchDetailIds = batchDetailDbList.stream().map(BatchDetail::getBatchDetailId).collect(Collectors.toList());
|
||||
List<Long> batchDetailIdsExist = batchDetailDOList.stream().map(BatchDetailDO::getBatchDetailId).filter(Objects::nonNull).collect(Collectors.toList());
|
||||
batchDetailIds.removeAll(batchDetailIdsExist);
|
||||
if (CollectionUtil.isNotEmpty(batchDetailIds)){
|
||||
//标记之前的标签信息删除
|
||||
batchDetailMapper.update(null, new UpdateWrapper<BatchDetail>().lambda()
|
||||
.set(BatchDetail::getDelFlag, 2)
|
||||
.set(BatchDetail::getUpdateBy, loginUser.getUserid())
|
||||
.set(BatchDetail::getUpdateByName, loginUser.getUsername())
|
||||
.set(BatchDetail::getUpdateTime, new Date())
|
||||
.in(BatchDetail::getBatchDetailId, batchDetailIds));
|
||||
}
|
||||
//新增
|
||||
if (CollectionUtil.isNotEmpty(batchDetailListSave)){
|
||||
saveBatch(batchDetailListSave);
|
||||
}
|
||||
//修改
|
||||
if (CollectionUtil.isNotEmpty(batchDetailListUpdates)){
|
||||
updateBatchById(batchDetailListUpdates);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改批次管理详情
|
||||
*/
|
||||
@Override
|
||||
public Boolean update(BatchDetailDO batchDetailDO) {
|
||||
BatchDetail batchDetail = new BatchDetail();
|
||||
BeanUtils.copyProperties(batchDetailDO,batchDetail);
|
||||
return this.updateById(batchDetail);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除批次管理详情
|
||||
*/
|
||||
@Override
|
||||
public Boolean delete(Long[] batchDetailIds ) {
|
||||
List<BatchDetail> list = new ArrayList<>();
|
||||
for (Long id : batchDetailIds) {
|
||||
BatchDetail batchDetail = new BatchDetail();
|
||||
batchDetail.setBatchDetailId(id);
|
||||
batchDetail.setDelFlag(2);
|
||||
list.add(batchDetail);
|
||||
}
|
||||
return this.updateBatchById(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改批次管理详情
|
||||
*/
|
||||
@Override
|
||||
public BatchDetailPO getInfo(Long batchDetailId) {
|
||||
BatchDetail batchDetail = this.getById(batchDetailId);
|
||||
BatchDetailPO batchDetailPO = new BatchDetailPO();
|
||||
BeanUtils.copyProperties(batchDetail,batchDetailPO);
|
||||
return batchDetailPO;
|
||||
}
|
||||
}
|
||||
+66
@@ -0,0 +1,66 @@
|
||||
package com.mhd.basic.domain.batchDetail.repository.po;
|
||||
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import java.math.BigDecimal;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
|
||||
|
||||
/**
|
||||
* 批次管理详情对象 batch_detail
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-05-07
|
||||
*/
|
||||
|
||||
@Data
|
||||
@ApiModel(value = "批次管理详情对象", description = "批次管理详情响应对象")
|
||||
public class BatchDetailPO extends BaseVOEntity{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("批次管理详情id")
|
||||
private Long batchDetailId;
|
||||
|
||||
@ApiModelProperty("组织表ID")
|
||||
@Excel(name = "组织表ID")
|
||||
private Long organizationId;
|
||||
|
||||
@ApiModelProperty("组织名称")
|
||||
@Excel(name = "组织名称")
|
||||
private String organizationName;
|
||||
|
||||
@ApiModelProperty("一级组织表ID")
|
||||
@Excel(name = "一级组织表ID")
|
||||
private Long topOrganizationId;
|
||||
|
||||
@ApiModelProperty("批次id")
|
||||
@Excel(name = "批次id")
|
||||
private Long batchId;
|
||||
|
||||
@ApiModelProperty("批次标签")
|
||||
@Excel(name = "批次标签")
|
||||
private String batchLabels;
|
||||
|
||||
@ApiModelProperty("输入控制: 1-必填 2-可选")
|
||||
@Excel(name = "输入控制: 1-必填 2-可选")
|
||||
private String inputControl;
|
||||
|
||||
@ApiModelProperty("属性格式:1-下拉框 2-日期 3-日期时间 4-数字 5-文本")
|
||||
@Excel(name = "属性格式:1-下拉框 2-日期 3-日期时间 4-数字 5-文本")
|
||||
private String attributeFormat;
|
||||
|
||||
@ApiModelProperty("属性选项")
|
||||
@Excel(name = "属性选项")
|
||||
private String attributeOption;
|
||||
|
||||
@ApiModelProperty("备注")
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
|
||||
|
||||
|
||||
}
|
||||
+72
@@ -0,0 +1,72 @@
|
||||
package com.mhd.basic.domain.batchDetail.repository.todo;
|
||||
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import java.math.BigDecimal;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* 批次管理详情对象 batch_detail
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-05-07
|
||||
*/
|
||||
|
||||
@Data
|
||||
public class BatchDetailDO extends BaseVOEntity{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("批次管理详情id")
|
||||
private Long batchDetailId;
|
||||
|
||||
@ApiModelProperty("组织表ID")
|
||||
@Excel(name = "组织表ID")
|
||||
private Long organizationId;
|
||||
|
||||
@ApiModelProperty("组织名称")
|
||||
@Excel(name = "组织名称")
|
||||
private String organizationName;
|
||||
|
||||
@ApiModelProperty("一级组织表ID")
|
||||
@Excel(name = "一级组织表ID")
|
||||
private Long topOrganizationId;
|
||||
|
||||
@ApiModelProperty("批次id")
|
||||
@Excel(name = "批次id")
|
||||
private Long batchId;
|
||||
|
||||
@ApiModelProperty("批次标签")
|
||||
@Excel(name = "批次标签")
|
||||
private String batchLabels;
|
||||
|
||||
@ApiModelProperty("输入控制: 1-必填 2-可选")
|
||||
@Excel(name = "输入控制: 1-必填 2-可选")
|
||||
private String inputControl;
|
||||
|
||||
@ApiModelProperty("属性格式:1-下拉框 2-日期 3-日期时间 4-数字 5-文本")
|
||||
@Excel(name = "属性格式:1-下拉框 2-日期 3-日期时间 4-数字 5-文本")
|
||||
private String attributeFormat;
|
||||
|
||||
@ApiModelProperty("属性选项")
|
||||
@Excel(name = "属性选项")
|
||||
private String attributeOption;
|
||||
|
||||
@ApiModelProperty("备注")
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
|
||||
@ApiModelProperty(name = "组织ID集合")
|
||||
private List<Long> organizationIdList;
|
||||
|
||||
@ApiModelProperty(name = "权限菜单ID")
|
||||
private Long permissionMenuId;
|
||||
|
||||
@ApiModelProperty("物料基础信息id")
|
||||
private Long materialBaseInfoId;
|
||||
}
|
||||
+73
@@ -0,0 +1,73 @@
|
||||
package com.mhd.basic.domain.batchDetail.service;
|
||||
|
||||
import com.mhd.basic.domain.batchDetail.repository.facade.IBatchDetailService;
|
||||
import com.mhd.basic.domain.batchDetail.repository.po.BatchDetailPO;
|
||||
import com.mhd.basic.domain.batchDetail.repository.todo.BatchDetailDO;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
/**
|
||||
* 批次管理详情
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-05-07
|
||||
*/
|
||||
@Service
|
||||
@Slf4j
|
||||
public class BatchDetailDomainService {
|
||||
|
||||
@Autowired
|
||||
private IBatchDetailService batchDetailService;
|
||||
|
||||
|
||||
/**
|
||||
* 分页查询批次管理详情列表
|
||||
*/
|
||||
public List<BatchDetailPO> queryList(BatchDetailDO batchDetailDO) {
|
||||
return batchDetailService.queryList(batchDetailDO);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 新增批次管理详情
|
||||
*/
|
||||
public Boolean insert(BatchDetailDO batchDetailDO) {
|
||||
|
||||
return batchDetailService.insert(batchDetailDO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改批次管理详情
|
||||
*/
|
||||
public Boolean update(BatchDetailDO batchDetailDO) {
|
||||
return batchDetailService.update(batchDetailDO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除批次管理详情
|
||||
*/
|
||||
public Boolean delete(Long[] batchDetailIds) {
|
||||
return batchDetailService.delete(batchDetailIds);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取批次管理详情详细信息
|
||||
*/
|
||||
public BatchDetailPO getInfo(Long batchDetailId)
|
||||
{
|
||||
return batchDetailService.getInfo(batchDetailId);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 获取批次管理详情详细信息
|
||||
*/
|
||||
public List<BatchDetailPO> getBatchDetailListByBatchId(Long batchId) {
|
||||
BatchDetailDO batchDetailDO = new BatchDetailDO();
|
||||
batchDetailDO.setBatchId(batchId);
|
||||
return batchDetailService.queryList(batchDetailDO);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,66 @@
|
||||
package com.mhd.basic.domain.brand.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
import java.math.BigDecimal;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
|
||||
|
||||
/**
|
||||
* 品牌管理对象 brand
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-05-07
|
||||
*/
|
||||
|
||||
@Data
|
||||
public class Brand extends BaseVOEntity{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("物料分类id")
|
||||
@TableId(type = IdType.AUTO)
|
||||
private Long brandId;
|
||||
|
||||
@ApiModelProperty("组织表ID")
|
||||
@Excel(name = "组织表ID")
|
||||
private Long organizationId;
|
||||
|
||||
@ApiModelProperty("组织名称")
|
||||
@Excel(name = "组织名称")
|
||||
private String organizationName;
|
||||
|
||||
@ApiModelProperty("一级组织表ID")
|
||||
@Excel(name = "一级组织表ID")
|
||||
private Long topOrganizationId;
|
||||
|
||||
@ApiModelProperty("货主id")
|
||||
@Excel(name = "货主id")
|
||||
private Long shipperId;
|
||||
|
||||
@ApiModelProperty("货主名称")
|
||||
@Excel(name = "货主名称")
|
||||
private String shipperName;
|
||||
|
||||
@ApiModelProperty("品牌编码")
|
||||
@Excel(name = "品牌编码")
|
||||
private String brandCode;
|
||||
|
||||
@ApiModelProperty("品牌名称")
|
||||
@Excel(name = "品牌名称")
|
||||
private String brandName;
|
||||
|
||||
@ApiModelProperty("备注")
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
|
||||
@ApiModelProperty("是否作废: 1-否 2-是")
|
||||
@Excel(name = "是否作废: 1-否 2-是")
|
||||
private Integer nullify;
|
||||
|
||||
|
||||
}
|
||||
+43
@@ -0,0 +1,43 @@
|
||||
package com.mhd.basic.domain.brand.repository.facade;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.mhd.basic.domain.brand.entity.Brand;
|
||||
import com.mhd.basic.domain.brand.repository.po.BrandPO;
|
||||
import com.mhd.basic.domain.brand.repository.todo.BrandDO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 品牌管理Service接口
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-05-07
|
||||
*/
|
||||
public interface IBrandService extends IService<Brand>
|
||||
{
|
||||
/**
|
||||
* 分页查询品牌管理列表
|
||||
*/
|
||||
public List<BrandPO> queryList(BrandDO brandDO);
|
||||
|
||||
/**
|
||||
* 新增品牌管理
|
||||
*/
|
||||
public Boolean insert(BrandDO brandDO);
|
||||
|
||||
/**
|
||||
* 修改品牌管理
|
||||
*/
|
||||
public Boolean update(BrandDO brandDO);
|
||||
|
||||
/**
|
||||
* 批量删除品牌管理
|
||||
*/
|
||||
public Boolean delete(Long[] brandIds);
|
||||
|
||||
|
||||
/**
|
||||
* 查询品牌管理
|
||||
*/
|
||||
public BrandPO getInfo(Long brandId);
|
||||
}
|
||||
+22
@@ -0,0 +1,22 @@
|
||||
package com.mhd.basic.domain.brand.repository.mapper;
|
||||
|
||||
import java.util.List;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.mhd.basic.domain.brand.entity.Brand;
|
||||
import com.mhd.basic.domain.brand.repository.po.BrandPO;
|
||||
import com.mhd.basic.domain.brand.repository.todo.BrandDO;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
/**
|
||||
* 品牌管理Mapper接口
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-05-07
|
||||
*/
|
||||
public interface BrandMapper extends BaseMapper<Brand>
|
||||
{
|
||||
/**
|
||||
* 查询品牌管理列表
|
||||
*/
|
||||
public List<BrandPO> queryList(BrandDO brandDO);
|
||||
|
||||
}
|
||||
+119
@@ -0,0 +1,119 @@
|
||||
package com.mhd.basic.domain.brand.repository.persistence;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.mhd.basic.domain.brand.entity.Brand;
|
||||
import com.mhd.basic.domain.brand.repository.facade.IBrandService;
|
||||
import com.mhd.basic.domain.brand.repository.mapper.BrandMapper;
|
||||
import com.mhd.basic.domain.brand.repository.po.BrandPO;
|
||||
import com.mhd.basic.domain.brand.repository.todo.BrandDO;
|
||||
import com.mhd.common.core.domain.po.UserPo;
|
||||
import com.mhd.common.core.exception.ServiceException;
|
||||
import com.mhd.common.security.utils.SecurityUtils;
|
||||
import com.mhd.system.api.model.LoginUser;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 品牌管理Service业务层处理
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-05-07
|
||||
*/
|
||||
@Service
|
||||
public class BrandImpl extends ServiceImpl<BrandMapper, Brand> implements IBrandService{
|
||||
@Autowired
|
||||
private BrandMapper brandMapper;
|
||||
|
||||
/**
|
||||
* 查询品牌管理列表
|
||||
*/
|
||||
@Override
|
||||
public List<BrandPO> queryList(BrandDO brandDO)
|
||||
{
|
||||
return brandMapper.queryList(brandDO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增品牌管理
|
||||
*/
|
||||
@Override
|
||||
public Boolean insert(BrandDO brandDO) {
|
||||
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||
//唯一性校验
|
||||
verifyUniqueness(brandDO);
|
||||
Brand brand = new Brand();
|
||||
BeanUtils.copyProperties(brandDO,brand);
|
||||
UserPo userPo = loginUser.getUserPo();
|
||||
brand.setCreateBy(userPo.getUserId());
|
||||
brand.setCreateByName(userPo.getUserName());
|
||||
brand.setCreateTime(new Date());
|
||||
return this.save(brand);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改品牌管理
|
||||
*/
|
||||
@Override
|
||||
public Boolean update(BrandDO brandDO) {
|
||||
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||
//唯一性校验
|
||||
verifyUniqueness(brandDO);
|
||||
Brand brand = new Brand();
|
||||
BeanUtils.copyProperties(brandDO,brand);
|
||||
UserPo userPo = loginUser.getUserPo();
|
||||
brand.setUpdateBy(userPo.getUserId());
|
||||
brand.setUpdateByName(userPo.getUserName());
|
||||
brand.setUpdateTime(new Date());
|
||||
return this.updateById(brand);
|
||||
}
|
||||
|
||||
/**
|
||||
* @description 校验唯一
|
||||
* @author ZhouGY
|
||||
* @date 2024/5/9 21:10
|
||||
* @param brandDO
|
||||
*/
|
||||
private void verifyUniqueness(BrandDO brandDO){
|
||||
int count = brandMapper.selectCount(new QueryWrapper<Brand>().lambda()
|
||||
.eq(Brand::getBrandCode,brandDO.getBrandCode())
|
||||
.eq(Brand::getShipperId, brandDO.getShipperId())
|
||||
.eq(Brand::getOrganizationId, brandDO.getOrganizationId())
|
||||
.ne(brandDO.getBrandId() != null, Brand::getBrandId, brandDO.getBrandId() )
|
||||
.eq(Brand::getDelFlag,1));
|
||||
if (count > 0){
|
||||
throw new ServiceException("货主【" + brandDO.getShipperName() + "】的品牌编码【" + brandDO.getBrandCode() + "】已存在");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除品牌管理
|
||||
*/
|
||||
@Override
|
||||
public Boolean delete(Long[] brandIds ) {
|
||||
List<Brand> list = new ArrayList<>();
|
||||
for (Long id : brandIds) {
|
||||
Brand brand = new Brand();
|
||||
brand.setBrandId(id);
|
||||
brand.setDelFlag(2);
|
||||
list.add(brand);
|
||||
}
|
||||
return this.updateBatchById(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改品牌管理
|
||||
*/
|
||||
@Override
|
||||
public BrandPO getInfo(Long brandId) {
|
||||
Brand brand = this.getById(brandId);
|
||||
BrandPO brandPO = new BrandPO();
|
||||
BeanUtils.copyProperties(brand,brandPO);
|
||||
return brandPO;
|
||||
}
|
||||
}
|
||||
+66
@@ -0,0 +1,66 @@
|
||||
package com.mhd.basic.domain.brand.repository.po;
|
||||
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import java.math.BigDecimal;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
|
||||
|
||||
/**
|
||||
* 品牌管理对象 brand
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-05-07
|
||||
*/
|
||||
|
||||
@Data
|
||||
@ApiModel(value = "品牌管理对象", description = "品牌管理响应对象")
|
||||
public class BrandPO extends BaseVOEntity{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("物料分类id")
|
||||
private Long brandId;
|
||||
|
||||
@ApiModelProperty("组织表ID")
|
||||
@Excel(name = "组织表ID")
|
||||
private Long organizationId;
|
||||
|
||||
@ApiModelProperty("组织名称")
|
||||
@Excel(name = "组织名称")
|
||||
private String organizationName;
|
||||
|
||||
@ApiModelProperty("一级组织表ID")
|
||||
@Excel(name = "一级组织表ID")
|
||||
private Long topOrganizationId;
|
||||
|
||||
@ApiModelProperty("货主id")
|
||||
@Excel(name = "货主id")
|
||||
private Long shipperId;
|
||||
|
||||
@ApiModelProperty("货主名称")
|
||||
@Excel(name = "货主名称")
|
||||
private String shipperName;
|
||||
|
||||
@ApiModelProperty("品牌编码")
|
||||
@Excel(name = "品牌编码")
|
||||
private String brandCode;
|
||||
|
||||
@ApiModelProperty("品牌名称")
|
||||
@Excel(name = "品牌名称")
|
||||
private String brandName;
|
||||
|
||||
@ApiModelProperty("备注")
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
|
||||
@ApiModelProperty("是否作废: 1-否 2-是")
|
||||
@Excel(name = "是否作废: 1-否 2-是")
|
||||
private Integer nullify;
|
||||
|
||||
|
||||
|
||||
}
|
||||
+69
@@ -0,0 +1,69 @@
|
||||
package com.mhd.basic.domain.brand.repository.todo;
|
||||
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import java.math.BigDecimal;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* 品牌管理对象 brand
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-05-07
|
||||
*/
|
||||
|
||||
@Data
|
||||
public class BrandDO extends BaseVOEntity{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("物料分类id")
|
||||
private Long brandId;
|
||||
|
||||
@ApiModelProperty("组织表ID")
|
||||
@Excel(name = "组织表ID")
|
||||
private Long organizationId;
|
||||
|
||||
@ApiModelProperty("组织名称")
|
||||
@Excel(name = "组织名称")
|
||||
private String organizationName;
|
||||
|
||||
@ApiModelProperty("一级组织表ID")
|
||||
@Excel(name = "一级组织表ID")
|
||||
private Long topOrganizationId;
|
||||
|
||||
@ApiModelProperty("货主id")
|
||||
@Excel(name = "货主id")
|
||||
private Long shipperId;
|
||||
|
||||
@ApiModelProperty("货主名称")
|
||||
@Excel(name = "货主名称")
|
||||
private String shipperName;
|
||||
|
||||
@ApiModelProperty("品牌编码")
|
||||
@Excel(name = "品牌编码")
|
||||
private String brandCode;
|
||||
|
||||
@ApiModelProperty("品牌名称")
|
||||
@Excel(name = "品牌名称")
|
||||
private String brandName;
|
||||
|
||||
@ApiModelProperty("备注")
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
|
||||
@ApiModelProperty("是否作废: 1-否 2-是")
|
||||
@Excel(name = "是否作废: 1-否 2-是")
|
||||
private Integer nullify;
|
||||
|
||||
@ApiModelProperty(name = "组织ID集合")
|
||||
private List<Long> organizationIdList;
|
||||
|
||||
@ApiModelProperty(name = "权限菜单ID")
|
||||
private Long permissionMenuId;
|
||||
}
|
||||
+88
@@ -0,0 +1,88 @@
|
||||
package com.mhd.basic.domain.brand.service;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
||||
import com.mhd.basic.domain.brand.entity.Brand;
|
||||
import com.mhd.basic.domain.brand.repository.facade.IBrandService;
|
||||
import com.mhd.basic.domain.brand.repository.po.BrandPO;
|
||||
import com.mhd.basic.domain.brand.repository.todo.BrandDO;
|
||||
import com.mhd.basic.domain.materialClassify.entity.MaterialClassify;
|
||||
import com.mhd.common.core.domain.po.UserPo;
|
||||
import com.mhd.common.security.utils.SecurityUtils;
|
||||
import com.mhd.system.api.model.LoginUser;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
/**
|
||||
* 品牌管理
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-05-07
|
||||
*/
|
||||
@Service
|
||||
@Slf4j
|
||||
public class BrandDomainService {
|
||||
|
||||
@Autowired
|
||||
private IBrandService brandService;
|
||||
|
||||
|
||||
/**
|
||||
* 分页查询品牌管理列表
|
||||
*/
|
||||
public List<BrandPO> queryList(BrandDO brandDO) {
|
||||
return brandService.queryList(brandDO);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 新增品牌管理
|
||||
*/
|
||||
public Boolean insert(BrandDO brandDO) {
|
||||
|
||||
return brandService.insert(brandDO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改品牌管理
|
||||
*/
|
||||
public Boolean update(BrandDO brandDO) {
|
||||
return brandService.update(brandDO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除品牌管理
|
||||
*/
|
||||
public Boolean delete(Long[] brandIds) {
|
||||
return brandService.delete(brandIds);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取品牌管理详细信息
|
||||
*/
|
||||
public BrandPO getInfo(Long brandId)
|
||||
{
|
||||
return brandService.getInfo(brandId);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @description 根据id作废品牌
|
||||
* @author ZhouGY
|
||||
* @date 2024/5/10 15:28
|
||||
* @param brandIds
|
||||
* @return Boolean
|
||||
*/
|
||||
public Boolean nullifyByIds(Long[] brandIds) {
|
||||
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||
return brandService.update(null, new UpdateWrapper<Brand>().lambda()
|
||||
.set(Brand::getNullify, 1)
|
||||
.set(Brand::getUpdateTime, new Date())
|
||||
.set(Brand::getUpdateBy, loginUser.getUserid())
|
||||
.set(Brand::getUpdateByName, loginUser.getUsername())
|
||||
.in(Brand::getBrandId, Arrays.asList(brandIds)));
|
||||
}
|
||||
}
|
||||
+67
@@ -0,0 +1,67 @@
|
||||
package com.mhd.basic.domain.common.cache;
|
||||
|
||||
import com.mhd.common.core.constant.Constants;
|
||||
import com.mhd.common.core.utils.SpringUtils;
|
||||
import com.mhd.common.redis.service.RedisService;
|
||||
import com.mhd.system.api.domain.cache.AssociationWarehouseCacheDO;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* @author ZhouGY
|
||||
* @title WarehouseCache
|
||||
* @description: 当前用户关联仓库
|
||||
* @date 2024/6/14 15:05
|
||||
**/
|
||||
@Slf4j
|
||||
public class AssociationWarehouseCacheUtil {
|
||||
|
||||
|
||||
/**
|
||||
* 设置缓存
|
||||
*
|
||||
* @param key 参数键
|
||||
* @param associationWarehouseCacheDO 数据
|
||||
*/
|
||||
public static void setCache(Long key, AssociationWarehouseCacheDO associationWarehouseCacheDO) {
|
||||
SpringUtils.getBean(RedisService.class).setCacheObject(getCacheKey(key), associationWarehouseCacheDO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取字典缓存
|
||||
*
|
||||
* @param key 参数键
|
||||
* @return dictDatas 数据
|
||||
*/
|
||||
public static AssociationWarehouseCacheDO getCache(Long key) {
|
||||
return SpringUtils.getBean(RedisService.class).getCacheObject(getCacheKey(key));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除指定缓存
|
||||
*
|
||||
* @param key 字典键
|
||||
*/
|
||||
public static void removeDictCache(Long key) {
|
||||
SpringUtils.getBean(RedisService.class).deleteObject(getCacheKey(key));
|
||||
}
|
||||
|
||||
/**
|
||||
* 清空缓存
|
||||
*/
|
||||
public static void clearDictCache() {
|
||||
Collection<String> keys = SpringUtils.getBean(RedisService.class).keys(Constants.WMS_ASSOCIATION_WAREHOUSE_KEY + "*");
|
||||
SpringUtils.getBean(RedisService.class).deleteObject(keys);
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置cache key
|
||||
*
|
||||
* @param configKey 参数键
|
||||
* @return 缓存键key
|
||||
*/
|
||||
public static String getCacheKey(Long configKey) {
|
||||
return Constants.WMS_ASSOCIATION_WAREHOUSE_KEY + configKey;
|
||||
}
|
||||
}
|
||||
+22
@@ -0,0 +1,22 @@
|
||||
package com.mhd.basic.domain.common.entity;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 数据权限判断 po
|
||||
*
|
||||
* 2023-02-20
|
||||
*
|
||||
* @author 王子豪
|
||||
*/
|
||||
@Data
|
||||
public class DataPermission
|
||||
{
|
||||
@ApiModelProperty(value = "创建者")
|
||||
private Long createBy;
|
||||
@ApiModelProperty(name = "组织ID集合")
|
||||
private List<Long> organizationIdList;
|
||||
}
|
||||
+50
@@ -0,0 +1,50 @@
|
||||
package com.mhd.basic.domain.commonLineDriver.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
import java.math.BigDecimal;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
|
||||
|
||||
/**
|
||||
* 司机常跑线路对象 common_line_driver
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-03-19
|
||||
*/
|
||||
|
||||
@Data
|
||||
public class CommonLineDriver extends BaseVOEntity{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("线路ID")
|
||||
@TableId(type = IdType.AUTO)
|
||||
private Long commonLineDriverId;
|
||||
|
||||
@ApiModelProperty("线路名称")
|
||||
@Excel(name = "线路名称")
|
||||
private String lineName;
|
||||
|
||||
@ApiModelProperty("装货地名称")
|
||||
@Excel(name = "装货地名称")
|
||||
private String loadingName;
|
||||
|
||||
@ApiModelProperty("装货地县区编码")
|
||||
@Excel(name = "装货地县区编码")
|
||||
private String loadingAreaId;
|
||||
|
||||
@ApiModelProperty("卸货地名称")
|
||||
@Excel(name = "卸货地名称")
|
||||
private String unloadName;
|
||||
|
||||
@ApiModelProperty("卸货地县区编码")
|
||||
@Excel(name = "卸货地县区编码")
|
||||
private String unloadAreaId;
|
||||
|
||||
|
||||
}
|
||||
+38
@@ -0,0 +1,38 @@
|
||||
package com.mhd.basic.domain.commonLineDriver.repository.facade;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.mhd.basic.domain.commonLineDriver.entity.CommonLineDriver;
|
||||
import com.mhd.basic.domain.commonLineDriver.repository.po.CommonLineDriverPO;
|
||||
import com.mhd.basic.domain.commonLineDriver.repository.todo.CommonLineDriverDO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 司机常跑线路Service接口
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-03-19
|
||||
*/
|
||||
public interface ICommonLineDriverService extends IService<CommonLineDriver>
|
||||
{
|
||||
/**
|
||||
* 分页查询司机常跑线路列表
|
||||
*/
|
||||
public List<CommonLineDriverPO> queryList(CommonLineDriverDO commonLineDriverDO);
|
||||
|
||||
/**
|
||||
* 新增司机常跑线路
|
||||
*/
|
||||
public Boolean insert(CommonLineDriverDO commonLineDriverDO);
|
||||
|
||||
/**
|
||||
* 修改司机常跑线路
|
||||
*/
|
||||
public Boolean update(CommonLineDriverDO commonLineDriverDO);
|
||||
|
||||
|
||||
/**
|
||||
* 查询司机常跑线路
|
||||
*/
|
||||
public CommonLineDriverPO getInfo(Long commonLineDriverId);
|
||||
}
|
||||
+22
@@ -0,0 +1,22 @@
|
||||
package com.mhd.basic.domain.commonLineDriver.repository.mapper;
|
||||
|
||||
import java.util.List;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.mhd.basic.domain.commonLineDriver.entity.CommonLineDriver;
|
||||
import com.mhd.basic.domain.commonLineDriver.repository.po.CommonLineDriverPO;
|
||||
import com.mhd.basic.domain.commonLineDriver.repository.todo.CommonLineDriverDO;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
/**
|
||||
* 司机常跑线路Mapper接口
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-03-19
|
||||
*/
|
||||
public interface CommonLineDriverMapper extends BaseMapper<CommonLineDriver>
|
||||
{
|
||||
/**
|
||||
* 查询司机常跑线路列表
|
||||
*/
|
||||
public List<CommonLineDriverPO> queryList(CommonLineDriverDO commonLineDriverDO);
|
||||
|
||||
}
|
||||
+66
@@ -0,0 +1,66 @@
|
||||
package com.mhd.basic.domain.commonLineDriver.repository.persistence;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.mhd.basic.domain.commonLineDriver.entity.CommonLineDriver;
|
||||
import com.mhd.basic.domain.commonLineDriver.repository.facade.ICommonLineDriverService;
|
||||
import com.mhd.basic.domain.commonLineDriver.repository.mapper.CommonLineDriverMapper;
|
||||
import com.mhd.basic.domain.commonLineDriver.repository.po.CommonLineDriverPO;
|
||||
import com.mhd.basic.domain.commonLineDriver.repository.todo.CommonLineDriverDO;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 司机常跑线路Service业务层处理
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-03-19
|
||||
*/
|
||||
@Service
|
||||
public class CommonLineDriverImpl extends ServiceImpl<CommonLineDriverMapper, CommonLineDriver> implements ICommonLineDriverService{
|
||||
@Autowired
|
||||
private CommonLineDriverMapper commonLineDriverMapper;
|
||||
|
||||
/**
|
||||
* 查询司机常跑线路列表
|
||||
*/
|
||||
@Override
|
||||
public List<CommonLineDriverPO> queryList(CommonLineDriverDO commonLineDriverDO)
|
||||
{
|
||||
return commonLineDriverMapper.queryList(commonLineDriverDO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增司机常跑线路
|
||||
*/
|
||||
@Override
|
||||
public Boolean insert(CommonLineDriverDO commonLineDriverDO) {
|
||||
CommonLineDriver commonLineDriver = new CommonLineDriver();
|
||||
BeanUtils.copyProperties(commonLineDriverDO,commonLineDriver);
|
||||
return this.save(commonLineDriver);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改司机常跑线路
|
||||
*/
|
||||
@Override
|
||||
public Boolean update(CommonLineDriverDO commonLineDriverDO) {
|
||||
CommonLineDriver commonLineDriver = new CommonLineDriver();
|
||||
BeanUtils.copyProperties(commonLineDriverDO,commonLineDriver);
|
||||
return this.updateById(commonLineDriver);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改司机常跑线路
|
||||
*/
|
||||
@Override
|
||||
public CommonLineDriverPO getInfo(Long commonLineDriverId) {
|
||||
CommonLineDriver commonLineDriver = this.getById(commonLineDriverId);
|
||||
CommonLineDriverPO commonLineDriverPO = new CommonLineDriverPO();
|
||||
BeanUtils.copyProperties(commonLineDriver,commonLineDriverPO);
|
||||
return commonLineDriverPO;
|
||||
}
|
||||
}
|
||||
+50
@@ -0,0 +1,50 @@
|
||||
package com.mhd.basic.domain.commonLineDriver.repository.po;
|
||||
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import java.math.BigDecimal;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
|
||||
|
||||
/**
|
||||
* 司机常跑线路对象 common_line_driver
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-03-19
|
||||
*/
|
||||
|
||||
@Data
|
||||
@ApiModel(value = "司机常跑线路对象", description = "司机常跑线路响应对象")
|
||||
public class CommonLineDriverPO extends BaseVOEntity{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("线路ID")
|
||||
private Long commonLineDriverId;
|
||||
|
||||
@ApiModelProperty("线路名称")
|
||||
@Excel(name = "线路名称")
|
||||
private String lineName;
|
||||
|
||||
@ApiModelProperty("装货地名称")
|
||||
@Excel(name = "装货地名称")
|
||||
private String loadingName;
|
||||
|
||||
@ApiModelProperty("装货地县区编码")
|
||||
@Excel(name = "装货地县区编码")
|
||||
private String loadingAreaId;
|
||||
|
||||
@ApiModelProperty("卸货地名称")
|
||||
@Excel(name = "卸货地名称")
|
||||
private String unloadName;
|
||||
|
||||
@ApiModelProperty("卸货地县区编码")
|
||||
@Excel(name = "卸货地县区编码")
|
||||
private String unloadAreaId;
|
||||
|
||||
|
||||
|
||||
}
|
||||
+53
@@ -0,0 +1,53 @@
|
||||
package com.mhd.basic.domain.commonLineDriver.repository.todo;
|
||||
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import java.math.BigDecimal;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* 司机常跑线路对象 common_line_driver
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-03-19
|
||||
*/
|
||||
|
||||
@Data
|
||||
public class CommonLineDriverDO extends BaseVOEntity{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("线路ID")
|
||||
private Long commonLineDriverId;
|
||||
|
||||
@ApiModelProperty("线路名称")
|
||||
@Excel(name = "线路名称")
|
||||
private String lineName;
|
||||
|
||||
@ApiModelProperty("装货地名称")
|
||||
@Excel(name = "装货地名称")
|
||||
private String loadingName;
|
||||
|
||||
@ApiModelProperty("装货地县区编码")
|
||||
@Excel(name = "装货地县区编码")
|
||||
private String loadingAreaId;
|
||||
|
||||
@ApiModelProperty("卸货地名称")
|
||||
@Excel(name = "卸货地名称")
|
||||
private String unloadName;
|
||||
|
||||
@ApiModelProperty("卸货地县区编码")
|
||||
@Excel(name = "卸货地县区编码")
|
||||
private String unloadAreaId;
|
||||
|
||||
@ApiModelProperty(name = "组织ID集合")
|
||||
private List<Long> organizationIdList;
|
||||
|
||||
@ApiModelProperty(name = "权限菜单ID")
|
||||
private Long permissionMenuId;
|
||||
}
|
||||
+69
@@ -0,0 +1,69 @@
|
||||
package com.mhd.basic.domain.commonLineDriver.service;
|
||||
|
||||
import com.mhd.basic.domain.commonLineDriver.entity.CommonLineDriver;
|
||||
import com.mhd.basic.domain.commonLineDriver.repository.facade.ICommonLineDriverService;
|
||||
import com.mhd.basic.domain.commonLineDriver.repository.po.CommonLineDriverPO;
|
||||
import com.mhd.basic.domain.commonLineDriver.repository.todo.CommonLineDriverDO;
|
||||
import com.mhd.basic.interfaces.dto.commonLineDriver.CommonLineDriverDTO;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
/**
|
||||
* 司机常跑线路
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-03-19
|
||||
*/
|
||||
@Service
|
||||
@Slf4j
|
||||
public class CommonLineDriverDomainService {
|
||||
|
||||
@Autowired
|
||||
private ICommonLineDriverService commonLineDriverService;
|
||||
|
||||
|
||||
/**
|
||||
* 分页查询司机常跑线路列表
|
||||
*/
|
||||
public List<CommonLineDriverPO> queryList(CommonLineDriverDO commonLineDriverDO) {
|
||||
return commonLineDriverService.queryList(commonLineDriverDO);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 新增司机常跑线路
|
||||
*/
|
||||
public Boolean insert(CommonLineDriverDO commonLineDriverDO) {
|
||||
|
||||
return commonLineDriverService.insert(commonLineDriverDO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改司机常跑线路
|
||||
*/
|
||||
public Boolean update(CommonLineDriverDO commonLineDriverDO) {
|
||||
return commonLineDriverService.update(commonLineDriverDO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除司机常跑线路
|
||||
*/
|
||||
public Boolean delete(List<Long> ids) {
|
||||
return commonLineDriverService.lambdaUpdate()
|
||||
.in(CommonLineDriver::getCommonLineDriverId, ids)
|
||||
.set(CommonLineDriver::getDelFlag, 2)
|
||||
.update();
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取司机常跑线路详细信息
|
||||
*/
|
||||
public CommonLineDriverPO getInfo(Long commonLineDriverId)
|
||||
{
|
||||
return commonLineDriverService.getInfo(commonLineDriverId);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
+90
@@ -0,0 +1,90 @@
|
||||
package com.mhd.basic.domain.container.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
import java.math.BigDecimal;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
|
||||
|
||||
/**
|
||||
* 容器管理对象 container
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-05-07
|
||||
*/
|
||||
|
||||
@Data
|
||||
public class Container extends BaseVOEntity{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("容器id")
|
||||
@TableId(type = IdType.AUTO)
|
||||
private Long containerId;
|
||||
|
||||
@ApiModelProperty("组织表ID")
|
||||
@Excel(name = "组织表ID")
|
||||
private Long organizationId;
|
||||
|
||||
@ApiModelProperty("组织名称")
|
||||
@Excel(name = "组织名称")
|
||||
private String organizationName;
|
||||
|
||||
@ApiModelProperty("一级组织表ID")
|
||||
@Excel(name = "一级组织表ID")
|
||||
private Long topOrganizationId;
|
||||
|
||||
@ApiModelProperty("容器编码")
|
||||
@Excel(name = "容器编码")
|
||||
private String containerCode;
|
||||
|
||||
@ApiModelProperty("容器类型 数据字典")
|
||||
@Excel(name = "容器类型 数据字典")
|
||||
private String containerType;
|
||||
|
||||
@ApiModelProperty("容器类型名称 数据字典")
|
||||
@Excel(name = "容器类型名称 数据字典")
|
||||
private String containerTypeName;
|
||||
|
||||
@ApiModelProperty("容器大小 长*宽*高 单位:米")
|
||||
@Excel(name = "容器大小 长*宽*高 单位:米")
|
||||
private String containerSize;
|
||||
|
||||
@ApiModelProperty("容器大小-长 单位:米")
|
||||
@Excel(name = "容器大小-长 单位:米")
|
||||
private BigDecimal containerLength;
|
||||
|
||||
@ApiModelProperty("容器大小-宽 单位:米")
|
||||
@Excel(name = "容器大小-宽 单位:米")
|
||||
private BigDecimal containerWidth;
|
||||
|
||||
@ApiModelProperty("容器大小-高 单位:米")
|
||||
@Excel(name = "容器大小-高 单位:米")
|
||||
private BigDecimal containerHeight;
|
||||
|
||||
@ApiModelProperty("容器容积 单位:立方米")
|
||||
@Excel(name = "容器容积 单位:立方米")
|
||||
private BigDecimal containerVolume;
|
||||
|
||||
@ApiModelProperty("使用状态: 1-空闲 2-占用")
|
||||
@Excel(name = "使用状态: 1-空闲 2-占用")
|
||||
private Integer usageStatus;
|
||||
|
||||
@ApiModelProperty("启用状态: 1-启用 2-停用")
|
||||
@Excel(name = "启用状态: 1-启用 2-停用")
|
||||
private Integer openingUp;
|
||||
|
||||
@ApiModelProperty("是否作废: 1-否 2-是")
|
||||
@Excel(name = "是否作废: 1-否 2-是")
|
||||
private Integer nullify;
|
||||
|
||||
@ApiModelProperty("备注")
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
|
||||
|
||||
}
|
||||
+43
@@ -0,0 +1,43 @@
|
||||
package com.mhd.basic.domain.container.repository.facade;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.mhd.basic.domain.container.entity.Container;
|
||||
import com.mhd.basic.domain.container.repository.po.ContainerPO;
|
||||
import com.mhd.basic.domain.container.repository.todo.ContainerDO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 容器管理Service接口
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-05-07
|
||||
*/
|
||||
public interface IContainerService extends IService<Container>
|
||||
{
|
||||
/**
|
||||
* 分页查询容器管理列表
|
||||
*/
|
||||
public List<ContainerPO> queryList(ContainerDO containerDO);
|
||||
|
||||
/**
|
||||
* 新增容器管理
|
||||
*/
|
||||
public Boolean insert(ContainerDO containerDO);
|
||||
|
||||
/**
|
||||
* 修改容器管理
|
||||
*/
|
||||
public Boolean update(ContainerDO containerDO);
|
||||
|
||||
/**
|
||||
* 批量删除容器管理
|
||||
*/
|
||||
public Boolean delete(Long[] containerIds);
|
||||
|
||||
|
||||
/**
|
||||
* 查询容器管理
|
||||
*/
|
||||
public ContainerPO getInfo(Long containerId);
|
||||
}
|
||||
+22
@@ -0,0 +1,22 @@
|
||||
package com.mhd.basic.domain.container.repository.mapper;
|
||||
|
||||
import java.util.List;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.mhd.basic.domain.container.entity.Container;
|
||||
import com.mhd.basic.domain.container.repository.po.ContainerPO;
|
||||
import com.mhd.basic.domain.container.repository.todo.ContainerDO;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
/**
|
||||
* 容器管理Mapper接口
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-05-07
|
||||
*/
|
||||
public interface ContainerMapper extends BaseMapper<Container>
|
||||
{
|
||||
/**
|
||||
* 查询容器管理列表
|
||||
*/
|
||||
public List<ContainerPO> queryList(ContainerDO containerDO);
|
||||
|
||||
}
|
||||
+126
@@ -0,0 +1,126 @@
|
||||
package com.mhd.basic.domain.container.repository.persistence;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.mhd.basic.domain.container.entity.Container;
|
||||
import com.mhd.basic.domain.container.repository.facade.IContainerService;
|
||||
import com.mhd.basic.domain.container.repository.mapper.ContainerMapper;
|
||||
import com.mhd.basic.domain.container.repository.po.ContainerPO;
|
||||
import com.mhd.basic.domain.container.repository.todo.ContainerDO;
|
||||
import com.mhd.basic.domain.pack.entity.Pack;
|
||||
import com.mhd.basic.domain.pack.repository.todo.PackDO;
|
||||
import com.mhd.common.core.domain.po.UserPo;
|
||||
import com.mhd.common.core.exception.ServiceException;
|
||||
import com.mhd.common.security.utils.SecurityUtils;
|
||||
import com.mhd.system.api.domain.cache.AssociationWarehouseCacheDO;
|
||||
import com.mhd.system.api.domain.cache.SystemServiceCacheUtil;
|
||||
import com.mhd.system.api.model.LoginUser;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 容器管理Service业务层处理
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-05-07
|
||||
*/
|
||||
@Service
|
||||
public class ContainerImpl extends ServiceImpl<ContainerMapper, Container> implements IContainerService{
|
||||
@Autowired
|
||||
private ContainerMapper containerMapper;
|
||||
|
||||
/**
|
||||
* 查询容器管理列表
|
||||
*/
|
||||
@Override
|
||||
public List<ContainerPO> queryList(ContainerDO containerDO)
|
||||
{
|
||||
return containerMapper.queryList(containerDO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增容器管理
|
||||
*/
|
||||
@Override
|
||||
public Boolean insert(ContainerDO containerDO) {
|
||||
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||
//唯一性校验
|
||||
verifyUniqueness(containerDO);
|
||||
Container container = new Container();
|
||||
BeanUtils.copyProperties(containerDO,container);
|
||||
container.setContainerSize(containerDO.getContainerLength() + "*" + containerDO.getContainerWidth() + "*" + containerDO.getContainerHeight());
|
||||
return this.save(container);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改容器管理
|
||||
*/
|
||||
@Override
|
||||
public Boolean update(ContainerDO containerDO) {
|
||||
//唯一性校验
|
||||
verifyUniqueness(containerDO);
|
||||
Container container = new Container();
|
||||
BeanUtils.copyProperties(containerDO,container);
|
||||
return this.updateById(container);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除容器管理
|
||||
*/
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean delete(Long[] containerIds ) {
|
||||
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||
List<Container> list = new ArrayList<>();
|
||||
for (Long id : containerIds) {
|
||||
Container container = new Container();
|
||||
container.setContainerId(id);
|
||||
container.setDelFlag(2);
|
||||
container.setUpdateBy(loginUser.getUserid());
|
||||
container.setUpdateByName(loginUser.getUsername());
|
||||
container.setUpdateTime(new Date());
|
||||
list.add(container);
|
||||
}
|
||||
return this.updateBatchById(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改容器管理
|
||||
*/
|
||||
@Override
|
||||
public ContainerPO getInfo(Long containerId) {
|
||||
Container container = this.getById(containerId);
|
||||
ContainerPO containerPO = new ContainerPO();
|
||||
BeanUtils.copyProperties(container,containerPO);
|
||||
return containerPO;
|
||||
}
|
||||
|
||||
/**
|
||||
* @description 校验唯一
|
||||
* @author ZhouGY
|
||||
* @date 2024/5/9 21:10
|
||||
* @param containerDO
|
||||
*/
|
||||
private void verifyUniqueness(ContainerDO containerDO){
|
||||
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||
Long topOrganizationId = loginUser.getUserPo().getTopOrganizationId();
|
||||
if (topOrganizationId == null || topOrganizationId == 0 ){
|
||||
throw new ServiceException("获取当前登陆人组织失败!");
|
||||
}
|
||||
int count = containerMapper.selectCount(new QueryWrapper<Container>().lambda()
|
||||
.eq(Container::getTopOrganizationId, topOrganizationId)
|
||||
.eq(Container::getContainerCode,containerDO.getContainerCode())
|
||||
.eq(Container::getOrganizationId, containerDO.getOrganizationId())
|
||||
.ne(containerDO.getContainerId() != null, Container::getContainerId, containerDO.getContainerId() )
|
||||
.eq(Container::getDelFlag,1));
|
||||
if (count > 0){
|
||||
throw new ServiceException("容器编码【" + containerDO.getContainerCode() + "】已存在");
|
||||
}
|
||||
}
|
||||
}
|
||||
+90
@@ -0,0 +1,90 @@
|
||||
package com.mhd.basic.domain.container.repository.po;
|
||||
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import java.math.BigDecimal;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
|
||||
|
||||
/**
|
||||
* 容器管理对象 container
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-05-07
|
||||
*/
|
||||
|
||||
@Data
|
||||
@ApiModel(value = "容器管理对象", description = "容器管理响应对象")
|
||||
public class ContainerPO extends BaseVOEntity{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("容器id")
|
||||
private Long containerId;
|
||||
|
||||
@ApiModelProperty("组织表ID")
|
||||
@Excel(name = "组织表ID")
|
||||
private Long organizationId;
|
||||
|
||||
@ApiModelProperty("组织名称")
|
||||
@Excel(name = "组织名称")
|
||||
private String organizationName;
|
||||
|
||||
@ApiModelProperty("一级组织表ID")
|
||||
@Excel(name = "一级组织表ID")
|
||||
private Long topOrganizationId;
|
||||
|
||||
@ApiModelProperty("容器编码")
|
||||
@Excel(name = "容器编码")
|
||||
private String containerCode;
|
||||
|
||||
@ApiModelProperty("容器类型 数据字典")
|
||||
@Excel(name = "容器类型 数据字典")
|
||||
private String containerType;
|
||||
|
||||
@ApiModelProperty("容器类型名称 数据字典")
|
||||
@Excel(name = "容器类型名称 数据字典")
|
||||
private String containerTypeName;
|
||||
|
||||
@ApiModelProperty("容器大小 长*宽*高 单位:米")
|
||||
@Excel(name = "容器大小 长*宽*高 单位:米")
|
||||
private String containerSize;
|
||||
|
||||
@ApiModelProperty("容器大小-长 单位:米")
|
||||
@Excel(name = "容器大小-长 单位:米")
|
||||
private BigDecimal containerLength;
|
||||
|
||||
@ApiModelProperty("容器大小-宽 单位:米")
|
||||
@Excel(name = "容器大小-宽 单位:米")
|
||||
private BigDecimal containerWidth;
|
||||
|
||||
@ApiModelProperty("容器大小-高 单位:米")
|
||||
@Excel(name = "容器大小-高 单位:米")
|
||||
private BigDecimal containerHeight;
|
||||
|
||||
@ApiModelProperty("容器容积 单位:立方米")
|
||||
@Excel(name = "容器容积 单位:立方米")
|
||||
private BigDecimal containerVolume;
|
||||
|
||||
@ApiModelProperty("使用状态: 1-空闲 2-占用")
|
||||
@Excel(name = "使用状态: 1-空闲 2-占用")
|
||||
private Integer usageStatus;
|
||||
|
||||
@ApiModelProperty("启用状态: 1-启用 2-停用")
|
||||
@Excel(name = "启用状态: 1-启用 2-停用")
|
||||
private Integer openingUp;
|
||||
|
||||
@ApiModelProperty("是否作废: 1-否 2-是")
|
||||
@Excel(name = "是否作废: 1-否 2-是")
|
||||
private Integer nullify;
|
||||
|
||||
@ApiModelProperty("备注")
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
|
||||
|
||||
|
||||
}
|
||||
+93
@@ -0,0 +1,93 @@
|
||||
package com.mhd.basic.domain.container.repository.todo;
|
||||
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import java.math.BigDecimal;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* 容器管理对象 container
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-05-07
|
||||
*/
|
||||
|
||||
@Data
|
||||
public class ContainerDO extends BaseVOEntity{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("容器id")
|
||||
private Long containerId;
|
||||
|
||||
@ApiModelProperty("组织表ID")
|
||||
@Excel(name = "组织表ID")
|
||||
private Long organizationId;
|
||||
|
||||
@ApiModelProperty("组织名称")
|
||||
@Excel(name = "组织名称")
|
||||
private String organizationName;
|
||||
|
||||
@ApiModelProperty("一级组织表ID")
|
||||
@Excel(name = "一级组织表ID")
|
||||
private Long topOrganizationId;
|
||||
|
||||
@ApiModelProperty("容器编码")
|
||||
@Excel(name = "容器编码")
|
||||
private String containerCode;
|
||||
|
||||
@ApiModelProperty("容器类型 数据字典")
|
||||
@Excel(name = "容器类型 数据字典")
|
||||
private String containerType;
|
||||
|
||||
@ApiModelProperty("容器类型名称 数据字典")
|
||||
@Excel(name = "容器类型名称 数据字典")
|
||||
private String containerTypeName;
|
||||
|
||||
@ApiModelProperty("容器大小 长*宽*高 单位:米")
|
||||
@Excel(name = "容器大小 长*宽*高 单位:米")
|
||||
private String containerSize;
|
||||
|
||||
@ApiModelProperty("容器大小-长 单位:米")
|
||||
@Excel(name = "容器大小-长 单位:米")
|
||||
private BigDecimal containerLength;
|
||||
|
||||
@ApiModelProperty("容器大小-宽 单位:米")
|
||||
@Excel(name = "容器大小-宽 单位:米")
|
||||
private BigDecimal containerWidth;
|
||||
|
||||
@ApiModelProperty("容器大小-高 单位:米")
|
||||
@Excel(name = "容器大小-高 单位:米")
|
||||
private BigDecimal containerHeight;
|
||||
|
||||
@ApiModelProperty("容器容积 单位:立方米")
|
||||
@Excel(name = "容器容积 单位:立方米")
|
||||
private BigDecimal containerVolume;
|
||||
|
||||
@ApiModelProperty("使用状态: 1-空闲 2-占用")
|
||||
@Excel(name = "使用状态: 1-空闲 2-占用")
|
||||
private Integer usageStatus;
|
||||
|
||||
@ApiModelProperty("启用状态: 1-启用 2-停用")
|
||||
@Excel(name = "启用状态: 1-启用 2-停用")
|
||||
private Integer openingUp;
|
||||
|
||||
@ApiModelProperty("是否作废: 1-否 2-是")
|
||||
@Excel(name = "是否作废: 1-否 2-是")
|
||||
private Integer nullify;
|
||||
|
||||
@ApiModelProperty("备注")
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
|
||||
@ApiModelProperty(name = "组织ID集合")
|
||||
private List<Long> organizationIdList;
|
||||
|
||||
@ApiModelProperty(name = "权限菜单ID")
|
||||
private Long permissionMenuId;
|
||||
}
|
||||
+86
@@ -0,0 +1,86 @@
|
||||
package com.mhd.basic.domain.container.service;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
||||
import com.mhd.basic.domain.container.entity.Container;
|
||||
import com.mhd.basic.domain.container.repository.facade.IContainerService;
|
||||
import com.mhd.basic.domain.container.repository.po.ContainerPO;
|
||||
import com.mhd.basic.domain.container.repository.todo.ContainerDO;
|
||||
import com.mhd.basic.domain.storageSection.entity.StorageSection;
|
||||
import com.mhd.common.security.utils.SecurityUtils;
|
||||
import com.mhd.system.api.model.LoginUser;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
/**
|
||||
* 容器管理
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-05-07
|
||||
*/
|
||||
@Service
|
||||
@Slf4j
|
||||
public class ContainerDomainService {
|
||||
|
||||
@Autowired
|
||||
private IContainerService containerService;
|
||||
|
||||
|
||||
/**
|
||||
* 分页查询容器管理列表
|
||||
*/
|
||||
public List<ContainerPO> queryList(ContainerDO containerDO) {
|
||||
return containerService.queryList(containerDO);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 新增容器管理
|
||||
*/
|
||||
public Boolean insert(ContainerDO containerDO) {
|
||||
|
||||
return containerService.insert(containerDO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改容器管理
|
||||
*/
|
||||
public Boolean update(ContainerDO containerDO) {
|
||||
return containerService.update(containerDO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除容器管理
|
||||
*/
|
||||
public Boolean delete(Long[] containerIds) {
|
||||
return containerService.delete(containerIds);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取容器管理详细信息
|
||||
*/
|
||||
public ContainerPO getInfo(Long containerId)
|
||||
{
|
||||
return containerService.getInfo(containerId);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @description 批量作废容器
|
||||
* @author ZhouGY
|
||||
* @date 2024/5/13 9:46
|
||||
* @param containerIds
|
||||
* @return Boolean
|
||||
*/
|
||||
public Boolean nullifyByIds(List<Long> containerIds) {
|
||||
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||
return containerService.update(new UpdateWrapper<Container>().lambda()
|
||||
.set(Container::getNullify, 2)
|
||||
.set(Container::getUpdateBy, loginUser.getUserid())
|
||||
.set(Container::getUpdateTime, new Date())
|
||||
.in(Container::getContainerId, containerIds)
|
||||
.eq(Container::getDelFlag, 1));
|
||||
}
|
||||
}
|
||||
+169
@@ -0,0 +1,169 @@
|
||||
package com.mhd.basic.domain.contractManage.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
import java.math.BigDecimal;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
|
||||
|
||||
/**
|
||||
* 合同管理对象 contract_manage
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-06-07
|
||||
*/
|
||||
|
||||
@Data
|
||||
public class ContractManage extends BaseVOEntity{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("合同管理id")
|
||||
@TableId(type = IdType.AUTO)
|
||||
private Long contractManageId;
|
||||
|
||||
@ApiModelProperty("一级组织表ID")
|
||||
@Excel(name = "一级组织表ID")
|
||||
private Long topOrganizationId;
|
||||
|
||||
@ApiModelProperty("组织表ID")
|
||||
@Excel(name = "组织表ID")
|
||||
private Long organizationId;
|
||||
|
||||
@ApiModelProperty("组织名称")
|
||||
@Excel(name = "组织名称")
|
||||
private String organizationName;
|
||||
|
||||
@ApiModelProperty("合同编号")
|
||||
@Excel(name = "合同编号")
|
||||
private String contractNumber;
|
||||
|
||||
@ApiModelProperty("合同名称")
|
||||
@Excel(name = "合同名称")
|
||||
private String contractName;
|
||||
|
||||
@ApiModelProperty("原始合同编号")
|
||||
@Excel(name = "原始合同编号")
|
||||
private String originalContractNumber;
|
||||
|
||||
@ApiModelProperty("是否通用合同(1-是,2-否)")
|
||||
@Excel(name = "是否通用合同", readConverterExp = "1=-是,2-否")
|
||||
private Integer commonContractFlag;
|
||||
|
||||
@ApiModelProperty("合同类型(1-仓储,2-运输)")
|
||||
@Excel(name = "合同类型", readConverterExp = "1=-仓储,2-运输")
|
||||
private Integer contractType;
|
||||
|
||||
@ApiModelProperty("合同状态(1-未生效,2-使用中,3-已过期,4-已作废)")
|
||||
@Excel(name = "合同状态", readConverterExp = "1=-未生效,2-使用中,3-已过期,4-已作废")
|
||||
private Integer contractState;
|
||||
|
||||
@ApiModelProperty("签订单位")
|
||||
@Excel(name = "签订单位")
|
||||
private String signingUnit;
|
||||
|
||||
@ApiModelProperty("结算主体")
|
||||
@Excel(name = "结算主体")
|
||||
private String settlementCustomers;
|
||||
|
||||
@ApiModelProperty("结算主体id")
|
||||
@Excel(name = "结算主体id")
|
||||
private Long settlementCustomersId;
|
||||
|
||||
@ApiModelProperty("结算主体code")
|
||||
@Excel(name = "结算主体code")
|
||||
private String settlementCustomersCode;
|
||||
|
||||
@ApiModelProperty("我司身份(1-甲方,2-乙方)")
|
||||
@Excel(name = "我司身份", readConverterExp = "1=-甲方,2-乙方")
|
||||
private Integer ourIdentity;
|
||||
|
||||
@ApiModelProperty("账期(1-每月,2-双月,3-季度)")
|
||||
@Excel(name = "账期", readConverterExp = "1=-每月,2-双月,3-季度")
|
||||
private Integer accountingPeriod;
|
||||
|
||||
@ApiModelProperty("合同签订日期")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
@Excel(name = "合同签订日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||
private Date signingDate;
|
||||
|
||||
@ApiModelProperty("合同生效日期")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
@Excel(name = "合同生效日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||
private Date effectiveDate;
|
||||
|
||||
@ApiModelProperty("合同到期日期")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
@Excel(name = "合同到期日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||
private Date expirationDate;
|
||||
|
||||
@ApiModelProperty("备注")
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
|
||||
@ApiModelProperty("合同正本附件地址")
|
||||
@Excel(name = "合同正本附件地址")
|
||||
private String contractOriginalUrl;
|
||||
|
||||
@ApiModelProperty("廉政协议附件地址")
|
||||
@Excel(name = "廉政协议附件地址")
|
||||
private String integrityAgreementUrl;
|
||||
|
||||
@ApiModelProperty("安全协议附件地址")
|
||||
@Excel(name = "安全协议附件地址")
|
||||
private String securityProtocolUrl;
|
||||
|
||||
@ApiModelProperty("其他附件地址")
|
||||
@Excel(name = "其他附件地址")
|
||||
private String otherAttachmentsUrl;
|
||||
|
||||
@ApiModelProperty("我司签订人")
|
||||
@Excel(name = "我司签订人")
|
||||
private String ourSinged;
|
||||
|
||||
@ApiModelProperty("我司签订人联系方式")
|
||||
@Excel(name = "我司签订人联系方式")
|
||||
private String ourSingedPhone;
|
||||
|
||||
@ApiModelProperty("我司经办人")
|
||||
@Excel(name = "我司经办人")
|
||||
private String ourOperator;
|
||||
|
||||
@ApiModelProperty("我司经办人联系方式")
|
||||
@Excel(name = "我司经办人联系方式")
|
||||
private String ourOperatorPhone;
|
||||
|
||||
@ApiModelProperty("对方签订人")
|
||||
@Excel(name = "对方签订人")
|
||||
private String theySinged;
|
||||
|
||||
@ApiModelProperty("对方签订人联系方式")
|
||||
@Excel(name = "对方签订人联系方式")
|
||||
private String theySingedPhone;
|
||||
|
||||
@ApiModelProperty("对方经办人")
|
||||
@Excel(name = "对方经办人")
|
||||
private String theyOperator;
|
||||
|
||||
@ApiModelProperty("对方经办人联系方式")
|
||||
@Excel(name = "对方经办人联系方式")
|
||||
private String theyOperatorPhone;
|
||||
|
||||
@ApiModelProperty(name = "是否自动出账(1-是,2-否)")
|
||||
private Integer automaticFlag;
|
||||
|
||||
@ApiModelProperty("出账日期")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private Date paymentDate;
|
||||
|
||||
@ApiModelProperty(name = "主体类型(1-货主,2-客户,3-承运商)")
|
||||
private Integer principalType;
|
||||
|
||||
@ApiModelProperty(name = "是否包含运输费用(1-包含,2-包含)")
|
||||
private Integer transportationCosts;
|
||||
|
||||
}
|
||||
+48
@@ -0,0 +1,48 @@
|
||||
package com.mhd.basic.domain.contractManage.repository.facade;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.mhd.basic.domain.contractManage.entity.ContractManage;
|
||||
import com.mhd.basic.domain.contractManage.repository.po.ContractManagePO;
|
||||
import com.mhd.basic.domain.contractManage.repository.todo.ContractManageDO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 合同管理Service接口
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-06-07
|
||||
*/
|
||||
public interface IContractManageService extends IService<ContractManage>
|
||||
{
|
||||
/**
|
||||
* 分页查询合同管理列表
|
||||
*/
|
||||
public List<ContractManagePO> queryList(ContractManageDO contractManageDO);
|
||||
|
||||
/**
|
||||
* 新增合同管理
|
||||
*/
|
||||
public Boolean insert(ContractManageDO contractManageDO);
|
||||
|
||||
/**
|
||||
* 修改合同管理
|
||||
*/
|
||||
public Boolean update(ContractManageDO contractManageDO);
|
||||
|
||||
/**
|
||||
* 批量删除合同管理
|
||||
*/
|
||||
public Boolean delete(Long[] contractManageIds);
|
||||
|
||||
|
||||
/**
|
||||
* 查询合同管理
|
||||
*/
|
||||
public ContractManagePO getInfo(Long contractManageId);
|
||||
|
||||
void updateEffectiveList();
|
||||
|
||||
void updateExpirationDate();
|
||||
|
||||
}
|
||||
+41
@@ -0,0 +1,41 @@
|
||||
package com.mhd.basic.domain.contractManage.repository.mapper;
|
||||
|
||||
import java.util.List;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.mhd.basic.domain.contractManage.entity.ContractManage;
|
||||
import com.mhd.basic.domain.contractManage.repository.po.ContractManagePO;
|
||||
import com.mhd.basic.domain.contractManage.repository.todo.ContractManageDO;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
|
||||
/**
|
||||
* 合同管理Mapper接口
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-06-07
|
||||
*/
|
||||
public interface ContractManageMapper extends BaseMapper<ContractManage>
|
||||
{
|
||||
/**
|
||||
* 查询合同管理列表
|
||||
*/
|
||||
public List<ContractManagePO> queryList(@Param("contractManageDO") ContractManageDO contractManageDO);
|
||||
|
||||
/**
|
||||
* 根据有效期和状态查询
|
||||
*/
|
||||
List<ContractManagePO> queryEffectiveList(@Param("param") ContractManageDO param);
|
||||
|
||||
/**
|
||||
* 修改合同开始日期为今天(含)之前的且合同为未生效的合同,到已生效
|
||||
*/
|
||||
@Select("UPDATE contract_manage SET contract_state = 2 WHERE del_flag = 1 AND contract_state = 1 AND effective_date <= DATE_FORMAT(CURDATE(), '%Y-%m-%d 23:59:59');")
|
||||
void updateEffectiveList();
|
||||
|
||||
/**
|
||||
* 修改合同结束日期为今天(不含)之前的且合同为未生效或进行中的合同,到已到期
|
||||
*/
|
||||
@Select("UPDATE contract_manage SET contract_state = 3 WHERE del_flag = 1 AND (contract_state =1 OR contract_state = 2) AND expiration_date < DATE_FORMAT(CURDATE(), '%Y-%m-%d 00:00:00');")
|
||||
void updateExpirationDate();
|
||||
|
||||
}
|
||||
+91
@@ -0,0 +1,91 @@
|
||||
package com.mhd.basic.domain.contractManage.repository.persistence;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.mhd.basic.domain.contractManage.entity.ContractManage;
|
||||
import com.mhd.basic.domain.contractManage.repository.facade.IContractManageService;
|
||||
import com.mhd.basic.domain.contractManage.repository.mapper.ContractManageMapper;
|
||||
import com.mhd.basic.domain.contractManage.repository.po.ContractManagePO;
|
||||
import com.mhd.basic.domain.contractManage.repository.todo.ContractManageDO;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 合同管理Service业务层处理
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-06-07
|
||||
*/
|
||||
@Service
|
||||
public class ContractManageImpl extends ServiceImpl<ContractManageMapper, ContractManage> implements IContractManageService{
|
||||
@Autowired
|
||||
private ContractManageMapper contractManageMapper;
|
||||
|
||||
/**
|
||||
* 查询合同管理列表
|
||||
*/
|
||||
@Override
|
||||
public List<ContractManagePO> queryList(ContractManageDO contractManageDO)
|
||||
{
|
||||
return contractManageMapper.queryList(contractManageDO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增合同管理
|
||||
*/
|
||||
@Override
|
||||
public Boolean insert(ContractManageDO contractManageDO) {
|
||||
ContractManage contractManage = new ContractManage();
|
||||
BeanUtils.copyProperties(contractManageDO,contractManage);
|
||||
return this.save(contractManage);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改合同管理
|
||||
*/
|
||||
@Override
|
||||
public Boolean update(ContractManageDO contractManageDO) {
|
||||
ContractManage contractManage = new ContractManage();
|
||||
BeanUtils.copyProperties(contractManageDO,contractManage);
|
||||
return this.updateById(contractManage);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除合同管理
|
||||
*/
|
||||
@Override
|
||||
public Boolean delete(Long[] contractManageIds ) {
|
||||
List<ContractManage> list = new ArrayList<>();
|
||||
for (Long id : contractManageIds) {
|
||||
ContractManage contractManage = new ContractManage();
|
||||
contractManage.setContractManageId(id);
|
||||
contractManage.setDelFlag(2);
|
||||
list.add(contractManage);
|
||||
}
|
||||
return this.updateBatchById(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改合同管理
|
||||
*/
|
||||
@Override
|
||||
public ContractManagePO getInfo(Long contractManageId) {
|
||||
ContractManage contractManage = this.getById(contractManageId);
|
||||
ContractManagePO contractManagePO = new ContractManagePO();
|
||||
BeanUtils.copyProperties(contractManage,contractManagePO);
|
||||
return contractManagePO;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateEffectiveList() {
|
||||
contractManageMapper.updateEffectiveList();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateExpirationDate() {
|
||||
contractManageMapper.updateExpirationDate();
|
||||
}
|
||||
}
|
||||
+178
@@ -0,0 +1,178 @@
|
||||
package com.mhd.basic.domain.contractManage.repository.po;
|
||||
|
||||
import com.mhd.basic.domain.contractManageDetail.repository.po.ContractManageDetailPO;
|
||||
import com.mhd.basic.interfaces.dto.contractManageDetail.ContractManageDetailDTO;
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.List;
|
||||
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
|
||||
|
||||
/**
|
||||
* 合同管理对象 contract_manage
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-06-07
|
||||
*/
|
||||
|
||||
@Data
|
||||
@ApiModel(value = "合同管理对象", description = "合同管理响应对象")
|
||||
public class ContractManagePO extends BaseVOEntity{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("合同管理id")
|
||||
private Long contractManageId;
|
||||
|
||||
@ApiModelProperty("一级组织表ID")
|
||||
@Excel(name = "一级组织表ID")
|
||||
private Long topOrganizationId;
|
||||
|
||||
@ApiModelProperty("组织表ID")
|
||||
@Excel(name = "组织表ID")
|
||||
private Long organizationId;
|
||||
|
||||
@ApiModelProperty("组织名称")
|
||||
@Excel(name = "组织名称")
|
||||
private String organizationName;
|
||||
|
||||
@ApiModelProperty("合同编号")
|
||||
@Excel(name = "合同编号")
|
||||
private String contractNumber;
|
||||
|
||||
@ApiModelProperty("原始合同编号")
|
||||
@Excel(name = "原始合同编号")
|
||||
private String originalContractNumber;
|
||||
|
||||
@ApiModelProperty("合同名称")
|
||||
@Excel(name = "合同名称")
|
||||
private String contractName;
|
||||
|
||||
@ApiModelProperty("是否通用合同(1-是,2-否)")
|
||||
@Excel(name = "是否通用合同", readConverterExp = "1=-是,2-否")
|
||||
private Integer commonContractFlag;
|
||||
|
||||
@ApiModelProperty("合同类型(1-仓储,2-运输)")
|
||||
@Excel(name = "合同类型", readConverterExp = "1=-仓储,2-运输")
|
||||
private Integer contractType;
|
||||
|
||||
@ApiModelProperty("合同状态(1-未生效,2-使用中,3-已过期,4-已作废)")
|
||||
@Excel(name = "合同状态", readConverterExp = "1=-未生效,2-使用中,3-已过期,4-已作废")
|
||||
private Integer contractState;
|
||||
|
||||
@ApiModelProperty("签订单位")
|
||||
@Excel(name = "签订单位")
|
||||
private String signingUnit;
|
||||
|
||||
@ApiModelProperty("结算主体")
|
||||
@Excel(name = "结算主体")
|
||||
private String settlementCustomers;
|
||||
|
||||
@ApiModelProperty("结算主体id")
|
||||
@Excel(name = "结算主体id")
|
||||
private Long settlementCustomersId;
|
||||
|
||||
@ApiModelProperty("结算主体code")
|
||||
@Excel(name = "结算主体code")
|
||||
private String settlementCustomersCode;
|
||||
|
||||
@ApiModelProperty("我司身份(1-甲方,2-乙方)")
|
||||
@Excel(name = "我司身份", readConverterExp = "1=-甲方,2-乙方")
|
||||
private Integer ourIdentity;
|
||||
|
||||
@ApiModelProperty("账期(1-每月,2-双月,3-季度)")
|
||||
@Excel(name = "账期", readConverterExp = "1=-每月,2-双月,3-季度")
|
||||
private Integer accountingPeriod;
|
||||
|
||||
@ApiModelProperty("合同签订日期")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
@Excel(name = "合同签订日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||
private Date signingDate;
|
||||
|
||||
@ApiModelProperty("合同生效日期")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
@Excel(name = "合同生效日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||
private Date effectiveDate;
|
||||
|
||||
@ApiModelProperty("合同到期日期")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
@Excel(name = "合同到期日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||
private Date expirationDate;
|
||||
|
||||
@ApiModelProperty("备注")
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
|
||||
@ApiModelProperty("合同正本附件地址")
|
||||
@Excel(name = "合同正本附件地址")
|
||||
private String contractOriginalUrl;
|
||||
|
||||
@ApiModelProperty("廉政协议附件地址")
|
||||
@Excel(name = "廉政协议附件地址")
|
||||
private String integrityAgreementUrl;
|
||||
|
||||
@ApiModelProperty("安全协议附件地址")
|
||||
@Excel(name = "安全协议附件地址")
|
||||
private String securityProtocolUrl;
|
||||
|
||||
@ApiModelProperty("其他附件地址")
|
||||
@Excel(name = "其他附件地址")
|
||||
private String otherAttachmentsUrl;
|
||||
|
||||
@ApiModelProperty("我司签订人")
|
||||
@Excel(name = "我司签订人")
|
||||
private String ourSinged;
|
||||
|
||||
@ApiModelProperty("我司签订人联系方式")
|
||||
@Excel(name = "我司签订人联系方式")
|
||||
private String ourSingedPhone;
|
||||
|
||||
@ApiModelProperty("我司经办人")
|
||||
@Excel(name = "我司经办人")
|
||||
private String ourOperator;
|
||||
|
||||
@ApiModelProperty("我司经办人联系方式")
|
||||
@Excel(name = "我司经办人联系方式")
|
||||
private String ourOperatorPhone;
|
||||
|
||||
@ApiModelProperty("对方签订人")
|
||||
@Excel(name = "对方签订人")
|
||||
private String theySinged;
|
||||
|
||||
@ApiModelProperty("对方签订人联系方式")
|
||||
@Excel(name = "对方签订人联系方式")
|
||||
private String theySingedPhone;
|
||||
|
||||
@ApiModelProperty("对方经办人")
|
||||
@Excel(name = "对方经办人")
|
||||
private String theyOperator;
|
||||
|
||||
@ApiModelProperty("对方经办人联系方式")
|
||||
@Excel(name = "对方经办人联系方式")
|
||||
private String theyOperatorPhone;
|
||||
|
||||
@ApiModelProperty("合同详情列表")
|
||||
private List<ContractManageDetailPO> contractManageDetailPOList;
|
||||
|
||||
@ApiModelProperty(name = "结算主体基础数据id(可以是用户id也可以是企业id)")
|
||||
private String settlementId;
|
||||
|
||||
@ApiModelProperty(name = "是否自动出账(1-是,2-否)")
|
||||
private Integer automaticFlag;
|
||||
|
||||
@ApiModelProperty("出账日期")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private Date paymentDate;
|
||||
|
||||
@ApiModelProperty(name = "主体类型(1-货主,2-客户,3-承运商)")
|
||||
private Integer principalType;
|
||||
|
||||
@ApiModelProperty(name = "是否包含运输费用(1-包含,2-包含)")
|
||||
private Integer transportationCosts;
|
||||
|
||||
}
|
||||
+208
@@ -0,0 +1,208 @@
|
||||
package com.mhd.basic.domain.contractManage.repository.todo;
|
||||
|
||||
import com.mhd.basic.interfaces.dto.contractManageDetail.ContractManageDetailDTO;
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import java.math.BigDecimal;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* 合同管理对象 contract_manage
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-06-07
|
||||
*/
|
||||
|
||||
@Data
|
||||
public class ContractManageDO extends BaseVOEntity{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("合同管理id")
|
||||
private Long contractManageId;
|
||||
|
||||
@ApiModelProperty("一级组织表ID")
|
||||
@Excel(name = "一级组织表ID")
|
||||
private Long topOrganizationId;
|
||||
|
||||
@ApiModelProperty("组织表ID")
|
||||
@Excel(name = "组织表ID")
|
||||
private Long organizationId;
|
||||
|
||||
@ApiModelProperty("组织名称")
|
||||
@Excel(name = "组织名称")
|
||||
private String organizationName;
|
||||
|
||||
@ApiModelProperty("合同编号")
|
||||
@Excel(name = "合同编号")
|
||||
private String contractNumber;
|
||||
|
||||
@ApiModelProperty("原始合同编号")
|
||||
@Excel(name = "原始合同编号")
|
||||
private String originalContractNumber;
|
||||
|
||||
@ApiModelProperty("合同名称")
|
||||
@Excel(name = "合同名称")
|
||||
private String contractName;
|
||||
|
||||
@ApiModelProperty("是否通用合同(1-是,2-否)")
|
||||
@Excel(name = "是否通用合同", readConverterExp = "1=-是,2-否")
|
||||
private Integer commonContractFlag;
|
||||
|
||||
@ApiModelProperty("合同类型(1-仓储,2-运输)")
|
||||
@Excel(name = "合同类型", readConverterExp = "1=-仓储,2-运输")
|
||||
private Integer contractType;
|
||||
|
||||
@ApiModelProperty("合同状态(1-未生效,2-使用中,3-已过期,4-已作废)")
|
||||
@Excel(name = "合同状态", readConverterExp = "1=-未生效,2-使用中,3-已过期,4-已作废")
|
||||
private Integer contractState;
|
||||
|
||||
@ApiModelProperty("签订单位")
|
||||
@Excel(name = "签订单位")
|
||||
private String signingUnit;
|
||||
|
||||
@ApiModelProperty("结算主体")
|
||||
@Excel(name = "结算主体")
|
||||
private String settlementCustomers;
|
||||
|
||||
@ApiModelProperty("结算主体id")
|
||||
@Excel(name = "结算主体id")
|
||||
private Long settlementCustomersId;
|
||||
|
||||
@ApiModelProperty("结算主体code")
|
||||
@Excel(name = "结算主体code")
|
||||
private String settlementCustomersCode;
|
||||
|
||||
@ApiModelProperty("我司身份(1-甲方,2-乙方)")
|
||||
@Excel(name = "我司身份", readConverterExp = "1=-甲方,2-乙方")
|
||||
private Integer ourIdentity;
|
||||
|
||||
@ApiModelProperty("账期(1-每月,2-双月,3-季度)")
|
||||
@Excel(name = "账期", readConverterExp = "1=-每月,2-双月,3-季度")
|
||||
private Integer accountingPeriod;
|
||||
|
||||
@ApiModelProperty("合同签订日期")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
@Excel(name = "合同签订日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||
private Date signingDate;
|
||||
|
||||
@ApiModelProperty("合同生效日期")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
@Excel(name = "合同生效日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||
private Date effectiveDate;
|
||||
|
||||
@ApiModelProperty("合同到期日期")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
@Excel(name = "合同到期日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||
private Date expirationDate;
|
||||
|
||||
@ApiModelProperty("备注")
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
|
||||
@ApiModelProperty("合同正本附件地址")
|
||||
@Excel(name = "合同正本附件地址")
|
||||
private String contractOriginalUrl;
|
||||
|
||||
@ApiModelProperty("廉政协议附件地址")
|
||||
@Excel(name = "廉政协议附件地址")
|
||||
private String integrityAgreementUrl;
|
||||
|
||||
@ApiModelProperty("安全协议附件地址")
|
||||
@Excel(name = "安全协议附件地址")
|
||||
private String securityProtocolUrl;
|
||||
|
||||
@ApiModelProperty("其他附件地址")
|
||||
@Excel(name = "其他附件地址")
|
||||
private String otherAttachmentsUrl;
|
||||
|
||||
@ApiModelProperty("我司签订人")
|
||||
@Excel(name = "我司签订人")
|
||||
private String ourSinged;
|
||||
|
||||
@ApiModelProperty("我司签订人联系方式")
|
||||
@Excel(name = "我司签订人联系方式")
|
||||
private String ourSingedPhone;
|
||||
|
||||
@ApiModelProperty("我司经办人")
|
||||
@Excel(name = "我司经办人")
|
||||
private String ourOperator;
|
||||
|
||||
@ApiModelProperty("我司经办人联系方式")
|
||||
@Excel(name = "我司经办人联系方式")
|
||||
private String ourOperatorPhone;
|
||||
|
||||
@ApiModelProperty("对方签订人")
|
||||
@Excel(name = "对方签订人")
|
||||
private String theySinged;
|
||||
|
||||
@ApiModelProperty("对方签订人联系方式")
|
||||
@Excel(name = "对方签订人联系方式")
|
||||
private String theySingedPhone;
|
||||
|
||||
@ApiModelProperty("对方经办人")
|
||||
@Excel(name = "对方经办人")
|
||||
private String theyOperator;
|
||||
|
||||
@ApiModelProperty("对方经办人联系方式")
|
||||
@Excel(name = "对方经办人联系方式")
|
||||
private String theyOperatorPhone;
|
||||
|
||||
@ApiModelProperty(name = "组织ID集合")
|
||||
private List<Long> organizationIdList;
|
||||
|
||||
@ApiModelProperty(name = "权限菜单ID")
|
||||
private Long permissionMenuId;
|
||||
|
||||
@ApiModelProperty(name = "合同科目详情列表")
|
||||
private List<ContractManageDetailDTO> contractManageDetailDTOList;
|
||||
|
||||
@ApiModelProperty("合同管理ids")
|
||||
private String contractManageIds;
|
||||
|
||||
@ApiModelProperty(name = "合同签订查询条件开始日期")
|
||||
private String signingDateStart;
|
||||
@ApiModelProperty(name = "合同签订查询条件结束日期")
|
||||
private String signingDateEnd;
|
||||
|
||||
@ApiModelProperty(name = "合同生效查询条件开始日期")
|
||||
private String effectiveDateStart;
|
||||
@ApiModelProperty(name = "合同生效查询条件结束日期")
|
||||
private String effectiveDateEnd;
|
||||
|
||||
@ApiModelProperty(name = "合同生效查询条件开始日期")
|
||||
private String expirationDateStart;
|
||||
@ApiModelProperty(name = "合同生效查询条件结束日期")
|
||||
private String expirationDateEnd;
|
||||
|
||||
@ApiModelProperty(name = "当前时间")
|
||||
private String nowDateString;
|
||||
|
||||
@ApiModelProperty(name = "结算主体基础数据id(可以是用户id也可以是企业id)")
|
||||
private String settlementId;
|
||||
|
||||
@ApiModelProperty("合同生效日期")
|
||||
private String effectiveDateString;
|
||||
|
||||
@ApiModelProperty("合同到期日期")
|
||||
private String expirationDateString;
|
||||
|
||||
@ApiModelProperty(name = "是否自动出账(1-是,2-否)")
|
||||
private Integer automaticFlag;
|
||||
|
||||
@ApiModelProperty("出账日期")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private Date paymentDate;
|
||||
|
||||
@ApiModelProperty(name = "主体类型(1-货主,2-客户,3-承运商)")
|
||||
private Integer principalType;
|
||||
|
||||
@ApiModelProperty(name = "是否包含运输费用(1-包含,2-包含)")
|
||||
private Integer transportationCosts;
|
||||
|
||||
}
|
||||
+167
@@ -0,0 +1,167 @@
|
||||
package com.mhd.basic.domain.contractManage.service;
|
||||
|
||||
import cn.hutool.core.date.DateTime;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.mhd.basic.domain.contractManage.entity.ContractManage;
|
||||
import com.mhd.basic.domain.contractManage.repository.facade.IContractManageService;
|
||||
import com.mhd.basic.domain.contractManage.repository.po.ContractManagePO;
|
||||
import com.mhd.basic.domain.contractManage.repository.todo.ContractManageDO;
|
||||
import com.mhd.basic.domain.contractManageDetail.entity.ContractManageDetail;
|
||||
import com.mhd.basic.domain.contractManageDetail.repository.facade.IContractManageDetailService;
|
||||
import com.mhd.basic.domain.contractManageDetail.repository.po.ContractManageDetailPO;
|
||||
import com.mhd.basic.domain.contractManageDetail.service.ContractManageDetailDomainService;
|
||||
import com.mhd.basic.interfaces.dto.contractManage.ContractManageDTO;
|
||||
import com.mhd.common.core.exception.digitalLogisticsException.DigitalLogisticsException;
|
||||
import com.mhd.common.core.exception.digitalLogisticsException.UserError;
|
||||
import com.mhd.common.security.utils.SecurityUtils;
|
||||
import com.mhd.system.api.model.LoginUser;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
/**
|
||||
* 合同管理
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-06-07
|
||||
*/
|
||||
@Service
|
||||
@Slf4j
|
||||
public class ContractManageDomainService {
|
||||
|
||||
@Autowired
|
||||
private IContractManageService contractManageService;
|
||||
@Autowired
|
||||
private IContractManageDetailService contractManageDetailService;
|
||||
@Autowired
|
||||
private ContractManageDetailDomainService contractManageDetailDomainService;
|
||||
|
||||
|
||||
/**
|
||||
* 分页查询合同管理列表
|
||||
*/
|
||||
public List<ContractManagePO> queryList(ContractManageDO contractManageDO) {
|
||||
return contractManageService.queryList(contractManageDO);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 新增合同管理
|
||||
*/
|
||||
public Boolean insert(ContractManageDO contractManageDO) {
|
||||
|
||||
return contractManageService.insert(contractManageDO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改合同管理
|
||||
*/
|
||||
public Boolean update(ContractManageDO contractManageDO) {
|
||||
return contractManageService.update(contractManageDO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除合同管理
|
||||
*/
|
||||
public Boolean delete(Long[] contractManageIds) {
|
||||
return contractManageService.delete(contractManageIds);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取合同管理详细信息
|
||||
*/
|
||||
public ContractManagePO getInfo(Long contractManageId)
|
||||
{
|
||||
return contractManageService.getInfo(contractManageId);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 作废合同
|
||||
*/
|
||||
public boolean nullify(ContractManageDTO contractManageDTO) {
|
||||
Set<String> contractManageIds = Stream.of(contractManageDTO.getContractManageIds().split(",")).collect(Collectors.toSet());
|
||||
//获取当前登录人信息
|
||||
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||
if (ObjectUtil.isNull(loginUser)) {
|
||||
throw new DigitalLogisticsException(UserError.TIMEOUT);
|
||||
}
|
||||
LambdaUpdateWrapper<ContractManage> updateWrapper = new LambdaUpdateWrapper<>();
|
||||
updateWrapper.set(ContractManage::getContractState,4);
|
||||
updateWrapper.set(ContractManage::getUpdateBy,loginUser.getUserid());
|
||||
updateWrapper.set(ContractManage::getUpdateTime,new Date());
|
||||
updateWrapper.set(ContractManage::getUpdateByName,loginUser.getUsername());
|
||||
|
||||
updateWrapper.in(ContractManage::getContractManageId,contractManageIds);
|
||||
return contractManageService.update(updateWrapper);
|
||||
}
|
||||
|
||||
public ContractManagePO getInfoByCode(String contractNumber) {
|
||||
ContractManagePO contractManagePO = new ContractManagePO();
|
||||
LambdaQueryWrapper<ContractManage> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(ContractManage::getContractNumber,contractNumber);
|
||||
queryWrapper.eq(ContractManage::getDelFlag,1);
|
||||
ContractManage contractManage = contractManageService.getOne(queryWrapper);
|
||||
if(null != contractManage){
|
||||
BeanUtils.copyProperties(contractManage,contractManagePO);
|
||||
//得到合同后,查询合同明细
|
||||
List<ContractManageDetailPO> contractManageDetailPOList = contractManageDetailDomainService.queryListByManageId(contractManagePO.getContractManageId());
|
||||
List<ContractManageDetailPO> contractManageDetailSaveList = new ArrayList<>();
|
||||
if(contractManageDetailPOList != null && contractManageDetailPOList.size()>0){
|
||||
//将临时合同中没有,但是通用合同中有的数据过滤出
|
||||
contractManageDetailSaveList = contractManageDetailPOList.stream().filter(item -> contractManageDetailPOList.stream().anyMatch(item1 -> item1.getFirstSubjectCode().equals(item.getFirstSubjectCode()) && item1.getSecondSubjectCode().equals(item.getSecondSubjectCode()) && item1.getSubjectType()==1)).collect(Collectors.toList());
|
||||
//首先根据结算科目类型将临时合同过滤出
|
||||
List<ContractManageDetailPO> tempContractManageDetailPOList = contractManageDetailPOList.stream().filter(item -> item.getSubjectType()==2).collect(Collectors.toList());
|
||||
//遍历两个集合,将相同费用科目code的数据,进行比较,如果结算科目类型是临时且合同有效期有效,则使用该条数据,将另一条移除
|
||||
for (ContractManageDetailPO manageDetailPO : tempContractManageDetailPOList) {
|
||||
for (ContractManageDetailPO contractManageDetailPO : contractManageDetailPOList) {
|
||||
if(contractManageDetailPO.getFirstSubjectCode().equals(manageDetailPO.getFirstSubjectCode()) && contractManageDetailPO.getSecondSubjectCode().equals(manageDetailPO.getSecondSubjectCode())){
|
||||
//判断如果是临时合同在有效期内,则将该条数据保存到集合contractManageDetailSaveList
|
||||
DateTime start = DateUtil.parseDate(DateUtil.format(manageDetailPO.getSubjectEffectiveDate(),"yyyy-MM-dd"));
|
||||
DateTime end = DateUtil.parseDateTime(DateUtil.format(manageDetailPO.getSubjectEffectiveDate(),"yyyy-MM-dd"));
|
||||
DateTime now = DateUtil.beginOfDay(DateUtil.date());
|
||||
if (now.isAfterOrEquals(start) && now.isBefore(end)) {
|
||||
contractManageDetailSaveList.add(manageDetailPO);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
contractManagePO.setContractManageDetailPOList(contractManageDetailSaveList);
|
||||
}
|
||||
return contractManagePO;
|
||||
}
|
||||
|
||||
public void contractEffectiveDateSet() {
|
||||
/*
|
||||
1:查询合同有效期开始时间在今天(含)之前的,并且合同状态为未生效,设置为已生效状态
|
||||
2:查询合同有效期结束时间在今天(不含)之前,并且合同状态为未生效和使用中的,设置为已过期状态
|
||||
*/
|
||||
log.info("合同管理有效期判断,开始执行==============");
|
||||
contractManageService.updateEffectiveList();
|
||||
contractManageService.updateExpirationDate();
|
||||
log.info("合同管理有效期判断,执行完毕==============");
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
+101
@@ -0,0 +1,101 @@
|
||||
package com.mhd.basic.domain.contractManageDetail.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
import java.math.BigDecimal;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
|
||||
|
||||
/**
|
||||
* 合同管理详情对象 contract_manage_detail
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-06-07
|
||||
*/
|
||||
|
||||
@Data
|
||||
public class ContractManageDetail extends BaseVOEntity{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("合同管理详情id")
|
||||
@TableId(type = IdType.AUTO)
|
||||
private Long contractManageDetailId;
|
||||
|
||||
@ApiModelProperty("合同管理id")
|
||||
@Excel(name = "合同管理id")
|
||||
private Long contractManageId;
|
||||
|
||||
@ApiModelProperty("一级组织表ID")
|
||||
@Excel(name = "一级组织表ID")
|
||||
private Long topOrganizationId;
|
||||
|
||||
@ApiModelProperty("组织表ID")
|
||||
@Excel(name = "组织表ID")
|
||||
private Long organizationId;
|
||||
|
||||
@ApiModelProperty("组织名称")
|
||||
@Excel(name = "组织名称")
|
||||
private String organizationName;
|
||||
|
||||
@ApiModelProperty("结算科目类型(1-通用,2-临时)")
|
||||
@Excel(name = "结算科目类型", readConverterExp = "1=-通用,2-临时")
|
||||
private Integer subjectType;
|
||||
|
||||
@ApiModelProperty("一级费用科目code")
|
||||
@Excel(name = "一级费用科目code")
|
||||
private String firstSubjectCode;
|
||||
|
||||
@ApiModelProperty("一级费用科目")
|
||||
@Excel(name = "一级费用科目")
|
||||
private String firstSubjectName;
|
||||
|
||||
@ApiModelProperty("二级费用科目code")
|
||||
@Excel(name = "二级费用科目code")
|
||||
private String secondSubjectCode;
|
||||
|
||||
@ApiModelProperty("二级费用科目")
|
||||
@Excel(name = "二级费用科目")
|
||||
private String secondSubjectName;
|
||||
|
||||
@ApiModelProperty("计费策略id")
|
||||
@Excel(name = "计费策略id")
|
||||
private Long accountingStrategyId;
|
||||
|
||||
@ApiModelProperty("计费策略")
|
||||
@Excel(name = "计费策略")
|
||||
private String accountingStrategy;
|
||||
|
||||
@ApiModelProperty("计费策略编码")
|
||||
@Excel(name = "计费策略编码")
|
||||
private String accountingStrategyCode;
|
||||
|
||||
@ApiModelProperty("计费周期")
|
||||
@Excel(name = "计费周期")
|
||||
private String billingAttributes;
|
||||
|
||||
@ApiModelProperty("计费周期编码")
|
||||
@Excel(name = "计费周期编码")
|
||||
private String billingAttributesCode;
|
||||
|
||||
@ApiModelProperty("合同有效日期")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
@Excel(name = "合同有效日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||
private Date subjectEffectiveDate;
|
||||
|
||||
@ApiModelProperty("合同到期日期")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
@Excel(name = "合同到期日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||
private Date subjectExpirationDate;
|
||||
|
||||
@ApiModelProperty("单据类型code")
|
||||
private String documentTypeCode;
|
||||
|
||||
@ApiModelProperty("单据类型")
|
||||
private String documentType;
|
||||
|
||||
}
|
||||
+45
@@ -0,0 +1,45 @@
|
||||
package com.mhd.basic.domain.contractManageDetail.repository.facade;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.mhd.basic.domain.contractManageDetail.entity.ContractManageDetail;
|
||||
import com.mhd.basic.domain.contractManageDetail.repository.po.ContractManageDetailPO;
|
||||
import com.mhd.basic.domain.contractManageDetail.repository.todo.ContractManageDetailDO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 合同管理详情Service接口
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-06-07
|
||||
*/
|
||||
public interface IContractManageDetailService extends IService<ContractManageDetail>
|
||||
{
|
||||
/**
|
||||
* 分页查询合同管理详情列表
|
||||
*/
|
||||
public List<ContractManageDetailPO> queryList(ContractManageDetailDO contractManageDetailDO);
|
||||
|
||||
/**
|
||||
* 新增合同管理详情
|
||||
*/
|
||||
public Boolean insert(ContractManageDetailDO contractManageDetailDO);
|
||||
|
||||
/**
|
||||
* 修改合同管理详情
|
||||
*/
|
||||
public Boolean update(ContractManageDetailDO contractManageDetailDO);
|
||||
|
||||
/**
|
||||
* 批量删除合同管理详情
|
||||
*/
|
||||
public Boolean delete(Long[] contractManageDetailIds);
|
||||
|
||||
|
||||
/**
|
||||
* 查询合同管理详情
|
||||
*/
|
||||
public ContractManageDetailPO getInfo(Long contractManageDetailId);
|
||||
|
||||
List<ContractManageDetailPO> getListByContractManageId(Long contractManageId);
|
||||
}
|
||||
+23
@@ -0,0 +1,23 @@
|
||||
package com.mhd.basic.domain.contractManageDetail.repository.mapper;
|
||||
|
||||
import java.util.List;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.mhd.basic.domain.contractManageDetail.entity.ContractManageDetail;
|
||||
import com.mhd.basic.domain.contractManageDetail.repository.po.ContractManageDetailPO;
|
||||
import com.mhd.basic.domain.contractManageDetail.repository.todo.ContractManageDetailDO;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
/**
|
||||
* 合同管理详情Mapper接口
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-06-07
|
||||
*/
|
||||
public interface ContractManageDetailMapper extends BaseMapper<ContractManageDetail>
|
||||
{
|
||||
/**
|
||||
* 查询合同管理详情列表
|
||||
*/
|
||||
public List<ContractManageDetailPO> queryList(@Param("contractManageDetailDO") ContractManageDetailDO contractManageDetailDO);
|
||||
|
||||
List<ContractManageDetailPO> getListByContractManageId(@Param("contractManageId") Long contractManageId);
|
||||
}
|
||||
+86
@@ -0,0 +1,86 @@
|
||||
package com.mhd.basic.domain.contractManageDetail.repository.persistence;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.mhd.basic.domain.contractManageDetail.entity.ContractManageDetail;
|
||||
import com.mhd.basic.domain.contractManageDetail.repository.facade.IContractManageDetailService;
|
||||
import com.mhd.basic.domain.contractManageDetail.repository.mapper.ContractManageDetailMapper;
|
||||
import com.mhd.basic.domain.contractManageDetail.repository.po.ContractManageDetailPO;
|
||||
import com.mhd.basic.domain.contractManageDetail.repository.todo.ContractManageDetailDO;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 合同管理详情Service业务层处理
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-06-07
|
||||
*/
|
||||
@Service
|
||||
public class ContractManageDetailImpl extends ServiceImpl<ContractManageDetailMapper, ContractManageDetail> implements IContractManageDetailService{
|
||||
@Autowired
|
||||
private ContractManageDetailMapper contractManageDetailMapper;
|
||||
|
||||
/**
|
||||
* 查询合同管理详情列表
|
||||
*/
|
||||
@Override
|
||||
public List<ContractManageDetailPO> queryList(ContractManageDetailDO contractManageDetailDO)
|
||||
{
|
||||
return contractManageDetailMapper.queryList(contractManageDetailDO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增合同管理详情
|
||||
*/
|
||||
@Override
|
||||
public Boolean insert(ContractManageDetailDO contractManageDetailDO) {
|
||||
ContractManageDetail contractManageDetail = new ContractManageDetail();
|
||||
BeanUtils.copyProperties(contractManageDetailDO,contractManageDetail);
|
||||
return this.save(contractManageDetail);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改合同管理详情
|
||||
*/
|
||||
@Override
|
||||
public Boolean update(ContractManageDetailDO contractManageDetailDO) {
|
||||
ContractManageDetail contractManageDetail = new ContractManageDetail();
|
||||
BeanUtils.copyProperties(contractManageDetailDO,contractManageDetail);
|
||||
return this.updateById(contractManageDetail);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除合同管理详情
|
||||
*/
|
||||
@Override
|
||||
public Boolean delete(Long[] contractManageDetailIds ) {
|
||||
List<ContractManageDetail> list = new ArrayList<>();
|
||||
for (Long id : contractManageDetailIds) {
|
||||
ContractManageDetail contractManageDetail = new ContractManageDetail();
|
||||
contractManageDetail.setContractManageDetailId(id);
|
||||
contractManageDetail.setDelFlag(2);
|
||||
list.add(contractManageDetail);
|
||||
}
|
||||
return this.updateBatchById(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改合同管理详情
|
||||
*/
|
||||
@Override
|
||||
public ContractManageDetailPO getInfo(Long contractManageDetailId) {
|
||||
ContractManageDetail contractManageDetail = this.getById(contractManageDetailId);
|
||||
ContractManageDetailPO contractManageDetailPO = new ContractManageDetailPO();
|
||||
BeanUtils.copyProperties(contractManageDetail,contractManageDetailPO);
|
||||
return contractManageDetailPO;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ContractManageDetailPO> getListByContractManageId(Long contractManageId) {
|
||||
return contractManageDetailMapper.getListByContractManageId(contractManageId);
|
||||
}
|
||||
}
|
||||
+100
@@ -0,0 +1,100 @@
|
||||
package com.mhd.basic.domain.contractManageDetail.repository.po;
|
||||
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import java.math.BigDecimal;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
|
||||
|
||||
/**
|
||||
* 合同管理详情对象 contract_manage_detail
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-06-07
|
||||
*/
|
||||
|
||||
@Data
|
||||
@ApiModel(value = "合同管理详情对象", description = "合同管理详情响应对象")
|
||||
public class ContractManageDetailPO extends BaseVOEntity{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("合同管理详情id")
|
||||
private Long contractManageDetailId;
|
||||
|
||||
@ApiModelProperty("合同管理id")
|
||||
@Excel(name = "合同管理id")
|
||||
private Long contractManageId;
|
||||
|
||||
@ApiModelProperty("一级组织表ID")
|
||||
@Excel(name = "一级组织表ID")
|
||||
private Long topOrganizationId;
|
||||
|
||||
@ApiModelProperty("组织表ID")
|
||||
@Excel(name = "组织表ID")
|
||||
private Long organizationId;
|
||||
|
||||
@ApiModelProperty("组织名称")
|
||||
@Excel(name = "组织名称")
|
||||
private String organizationName;
|
||||
|
||||
@ApiModelProperty("结算科目类型(1-通用,2-临时)")
|
||||
@Excel(name = "结算科目类型", readConverterExp = "1=-通用,2-临时")
|
||||
private Integer subjectType;
|
||||
|
||||
@ApiModelProperty("一级费用科目code")
|
||||
@Excel(name = "一级费用科目code")
|
||||
private String firstSubjectCode;
|
||||
|
||||
@ApiModelProperty("一级费用科目")
|
||||
@Excel(name = "一级费用科目")
|
||||
private String firstSubjectName;
|
||||
|
||||
@ApiModelProperty("二级费用科目code")
|
||||
@Excel(name = "二级费用科目code")
|
||||
private String secondSubjectCode;
|
||||
|
||||
@ApiModelProperty("二级费用科目")
|
||||
@Excel(name = "二级费用科目")
|
||||
private String secondSubjectName;
|
||||
|
||||
@ApiModelProperty("计费策略id")
|
||||
@Excel(name = "计费策略id")
|
||||
private Long accountingStrategyId;
|
||||
|
||||
@ApiModelProperty("计费策略")
|
||||
@Excel(name = "计费策略")
|
||||
private String accountingStrategy;
|
||||
|
||||
@ApiModelProperty("计费策略编码")
|
||||
@Excel(name = "计费策略编码")
|
||||
private String accountingStrategyCode;
|
||||
|
||||
@ApiModelProperty("计费周期")
|
||||
@Excel(name = "计费周期")
|
||||
private String billingAttributes;
|
||||
|
||||
@ApiModelProperty("计费周期编码")
|
||||
@Excel(name = "计费周期编码")
|
||||
private String billingAttributesCode;
|
||||
|
||||
@ApiModelProperty("合同有效日期")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
@Excel(name = "合同有效日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||
private Date subjectEffectiveDate;
|
||||
|
||||
@ApiModelProperty("合同到期日期")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
@Excel(name = "合同到期日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||
private Date subjectExpirationDate;
|
||||
|
||||
@ApiModelProperty("单据类型code")
|
||||
private String documentTypeCode;
|
||||
|
||||
@ApiModelProperty("单据类型")
|
||||
private String documentType;
|
||||
|
||||
}
|
||||
+105
@@ -0,0 +1,105 @@
|
||||
package com.mhd.basic.domain.contractManageDetail.repository.todo;
|
||||
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import java.math.BigDecimal;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* 合同管理详情对象 contract_manage_detail
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-06-07
|
||||
*/
|
||||
|
||||
@Data
|
||||
public class ContractManageDetailDO extends BaseVOEntity{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("合同管理详情id")
|
||||
private Long contractManageDetailId;
|
||||
|
||||
@ApiModelProperty("合同管理id")
|
||||
@Excel(name = "合同管理id")
|
||||
private Long contractManageId;
|
||||
|
||||
@ApiModelProperty("一级组织表ID")
|
||||
@Excel(name = "一级组织表ID")
|
||||
private Long topOrganizationId;
|
||||
|
||||
@ApiModelProperty("组织表ID")
|
||||
@Excel(name = "组织表ID")
|
||||
private Long organizationId;
|
||||
|
||||
@ApiModelProperty("组织名称")
|
||||
@Excel(name = "组织名称")
|
||||
private String organizationName;
|
||||
|
||||
@ApiModelProperty("结算科目类型(1-通用,2-临时)")
|
||||
@Excel(name = "结算科目类型", readConverterExp = "1=-通用,2-临时")
|
||||
private Integer subjectType;
|
||||
|
||||
@ApiModelProperty("一级费用科目code")
|
||||
@Excel(name = "一级费用科目code")
|
||||
private String firstSubjectCode;
|
||||
|
||||
@ApiModelProperty("一级费用科目")
|
||||
@Excel(name = "一级费用科目")
|
||||
private String firstSubjectName;
|
||||
|
||||
@ApiModelProperty("二级费用科目code")
|
||||
@Excel(name = "二级费用科目code")
|
||||
private String secondSubjectCode;
|
||||
|
||||
@ApiModelProperty("二级费用科目")
|
||||
@Excel(name = "二级费用科目")
|
||||
private String secondSubjectName;
|
||||
|
||||
@ApiModelProperty("计费策略id")
|
||||
@Excel(name = "计费策略id")
|
||||
private Long accountingStrategyId;
|
||||
|
||||
@ApiModelProperty("计费策略")
|
||||
@Excel(name = "计费策略")
|
||||
private String accountingStrategy;
|
||||
|
||||
@ApiModelProperty("计费策略编码")
|
||||
@Excel(name = "计费策略编码")
|
||||
private String accountingStrategyCode;
|
||||
|
||||
@ApiModelProperty("计费周期")
|
||||
@Excel(name = "计费周期")
|
||||
private String billingAttributes;
|
||||
|
||||
@ApiModelProperty("计费周期编码")
|
||||
@Excel(name = "计费周期编码")
|
||||
private String billingAttributesCode;
|
||||
|
||||
@ApiModelProperty("合同有效日期")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
@Excel(name = "合同有效日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||
private Date subjectEffectiveDate;
|
||||
|
||||
@ApiModelProperty("合同到期日期")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
@Excel(name = "合同到期日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||
private Date subjectExpirationDate;
|
||||
|
||||
@ApiModelProperty(name = "组织ID集合")
|
||||
private List<Long> organizationIdList;
|
||||
|
||||
@ApiModelProperty(name = "权限菜单ID")
|
||||
private Long permissionMenuId;
|
||||
|
||||
@ApiModelProperty("单据类型code")
|
||||
private String documentTypeCode;
|
||||
|
||||
@ApiModelProperty("单据类型")
|
||||
private String documentType;
|
||||
}
|
||||
+99
@@ -0,0 +1,99 @@
|
||||
package com.mhd.basic.domain.contractManageDetail.service;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.mhd.basic.domain.contractManageDetail.entity.ContractManageDetail;
|
||||
import com.mhd.basic.domain.contractManageDetail.repository.facade.IContractManageDetailService;
|
||||
import com.mhd.basic.domain.contractManageDetail.repository.po.ContractManageDetailPO;
|
||||
import com.mhd.basic.domain.contractManageDetail.repository.todo.ContractManageDetailDO;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
/**
|
||||
* 合同管理详情
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-06-07
|
||||
*/
|
||||
@Service
|
||||
@Slf4j
|
||||
public class ContractManageDetailDomainService {
|
||||
|
||||
@Autowired
|
||||
private IContractManageDetailService contractManageDetailService;
|
||||
|
||||
|
||||
/**
|
||||
* 分页查询合同管理详情列表
|
||||
*/
|
||||
public List<ContractManageDetailPO> queryList(ContractManageDetailDO contractManageDetailDO) {
|
||||
return contractManageDetailService.queryList(contractManageDetailDO);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 新增合同管理详情
|
||||
*/
|
||||
public Boolean insert(ContractManageDetailDO contractManageDetailDO) {
|
||||
|
||||
return contractManageDetailService.insert(contractManageDetailDO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改合同管理详情
|
||||
*/
|
||||
public Boolean update(ContractManageDetailDO contractManageDetailDO) {
|
||||
return contractManageDetailService.update(contractManageDetailDO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除合同管理详情
|
||||
*/
|
||||
public Boolean delete(Long[] contractManageDetailIds) {
|
||||
return contractManageDetailService.delete(contractManageDetailIds);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取合同管理详情详细信息
|
||||
*/
|
||||
public ContractManageDetailPO getInfo(Long contractManageDetailId)
|
||||
{
|
||||
return contractManageDetailService.getInfo(contractManageDetailId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 详情保存或修改
|
||||
* @param contractManageDetailDO
|
||||
*/
|
||||
public boolean saveOrUpdate(ContractManageDetailDO contractManageDetailDO) {
|
||||
ContractManageDetail contractManageDetail = new ContractManageDetail();
|
||||
BeanUtils.copyProperties(contractManageDetailDO,contractManageDetail);
|
||||
return contractManageDetailService.saveOrUpdate(contractManageDetail);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据合同管理id查询合同科目详情
|
||||
* @param contractManageId
|
||||
* @return
|
||||
*/
|
||||
public List<ContractManageDetailPO> queryListByManageId(Long contractManageId) {
|
||||
List<ContractManageDetailPO> resultList = new ArrayList<>();
|
||||
LambdaQueryWrapper<ContractManageDetail> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(ContractManageDetail::getContractManageId,contractManageId);
|
||||
queryWrapper.eq(ContractManageDetail::getDelFlag,1);
|
||||
List<ContractManageDetail> contractManageDetails = contractManageDetailService.list(queryWrapper);
|
||||
if(contractManageDetails.size()>0){
|
||||
for (ContractManageDetail contractManageDetail : contractManageDetails) {
|
||||
ContractManageDetailPO contractManageDetailPO = new ContractManageDetailPO();
|
||||
BeanUtils.copyProperties(contractManageDetail,contractManageDetailPO);
|
||||
resultList.add(contractManageDetailPO);
|
||||
}
|
||||
}
|
||||
return resultList;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
+104
@@ -0,0 +1,104 @@
|
||||
package com.mhd.basic.domain.expenseAccount.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
import java.math.BigDecimal;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
|
||||
|
||||
/**
|
||||
* 【请填写功能名称】对象 expense_account
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-06-04
|
||||
*/
|
||||
|
||||
@Data
|
||||
public class ExpenseAccount extends BaseVOEntity{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("费用科目id")
|
||||
@TableId(type = IdType.AUTO)
|
||||
private Long expenseAccountId;
|
||||
|
||||
@ApiModelProperty("一级组织表ID")
|
||||
@Excel(name = "一级组织表ID")
|
||||
private Long topOrganizationId;
|
||||
|
||||
@ApiModelProperty("组织表ID")
|
||||
@Excel(name = "组织表ID")
|
||||
private Long organizationId;
|
||||
|
||||
@ApiModelProperty("组织名称")
|
||||
@Excel(name = "组织名称")
|
||||
private String organizationName;
|
||||
|
||||
@ApiModelProperty("科目编码")
|
||||
@Excel(name = "科目编码")
|
||||
private String subjectCode;
|
||||
|
||||
@ApiModelProperty("科目名称")
|
||||
@Excel(name = "科目名称")
|
||||
private String subjectName;
|
||||
|
||||
@ApiModelProperty("显示顺序")
|
||||
@Excel(name = "显示顺序")
|
||||
private Integer showSeq;
|
||||
|
||||
@ApiModelProperty("计费属性编码")
|
||||
@Excel(name = "计费属性编码")
|
||||
private String billingAttributesCode;
|
||||
|
||||
@ApiModelProperty("计费属性")
|
||||
@Excel(name = "计费属性")
|
||||
private String billingAttributes;
|
||||
|
||||
@ApiModelProperty("所属模块编码")
|
||||
@Excel(name = "所属模块编码")
|
||||
private String belongModuleCode;
|
||||
|
||||
@ApiModelProperty("所属编码")
|
||||
@Excel(name = "所属编码")
|
||||
private String belongModule;
|
||||
|
||||
@ApiModelProperty("是否一级科目(1-是,2-否)")
|
||||
@Excel(name = "是否一级科目", readConverterExp = "1=-是,2-否")
|
||||
private Integer firstSubjectFlag;
|
||||
|
||||
@ApiModelProperty("上级科目编码")
|
||||
@Excel(name = "上级科目编码")
|
||||
private String upperSubjectCode;
|
||||
|
||||
@ApiModelProperty("上级科目名称")
|
||||
@Excel(name = "上级科目名称")
|
||||
private String upperSubject;
|
||||
|
||||
@ApiModelProperty("启用状态(1-启动,2-停用)")
|
||||
@Excel(name = "启用状态", readConverterExp = "1=-启动,2-停用")
|
||||
private Integer status;
|
||||
|
||||
@ApiModelProperty("自有车辆固定显示(1-是,2-否)")
|
||||
@Excel(name = "自有车辆固定显示", readConverterExp = "1=-是,2-否")
|
||||
private Integer ownStatus;
|
||||
|
||||
@ApiModelProperty("社会车辆固定显示(1-是,2-否)")
|
||||
@Excel(name = "社会车辆固定显示", readConverterExp = "1-是,2-否")
|
||||
private Integer societyStatus;
|
||||
|
||||
@ApiModelProperty("备注")
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
|
||||
@ApiModelProperty("关联服务项管理id")
|
||||
@Excel(name = "关联服务项管理id")
|
||||
private Long serviceItemsManageId;
|
||||
|
||||
@ApiModelProperty(name = "收支类型")
|
||||
private Integer accountExpenseType;
|
||||
|
||||
}
|
||||
+66
@@ -0,0 +1,66 @@
|
||||
package com.mhd.basic.domain.expenseAccount.repository.facade;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.mhd.basic.domain.expenseAccount.entity.ExpenseAccount;
|
||||
import com.mhd.basic.domain.expenseAccount.repository.po.ExpenseAccountPO;
|
||||
import com.mhd.basic.domain.expenseAccount.repository.po.QueryExpenseAccountPO;
|
||||
import com.mhd.basic.domain.expenseAccount.repository.todo.ExpenseAccountDO;
|
||||
import com.mhd.basic.domain.expenseAccount.repository.todo.ExpenseAccountDoMap;
|
||||
import com.mhd.basic.domain.expenseAccount.repository.todo.SearchExpenseAccountDO;
|
||||
import com.mhd.basic.interfaces.dto.expenseAccount.SearchExpenseAccountDTO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 费用科目Service接口
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-06-04
|
||||
*/
|
||||
public interface IExpenseAccountService extends IService<ExpenseAccount>
|
||||
{
|
||||
/**
|
||||
* 分页查询费用科目列表
|
||||
*/
|
||||
public List<ExpenseAccountPO> queryList(ExpenseAccountDO expenseAccountDO);
|
||||
|
||||
/**
|
||||
* 树型结构费用科目
|
||||
*/
|
||||
public List<ExpenseAccountPO> treeCostSubject(ExpenseAccountDO expenseAccountDO);
|
||||
/**
|
||||
* 应付账单--树型结构费用科目
|
||||
*/
|
||||
public List<ExpenseAccountPO> subjectTreeCost(ExpenseAccountDO expenseAccountDO);
|
||||
/**
|
||||
* 新增费用科目
|
||||
*/
|
||||
public Boolean insert(ExpenseAccountDO expenseAccountDO);
|
||||
|
||||
/**
|
||||
* 修改费用科目
|
||||
*/
|
||||
public Boolean update(ExpenseAccountDO expenseAccountDO);
|
||||
|
||||
/**
|
||||
* 批量删除费用科目
|
||||
*/
|
||||
public Boolean delete(Long[] expenseAccountIds);
|
||||
|
||||
|
||||
/**
|
||||
* 查询费用科目
|
||||
*/
|
||||
public ExpenseAccountPO getInfo(Long expenseAccountId);
|
||||
|
||||
/**
|
||||
* 根据费用科目code查询费用信息
|
||||
*/
|
||||
ExpenseAccountPO getInfoByCode(ExpenseAccountDO expenseAccountDO);
|
||||
|
||||
public List<QueryExpenseAccountPO> selectExpenseAccount(SearchExpenseAccountDO searchExpenseAccountDO);
|
||||
|
||||
public List<QueryExpenseAccountPO> selectOtherExpenseAccount(SearchExpenseAccountDO searchExpenseAccountDO);
|
||||
|
||||
public List<QueryExpenseAccountPO> selectSocialVehicleExpenseAccount();
|
||||
}
|
||||
+48
@@ -0,0 +1,48 @@
|
||||
package com.mhd.basic.domain.expenseAccount.repository.mapper;
|
||||
|
||||
import java.util.List;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.mhd.basic.domain.expenseAccount.entity.ExpenseAccount;
|
||||
import com.mhd.basic.domain.expenseAccount.repository.po.QueryExpenseAccountPO;
|
||||
import com.mhd.basic.domain.expenseAccount.repository.todo.ExpenseAccountDO;
|
||||
import com.mhd.basic.domain.expenseAccount.repository.po.ExpenseAccountPO;
|
||||
import com.mhd.basic.domain.expenseAccount.repository.todo.ExpenseAccountDoMap;
|
||||
import com.mhd.basic.domain.expenseAccount.repository.todo.SearchExpenseAccountDO;
|
||||
import com.mhd.basic.interfaces.dto.expenseAccount.SearchExpenseAccountDTO;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
/**
|
||||
* 费用科目Mapper接口
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-06-04
|
||||
*/
|
||||
public interface ExpenseAccountMapper extends BaseMapper<ExpenseAccount>
|
||||
{
|
||||
/**
|
||||
* 查询费用科目列表
|
||||
*/
|
||||
public List<ExpenseAccountPO> queryList(@Param("expenseAccountDO") ExpenseAccountDO expenseAccountDO);
|
||||
|
||||
|
||||
/**
|
||||
* 查询费用一级科目
|
||||
*/
|
||||
public List<ExpenseAccountPO> selectCostSubject(@Param("expenseAccountDO") ExpenseAccountDO expenseAccountDO);
|
||||
|
||||
/**
|
||||
* 查询费用多级科目
|
||||
*/
|
||||
public List<ExpenseAccountPO> selectAllCostSubject(String subjectCode);
|
||||
|
||||
/**
|
||||
* 根据费用科目code查询费用信息
|
||||
*/
|
||||
ExpenseAccountPO getInfoByCode(@Param("expenseAccountDO") ExpenseAccountDO expenseAccountDO);
|
||||
|
||||
public List<QueryExpenseAccountPO> selectExpenseAccount(@Param("searchExpenseAccountDO") SearchExpenseAccountDO searchExpenseAccountDO);
|
||||
|
||||
public List<QueryExpenseAccountPO> selectOtherExpenseAccount(@Param("searchExpenseAccountDO") SearchExpenseAccountDO searchExpenseAccountDO);
|
||||
|
||||
public List<QueryExpenseAccountPO> selectSocialVehicleExpenseAccount();
|
||||
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user