first commit

This commit is contained in:
陈现府
2025-11-20 10:45:16 +08:00
commit 8355431361
2643 changed files with 291314 additions and 0 deletions
+33
View File
@@ -0,0 +1,33 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<groupId>com.mhd</groupId>
<artifactId>mhd-api</artifactId>
<version>3.6.0</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>mhd-api-system</artifactId>
<description>
mhd-api-system系统接口模块
</description>
<dependencies>
<!-- Mhd Common Core-->
<dependency>
<groupId>com.mhd</groupId>
<artifactId>mhd-common-core</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
</dependencies>
</project>
@@ -0,0 +1,67 @@
package com.mhd.system.api;
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.io.Serializable;
import java.util.List;
/**
* 关联仓库对象 association_warehouse
*
* @author gen
* @date 2024-06-11
*/
@Data
public class AssociationWarehouseFeign implements Serializable {
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("仓库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;
}
@@ -0,0 +1,41 @@
package com.mhd.system.api.Auth;
import com.mhd.system.api.domain.SysLogininforPo;
import com.mhd.system.api.domain.SysOperLogPo;
import com.mhd.system.api.factory.RemoteAuthLogFallbackFactory;
import com.mhd.common.core.constant.SecurityConstants;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.entity.R;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestHeader;
/**
* 日志服务
*
* @author mhd
*/
@FeignClient(contextId = "remoteAuthLogService", value = ServiceNameConstants.AUTH_SERVICE, fallbackFactory = RemoteAuthLogFallbackFactory.class)
public interface RemoteAuthLogService
{
/**
* 保存系统日志
*
* @param sysOperLogPo 日志实体
* @param source 请求来源
* @return 结果
*/
@PostMapping("/operlog")
public R<Boolean> saveLog(@RequestBody SysOperLogPo sysOperLogPo, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
/**
* 保存访问记录
*
* @param sysLogininforPo 访问实体
* @param source 请求来源
* @return 结果
*/
@PostMapping("/logininfor")
public R<Boolean> saveLogininfor(@RequestBody SysLogininforPo sysLogininforPo, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
}
@@ -0,0 +1,42 @@
package com.mhd.system.api.Auth;
import com.mhd.system.api.domain.UserDTO;
import com.mhd.common.core.constant.SecurityConstants;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.entity.R;
import com.mhd.system.api.factory.RemoteOrganizationFeignFallbackFactory;
import com.mhd.system.api.model.LoginUser;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
/**
* @Description 调用用户中台
* @Author Alex
* @Date 2022/12/9 17:52
*/
@FeignClient(contextId = "remoteAuthOrganizationService", value = ServiceNameConstants.USER_CENTER, fallbackFactory = RemoteOrganizationFeignFallbackFactory.class)
public interface RemoteAuthOrganizationService {
/**
* @Description 根据域名获取组织ID
* @Author Alex
* @Date 2022/12/6 22:11
*/
@GetMapping("/userApi/getOrganizationByPath/{path}")
public R<Long> getOrganizationByPath(@PathVariable("path") Long path, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
/**
* 通过用户名查询用户信息
*
* @return 结果
*/
@GetMapping("/userApi/getUserByTopOrganizationUserAccount")
public R<LoginUser> getUserByTopOrganizationUserAccount(UserDTO userDTO, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
@GetMapping("/userApi/getUserByTopOrganizationUserPhone")
public R<LoginUser> getUserByTopOrganizationUserPhone(UserDTO userDTO, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
@PostMapping("/userApi/add")
public R<LoginUser> addUser(@RequestBody UserDTO userDTO, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
}
@@ -0,0 +1,38 @@
package com.mhd.system.api.Auth;
import com.mhd.system.api.domain.SysUser;
import com.mhd.common.core.constant.SecurityConstants;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.entity.R;
import com.mhd.system.api.factory.RemoteUserFallbackFactory;
import com.mhd.system.api.model.LoginUser;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
/**
* 用户服务
*
* @author mhd
*/
@FeignClient(contextId = "remoteAuthUserService", value = ServiceNameConstants.USER_CENTER, fallbackFactory = RemoteUserFallbackFactory.class)
public interface RemoteAuthUserService
{
/**
* 通过用户名查询用户信息
*
* @param username 用户名
* @param source 请求来源
* @return 结果
*/
@GetMapping("/userApi/info/{username}")
public R<LoginUser> getUserInfo(@PathVariable("username") String username, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
/**
* 注册用户信息
*
* @param sysUser 用户信息
* @param source 请求来源
* @return 结果
*/
@PostMapping("/userApi/register")
public R<Boolean> registerUserInfo(@RequestBody SysUser sysUser, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
}
@@ -0,0 +1,52 @@
package com.mhd.system.api;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.dto.BusinessDataPushDTO;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.system.api.factory.RemoteBmsFeignFallbackFactory;
import com.mhd.system.api.feign.FeignAutoConfiguration;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
import java.util.Set;
/**
* bms财务结算系统feign调用接口
*/
@FeignClient(contextId = "BmsService", value = ServiceNameConstants.BMS_SERVICE, fallbackFactory = RemoteBmsFeignFallbackFactory.class, configuration = FeignAutoConfiguration.class)
public interface BmsServiceFeign {
/**
* 根据规则id获取规则详情信息
*/
@GetMapping("/billingRulesApi/getInfoByCode")
public AjaxResult getInfoByCode(@RequestParam("billingRulesCode") String billingRulesCode);
/**
* 根据结算对象code获取结算对象信息
*/
@GetMapping("/settlementCustomersApi/getInfoByCode")
public AjaxResult getCustomersInfoByCode(@RequestParam("settlementCustomersCode")String settlementCustomersCode);
/**
* 推送同步业务单据
*/
@PostMapping("/businessDocumentApi/pushSyncData")
public AjaxResult pushSyncData(@RequestBody BusinessDataPushDTO businessDataPushDTO);
/**
* 根据单据类型code获取单据类型信息
* @param documentTypeCodeSet 单据类型Code集合
* @return
*/
@GetMapping("/documentTypeApi/getDocumentInfoByCodeSet")
AjaxResult getDocumentInfoByCodeSet(@RequestParam("documentTypeCodeSet") Set<String> documentTypeCodeSet);
}
@@ -0,0 +1,159 @@
package com.mhd.system.api;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.dto.*;
import com.mhd.common.core.domain.entity.R;
import com.mhd.common.core.domain.entity.RevenueExpensesRecord;
import com.mhd.common.core.domain.thirdparty.ThridPayCallDTO;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.common.core.web.page.TableDataInfo;
import com.mhd.system.api.domain.finance.AccountCashWalletPo;
import com.mhd.system.api.feign.FeignAutoConfiguration;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
@FeignClient(contextId = "commonFinanceServiceFeign",value = ServiceNameConstants.FINANCE_SERVICE,configuration = FeignAutoConfiguration.class)
public interface FinanceServiceFeign {
/**
* 修改货款
* @param loanManageDto
* @return
*/
@PutMapping("/loanManage/update")
public AjaxResult update(@RequestBody LoanManageDto loanManageDto);
/**
* 新增核销
* @param verificationDto
* @return
*/
@PostMapping("/verification/addVerification")
public AjaxResult addVerification(@RequestBody VerificationDto verificationDto);
/**
* 修改核销
* @param verificationDto
* @return
*/
@PutMapping("/verification/updateVerification")
public AjaxResult updateVerification(@RequestBody VerificationDto verificationDto);
/**
* 根据查询核销信息
* @param verificationDto
* @return
*/
@PostMapping("/verification/verificationListFeign")
public TableDataInfo verificationList(@RequestBody VerificationDto verificationDto);
/**
* 根据ID查询货款详细信息
* @param loanManageDto
* @return
*/
@GetMapping("/loanManage/list")
public TableDataInfo list(LoanManageDto loanManageDto);
/**
* 新增开票订单表
* @param invoiceOrderDto
* @return
*/
@PostMapping("/invoice/invoiceOrderSave")
public AjaxResult invoiceOrderSave(@RequestBody InvoiceOrderDto invoiceOrderDto);
/**
* 查看是否有申请中的开票信息
* @param userId
* @return
*/
@GetMapping("/invoice/getInvoiceByUserId/{userId}")
public AjaxResult getInvoiceByUserId(@PathVariable("userId") Long userId);
/**
* 新增收入支出管理
* @param revenueExpensesRecord
* @return
*/
@PostMapping("/revenueExpensesRecord/add")
public AjaxResult addRevenueExpensesRecord(@RequestBody RevenueExpensesRecord revenueExpensesRecord);
/**
* 根据银行卡id查询银行卡信息
* @param accountBankCardId
* @return
*/
@GetMapping("/accountManage/getAccountBankCard/{accountBankCardId}")
public AjaxResult getAccountBankCard(@PathVariable(value = "accountBankCardId")Long accountBankCardId);
/**
* app新增运单时
* 货款和核销的新增
* @param appCommonFeignParamDto 请求参数
*/
@PostMapping("/verification/instertWaybillFinancialInfo")
public AjaxResult instertWaybillFinancialInfo(@RequestBody AppCommonFeignParamDto appCommonFeignParamDto);
/**
* app完成收款财务中台更新收款状态
*/
@PostMapping("/verification/updateAppFinancialInfo")
public Boolean updateAppFinancialInfo(Long waybillId);
/**
* 根据用户id查询钱包信息
* @param userId 用户id
* @return 钱包信息
*/
@GetMapping("/accountManage/getWalletByUserId")
public R<AccountCashWalletPo> getWalletByUserId(@RequestParam(value = "userId")Long userId);
/**
* 根据id删除钱包信息
*
* @param id 钱包id
* @return 钱包信息
*/
@GetMapping("/accountManage/deleteCashWalletById/{id}")
public R<Boolean> deleteCashWalletById(@PathVariable(value = "id") Long id);
/**
* 开通钱包
* @param accountCashWalletDto
* @return
*/
@PostMapping("/accountManage/accountCashWalletSave")
public AjaxResult accountCashWalletSave(@RequestBody AccountCashWalletDto accountCashWalletDto);
/**
* 更新总额度
* @param accountCashWalletDto
* @return
*/
@PostMapping("/accountManage/updateTotalLimit")
public AjaxResult updateTotalLimit(@RequestBody AccountCashWalletDto accountCashWalletDto);
/**
* 根据用户获取银行卡列表
* @param userId
* @return
*/
@GetMapping("/accountManage/getAccountBankCardByUser")
public AjaxResult getAccountBankCardByUser(@RequestParam(value = "userId")Long userId);
/**
* 根据用户获取银行卡列表
* @param thridPayCallDTO
* @return
*/
@PostMapping("/freightPayApi/thridPayCall")
public AjaxResult thridPayCall(@RequestBody ThridPayCallDTO thridPayCallDTO);
/**
* 卸货查询收款信息
*/
@PostMapping("/verification/queryCollectionInfo")
AjaxResult queryCollectionInfo(@RequestBody DispatchWaybillDto dispatchWaybillDto);
}
@@ -0,0 +1,23 @@
package com.mhd.system.api;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.entity.R;
import com.mhd.system.api.domain.MallOAuthLogin;
import com.mhd.system.api.domain.MallOAuthToken;
import com.mhd.system.api.feign.FeignAutoConfiguration;
import feign.QueryMap;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestHeader;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.Map;
@FeignClient(contextId = "MallOAuthService",value = ServiceNameConstants.MALL_AUTH_SERVICE)
public interface MallOAuthServiceFeign {
@PostMapping(value = "/oauth/token",consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE )
public String oauthToken(@RequestParam Map<String, String> params, @RequestHeader("Authorization") String authorization);
}
@@ -0,0 +1,35 @@
package com.mhd.system.api;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.entity.R;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.system.api.domain.mall.UserInfo;
import com.mhd.system.api.domain.mall.UserInfoLoginDTO;
import com.mhd.system.api.feign.FeignAutoConfiguration;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestHeader;
import javax.servlet.http.HttpServletRequest;
@FeignClient(contextId = "commonMallServiceFeign",value = ServiceNameConstants.MALL_API_SERVICE,configuration = FeignAutoConfiguration.class)
public interface MallServiceFeign {
/**
* 同步商城用户信息
* @param userInfo
* @return
*/
@PostMapping("/userinfo/szwlSyncMallUser")
public R szwlSyncMallUser(@RequestBody UserInfo userInfo, @RequestHeader("from") String from);
/**
* 账号登录
*/
@PostMapping("/userinfo/login")
public R<UserInfo> login(@RequestBody UserInfoLoginDTO userInfoLoginDTO, @RequestHeader("client-type") String clientType, @RequestHeader("tenant-id") String tenantId);
}
@@ -0,0 +1,59 @@
package com.mhd.system.api;
import com.mhd.common.core.constant.SecurityConstants;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.dto.AppConfigDTO;
import com.mhd.common.core.domain.entity.R;
import com.mhd.common.core.domain.po.AppConfigPO;
import com.mhd.common.core.domain.po.OrganizationCorrelationPO;
import com.mhd.common.core.domain.po.OrganizationPo;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.system.api.factory.RemoteOrganizationFeignFallbackFactory;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* @Description 调用用户中台
* @Author Alex
* @Date 2022/12/9 17:52
*/
@FeignClient(contextId = "remoteOrganizationServiceFeign", value = ServiceNameConstants.PRODUCT_CENTER, fallbackFactory = RemoteOrganizationFeignFallbackFactory.class)
public interface OrganizationServiceFeign {
/**
* @Description 根据域名获取组织ID
* @Author Alex
* @Date 2022/12/6 22:11
*/
@GetMapping("/organization/selectTopIdByTenantsDomainName/{tenantsDomainName}")
public AjaxResult getOrganizationByPath(@PathVariable("tenantsDomainName") String tenantsDomainName, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
/**
* @Description 根据id查询组织信息(包含所有的子组织id)
* @Author Alex
* @Date 2022/12/6 22:11
*/
@GetMapping("/organization/getInfoForIdList/{id}")
R<OrganizationPo> getInfoForIdList(@PathVariable("id") Long id);
/**
* @description 根据组织id获取该组织绑定关系列表
* @author ZhouGY
* @date 2023/9/22 9:33
* @param organizationId
* @return R<List<OrganizationCorrelationPO>>
*/
@GetMapping("/organizationCorrelationApi/findListByOrganizationId/{organizationId}")
R<List<OrganizationCorrelationPO>> findListByOrganizationId(@PathVariable("organizationId") Long organizationId);
/**
* @Description 根据id查询组织信息(包含所有的子组织id)
* @Author Alex
* @Date 2022/12/6 22:11
*/
@PostMapping("/appConfigApi/getAppConfigByAppPackageFeign")
R<AppConfigPO> getAppConfigByAppPackageFeign(@RequestBody AppConfigDTO appConfigDTO);
}
@@ -0,0 +1,89 @@
package com.mhd.system.api;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.entity.R;
import com.mhd.common.core.domain.po.OrganizationPo;
import com.mhd.common.core.domain.po.SysTenantsPo;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.system.api.factory.RemoteSystemFeignFallbackFactory;
import com.mhd.system.api.feign.FeignAutoConfiguration;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.multipart.MultipartFile;
/**
* @Description
* @Author zg
* @Version 1.0
* @Date 2023/11/1 13:40
*/
@FeignClient(contextId = "ProductService", value = ServiceNameConstants.PRODUCT_CENTER, fallbackFactory = RemoteSystemFeignFallbackFactory.class, configuration = FeignAutoConfiguration.class)
public interface ProductServiceFeign {
/**
* @Description 获取一级组织
* @Author Alex
* @Date 2022/12/2 13:37
*/
@GetMapping("/organization/selectTopId/{id}")
public AjaxResult selectTopId(@PathVariable("id") Long id);
/**
* @Description 根据组织id获取所有的上级组织id
* @Author Alex
* @Date 2022/12/2 13:37
*/
@GetMapping("/organization/selectTopOrganizationList/{id}")
public AjaxResult selectTopOrganizationList(@PathVariable("id") Long id);
/**
* 查询当前组织所有的组织id
*/
@GetMapping(value = "/organization/getOrganizationIdsByOrganizationId/{organizationId}")
public AjaxResult getOrganizationIdsByOrganizationId(@PathVariable("organizationId") Long organizationId);
/**
* 查询所有的组织id
*/
@GetMapping(value = "/organization/selectAllOrganizationId")
public AjaxResult selectAllOrganizationId();
/**
* 根据applicationName查询定时任务集合
*/
@GetMapping(value = "/elasticJob/elasticJobList/{applicationName}")
public AjaxResult elasticJobList(@PathVariable("applicationName") String applicationName);
/**
* 根据id查询组织信息
*/
@GetMapping(value = "/organization/getInfo/{id}")
public AjaxResult getOrganizationInfo(@PathVariable("id") Long id);
/**
* @Description 根据id查询组织信息(包含所有的子组织id)
* @Author Alex
* @Date 2022/12/6 22:11
*/
@GetMapping("/organization/getInfoForIdList/{id}")
R<OrganizationPo> getInfoForIdList(@PathVariable("id") Long id);
@PostMapping("/menu/upload")
public AjaxResult upload(@RequestParam("file") MultipartFile file);
/**
* 开放接口-获取配置的组织信息
*
* @return
*/
@GetMapping(value = "/tenants/getTenantsByOrgan")
public R<SysTenantsPo> getTenantsByOrgan(@RequestParam("organizationId") Long organizationId);
}
@@ -0,0 +1,29 @@
package com.mhd.system.api;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestPart;
import org.springframework.web.multipart.MultipartFile;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.entity.R;
import com.mhd.system.api.domain.SysFile;
import com.mhd.system.api.factory.RemoteFileFallbackFactory;
/**
* 文件服务
*
* @author mhd
*/
@FeignClient(contextId = "remoteFileService", value = ServiceNameConstants.FILE_SERVICE, fallbackFactory = RemoteFileFallbackFactory.class)
public interface RemoteFileService
{
/**
* 上传文件
*
* @param file 文件信息
* @return 结果
*/
@PostMapping(value = "/upload", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
public R<SysFile> upload(@RequestPart(value = "file") MultipartFile file);
}
@@ -0,0 +1,41 @@
package com.mhd.system.api;
import com.mhd.common.core.constant.SecurityConstants;
import com.mhd.common.core.constant.ServiceNameConstants;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestHeader;
import com.mhd.common.core.domain.entity.R;
import com.mhd.system.api.domain.SysLogininforPo;
import com.mhd.system.api.domain.SysOperLogPo;
import com.mhd.system.api.factory.RemoteLogFallbackFactory;
/**
* 日志服务
*
* @author mhd
*/
@FeignClient(contextId = "remoteLogService", value = ServiceNameConstants.SYSTEM_SERVICE, fallbackFactory = RemoteLogFallbackFactory.class)
public interface RemoteLogService
{
/**
* 保存系统日志
*
* @param sysOperLogPo 日志实体
* @param source 请求来源
* @return 结果
*/
@PostMapping("/operlog")
public void saveLog(@RequestBody SysOperLogPo sysOperLogPo, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
/**
* 保存访问记录
*
* @param sysLogininforPo 访问实体
* @param source 请求来源
* @return 结果
*/
@PostMapping("/logininfor")
public R<Boolean> saveLogininfor(@RequestBody SysLogininforPo sysLogininforPo, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
}
@@ -0,0 +1,44 @@
package com.mhd.system.api;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestHeader;
import com.mhd.common.core.constant.SecurityConstants;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.entity.R;
import com.mhd.system.api.domain.SysUser;
import com.mhd.system.api.factory.RemoteUserFallbackFactory;
import com.mhd.system.api.model.LoginUser;
/**
* 用户服务
*
* @author mhd
*/
@FeignClient(contextId = "remoteUserService", value = ServiceNameConstants.SYSTEM_SERVICE, fallbackFactory = RemoteUserFallbackFactory.class)
public interface RemoteUserService
{
/**
* 通过用户名查询用户信息
*
* @param username 用户名
* @param source 请求来源
* @return 结果
*/
@GetMapping("/user/info/{username}")
public R<LoginUser> getUserInfo(@PathVariable("username") String username, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
/**
* 注册用户信息
*
* @param sysUser 用户信息
* @param source 请求来源
* @return 结果
*/
@PostMapping("/user/register")
public R<Boolean> registerUserInfo(@RequestBody SysUser sysUser, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
}
@@ -0,0 +1,47 @@
package com.mhd.system.api;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.dto.wlhy.report.CapitalFlowReport;
import com.mhd.common.core.domain.dto.wlhy.report.DriverReport;
import com.mhd.common.core.domain.dto.wlhy.report.TransportNoteReport;
import com.mhd.common.core.domain.dto.wlhy.report.VehicleReport;
import com.mhd.common.core.domain.po.report.VehicleReportPo;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.system.api.feign.FeignAutoConfiguration;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
/**
* 上报 feign
*/
@FeignClient(contextId = "commonReportServiceFeign", value = ServiceNameConstants.REPORT_SERVICE, configuration = FeignAutoConfiguration.class)
public interface ReportServiceFeign {
/**
* 车辆数据接收入口
*/
@PostMapping("/vehicleApi/receive")
public AjaxResult receive(@RequestBody VehicleReport vehicleReport);
/**
* 司机数据接收入口
*/
@PostMapping("/driverApi/receive")
public AjaxResult receive(@RequestBody DriverReport driverReport);
/**
* 运单数据接收入口
*/
@PostMapping("/transportNoteApi/receive")
public AjaxResult receive(@RequestBody TransportNoteReport transportNoteReport);
/**
* 流水数据接收入口
*/
@PostMapping("/capitalFlowApi/receive")
public AjaxResult receive(@RequestBody List<CapitalFlowReport> capitalFlowReports);
}
@@ -0,0 +1,325 @@
package com.mhd.system.api;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.dto.NoticeMessageLoggingDto;
import com.mhd.common.core.domain.dto.SysMultistageDictDto;
import com.mhd.common.core.domain.dto.SysProvinceCityCountyDTO;
import com.mhd.common.core.domain.dto.WebSocketDTO;
import com.mhd.common.core.domain.dto.open.StorageLocation;
import com.mhd.common.core.domain.dto.open.SystemOpenApiLogDTO;
import com.mhd.common.core.domain.dto.open.ThirdPartyServiceReqLogDTO;
import com.mhd.common.core.domain.entity.R;
import com.mhd.common.core.domain.po.SysMultistageDictPo;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.system.api.domain.ContainerFeignPO;
import com.mhd.system.api.domain.SysDictData;
import com.mhd.system.api.factory.RemoteSystemFeignFallbackFactory;
import com.mhd.system.api.feign.FeignAutoConfiguration;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
/**
* @Description
* @Author zg
* @Version 1.0
* @Date 2023/11/1 13:40
*/
@FeignClient(contextId = "SystemService", value = ServiceNameConstants.SYSTEM_SERVICE, fallbackFactory = RemoteSystemFeignFallbackFactory.class, configuration = FeignAutoConfiguration.class)
public interface SystemServiceFeign {
/**
* 多级分类字典,根据code查询字典信息
* 此接口查询多级分类字典,如果是一级字典,则只需传入字典code,如果是二级或三级字典,则还需要传入父类code,否则会查询失败
* @param multistageDictCode 本级code
* @param parentDictCode 父级code
* @return
*/
@GetMapping("/basicApi/getMultistageDictInfoByCode")
public AjaxResult getMultistageDictInfoByCode(@RequestParam("multistageDictCode") String multistageDictCode, @RequestParam("parentDictCode") String parentDictCode);
/**
* 查询多级分类字典
* @param sysMultistageDictDto
* @return
*/
@GetMapping("/basicApi/selectMultistageDictList")
public AjaxResult selectMultistageDictList(SysMultistageDictDto sysMultistageDictDto);
/**
* 根据条件查询分类字典数据列表
* @param
* @return
*/
@PostMapping("/dict/data/getDictDataList")
public R<List<SysDictData>> getDictDataList(@RequestBody SysDictData sysDictData);
/**
* 根据条件查询分类字典数据列表
* @param
* @return
*/
@PostMapping("/basicApi/getMultistageDictList")
public R<List<SysMultistageDictPo>> getMultistageDictList(@RequestBody SysMultistageDictDto sysMultistageDictDto);
/**
* 根据条件查询分类字典数据列表
* @param
* @return
*/
@PostMapping("/basicApi/getMultistageDictTreeList")
public R<List<SysMultistageDictPo>> getMultistageDictTreeList(@RequestBody SysMultistageDictDto sysMultistageDictDto);
/**
* @description 获取数据字典
* @author ZhouGY
* @date 2023/10/10 9:48
* @param dictType
* @return AjaxResult
*/
@GetMapping("/dict/data/type/{dictType}")
public AjaxResult selectListByDictType(@PathVariable("dictType") String dictType);
/**
* 根据字典类型查询字典数据信息
*/
@GetMapping(value = "/dict/data/selectDictDataByOpen")
public AjaxResult getDictDataByOpen(@RequestParam("dictType") String dictType, @RequestParam("topOrgId") Long topOrgId);
/**
* 根据县级编码,查询省市县信息
* @param sysProvinceDTO
* @return
*/
@PostMapping("/basicApi/findAreaInfo")
public AjaxResult selectFindAreaInfoList(@RequestBody SysProvinceCityCountyDTO sysProvinceDTO);
/**
* 根据市区编码查询市区信息
* @param sysProvinceDTO
* @return
*/
@PostMapping("/basicApi/findAreaInfoByCityCode")
public AjaxResult findAreaInfoByCityCode(@RequestBody SysProvinceCityCountyDTO sysProvinceDTO);
/**
* 根据省份编码查询省份信息
* @param sysProvinceDTO
* @return
*/
@PostMapping("/basicApi/findAreaInfoByProvince")
public AjaxResult findAreaInfoByProvince(@RequestBody SysProvinceCityCountyDTO sysProvinceDTO);
/**
* 新增消息通知 批量
* @param noticeMessageLoggingDto
* @return
*/
@PostMapping("/messageManageApi/addMessageLoggingList")
public AjaxResult addMessageLoggingList(@RequestBody NoticeMessageLoggingDto noticeMessageLoggingDto);
/**
* 获取用户所在组织的开关配置信息
* @return
*/
@GetMapping("/userConfigSwitchApi/getUserConfigSwitchInfo")
public AjaxResult getUserConfigSwitchInfo();
/**
* 获取当前租户开关按钮配置
*
* @return
*/
@ApiOperation("获取当前租户开关配置信息")
@GetMapping("userConfigSwitchApi/getUserConfigSwitchInfoByOrgId")
public AjaxResult getUserConfigSwitchInfoByOrgId(@RequestParam("organizationId") Long organizationId);
@ApiOperation("根据topCode查询多级分类字典集合(同一父级字典下所有)")
@GetMapping(value = "/basicApi/getTopMultistageDictList/{topCode}")
public AjaxResult getTopMultistageDictList(@PathVariable(value = "topCode") String topCode);
@ApiOperation("新增多级分类字典-开放接口")
@PostMapping("/basicApi/addMultistageDictByOpen")
public AjaxResult addMultistageDictByOpen(@RequestBody SysMultistageDictDto sysMultistageDictDto);
@ApiOperation("根据code、一级组织ID查询多级分类字典集合")
@GetMapping(value = "/basicApi/getSysMultistageDictByCodeAndTopOrgId")
public AjaxResult getSysMultistageDictByCodeAndTopOrgId(@RequestParam("code") String code, @RequestParam("topOrgId") Long topOrgId);
@ApiOperation("根据topCode、一级组织ID查询多级分类字典集合(同一父级字典下所有)")
@GetMapping(value = "/basicApi/getMultistageDictListByTopCodeAndTopOrgId")
public AjaxResult getMultistageDictListByTopCodeAndTopOrgId(@RequestParam("topCode") String topCode, @RequestParam("topOrgId") Long topOrgId);
/**
* @description 保存服务日志
* @author ZhouGY
* @date 2024/1/26 17:03
* @param systemOpenApiLogDTO
*/
@PostMapping(value = "/systemOpenApiLogApi/save")
public void saveLog(SystemOpenApiLogDTO systemOpenApiLogDTO);
/**
* @description 保存三方服务日志
* @author ZhouGY
* @date 2024/1/26 17:03
* @param thirdPartyServiceReqLogDTO
*/
@PostMapping(value = "/thirdPartyServiceReqLogApi/save")
public void saveThirdPartyServiceReqLog(@RequestBody ThirdPartyServiceReqLogDTO thirdPartyServiceReqLogDTO);
/**
* 群发消息
*/
@PostMapping("/webSocketApi/bulkSend")
public AjaxResult bulkSend(@RequestBody WebSocketDTO webSocketDTO);
/**
* 单个消息
*/
@PostMapping("/webSocketApi/oneSend")
public AjaxResult oneSend(@RequestBody WebSocketDTO webSocketDTO);
@PostMapping("/messageManageApi/addMessageLogging")
public AjaxResult addMessageLogging(@RequestBody NoticeMessageLoggingDto noticeMessageLoggingDto);
/**
* 根据batchId获取对应批次信息
*/
@GetMapping("/batchApi/getInfo/{batchId}")
public AjaxResult getBatchInfoByBatchId(@PathVariable("batchId") Long batchId);
/**
* 根据batchId获取对应批次详情信息
*/
@GetMapping("/batchDetailApi/getBatchDetailListByBatchId/{batchId}")
public AjaxResult getBatchDetailListByBatchId(@PathVariable("batchId") Long batchId);
/**
* 根据materialBaseInfoId获取对应批次详情信息get
*/
@GetMapping("/batchDetailApi/getBatchDetailListByMaterialBaseInfoId/{materialBaseInfoId}")
public AjaxResult getBatchDetailListByMaterialBaseInfoId(@PathVariable("materialBaseInfoId") Long materialBaseInfoId);
/**
* 获取指定用户设置的仓库
*/
@GetMapping("/associationWarehouseApi/getWarehouseInfo/{correlationId}")
public AjaxResult getWarehouseInfo(@PathVariable("correlationId") Long correlationId);
/**
* 根据warehouseId获取对仓库信息
*/
@GetMapping("/warehouseApi/getInfo/{warehouseId}")
public AjaxResult getWarehouseInfoByWarehouseId(@PathVariable("warehouseId") Long warehouseId);
/**
* 根据storageSectionId获取对应库区信息
*/
@GetMapping("/storageSectionApi/getInfo/{storageSectionId}")
public AjaxResult getStorageSectionInfoByStorageSectionId(@PathVariable("storageSectionId") Long storageSectionId);
/**
* 根据storageLocationId获取对应库位信息
*/
@GetMapping("/storageLocationApi/getInfo/{storageLocationId}")
public AjaxResult getStorageLocationInfoByStorageLocationId(@PathVariable("storageLocationId") Long storageLocationId);
@PostMapping("/storageLocationApi/getStorageLocationCount")
public AjaxResult getStorageLocationCount(@RequestBody StorageLocation storageLocation);
/**
* 根据包装id和单位编码获取包装详情信息
*/
@GetMapping("/packApi/getInfoByPackIdAndUnitCode/{packId}/{unitCode}")
public AjaxResult getInfoByPackIdAndUnitCode(@PathVariable("packId") Long packId, @PathVariable("unitCode") String unitCode);
/**
* 根据platformId获取对应月台信息
*/
@GetMapping("/platformApi/getInfo/{platformId}")
public AjaxResult getPlatformInfoByPlatformId(@PathVariable("platformId") Long platformId);
/**
* 根据platformUseTimeIds获取对应月台使用时间信息
*/
@GetMapping("/platformUseTimeApi/getInfo/{platformUseTimeId}")
public AjaxResult getPlatformUseTimeInfoByPlatformUseTimeId(@PathVariable("platformUseTimeId") Long platformUseTimeId);
/**
* 根据containerId获取对应容器信息
*/
@GetMapping("/containerApi/getInfo/{containerId}")
public AjaxResult getContainerInfoByContainerId(@PathVariable("containerId") Long platformUseTimeId);
/**
* 修改容器占用状态
*/
@PostMapping("/containerApi/updateUsageStatus")
public AjaxResult updateUsageStatus(@RequestBody ContainerFeignPO containerFeign);
/**
* 查询关联仓库列表根据关联id
*/
@GetMapping("/associationWarehouseApi/setWarehouseInfo")
public AjaxResult setWarehouseInfo(@RequestBody AssociationWarehouseFeign associationWarehouseFeign);
/**
* 根据code编码查询费用科目
*/
@GetMapping("/expenseAccountApi/getInfoByCode")
public AjaxResult getSubInfoByCode(@RequestParam("subjectCode") String subjectCode);
/**
* 根据code编码查询项目信息
*/
@GetMapping("/projectManageApi/getInfoByCode")
public AjaxResult getProjectByCode(@RequestParam("projectCode") String projectCode);
/**
* 根据项目id查询项目信息
*/
@GetMapping("/projectManageApi/getProjectInfoById")
public AjaxResult getProjectInfoById(@RequestParam("projectManageId") Long projectManageId);
/**
* 根据服务项id查询服务项信息
*/
@GetMapping("/serviceItemsManageApi/getServiceItemsById")
public AjaxResult getServiceItemsById(@RequestParam("serviceItemsManageId") Long serviceItemsManageId);
/**
* 根据服务项code获取服务项管理
*/
@GetMapping("/serviceItemsManageApi/getServiceItemsByCode")
public AjaxResult getServiceItemsByCode(@RequestParam("serviceItemsCode") String serviceItemsCode);
/**
* 根据合同编码获取合同管理
*/
@GetMapping("/contractManageApi/getInfoByCode")
public AjaxResult getInfoByCode(@RequestParam("contractNumber") String contractNumber);
/**
* 根据结算主体获取合同信息
*/
@GetMapping("/contractManageApi/getInfoByCustomer")
public AjaxResult getInfoByCustomer(@RequestParam("settlementCustomersCode") String settlementCustomersCode,@RequestParam("contractType") Integer contractType);
@GetMapping("/contractManageApi/queryList")
public AjaxResult queryList();
}
@@ -0,0 +1,31 @@
package com.mhd.system.api;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.entity.R;
import com.mhd.common.core.domain.po.EnterpriseAccessPO;
import com.mhd.system.api.factory.RemoteTicketFeignFallbackFactory;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import java.util.List;
/**
* @author ZhouGY
* @title TicketServiceFeign
* @description: 票务服务
* @date 2023/9/21 19:42
**/
@FeignClient(contextId = "remoteTicketServiceFeign", value = ServiceNameConstants.TICKET_CENTER, fallbackFactory = RemoteTicketFeignFallbackFactory.class)
public interface TicketServiceFeign {
/**
* @description 根据组织id查询接入企业信息
* @author ZhouGY
* @date 2023/9/21 20:06
* @param organizationId
* @return R<TicketEnterprisePO>
*/
@GetMapping("/enterpriseApi/getEnterprisePoByOrganizationId/{organizationId}")
public R<List<EnterpriseAccessPO>> getEnterprisePoByOrganizationId(@PathVariable("organizationId") Long organizationId);
}
@@ -0,0 +1,96 @@
package com.mhd.system.api;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.dto.StatisticalMattersDTO;
import com.mhd.common.core.domain.dto.SyncTmsVehicleDTO;
import com.mhd.common.core.domain.dto.VehicleDto;
import com.mhd.common.core.domain.entity.R;
import com.mhd.common.core.domain.po.VehiclePo;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.common.core.web.page.TableDataInfo;
import com.mhd.system.api.factory.TransportFallbackFactory;
import com.mhd.system.api.feign.FeignAutoConfiguration;
import io.swagger.annotations.ApiOperation;
import lombok.extern.java.Log;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@FeignClient(contextId = "commonTransportFeign",value = ServiceNameConstants.TRANSPORT_CENTER,configuration = FeignAutoConfiguration.class,fallbackFactory = TransportFallbackFactory.class)
public interface TransportFeign {
/**
* 查询车辆管理列表
*/
@PostMapping("/vehicle/listTwo")
public TableDataInfo listTwo(VehicleDto vehicleDto);
@PostMapping("/vehicle/editVehicle")
public AjaxResult editVehicle(@RequestBody VehicleDto vehicleDto);
/**
* 获取车辆信息
*/
@GetMapping(value = "/vehicle/getVehiclePo/{vehicleId}")
public AjaxResult getVehiclePoById(@PathVariable("vehicleId") Long vehicleId);
/**
* 根据车辆ids获取车辆信息
*/
@PostMapping("/vehicle/getVehicleByIds")
public AjaxResult getVehicleByIds(@RequestBody VehicleDto vehicleDto);
/**
* 根据用户id查询我的车辆信息
* @param userId
* @return
*/
@GetMapping(value = "/vehicle/selectVehiclesByUserId/{userId}")
public R<List<VehiclePo>> getVehiclePosByUserId(@PathVariable("userId") Long userId);
/**
* 获取车辆统计数据
*/
@ApiOperation("获取车辆统计数据")
@PostMapping("/vehicle/vehicleCountByMatter")
public AjaxResult vehicleCountByMatter(@RequestBody StatisticalMattersDTO statisticalMattersDTO);
/**
* 根据车牌号查询车辆信息 - 开放接口
*/
@ApiOperation("查询车辆信息")
@GetMapping("/vehicle/getVehicleInfoByOpen")
public AjaxResult<?> getVehicleInfoByOpen(@RequestParam("vehicleLicence") String vehicleLicence, @RequestParam(value = "driverEnterpriseCode", required = false) String driverEnterpriseCode);
/**
* 同步tms车辆
* @param syncTmsVehicleDTO
* @return
*/
@PostMapping(value = "/vehicle/syncTmsVehicle")
public AjaxResult syncTmsVehicle(@RequestBody SyncTmsVehicleDTO syncTmsVehicleDTO);
@GetMapping("/vehicle/{plateNumber}")
R<VehiclePo> findVehicleByPlateNumber(@PathVariable("plateNumber") String plateNumber);
/**
* 新增车辆
*
* @param vehicleDto 新增DTO对象
* @return 结果
*/
@PostMapping("/vehicle/add")
R<Void> add(@RequestBody VehicleDto vehicleDto);
@PostMapping("/vehicle/addForUserApp")
R<Void> addForUserApp(@RequestBody VehicleDto vehicleDto);
@PostMapping("/vehicle/updateMotorcadeNameByMotorcadeId")
AjaxResult updateMotorcadeNameByMotorcadeId(@RequestBody VehicleDto vehicleDto);
}
@@ -0,0 +1,32 @@
package com.mhd.system.api;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.entity.R;
import com.mhd.system.api.domain.mall.SysTenant;
import com.mhd.system.api.feign.FeignAutoConfiguration;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestHeader;
@FeignClient(contextId = "commonUpmsServiceFeign",value = ServiceNameConstants.UPMS_SERVICE)
public interface UpmsServiceFeign {
/**
* 同步租户
*/
@PostMapping("/tenant/save")
public R szwlSyncTenant(@RequestBody SysTenant sysTenant, @RequestHeader("from") String from);
/**
* 查询租户信息
* @param szwlTenantId
* @return
*/
@GetMapping("/tenant/inside/{szwlTenantId}")
R<SysTenant> getBySzwlTenantId(@PathVariable("szwlTenantId") String szwlTenantId, @RequestHeader("from") String from);
}
@@ -0,0 +1,180 @@
package com.mhd.system.api;
import com.mhd.common.core.constant.SecurityConstants;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.dto.DriverVehicleBindDto;
import com.mhd.common.core.domain.dto.StatisticalMattersDTO;
import com.mhd.common.core.domain.dto.UserDataPermissionQueryDTO;
import com.mhd.common.core.domain.dto.UserDriverDTO;
import com.mhd.common.core.domain.entity.R;
import com.mhd.common.core.domain.todo.StatisticalMattersDo;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.system.api.domain.UserDTO;
import com.mhd.system.api.domain.UserUpdateDTO;
import com.mhd.system.api.factory.RemoteUserFeignFallbackFactory;
import com.mhd.system.api.feign.FeignAutoConfiguration;
import com.mhd.system.api.model.LoginUser;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Map;
/**
* @Description 调用用户中台
* @Author Alex
* @Date 2022/12/9 17:52
*/
@FeignClient(contextId = "remoteUserServiceFeign", value = ServiceNameConstants.USER_CENTER, fallbackFactory = RemoteUserFeignFallbackFactory.class,configuration = FeignAutoConfiguration.class)
public interface UserServiceFeign {
@PostMapping("/userApi/getUserByUserId/{userId}")
public R<LoginUser> getUserByUserId(@PathVariable("userId") Long userId, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
@GetMapping("/userApi/getUserByDingUserId")
public R<LoginUser> getUserByDingUserId(@RequestParam("dingUserId") String dingUserId, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
/**
* 通过用户名查询用户信息
*
* @return 结果
*/
@PostMapping("/userApi/getUserByTopOrganizationUserAccount")
public R<LoginUser> getUserByTopOrganizationUserAccount(@RequestBody UserDTO userDTO, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
@PostMapping("/userApi/getUserByTopOrganizationUserPhone")
public R<LoginUser> getUserByTopOrganizationUserPhone(@RequestBody UserDTO userDTO, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
@PostMapping("/userApi/add")
public R<LoginUser> addUser(@RequestBody UserDTO userDTO, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
@PutMapping("/userApi/update")
public R<LoginUser> updateUser(@RequestBody UserUpdateDTO userUpdateDTO, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
@PutMapping("/userApi/updateWhenLogin")
public R<LoginUser> updateWhenLogin(@RequestBody UserUpdateDTO userUpdateDTO, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
/**
* @Description 绑定车辆
* @Author Alex
* @Date 2023/1/5 21:24
*/
@PostMapping("/userDriverApi/bindVehicle")
public AjaxResult bindVehicle(@RequestBody UserDriverDTO userDriverDTO);
/**
* 查询用户数据权限-单条
* @param userDataPermissionQueryDTO
* @return
*/
@PostMapping("/userApi/findUserDataPermission")
public AjaxResult findUserDataPermission(@RequestBody UserDataPermissionQueryDTO userDataPermissionQueryDTO);
/**
* 保存司机车辆绑定信息
* @param driverVehicleBindDto
* @return
*/
@PostMapping("/userDriverApi/saveBindVehicle")
public AjaxResult saveBindVehicle(@RequestBody DriverVehicleBindDto driverVehicleBindDto);
/**
* 根据用户id查询司机信息
* @param userId
* @return
*/
@GetMapping("/userDriverApi/getDriverInfoByUserId/{userId}")
public AjaxResult getDriverInfoByUserId(@PathVariable("userId") Long userId);
/**
* 根据司机id查询绑定车辆的用户信息
* @param vehicleId
* @return
*/
@GetMapping("/userDriverApi/selectUserBindByVehicleId/{vehicleId}")
public Map<String,String> selectUserBindByVehicleId(Long vehicleId);
/**
* 根据车辆ids查询司机
*/
@ApiOperation("根据车辆id查询司机")
@PostMapping("/driverVehicleBindApi/getInfoByVid")
public AjaxResult getInfoByVid(@RequestBody List<Long> ids);
/**
* 根据用户ID查询用户详细信息
*/
@ApiOperation("根据用户ID查询用户详细信息")
@GetMapping("/userApi/getInfo/{userId}")
public AjaxResult getInfo(@PathVariable("userId") Long userId);
/**
* 查询车辆绑定的承运人列表
*/
@ApiOperation("查询车辆绑定的承运人列表")
@GetMapping("/userAppApi/bindDriverShipList")
public AjaxResult bindDriverShipList(@RequestParam("vehicleId") Long vehicleId);
@ApiOperation("根据车辆id查询司机")
@PostMapping("/driverVehicleBindApi/changeVehicleUserId")
public AjaxResult changeVehicleUserId(@RequestBody DriverVehicleBindDto driverVehicleBindDto);
/**
* 获取承运人、托运人待审核数量
*/
@ApiOperation("获取承运人、托运人待审核数量")
@PostMapping("/userApi/getDriverAndShipperWaitingReviewSum")
public AjaxResult getDriverAndShipperWaitingReviewSum(@RequestBody StatisticalMattersDTO statisticalMattersDTO);
@ApiOperation("获取所有在线司机ID")
@GetMapping("/driverCurrentPositionApi/getOnlineDriver")
public R<List<Long>> getOnlineDriver();
@ApiOperation("查询承运人详情 - 手机")
@GetMapping("/userDriverApi/getDriverInfoByOpen")
public AjaxResult<?> getDriverInfoByOpen(@RequestParam("phone") String phone, @RequestParam("driverEnterpriseCode") String driverEnterpriseCode);
@ApiOperation("根据用户ID查询角色列表")
@GetMapping("/roleApi/getRoleListByUserId/{userId}")
public AjaxResult getRoleListByUserId(@PathVariable("userId") Long userId);
@ApiOperation("锁定用户")
@PostMapping("/userApi/lockUser")
public AjaxResult lockUser(@RequestBody UserDTO userDTO);
@ApiOperation("查询承运企业详情")
@GetMapping("/userDriverApi/getDriverEnterpriseInfoByOpen")
public AjaxResult<?> getDriverEnterpriseInfoByOpen(@RequestParam("driverEnterpriseCode") String driverEnterpriseCode);
@ApiOperation("查询租户下全部托运人")
@GetMapping("/userShipperApi/userShipperListAll")
public AjaxResult<?> userShipperListAll();
@ApiOperation("查询租户下全部承运人")
@GetMapping("/userDriverApi/userDriverListAll")
public AjaxResult<?> userDriverListAll();
/**
* @description 独立司机绑定默认车队同步
* @author ZhouGY
* @date 2024/7/1 19:29
* @param userId
* @return AjaxResult
*/
@GetMapping("/userDriverApi/aloneUserDriverAuth/{userId}")
public AjaxResult aloneUserDriverAuth(@PathVariable("userId") Long userId);
/**
* 根据车队id和用户id查询车队代收协议
* @param motorcadeId
* @param userId
* @return
*/
@GetMapping("/motorcadeCollectionApi/getInfoByMoIdAndUserId")
public AjaxResult getInfoByMoIdAndUserId(@RequestParam("motorcadeId") Long motorcadeId,@RequestParam("userId") Long userId);
}
@@ -0,0 +1,505 @@
package com.mhd.system.api;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.domain.dto.BusinessDocumentDetaliDTO;
import com.mhd.common.core.domain.dto.StaffDataPermissionDTO;
import com.mhd.common.core.domain.dto.wlhy.TmsCloudFreightPaymentDTO;
import com.mhd.common.core.domain.dto.open.OpenVehicleDto;
import com.mhd.common.core.domain.dto.open.WlhyOpenDriverDto;
import com.mhd.common.core.domain.dto.open.WlhyOpenDriverEnterpriseDto;
import com.mhd.common.core.domain.dto.wlhy.*;
import com.mhd.common.core.domain.entity.R;
import com.mhd.common.core.domain.entity.RevenueExpensesRecord;
import com.mhd.common.core.domain.entity.SysConfigSwitch;
import com.mhd.common.core.domain.po.UserPo;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.system.api.domain.*;
import com.mhd.system.api.feign.FeignAutoConfiguration;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Map;
@FeignClient(contextId = "commonWlhyServiceFeign",value = ServiceNameConstants.WLHY_SERVICE,configuration = FeignAutoConfiguration.class)
public interface WlhyServiceFeign {
/**
* 获取网货用户基本信息
* @param sysLoginModel 登录对象
* @return 登录用户基本信息
*/
@PostMapping("/sys/getWlhyUserInfo")
public R<WlhyLoginUser> getWlhyUserInfo(@RequestBody SysLoginModel sysLoginModel);
/**
* @description 根据数字物流的用户ID获取用户信息
* @author ZhouGY
* @date 2023/12/22 13:53
* @param szwlUserId
* @return R<TmsDriver>
*/
@GetMapping(value = "/feign/user/getUserInfoBySzwlUserId/{szwlUserId}")
public R<Long> getUserInfoBySzwlUserId(@PathVariable("szwlUserId") Long szwlUserId);
/**
* @description 新增平台员工基本信息
* @author ZhouGY
* @date 2023/12/21 9:06
* @param platformUserDTO
* @return R<?>
*/
@PostMapping("/feign/user/add")
public R<Boolean> addPlatformUser(@RequestBody PlatformUserDTO platformUserDTO);
/**
* @description 新增平台员工基本信息
* @author ZhouGY
* @date 2023/12/21 9:06
* @param platformUserDTO
* @return R<?>
*/
@PostMapping("/feign/user/registerUser")
public R<Boolean> registerUser(@RequestBody PlatformUserDTO platformUserDTO);
/**
* @description 修改平台员工基本信息
* @author ZhouGY
* @date 2023/12/21 9:06
* @param platformUserDTO
* @return R<?>
*/
@PostMapping("/feign/user/edit")
public R<Boolean> editPlatformUser(@RequestBody PlatformUserDTO platformUserDTO);
/**
* @description 修改手机号
* @author ZhouGY
* @date 2023/12/21 9:06
* @param platformUserDTO
* @return R<?>
*/
@PostMapping("/feign/user/updatePhone")
public R<Boolean> updatePhone(@RequestBody PlatformUserDTO platformUserDTO);
/**
* @description 新增或修改 司机/车队信息
* @author ZhouGY
* @date 2023/12/22 13:53
* @param tmsDriverAddOrUpdateDTO
* @return R<TmsDriver>
*/
@PostMapping(value = "/feign/user/saveOrUpdateCarrierInfo")
public R<Boolean> saveOrUpdateCarrierInfo(@RequestBody TmsDriverAddOrUpdateDTO tmsDriverAddOrUpdateDTO);
/**
* @description 加入车队
* @author ZhouGY
* @date 2023/12/22 13:53
* @param tmsDriverAddOrUpdateDTO
* @return R<TmsDriver>
*/
@PostMapping(value = "/feign/user/addMotorcadeMember")
public R<String> addMotorcadeMember(@RequestBody TmsDriverAddOrUpdateDTO tmsDriverAddOrUpdateDTO);
/**
* @description 离开车队
* @author ZhouGY
* @date 2023/12/22 13:53
* @param tmsDriverAddOrUpdateDTO
* @return R<TmsDriver>
*/
@PostMapping(value = "/feign/user/delMotorcadeMember")
public R<Boolean> delMotorcadeMember(@RequestBody TmsDriverAddOrUpdateDTO tmsDriverAddOrUpdateDTO);
/**
* @description 承运人网货业务设置
*/
@PostMapping(value = "/feign/user/updateDriverBusiness")
public R<Boolean> updateDriverBusiness(@RequestBody TmsDriverAddOrUpdateDTO tmsDriverAddOrUpdateDTO);
/**
* @description 审核 司机/车队信息
* @author ZhouGY
* @date 2023/12/22 13:53
* @param tmsDriverAuditDTO
* @return R<TmsDriver>
*/
@PostMapping(value = "/feign/user/auditDriverOrCarrierInfo")
public R<Boolean> auditDriverOrCarrierInfo(@RequestBody TmsDriverAuditDTO tmsDriverAuditDTO);
/**
* @description 分配平台员工角色
* @author ZhouGY
* @date 2023/12/21 9:06
* @param platformUserDTOList
* @return R<?>
*/
@PostMapping("/feign/user/allocationPlatformUserRole")
public R<Boolean> allocationPlatformUserRole(@RequestBody List<PlatformUserDTO> platformUserDTOList);
/**
* @description 删除平台员工、角色和部门信息
* @author ZhouGY
* @date 2023/12/21 9:06
* @param szwlUserIds
* @return R<?>
*/
@PostMapping("/feign/user/deleteBatchPlatformUser")
public R<Boolean> deleteBatchPlatformUser(@RequestBody List<Long> szwlUserIds);
/**
* 数字物流同步新增货主表
* @param tmsShipperDTO
* @return
*/
@PostMapping("/feign/shipper/szwlAddAndEditShipper")
public AjaxResult szwlAddAndEditShipper(@RequestBody TmsShipperDTO tmsShipperDTO);
/**
* 数字物流同步修改车辆表
* @param tmsVehicleDTO
* @return
*/
@PostMapping("/feign/vehicle/szwlAddVehicle")
public AjaxResult szwlAddVehicle(@RequestBody TmsVehicleDTO tmsVehicleDTO);
/**
* 数字物流同步修改车辆表
* @param tmsVehicleDTO
* @return
*/
@PostMapping("/feign/vehicle/szwlUpdateVehicle")
public AjaxResult szwlUpdateVehicle(@RequestBody TmsVehicleDTO tmsVehicleDTO);
/**
* 开放Api - 同步车辆信息
*
* @param openVehicleDto
* @return
*/
@PostMapping(value = "/openApi/openSzwlSynchronizeVehicle")
public AjaxResult openSzwlSynchronizeVehicle(@RequestBody OpenVehicleDto openVehicleDto);
/**
* 开放Api - 删除车辆信息
*
* @param openVehicleDto
* @return
*/
@PostMapping(value = "/openApi/openDelVehicle")
public AjaxResult openDelVehicle(@RequestBody OpenVehicleDto openVehicleDto);
/**
* 开放Api - 同步司机信息
*
* @param wlhyOpenDriverDto
* @return
*/
@PostMapping(value = "/openApi/openSzwlSynchronizeDriver")
public AjaxResult openSzwlSynchronizeDriver(@RequestBody WlhyOpenDriverDto wlhyOpenDriverDto);
/**
* 开放Api - 同步承运商信息
*
* @param wlhyOpenDriverEnterpriseDto
* @return
*/
@PostMapping(value = "/openApi/openSzwlSynchronizeDriverEnterprise")
public AjaxResult openSzwlSynchronizeDriverEnterprise(@RequestBody WlhyOpenDriverEnterpriseDto wlhyOpenDriverEnterpriseDto);
/**
* 开放Api - 删除承运商/司机
*
* @param wlhyOpenDriverDto
* @return
*/
@PostMapping(value = "/openApi/openDelDriver")
public AjaxResult openDelDriver(@RequestBody WlhyOpenDriverDto wlhyOpenDriverDto);
/**
* @description 删除司机/车队信息 根据数字物流用户id
* @author ZhouGY
* @date 2023/12/22 14:36
* @param szwlIds
* @return R<?>
*/
@PostMapping(value = "/feign/user/deleteCarrierInfo")
public R<Boolean> deleteCarrierInfo(@RequestBody List<Long> szwlIds);
/**
* 数字物流同步修改企业表
* @param taxactionDTO
* @return
*/
@PostMapping("/feign/taxcompany/szwlSyncTaxcompany")
public AjaxResult szwlSyncTaxcompany(@RequestBody TaxactionDTO taxactionDTO);
/**
* @description 司机 绑定车辆
* @author ZhouGY
* @date 2023/12/22 14:03
* @param tmsDriverBinDingDTO
* @return Result<?>
*/
@PostMapping(value = "/feign/user/binding")
public R<Boolean> binding(@RequestBody TmsDriverBinDingDTO tmsDriverBinDingDTO);
/**
* @description 司机 解绑车辆
* @author ZhouGY
* @date 2023/12/22 14:15
* @param tmsDriverBinDingDTO
* @return Result<?>
*/
@PostMapping(value = "/feign/user/untying")
public R<Boolean> untying(@RequestBody TmsDriverBinDingDTO tmsDriverBinDingDTO);
@GetMapping(value = "/feign/transportNote/getAllTransportNote")
public R<List<Long>> getAllTransportNote();
@PostMapping(value = "/feign/user/synTemplateSeal")
public R<Boolean> synTemplateSeal(@RequestBody UserPo userPo);
/**
* 新增/修改 银行卡
* @param tmsBankCardDTO
* @return
*/
@PostMapping("/feign/bankCard/szwlSyncBankCard")
public AjaxResult szwlSyncBankCard(@RequestBody TmsBankCardDTO tmsBankCardDTO);
/**
* 删除银行卡
* @param tmsBankCardDTO
* @return
*/
@PostMapping("/feign/bankCard/szwlDeleteBankCard")
public AjaxResult szwlDeleteBankCard(TmsBankCardDTO tmsBankCardDTO);
/**
* 托运人设置月结状态
* @param tmsShipperDTO
* @return
*/
@PostMapping("/feign/shipper/updateMonthlySettlementFlag")
public AjaxResult updateMonthlySettlementFlag(@RequestBody TmsShipperDTO tmsShipperDTO);
/**
* 根据运单号查询运单信息
* @param orderNo
* @return
*/
@GetMapping(value = "/feign/transportNote/selectByOrderNum")
public R<TmsTransportNote> selectByOrderNum(@RequestParam(value = "orderNo") String orderNo);
/**
* 运输单表-支付回调
* @param tmsPayCallbackList
* @return
*/
@PostMapping("/feign/transportNote/payCallback")
public AjaxResult payCallback(@RequestBody List<TmsPayCallbackDTO> tmsPayCallbackList);
/**
* 运输单表-开票回调
* @param tmsTransportNoteList
* @return
*/
@PostMapping("/feign/transportNote/updateBillingStatus")
public AjaxResult updateBillingStatus(@RequestBody List<TmsTransportNote> tmsTransportNoteList);
/**
* 运输单表-支付回调货主使用
* @param tmsPayCallbackList
* @return
*/
@PostMapping("/feign/transportNote/payCallbackShipper")
public AjaxResult payCallbackShipper(@RequestBody List<TmsPayCallbackDTO> tmsPayCallbackList);
/**
* 运输单表-支付回调
* @param tmsPayCallbackList
* @return
*/
@PostMapping("/feign/transportNote/auditCallback")
public AjaxResult auditCallback(@RequestBody List<TmsPayCallbackDTO> tmsPayCallbackList);
/**
* 运输单表-拒绝支付运费
* @param tmsPayCallbackList
* @return
*/
@PostMapping("/feign/transportNote/refuseApplication")
public AjaxResult refuseApplication(@RequestBody List<TmsPayCallbackDTO> tmsPayCallbackList);
/**
* 批量设置员工数据权限
* @param staffDataPermissionDTO
* @return
*/
@PostMapping("/feign/user/batchStaffPermission")
R<?> batchStaffPermission(@RequestBody StaffDataPermissionDTO staffDataPermissionDTO);
/**
* @description 获取当前登录人绑定的车辆
*/
@GetMapping(value = "/feign/user/getVehicleLicenseNumberBylogin")
public R<String> getVehicleLicenseNumberBylogin();
/**
* @description 获取当前登录人已装货未卸货的运单根据时间排序取最新的一条
*/
@GetMapping(value = "/feign/transportNote/selectByDriverId")
public R<String> selectByDriverId();
/**
* @description 删除货主
* @author ZhouGY
* @date 2024/3/5 14:58
* @param szwlIds
* @return R<Boolean>
*/
@PostMapping(value = "/feign/shipper/deleteShipperInfo")
public R<Boolean> deleteShipperInfo(@RequestBody List<Long> szwlIds);
/**
* @description 同步注销用户
* @author ZhouGY
* @date 2024/3/7 11:36
* @return R<Boolean>
*/
@GetMapping(value = "/feign/user/cancellationUser")
public R<Boolean> cancellationUser();
@PostMapping("/pushNowOffLine")
public R<Boolean> pushNowOffLine(@RequestBody List<Long> userSzwlId);
@PostMapping(value = "/feign/user/signAgreement")
public R<String> signAgreement(@RequestBody TmsCollectionAgentWlhyDTO tmsCollectionAgentWlhyDTO);
/**
* 人脸认证通过后同步认证状态
* @param userId
* @return
*/
@PostMapping(value = "/feign/user/syncAuthStauts")
public R<Boolean> syncAuthStauts(@RequestBody Long userId);
/**
* @description 解散车队
* @author ZhouGY
* @date 2023/12/22 13:53
* @param tmsDriverAddOrUpdateDTO
* @return R<TmsDriver>
*/
@PostMapping(value = "/feign/user/delMotorcade")
public R<Boolean> delMotorcade(@RequestBody TmsDriverAddOrUpdateDTO tmsDriverAddOrUpdateDTO);
@PostMapping("/feign/user/changePhone")
public R<Boolean> changePhone(@RequestBody PlatformUserDTO platformUserDTO);
@GetMapping("/feign/configSwitch/getConfigByLogin")
public R<SysConfigSwitch> getConfigByLogin();
/**
* @description 车队移除司机
* @author ZhouGY
* @date 2023/12/22 13:53
* @param tmsDriverAddOrUpdateDTO
* @return R<TmsDriver>
*/
@PostMapping(value = "/feign/user/motorcadeRemoveDriver")
public R<Boolean> motorcadeRemoveDriver(@RequestBody TmsDriverAddOrUpdateDTO tmsDriverAddOrUpdateDTO);
@PostMapping(value = "/feign/user/deleteUserByUserPo")
R<Boolean> deleteUserByUserPo(UserPo userPo);
@PostMapping(value = "/feign/transportNote/countTransportnoteBySzwlUserIdList")
R<Map<Long, Integer>> countTransportnoteBySzwlUserIdList(@RequestBody List<Long> userIdList);
/**
* 根据运单查询该运单货源下所有的运单号
*/
@GetMapping("/feign/transportNote/getTmsTransportNoteAllByNumber/{transportationNumber}")
public AjaxResult getTmsTransportNoteAllByNumber(@PathVariable("transportationNumber") String transportationNumber);
/**
* 同步tms调度单运费支付
*/
@PostMapping("/feign/transportNote/syncTmsDispatch")
public AjaxResult syncTmsDispatch(@RequestBody List<TmsCloudFreightPaymentDTO> tmsCloudFreightPaymentDTOList);
/**
* 新增发运通知
*/
@PostMapping("/feign/dispatchAdvice/save")
public AjaxResult saveDispatchAdvice(@RequestBody List<DispatchAdviceFeign> dispatchAdviceFeignList);
/**
* 根据单号,查询主单信息,及主单下子单列表
*/
@GetMapping("/feign/transportNote/selectMainOrderByOrderNum")
public AjaxResult selectMainOrderByOrderNum(@RequestParam(value = "waybillNumber") String waybillNumber);
@PostMapping(value = "/openApi/syncBusinessDocumentInfo")
public AjaxResult syncBusinessDocumentInfo(@RequestBody List<BusinessDocumentDetaliDTO> businessDocumentDetaliDtoList);
/**
* 修改货主授信使用额度
* @param tmsShipperDTO
* @return
*/
@PostMapping("/feign/shipper/modifyAvailableCreditLimit")
public AjaxResult modifyAvailableCreditLimit(@RequestBody TmsShipperDTO tmsShipperDTO);
/**
* 修改车辆维修工时费支付状态
* @param editPaymentStatusDTO
* @return
*/
@PostMapping("/feign/tmsVehicleMaintain/editPaymentStatus")
public AjaxResult editPaymentStatus(@RequestBody EditPaymentStatusDTO editPaymentStatusDTO);
/**
* 查询应付单据生成科目--上报记录费用信息
* @param businessCocumentId
* @return
*/
@GetMapping("feign/finaceApi/getZyclClhsSecondSubjectList/{businessCocumentId}")
public R<List<SecondSubjectPO>> getZyclClhsSecondSubjectList(@PathVariable("businessCocumentId") String businessCocumentId);
/**
* 查询现金运费明细
* @param businessCocumentId
* @return
*/
@GetMapping("feign/finaceApi/getZyclXjhjSecondSubjectList/{businessCocumentId}")
public R<List<SecondSubjectPO>> getZyclXjhjSecondSubjectList(@PathVariable("businessCocumentId") String businessCocumentId);
/**
* 车辆核算现金、油卡抵扣 生成还款记录&处理借款金额
* @param revenueExpensesRecordDTO
* @return
*/
@PostMapping("feign/finaceApi/handleDriverLoanInfo")
public R<Boolean> handleDriverLoanInfo(@RequestBody RevenueExpensesRecordDTO revenueExpensesRecordDTO);
@PostMapping("feign/finaceApi/updatePaymentStatusByBusinessDocumentId")
public R<Boolean> updatePaymentStatusByBusinessDocumentId(@RequestBody List<UpdatePaymentStatusDTO> updatePaymentStatusList);
@GetMapping(value = "/feign/shipper/queryBySzwlUserId")
public R<TmsShipper> queryBySzwlUserId(@RequestParam(name="szwlUserId")Long szwlUserId);
@PostMapping("feign/finaceApi/deleteBusinessDocumentDetail")
public R<Boolean> deleteBusinessDocumentDetail(@RequestBody BusinessDocumentDetaliDTO businessDocumentDetaliDTO);
}
@@ -0,0 +1,60 @@
package com.mhd.system.api;
import com.mhd.common.core.constant.ServiceNameConstants;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.system.api.domain.MaterialBaseInfoFeign;
import com.mhd.system.api.domain.NoticeOrderDTO;
import com.mhd.system.api.factory.RemoteTicketFeignFallbackFactory;
import com.mhd.system.api.feign.FeignAutoConfiguration;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
/**
* @author ZhouGY
* @title WmsServiceFeign
* @description: TODO
* @date 2024/5/10 8:58
**/
@FeignClient(contextId = "remoteWmsServiceFeign", value = ServiceNameConstants.WMS_SERVICE, fallbackFactory = RemoteTicketFeignFallbackFactory.class, configuration = FeignAutoConfiguration.class)
public interface WmsServiceFeign {
/**
* @description 同步物料信息
* @author ZhouGY
* @date 2024/7/24 11:22
* @param materialBaseInfoFeign
* @return AjaxResult
*/
@PostMapping("/materialBaseInfoApi/edit")
public AjaxResult edit(@RequestBody MaterialBaseInfoFeign materialBaseInfoFeign);
/**
* @description 删除物料信息
* @author ZhouGY
* @date 2024/7/24 11:22
* @param materialBaseInfoIds
* @return AjaxResult
*/
@DeleteMapping("/materialBaseInfoApi/deleteByIds/{materialBaseInfoIds}")
public AjaxResult deleteByIds(@PathVariable("materialBaseInfoIds") Long[] materialBaseInfoIds);
/**
* @description 根据物料基础信息id 获取批次属性信息
* @author ZhouGY
* @date 2024/7/24 11:21
* @param materialBaseInfoId
* @return AjaxResult
*/
@GetMapping("/materialGoodsRuleApi/getInfoByMaterialBaseInfoIds/{materialBaseInfoId}")
public AjaxResult getInfoByMaterialBaseInfoIds(@PathVariable("materialBaseInfoId") Long materialBaseInfoId);
/**
* 入库单/出库单新增,供其他系统调用
* @param noticeOrderDTO
* @return
*/
@PostMapping("/noticeOrderApi/insert")
public AjaxResult stockOutOrInInsert(@RequestBody NoticeOrderDTO noticeOrderDTO);
}
@@ -0,0 +1,65 @@
package com.mhd.system.api.domain;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* 批次管理详情对象 batch_detail
*
* @author gen
* @date 2024-05-07
*/
@EqualsAndHashCode(callSuper = true)
@Data
@ApiModel(value = "批次管理详情对象", description = "批次管理详情响应对象")
public class BatchDetailFeignPO 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;
}
@@ -0,0 +1,61 @@
package com.mhd.system.api.domain;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.List;
/**
* 批次管理对象 batch
*
* @author gen
* @date 2024-05-07
*/
@EqualsAndHashCode(callSuper = true)
@Data
public class BatchFeignPO 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;
}
@@ -0,0 +1,89 @@
package com.mhd.system.api.domain;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* 容器管理对象 container
*
* @author gen
* @date 2024-05-07
*/
@Data
@ApiModel(value = "容器管理对象", description = "容器管理响应对象")
public class ContainerFeignPO 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;
}
@@ -0,0 +1,86 @@
package com.mhd.system.api.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
* @Description: 发运通知表
* @Author: Alex
* @Date: 2024-09-03 09:24:24
* @Version: V1.0
*/
@Data
public class DispatchAdviceFeign implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "创建人")
private String createBy;
@ApiModelProperty(value = "创建日期")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date createTime;
@ApiModelProperty(value = "更新人")
private String updateBy;
@ApiModelProperty(value = "更新日期")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date updateTime;
@ApiModelProperty("删除标记")
private Integer isDelete;
@ApiModelProperty(value = "所属部门")
private String sysOrgCode;
@ApiModelProperty(value = "组织表ID")
private Long organizationId;
@ApiModelProperty(value = "组织名称")
private String organizationName;
@ApiModelProperty(value = "一级组织表ID")
private Long topOrganizationId;
@ApiModelProperty(value = "通知单号")
private String noticeNumber;
@ApiModelProperty(value = "预约用车时间")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date reservationTime;
@ApiModelProperty(value = "来源系统")
private String orderSource;
@ApiModelProperty(value = "来源单号")
private String orderNumber;
@ApiModelProperty(value = "货物信息")
private String goodsInfo;
@ApiModelProperty(value = "货物种类")
private Integer goodsCategory;
@ApiModelProperty(value = "货物件数")
private Integer goodsNumber;
@ApiModelProperty(value = "货物数量")
private BigDecimal goodsQuantity;
@ApiModelProperty(value = "通知状态:1-未确认 2-已确认 3-已取消 4-已作废")
private Integer status;
@ApiModelProperty(value = "货主id")
private Long shipperId;
@ApiModelProperty(value = "货主code")
private String shipperCode;
@ApiModelProperty(value = "货主名称")
private String shipperName;
@ApiModelProperty(value = "运距(千米)")
private BigDecimal haulDistance;
@ApiModelProperty(value = "装货地县区编码")
private String loadingAreaId;
@ApiModelProperty(value = "装货地名称")
private String loadingName;
@ApiModelProperty(value = "装货地详细地址")
private String loadingAddress;
@ApiModelProperty(value = "卸货地县区编码")
private String unloadAreaId;
@ApiModelProperty(value = "卸货地名称")
private String unloadName;
@ApiModelProperty(value = "卸货地详细地址")
private String unloadAddress;
@ApiModelProperty(value = "备注")
private String remark;
}
@@ -0,0 +1,28 @@
package com.mhd.system.api.domain;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @author ZhouGY
* @title MallOAuthLogin
* @description: TODO
* @date 2024/4/13 16:15
**/
@NoArgsConstructor
@Data
public class MallOAuthLogin implements Serializable {
private static final long serialVersionUID = 1L;
private String username;
private String password;
private String grant_type;
private String scope;
}
@@ -0,0 +1,37 @@
package com.mhd.system.api.domain;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.List;
/**
* @author ZhouGY
* @title MallOAuthTokenInfo
* @description: TODO
* @date 2024/4/13 16:10
**/
@NoArgsConstructor
@Data
public class MallOAuthToken implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 商城PC access_token
*/
private String access_token;
private String token_type;
private String refresh_token;
private Integer expires_in;
private String scope;
private String tenant_id;
private String shop_id;
private String license;
private String user_id;
private List<?> tenant_ids;
private String type;
private String username;
private String organ_id;
}
@@ -0,0 +1,79 @@
package com.mhd.system.api.domain;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.List;
/**
* 物料条码信息对象 material_bar_code
*
* @author gen
* @date 2024-05-07
*/
@EqualsAndHashCode(callSuper = true)
@Data
public class MaterialBarCodeFeign extends BaseVOEntity{
private static final long serialVersionUID = 1L;
@ApiModelProperty("商品规则id")
private Long materialBarCodeId;
@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 materialBaseInfoId;
@ApiModelProperty("条码")
@Excel(name = "条码")
private String barCode;
@ApiModelProperty("包装id")
@Excel(name = "包装id")
private Long packId;
@ApiModelProperty("包装编码")
@Excel(name = "包装编码")
private String packCode;
@ApiModelProperty("包装名称")
@Excel(name = "包装名称")
private String packName;
@ApiModelProperty("包装详情id")
@Excel(name = "包装详情id")
private Long packDetailId;
@ApiModelProperty("单位代码:EA IP CS PL OT")
@Excel(name = "单位代码:EA IP CS PL OT")
private String unitCode;
@ApiModelProperty("名称")
@Excel(name = "名称")
private String name;
@ApiModelProperty("备注")
@Excel(name = "备注")
private String remark;
@ApiModelProperty(name = "组织ID集合")
private List<Long> organizationIdList;
@ApiModelProperty(name = "权限菜单ID")
private Long permissionMenuId;
}
@@ -0,0 +1,185 @@
package com.mhd.system.api.domain;
import com.baomidou.mybatisplus.annotation.TableField;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.handler.ListTypeHandler;
import lombok.Data;
import java.math.BigDecimal;
import io.swagger.annotations.ApiModelProperty;
import com.mhd.common.core.web.domain.BaseVOEntity;
import lombok.EqualsAndHashCode;
import java.util.List;
/**
* 物料基础信息对象 material_base_info
*
* @author gen
* @date 2024-05-07
*/
@EqualsAndHashCode(callSuper = true)
@Data
public class MaterialBaseInfoFeign extends BaseVOEntity{
private static final long serialVersionUID = 1L;
@ApiModelProperty("物料基础信息id")
private Long materialBaseInfoId;
@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 materialCode;
@ApiModelProperty("物料名称")
@Excel(name = "物料名称")
private String materialName;
@ApiModelProperty("物料条形码")
@Excel(name = "物料条形码")
private String barCode;
@ApiModelProperty("物料分类编码")
@Excel(name = "物料分类编码")
@TableField(typeHandler = ListTypeHandler.class)
private List<String> materialClassifyCode;
@ApiModelProperty("物料分类名称")
@Excel(name = "物料分类名称")
@TableField(typeHandler = ListTypeHandler.class)
private List<String> materialClassifyName;
@ApiModelProperty("物料种类编码 数据字典")
@Excel(name = "物料种类编码 数据字典")
private String materialType;
@ApiModelProperty("物料种类名称 数据字典")
@Excel(name = "物料种类名称 数据字典")
private String materialTypeName;
@ApiModelProperty("包装规格id")
@Excel(name = "包装规格id")
private Long packId;
@ApiModelProperty("包装规格编码")
@Excel(name = "包装规格编码")
private String packCode;
@ApiModelProperty("包装规格名称")
@Excel(name = "包装规格名称")
private String packName;
@ApiModelProperty("包装单位编码")
@Excel(name = "包装单位编码")
private String unitCode;
@ApiModelProperty("包装单位名称")
@Excel(name = "包装单位名称")
private String unitName;
@ApiModelProperty("品牌id")
@Excel(name = "品牌id")
private Long brandId;
@ApiModelProperty("品牌编码")
@Excel(name = "品牌编码")
private String brandCode;
@ApiModelProperty("品牌名称")
@Excel(name = "品牌名称")
private String brandName;
@ApiModelProperty("保质期 单位:天")
@Excel(name = "保质期 单位:天")
private Long shelfLife;
@ApiModelProperty("净重 单位:千克")
@Excel(name = "净重 单位:千克")
private BigDecimal weightLimit;
@ApiModelProperty("体积 单位:立方米")
@Excel(name = "体积 单位:立方米")
private BigDecimal volumeLimit;
@ApiModelProperty("商品形态编码 数据字典")
@Excel(name = "商品形态编码 数据字典")
private String materialShape;
@ApiModelProperty("商品形态名称 数据字典")
@Excel(name = "商品形态名称 数据字典")
private String materialShapeName;
@ApiModelProperty("物料大小 长*宽*高 单位:米")
@Excel(name = "物料大小 长*宽*高 单位:米")
private String materialSize;
@ApiModelProperty("物料大小-长 单位:米")
@Excel(name = "物料大小-长 单位:米")
private BigDecimal materialLength;
@ApiModelProperty("物料大小-宽 单位:米")
@Excel(name = "物料大小-宽 单位:米")
private BigDecimal materialWidth;
@ApiModelProperty("物料大小-高 单位:米")
@Excel(name = "物料大小-高 单位:米")
private BigDecimal materialHeight;
@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;
@ApiModelProperty("商品规则")
private MaterialGoodsRuleFeign materialGoodsRule;
@ApiModelProperty("公共信息")
private MaterialCommonFeign materialCommon;
@ApiModelProperty("仓库控制信息")
private MaterialWarehouseControlFeign materialWarehouseControl;
@ApiModelProperty("库存预警信息")
private List<MaterialInventoryWarningFeign> materialInventoryWarningList;
@ApiModelProperty("条码信息")
private List<MaterialBarCodeFeign> materialBarCodeList;
@ApiModelProperty("feign 是否是修改: 1-是 2-否")
private Integer updateFeign;
@ApiModelProperty("是否公用: 1-是 2-否")
@Excel(name = "是否公用: 1-是 2-否")
private Integer common;
}
@@ -0,0 +1,104 @@
package com.mhd.system.api.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
/**
* 物料公共信息对象 material_common
*
* @author gen
* @date 2024-05-07
*/
@EqualsAndHashCode(callSuper = true)
@Data
public class MaterialCommonFeign extends BaseVOEntity{
private static final long serialVersionUID = 1L;
@ApiModelProperty("商品规则id")
private Long materialCommonId;
@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 materialBaseInfoId;
@ApiModelProperty("是否温控: 1-否 2-是")
@Excel(name = "是否温控: 1-否 2-是")
private Integer temperatureControl;
@ApiModelProperty("最低温度")
@Excel(name = "最低温度")
private BigDecimal minTemperature;
@ApiModelProperty("最高温度")
@Excel(name = "最高温度")
private BigDecimal maxTemperature;
@ApiModelProperty("商品温层编码")
@Excel(name = "商品温层编码")
private String warmLayer;
@ApiModelProperty("商品温层名称")
@Excel(name = "商品温层名称")
private String warmLayerName;
@ApiModelProperty("闪点")
@Excel(name = "闪点")
private String flashPoint;
@ApiModelProperty("燃点")
@Excel(name = "燃点")
private String ignitionPoint;
@ApiModelProperty("是否危险品: 1-否 2-是")
@Excel(name = "是否危险品: 1-否 2-是")
private Integer dangerGoods;
@ApiModelProperty("危险品等级编码")
@Excel(name = "危险品等级编码")
private String dangerLevel;
@ApiModelProperty("危险品等级名称")
@Excel(name = "危险品等级名称")
private String dangerLevelName;
@ApiModelProperty("生产日期")
@JsonFormat(pattern = "yyyy-MM-dd")
@Excel(name = "生产日期", width = 30, dateFormat = "yyyy-MM-dd")
private Date productionTime;
@ApiModelProperty("失效日期")
@JsonFormat(pattern = "yyyy-MM-dd")
@Excel(name = "失效日期", width = 30, dateFormat = "yyyy-MM-dd")
private Date expirationTime;
@ApiModelProperty("备注")
@Excel(name = "备注")
private String remark;
@ApiModelProperty(name = "组织ID集合")
private List<Long> organizationIdList;
@ApiModelProperty(name = "权限菜单ID")
private Long permissionMenuId;
}
@@ -0,0 +1,134 @@
package com.mhd.system.api.domain;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
import java.util.List;
/**
* @author ZhouGY
* @title MaterialGoodsRulePO
* @description: TODO
* @date 2024/7/21 15:59
**/
@EqualsAndHashCode(callSuper = true)
@Data
public class MaterialGoodsRuleFeign extends BaseVOEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty("商品规则id")
private Long materialGoodsRuleId;
@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 materialBaseInfoId;
@ApiModelProperty("批次id")
@Excel(name = "批次id")
private Long batchId;
@ApiModelProperty("批次编码")
@Excel(name = "批次编码")
private String batchCode;
@ApiModelProperty("批次名称")
@Excel(name = "批次名称")
private String batchName;
@ApiModelProperty("上架库区id")
@Excel(name = "上架库区id")
private Long storageSectionId;
@ApiModelProperty("上架库区编码")
@Excel(name = "上架库区编码")
private String storageCode;
@ApiModelProperty("上架库区名称")
@Excel(name = "上架库区名称")
private String storageName;
@ApiModelProperty("上架库位id")
@Excel(name = "上架库位id")
private Long storageLocationId;
@ApiModelProperty("上架库位编码")
@Excel(name = "上架库位编码")
private String storageLocationCode;
@ApiModelProperty("上架库位名称")
@Excel(name = "上架库位名称")
private String storageLocationName;
@ApiModelProperty("上架规则id")
@Excel(name = "上架规则id")
private Long ruleId;
@ApiModelProperty("上架规则编码")
@Excel(name = "上架规则编码")
private String ruleCode;
@ApiModelProperty("上架规则名称")
@Excel(name = "上架规则名称")
private String ruleName;
@ApiModelProperty("上架库位指定规则id")
@Excel(name = "上架库位指定规则id")
private Long specifyRuleId;
@ApiModelProperty("上架库位指定规则编码")
@Excel(name = "上架库位指定规则编码")
private String specifyRuleCode;
@ApiModelProperty("上架库位指定规则名称")
@Excel(name = "上架库位指定规则名称")
private String specifyRuleName;
@ApiModelProperty("周转规则id")
@Excel(name = "周转规则id")
private Long turnoverRuleId;
@ApiModelProperty("周转规则编码")
@Excel(name = "周转规则编码")
private String turnoverRuleCode;
@ApiModelProperty("周转规则名称")
@Excel(name = "周转规则名称")
private String turnoverRuleName;
@ApiModelProperty("分配规则id")
@Excel(name = "分配规则id")
private Long distributeRuleId;
@ApiModelProperty("分配规则编码")
@Excel(name = "分配规则编码")
private String distributeRuleCode;
@ApiModelProperty("分配规则名称")
@Excel(name = "分配规则名称")
private String distributeRuleName;
@ApiModelProperty("备注")
@Excel(name = "备注")
private String remark;
@ApiModelProperty(name = "组织ID集合")
private List<Long> organizationIdList;
@ApiModelProperty(name = "权限菜单ID")
private Long permissionMenuId;
}
@@ -0,0 +1,120 @@
package com.mhd.system.api.domain;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
import java.util.List;
/**
* 物料库存预警对象 material_inventory_warning
*
* @author gen
* @date 2024-05-07
*/
@EqualsAndHashCode(callSuper = true)
@Data
public class MaterialInventoryWarningFeign extends BaseVOEntity{
private static final long serialVersionUID = 1L;
@ApiModelProperty("商品规则id")
private Long materialInventoryWarningId;
@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 materialBaseInfoId;
@ApiModelProperty("仓库id")
@Excel(name = "仓库id")
private Long warehouseId;
@ApiModelProperty("仓库编码")
@Excel(name = "仓库编码")
private String warehouseCode;
@ApiModelProperty("仓库名称")
@Excel(name = "仓库名称")
private String warehouseName;
@ApiModelProperty("库区id")
@Excel(name = "库区id")
private Long storageSectionId;
@ApiModelProperty("库区编码")
@Excel(name = "库区编码")
private String storageCode;
@ApiModelProperty("库区名称")
@Excel(name = "库区名称")
private String storageName;
@ApiModelProperty("库位id")
@Excel(name = "库位id")
private Long storageLocationId;
@ApiModelProperty("库位编码")
@Excel(name = "库位编码")
private String storageLocationCode;
@ApiModelProperty("库位名称")
@Excel(name = "库位名称")
private String storageLocationName;
@ApiModelProperty("库位下限")
@Excel(name = "库位下限")
private BigDecimal minTemperature;
@ApiModelProperty("库位上限")
@Excel(name = "库位上限")
private BigDecimal maxTemperature;
@ApiModelProperty("包装id")
@Excel(name = "包装id")
private Long packId;
@ApiModelProperty("包装编码")
@Excel(name = "包装编码")
private String packCode;
@ApiModelProperty("包装名称")
@Excel(name = "包装名称")
private String packName;
@ApiModelProperty("包装详情id")
@Excel(name = "包装详情id")
private Long packDetailId;
@ApiModelProperty("单位代码:EA IP CS PL OT")
@Excel(name = "单位代码:EA IP CS PL OT")
private String unitCode;
@ApiModelProperty("名称")
@Excel(name = "名称")
private String name;
@ApiModelProperty("备注")
@Excel(name = "备注")
private String remark;
@ApiModelProperty(name = "组织ID集合")
private List<Long> organizationIdList;
@ApiModelProperty(name = "权限菜单ID")
private Long permissionMenuId;
}
@@ -0,0 +1,100 @@
package com.mhd.system.api.domain;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
import java.util.List;
/**
* 仓库控制信息对象 material_warehouse_control
*
* @author gen
* @date 2024-05-07
*/
@EqualsAndHashCode(callSuper = true)
@Data
public class MaterialWarehouseControlFeign extends BaseVOEntity{
private static final long serialVersionUID = 1L;
@ApiModelProperty("商品规则id")
private Long materialWarehouseControlId;
@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 materialBaseInfoId;
@ApiModelProperty("是否效期控制: 1-否 2-是")
@Excel(name = "是否效期控制: 1-否 2-是")
private Integer temperatureControl;
@ApiModelProperty("周期类型: 1-生产日期 2-失效日期")
@Excel(name = "周期类型: 1-生产日期 2-失效日期")
private Integer cycleType;
@ApiModelProperty("入库效期 单位:天")
@Excel(name = "入库效期 单位:天")
private Integer inValidityPeriod;
@ApiModelProperty("入库效期 单位:天")
@Excel(name = "入库效期 单位:天")
private Integer outValidityPeriod;
@ApiModelProperty("是否允许超收: 1-否 2-是")
@Excel(name = "是否允许超收: 1-否 2-是")
private Integer allowOvercharge;
@ApiModelProperty("超收比例")
@Excel(name = "超收比例")
private BigDecimal overchargeRatio;
@ApiModelProperty("ABC分类:A-A类 B-B类 C-C类")
@Excel(name = "ABC分类:A-A类 B-B类 C-C类")
private String classify;
@ApiModelProperty("是否序列号管理: 1-否 2-是")
@Excel(name = "是否序列号管理: 1-否 2-是")
private Integer serialNumberManage;
@ApiModelProperty("是否质检管理: 1-否 2-是")
@Excel(name = "是否质检管理: 1-否 2-是")
private Integer qualityInspectionManage;
@ApiModelProperty("质检阶段: 1-收货前 2-收货后上架前")
@Excel(name = "质检阶段: 1-收货前 2-收货后上架前")
private Integer qualityInspectionStage;
@ApiModelProperty("质检规则: 1-全检 2-抽检 ")
@Excel(name = "质检规则: 1-全检 2-抽检 ")
private Integer qualityInspectionRule;
@ApiModelProperty("质检项: 1-包装 2-纯度")
@Excel(name = "质检项: 1-包装 2-纯度")
private Integer qualityInspectionTerm;
@ApiModelProperty("备注")
@Excel(name = "备注")
private String remark;
@ApiModelProperty(name = "组织ID集合")
private List<Long> organizationIdList;
@ApiModelProperty(name = "权限菜单ID")
private Long permissionMenuId;
}
@@ -0,0 +1,147 @@
package com.mhd.system.api.domain;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
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;
import java.util.List;
/**
* 物料明细对象 notice_material_detail
*
* @author gen
* @date 2024-06-17
*/
@Data
public class NoticeMaterialDetailDO extends BaseVOEntity{
private static final long serialVersionUID = 1L;
@ApiModelProperty("订单物料明细id")
private Long noticeMaterialDetailId;
@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")
@JsonSerialize(using = ToStringSerializer.class)
private Long uniqueId;
@ApiModelProperty("通知单号")
@Excel(name = "通知单号")
private String noticeNumber;
@ApiModelProperty("物料基础信息id")
@Excel(name = "物料基础信息id")
private Long materialBaseInfoId;
@ApiModelProperty("物料编码")
@Excel(name = "物料编码")
private String materialCode;
@ApiModelProperty("物料名称")
@Excel(name = "物料名称")
private String materialName;
@ApiModelProperty("物料条形码")
@Excel(name = "物料条形码")
private String barCode;
@ApiModelProperty("计划数量")
@Excel(name = "计划数量")
private BigDecimal quantity;
@ApiModelProperty("包装规格id")
@Excel(name = "包装规格id")
private Long packId;
@ApiModelProperty("包装规格编码")
@Excel(name = "包装规格编码")
private String packCode;
@ApiModelProperty("包装规格名称")
@Excel(name = "包装规格名称")
private String packName;
@ApiModelProperty("包装详情id")
@Excel(name = "包装详情id")
private Long packDetailId;
@ApiModelProperty("单位代码:EA IP CS PL OT")
@Excel(name = "单位代码:EA IP CS PL OT")
private String unitCode;
@ApiModelProperty("单位名称")
@Excel(name = "单位名称")
private String unitName;
@ApiModelProperty("单位数量")
@Excel(name = "单位数量")
private BigDecimal unitNumber;
@ApiModelProperty("物料仓库控制信息id")
@Excel(name = "物料仓库控制信息id")
private Long materialWarehouseControlId;
@ApiModelProperty("是否序列号管理: 1-是 2-否")
@Excel(name = "是否序列号管理: 1-是 2-否")
private Integer serialNumberManage;
@ApiModelProperty("是否质检管理: 1-是 2-否")
@Excel(name = "是否质检管理: 1-是 2-否")
private Integer qualityInspectionManage;
@ApiModelProperty("质检阶段: 1-收货前 2-收货后上架前")
@Excel(name = "质检阶段: 1-收货前 2-收货后上架前")
private Integer qualityInspectionStage;
@ApiModelProperty("质检规则: 1-目检 2-抽检")
@Excel(name = "质检规则: 1-目检 2-抽检")
private Integer qualityInspectionRule;
@ApiModelProperty("抽检比例")
@Excel(name = "抽检比例")
private BigDecimal qualityInspectionRatio;
@ApiModelProperty("质检项: 1-包装 2-纯度")
@Excel(name = "质检项: 1-包装 2-纯度")
private Integer qualityInspectionTerm;
@ApiModelProperty("质检结果: 1-正常 2-异常")
@Excel(name = "质检结果: 1-正常 2-异常")
private Integer qualityInspectionResults;
@ApiModelProperty("是否允许超收: 1-是 2-否")
@Excel(name = "是否允许超收: 1-是 2-否")
private Integer allowOvercharge;
@ApiModelProperty("超收比例")
@Excel(name = "超收比例")
private BigDecimal overchargeRatio;
@ApiModelProperty("备注")
@Excel(name = "备注")
private String remark;
@ApiModelProperty(name = "组织ID集合")
private List<Long> organizationIdList;
@ApiModelProperty(name = "权限菜单ID")
private Long permissionMenuId;
}
@@ -0,0 +1,146 @@
package com.mhd.system.api.domain;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
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;
import java.util.List;
/**
* 物料明细对象 notice_material_detail
*
* @author gen
* @date 2024-06-17
*/
@Data
public class NoticeMaterialDetailDTO extends BaseVOEntity{
private static final long serialVersionUID = 1L;
@ApiModelProperty("订单物料明细id")
private Long noticeMaterialDetailId;
@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")
@JsonSerialize(using = ToStringSerializer.class)
private Long uniqueId;
@ApiModelProperty("通知单号")
@Excel(name = "通知单号")
private String noticeNumber;
@ApiModelProperty("物料基础信息id")
@Excel(name = "物料基础信息id")
private Long materialBaseInfoId;
@ApiModelProperty("物料编码")
@Excel(name = "物料编码")
private String materialCode;
@ApiModelProperty("物料名称")
@Excel(name = "物料名称")
private String materialName;
@ApiModelProperty("物料条形码")
@Excel(name = "物料条形码")
private String barCode;
@ApiModelProperty("计划数量")
@Excel(name = "计划数量")
private BigDecimal quantity;
@ApiModelProperty("包装规格id")
@Excel(name = "包装规格id")
private Long packId;
@ApiModelProperty("包装规格编码")
@Excel(name = "包装规格编码")
private String packCode;
@ApiModelProperty("包装规格名称")
@Excel(name = "包装规格名称")
private String packName;
@ApiModelProperty("包装详情id")
@Excel(name = "包装详情id")
private Long packDetailId;
@ApiModelProperty("单位代码:EA IP CS PL OT")
@Excel(name = "单位代码:EA IP CS PL OT")
private String unitCode;
@ApiModelProperty("单位名称")
@Excel(name = "单位名称")
private String unitName;
@ApiModelProperty("单位数量")
@Excel(name = "单位数量")
private BigDecimal unitNumber;
@ApiModelProperty("物料仓库控制信息id")
@Excel(name = "物料仓库控制信息id")
private Long materialWarehouseControlId;
@ApiModelProperty("是否序列号管理: 1-是 2-否")
@Excel(name = "是否序列号管理: 1-是 2-否")
private Integer serialNumberManage;
@ApiModelProperty("是否质检管理: 1-是 2-否")
@Excel(name = "是否质检管理: 1-是 2-否")
private Integer qualityInspectionManage;
@ApiModelProperty("质检阶段: 1-收货前 2-收货后上架前")
@Excel(name = "质检阶段: 1-收货前 2-收货后上架前")
private Integer qualityInspectionStage;
@ApiModelProperty("质检规则: 1-目检 2-抽检")
@Excel(name = "质检规则: 1-目检 2-抽检")
private Integer qualityInspectionRule;
@ApiModelProperty("抽检比例")
@Excel(name = "抽检比例")
private BigDecimal qualityInspectionRatio;
@ApiModelProperty("质检项: 1-包装 2-纯度")
@Excel(name = "质检项: 1-包装 2-纯度")
private Integer qualityInspectionTerm;
@ApiModelProperty("质检结果: 1-正常 2-异常")
@Excel(name = "质检结果: 1-正常 2-异常")
private Integer qualityInspectionResults;
@ApiModelProperty("是否允许超收: 1-是 2-否")
@Excel(name = "是否允许超收: 1-是 2-否")
private Integer allowOvercharge;
@ApiModelProperty("超收比例")
@Excel(name = "超收比例")
private BigDecimal overchargeRatio;
@ApiModelProperty("备注")
@Excel(name = "备注")
private String remark;
@ApiModelProperty(name = "组织ID集合")
private List<Long> organizationIdList;
@ApiModelProperty(name = "权限菜单ID")
private Long permissionMenuId;
}
@@ -0,0 +1,130 @@
package com.mhd.system.api.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
import java.util.List;
/**
* 入库通知单对象 stock_receipt_notice
*
* @author gen
* @date 2024-05-21
*/
@Data
public class NoticeOrderDTO extends BaseVOEntity{
private static final long serialVersionUID = 1L;
@ApiModelProperty("通知单id")
private Long noticeId;
@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 customerOrderNumber;
@ApiModelProperty("类型: 1-入库通知单 2-出库通知单")
@Excel(name = "类型: 1-入库通知单 2-出库通知单")
private Integer type;
@ApiModelProperty("状态: 1-未生成 2-已生成")
@Excel(name = "状态: 1-未生成 2-已生成")
private Integer status;
@ApiModelProperty("通知单号")
@Excel(name = "通知单号")
private String noticeNumber;
@ApiModelProperty("订单号")
@Excel(name = "订单号")
private String orderNumber;
@ApiModelProperty("仓库id")
@Excel(name = "仓库id")
private Long warehouseId;
@ApiModelProperty("仓库编码")
@Excel(name = "仓库编码")
private String warehouseCode;
@ApiModelProperty("仓库名称")
@Excel(name = "仓库名称")
private String warehouseName;
@ApiModelProperty("货主id")
@Excel(name = "货主id")
private Long shipperId;
@ApiModelProperty("货主名称")
@Excel(name = "货主名称")
private String shipperName;
@ApiModelProperty("入库单类型编码")
@Excel(name = "入库单类型编码")
private String orderTypeCode;
@ApiModelProperty("入库单类型名称")
@Excel(name = "入库单类型名称")
private String orderTypeName;
@ApiModelProperty("供应商id")
@Excel(name = "供应商id")
private Long supplierId;
@ApiModelProperty("供应商名称")
@Excel(name = "供应商名称")
private String supplierName;
@ApiModelProperty("客户Id")
@Excel(name = "客户Id")
private Long customerId;
@ApiModelProperty("客户名称")
@Excel(name = "客户名称")
private String customerName;
@ApiModelProperty("预计入/出货时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "预计入/出货时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date expectTime;
@ApiModelProperty("供应链订单号")
@Excel(name = "供应链订单号")
private String supplyChainNumber;
@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;
@ApiModelProperty("物料明细")
List<NoticeMaterialDetailDTO> materialDetailList;
}
@@ -0,0 +1,105 @@
package com.mhd.system.api.domain;
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;
/**
* 包装管理详情对象 pack_detail
*
* @author gen
* @date 2024-05-07
*/
@Data
@ApiModel(value = "包装管理详情对象", description = "包装管理详情响应对象")
public class PackDetailFeignPO extends BaseVOEntity{
private static final long serialVersionUID = 1L;
@ApiModelProperty("包装详情id")
private Long packDetailId;
@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 packId;
@ApiModelProperty("单位代码:EA IP CS PL OT")
@Excel(name = "单位代码:EA IP CS PL OT")
private String unitCode;
@ApiModelProperty("名称")
@Excel(name = "名称")
private String name;
@ApiModelProperty("数量")
@Excel(name = "数量")
private BigDecimal number;
@ApiModelProperty("包装材料")
@Excel(name = "包装材料")
private String packMaterial;
@ApiModelProperty("包装大小 长*宽*高 单位:米")
@Excel(name = "包装大小 长*宽*高 单位:米")
private String packSize;
@ApiModelProperty("包装大小-长 单位:米")
@Excel(name = "包装大小-长 单位:米")
private BigDecimal length;
@ApiModelProperty("包装大小-宽 单位:米")
@Excel(name = "包装大小-宽 单位:米")
private BigDecimal width;
@ApiModelProperty("包装大小-高 单位:米")
@Excel(name = "包装大小-高 单位:米")
private BigDecimal height;
@ApiModelProperty("体积 单位:立方米")
@Excel(name = "体积 单位:立方米")
private BigDecimal volume;
@ApiModelProperty("净重 单位:千克")
@Excel(name = "净重 单位:千克")
private BigDecimal weight;
@ApiModelProperty("TI")
@Excel(name = "TI")
private Long ti;
@ApiModelProperty("HI")
@Excel(name = "HI")
private Long hi;
@ApiModelProperty("备注")
@Excel(name = "备注")
private String remark;
@ApiModelProperty("包装编码")
@Excel(name = "包装编码")
private String packCode;
@ApiModelProperty("包装名称")
@Excel(name = "包装名称")
private String packName;
}
@@ -0,0 +1,87 @@
package com.mhd.system.api.domain;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* 月台管理对象 platform
*
* @author gen
* @date 2024-05-07
*/
@Data
@ApiModel(value = "月台管理对象", description = "月台管理响应对象")
public class PlatformFeignPO extends BaseVOEntity{
private static final long serialVersionUID = 1L;
@ApiModelProperty("月台id")
private Long platformId;
@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 platformCode;
@ApiModelProperty("月台名称")
@Excel(name = "月台名称")
private String platformName;
@ApiModelProperty("仓库id 多个逗号隔开")
@Excel(name = "仓库id 多个逗号隔开")
private String warehouseIdList;
@ApiModelProperty("仓库名称 多个逗号隔开")
@Excel(name = "仓库名称 多个逗号隔开")
private String warehouseNameList;
@ApiModelProperty("月台组id")
@Excel(name = "月台组id")
private Long platformGroupId;
@ApiModelProperty("月台组编码")
@Excel(name = "月台组编码")
private String platformGroupCode;
@ApiModelProperty("月台组名称 ")
@Excel(name = "月台组名称 ")
private String platformGroupName;
@ApiModelProperty("月台属性:1-收货 2-发货 3-混合")
@Excel(name = "月台属性:1-收货 2-发货 3-混合")
private Integer platformAttribute;
@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;
}
@@ -0,0 +1,59 @@
package com.mhd.system.api.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
/**
* 月台使用时间管理对象 platform_use_time
*
* @author gen
* @date 2024-05-13
*/
@Data
@ApiModel(value = "月台使用时间管理对象", description = "月台使用时间管理响应对象")
public class PlatformUseTimeFeignPO extends BaseVOEntity{
private static final long serialVersionUID = 1L;
@ApiModelProperty("月台id")
private Long platformUseTimeId;
@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 platformId;
@ApiModelProperty("开始时间")
@Excel(name = "开始时间", width = 30, dateFormat = "HH:mm")
private String startTime;
@ApiModelProperty("结束时间")
@Excel(name = "结束时间", width = 30, dateFormat = "HH:mm")
private String endTime;
@ApiModelProperty("备注")
@Excel(name = "备注")
private String remark;
}
@@ -0,0 +1,79 @@
package com.mhd.system.api.domain;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.util.List;
/**
* <p>
* 用户表 - 新增员工
* </p>
*
* @Author scott
* @since 2018-12-20
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class PlatformUserDTO implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(name = "一级组织表ID")
private Long topOrganizationId;
@ApiModelProperty(name = "组织表ID")
private Long organizationId;
@ApiModelProperty(name = "数字平台用户id")
private Long szwlUserId;
@ApiModelProperty(name = "角色id集合")
private List<String> roleIds;
@ApiModelProperty(name = "角色code集合")
private List<String> roleCodes;
@ApiModelProperty(name = "角色名称集合")
private List<String> roleNames;
@ApiModelProperty(name = "部门id集合")
private List<String> departIds;
@ApiModelProperty(name = "部门名称集合")
private List<String> departNames;
@ApiModelProperty(name = "头像")
private String avatar;
@ApiModelProperty(name = "登录账号")
private String username;
@ApiModelProperty(name = "电话")
private String phone;
@ApiModelProperty(name = "真实姓名")
private String realname;
@ApiModelProperty(value = "关联公司id")
private String relatedCompany;
@ApiModelProperty(value = "关联公司名称")
private String relatedCompanyName;
@ApiModelProperty(value = "机构编码")
private String orgCode;
@ApiModelProperty("账号类型 1.普通账号,2.组织账号,3.一级账号,4.平台员工,5.企业员工,6.合作商")
private Integer userAccountType;
@ApiModelProperty(value = "推广码")
private String promoCode;
@ApiModelProperty(name = "业务类型:0.无状态,1.托运业务,2.承运业务,3.托运、承运业务,4.无业务,5.不确定业务默认为托运业务")
private Integer businessType;
@ApiModelProperty("创建人ID")
private Long createBy;
}
@@ -0,0 +1,29 @@
package com.mhd.system.api.domain;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
/**
* 二级科目
*/
@Data
public class SecondSubjectPO implements Serializable {
@ApiModelProperty("二级科目code")
private String secondSubject;
@ApiModelProperty("二级科目名称")
private String secondSubjectName;
@ApiModelProperty("金额")
private BigDecimal amount;
@ApiModelProperty("付款方式:1-现金,2-油卡,3-公司加油,4-定点加油,5-油卡借款,6-现金借款")
private String payType;
@ApiModelProperty("收款人姓名")
private String payName;
}
@@ -0,0 +1,169 @@
package com.mhd.system.api.domain;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* 库位对象 storage_location
*
* @author gen
* @date 2024-04-03
*/
@Data
@ApiModel(value = "库位对象", description = "库位响应对象")
public class StorageLocationFeignPO extends BaseVOEntity{
private static final long serialVersionUID = 1L;
@ApiModelProperty("库位id")
private Long storageLocationId;
@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 warehouseId;
@ApiModelProperty("仓库编码")
@Excel(name = "仓库编码")
private String warehouseCode;
@ApiModelProperty("仓库名称")
@Excel(name = "仓库名称")
private String warehouseName;
@ApiModelProperty("库区id")
@Excel(name = "库区id")
private Long storageSectionId;
@ApiModelProperty("库区编码")
@Excel(name = "库区编码")
private String storageCode;
@ApiModelProperty("库区名称")
@Excel(name = "库区名称")
private String storageName;
@ApiModelProperty("库位编码")
@Excel(name = "库位编码")
private String storageLocationCode;
@ApiModelProperty("库位名称")
@Excel(name = "库位名称")
private String storageLocationName;
@ApiModelProperty("库区分类编码 数据字典")
@Excel(name = "库区分类编码 数据字典")
private String storageLocationClassify;
@ApiModelProperty("库区分类名称 数据字典")
@Excel(name = "库区分类名称 数据字典")
private String storageLocationClassifyName;
@ApiModelProperty("库区种类编码 数据字典")
@Excel(name = "库区种类编码 数据字典")
private String storageLocationType;
@ApiModelProperty("库区种类名称 数据字典")
@Excel(name = "库区种类名称 数据字典")
private String storageLocationTypeName;
@ApiModelProperty("混放策略编码 数据字典")
@Excel(name = "混放策略编码 数据字典")
private String mixingStrategy;
@ApiModelProperty("混放策略名称 数据字典")
@Excel(name = "混放策略名称 数据字典")
private String mixingStrategyName;
@ApiModelProperty("库位组id")
@Excel(name = "库位组id")
private Long storageLocationGroupId;
@ApiModelProperty("库位组编码")
@Excel(name = "库位组编码")
private String storageLocationGroupCode;
@ApiModelProperty("库位组名称 数据字典")
@Excel(name = "库位组名称 数据字典")
private String storageLocationGroupName;
@ApiModelProperty("重量限制 单位:千克")
@Excel(name = "重量限制 单位:千克")
private BigDecimal weightLimit;
@ApiModelProperty("体积限制 单位:立方米")
@Excel(name = "体积限制 单位:立方米")
private BigDecimal volumeLimit;
@ApiModelProperty("库位大小 长*宽*高 单位:米")
@Excel(name = "库位大小 长*宽*高 单位:米")
private String locationSize;
@ApiModelProperty("库位大小-长 单位:米")
@Excel(name = "库位大小-长 单位:米")
private BigDecimal locationLength;
@ApiModelProperty("库位大小-宽 单位:米")
@Excel(name = "库位大小-宽 单位:米")
private BigDecimal locationWidth;
@ApiModelProperty("库位大小-高 单位:米")
@Excel(name = "库位大小-高 单位:米")
private BigDecimal locationHeight;
@ApiModelProperty("坐标-区-列-排-层")
@Excel(name = "坐标-区-列-排-层")
private String coordinate;
@ApiModelProperty("坐标-区")
@Excel(name = "坐标-区")
private String coordinateArea;
@ApiModelProperty("坐标-列")
@Excel(name = "坐标-列")
private String coordinateColumn;
@ApiModelProperty("坐标-排")
@Excel(name = "坐标-排")
private String coordinateRow;
@ApiModelProperty("坐标-层")
@Excel(name = "坐标-层")
private String coordinateLayer;
@ApiModelProperty("备注")
@Excel(name = "备注")
private String remark;
@ApiModelProperty("库位状态:1-空 2-半满 3-全满")
@Excel(name = "库位状态:1-空 2-半满 3-全满")
private Integer status;
@ApiModelProperty("启用状态: 1-启用 2-停用")
@Excel(name = "启用状态: 1-启用 2-停用")
private Integer openingUp;
@ApiModelProperty("是否作废: 1-否 2-是")
@Excel(name = "是否作废: 1-否 2-是")
private Integer nullify;
}
@@ -0,0 +1,85 @@
package com.mhd.system.api.domain;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* 库区对象 storage_section
*
* @author gen
* @date 2024-04-03
*/
@Data
@ApiModel(value = "库区对象", description = "库区响应对象")
public class StorageSectionFeignPO extends BaseVOEntity{
private static final long serialVersionUID = 1L;
@ApiModelProperty("库区id")
private Long storageSectionId;
@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 warehouseId;
@ApiModelProperty("仓库编码")
@Excel(name = "仓库编码")
private String warehouseCode;
@ApiModelProperty("仓库名称")
@Excel(name = "仓库名称")
private String warehouseName;
@ApiModelProperty("库区编码")
@Excel(name = "库区编码")
private String storageCode;
@ApiModelProperty("库区名称")
@Excel(name = "库区名称")
private String storageName;
@ApiModelProperty("库区类型编码 数据字典")
@Excel(name = "库区类型编码 数据字典")
private String storageType;
@ApiModelProperty("库区类型名称 数据字典")
@Excel(name = "库区类型名称 数据字典")
private String storageTypeName;
@ApiModelProperty("库区面积 单位:平方米")
@Excel(name = "库区面积 单位:平方米")
private BigDecimal storageRegion;
@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;
}
@@ -0,0 +1,203 @@
package com.mhd.system.api.domain;
import java.util.ArrayList;
import java.util.List;
import javax.validation.constraints.Email;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.mhd.common.core.web.domain.BaseEntity;
/**
* 部门表 sys_dept
*
* @author mhd
*/
public class SysDept extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 部门ID */
private Long deptId;
/** 父部门ID */
private Long parentId;
/** 祖级列表 */
private String ancestors;
/** 部门名称 */
private String deptName;
/** 显示顺序 */
private Integer orderNum;
/** 负责人 */
private String leader;
/** 联系电话 */
private String phone;
/** 邮箱 */
private String email;
/** 部门状态:0正常,1停用 */
private String status;
/** 删除标志(0代表存在 2代表删除) */
private String delFlag;
/** 父部门名称 */
private String parentName;
/** 子部门 */
private List<SysDept> children = new ArrayList<SysDept>();
public Long getDeptId()
{
return deptId;
}
public void setDeptId(Long deptId)
{
this.deptId = deptId;
}
public Long getParentId()
{
return parentId;
}
public void setParentId(Long parentId)
{
this.parentId = parentId;
}
public String getAncestors()
{
return ancestors;
}
public void setAncestors(String ancestors)
{
this.ancestors = ancestors;
}
@NotBlank(message = "部门名称不能为空")
@Size(min = 0, max = 30, message = "部门名称长度不能超过30个字符")
public String getDeptName()
{
return deptName;
}
public void setDeptName(String deptName)
{
this.deptName = deptName;
}
@NotNull(message = "显示顺序不能为空")
public Integer getOrderNum()
{
return orderNum;
}
public void setOrderNum(Integer orderNum)
{
this.orderNum = orderNum;
}
public String getLeader()
{
return leader;
}
public void setLeader(String leader)
{
this.leader = leader;
}
@Size(min = 0, max = 11, message = "联系电话长度不能超过11个字符")
public String getPhone()
{
return phone;
}
public void setPhone(String phone)
{
this.phone = phone;
}
@Email(message = "邮箱格式不正确")
@Size(min = 0, max = 50, message = "邮箱长度不能超过50个字符")
public String getEmail()
{
return email;
}
public void setEmail(String email)
{
this.email = email;
}
public String getStatus()
{
return status;
}
public void setStatus(String status)
{
this.status = status;
}
public String getDelFlag()
{
return delFlag;
}
public void setDelFlag(String delFlag)
{
this.delFlag = delFlag;
}
public String getParentName()
{
return parentName;
}
public void setParentName(String parentName)
{
this.parentName = parentName;
}
public List<SysDept> getChildren()
{
return children;
}
public void setChildren(List<SysDept> children)
{
this.children = children;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("deptId", getDeptId())
.append("parentId", getParentId())
.append("ancestors", getAncestors())
.append("deptName", getDeptName())
.append("orderNum", getOrderNum())
.append("leader", getLeader())
.append("phone", getPhone())
.append("email", getEmail())
.append("status", getStatus())
.append("delFlag", getDelFlag())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.toString();
}
}
@@ -0,0 +1,217 @@
package com.mhd.system.api.domain;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.annotation.Excel.ColumnType;
import com.mhd.common.core.constant.UserConstants;
import com.mhd.common.core.web.domain.BaseEntity;
/**
* 字典数据表 sys_dict_data
*
* @author mhd
*/
public class SysDictData extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 字典编码 */
@Excel(name = "字典编码", cellType = ColumnType.NUMERIC)
private Long dictCode;
/** 字典排序 */
@Excel(name = "字典排序", cellType = ColumnType.NUMERIC)
private Long dictSort;
/** 字典标签 */
@Excel(name = "字典标签")
private String dictLabel;
/** 字典键值 */
@Excel(name = "字典键值")
private String dictValue;
/** 字典类型 */
@Excel(name = "字典类型")
private String dictType;
/** 样式属性(其他样式扩展) */
private String cssClass;
/** 表格字典样式 */
private String listClass;
/** 是否默认(Y是 N否) */
@Excel(name = "是否默认", readConverterExp = "Y=是,N=否")
private String isDefault;
/** 状态(0正常 1停用) */
@Excel(name = "状态", readConverterExp = "0=正常,1=停用")
private String status;
/** 组织表ID */
private Long organizationId;
/** 组织名称 */
private String organizationName;
/** 一级组织表ID */
private Long topOrganizationId;
public Long getOrganizationId()
{
return organizationId;
}
public void setOrganizationId(Long organizationId)
{
this.organizationId = organizationId;
}
public Long getTopOrganizationId()
{
return topOrganizationId;
}
public void setTopOrganizationId(Long topOrganizationId)
{
this.topOrganizationId = topOrganizationId;
}
public String getOrganizationName ()
{
return organizationName;
}
public void setOrganizationName(String organizationName)
{
this.organizationName = organizationName;
}
public Long getDictCode()
{
return dictCode;
}
public void setDictCode(Long dictCode)
{
this.dictCode = dictCode;
}
public Long getDictSort()
{
return dictSort;
}
public void setDictSort(Long dictSort)
{
this.dictSort = dictSort;
}
@NotBlank(message = "字典标签不能为空")
@Size(min = 0, max = 255, message = "字典标签长度不能超过255个字符")
public String getDictLabel()
{
return dictLabel;
}
public void setDictLabel(String dictLabel)
{
this.dictLabel = dictLabel;
}
@NotBlank(message = "字典键值不能为空")
@Size(min = 0, max = 100, message = "字典键值长度不能超过100个字符")
public String getDictValue()
{
return dictValue;
}
public void setDictValue(String dictValue)
{
this.dictValue = dictValue;
}
@NotBlank(message = "字典类型不能为空")
@Size(min = 0, max = 100, message = "字典类型长度不能超过100个字符")
public String getDictType()
{
return dictType;
}
public void setDictType(String dictType)
{
this.dictType = dictType;
}
@Size(min = 0, max = 100, message = "样式属性长度不能超过100个字符")
public String getCssClass()
{
return cssClass;
}
public void setCssClass(String cssClass)
{
this.cssClass = cssClass;
}
public String getListClass()
{
return listClass;
}
public void setListClass(String listClass)
{
this.listClass = listClass;
}
public boolean getDefault()
{
return UserConstants.YES.equals(this.isDefault) ? true : false;
}
public String getIsDefault()
{
return isDefault;
}
public void setIsDefault(String isDefault)
{
this.isDefault = isDefault;
}
public String getStatus()
{
return status;
}
public void setStatus(String status)
{
this.status = status;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("dictCode", getDictCode())
.append("dictSort", getDictSort())
.append("dictLabel", getDictLabel())
.append("dictValue", getDictValue())
.append("dictType", getDictType())
.append("cssClass", getCssClass())
.append("listClass", getListClass())
.append("isDefault", getIsDefault())
.append("status", getStatus())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.append("remark", getRemark())
.toString();
}
}
@@ -0,0 +1,96 @@
package com.mhd.system.api.domain;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Pattern;
import javax.validation.constraints.Size;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.annotation.Excel.ColumnType;
import com.mhd.common.core.web.domain.BaseEntity;
/**
* 字典类型表 sys_dict_type
*
* @author mhd
*/
public class SysDictType extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 字典主键 */
@Excel(name = "字典主键", cellType = ColumnType.NUMERIC)
private Long dictId;
/** 字典名称 */
@Excel(name = "字典名称")
private String dictName;
/** 字典类型 */
@Excel(name = "字典类型")
private String dictType;
/** 状态(0正常 1停用) */
@Excel(name = "状态", readConverterExp = "0=正常,1=停用")
private String status;
public Long getDictId()
{
return dictId;
}
public void setDictId(Long dictId)
{
this.dictId = dictId;
}
@NotBlank(message = "字典名称不能为空")
@Size(min = 0, max = 100, message = "字典类型名称长度不能超过100个字符")
public String getDictName()
{
return dictName;
}
public void setDictName(String dictName)
{
this.dictName = dictName;
}
@NotBlank(message = "字典类型不能为空")
@Size(min = 0, max = 100, message = "字典类型类型长度不能超过100个字符")
@Pattern(regexp = "^[a-zA-Z][a-zA-Z0-9_]*$", message = "字典类型必须以字母开头,且只能为(小写字母,数字,下滑线)")
public String getDictType()
{
return dictType;
}
public void setDictType(String dictType)
{
this.dictType = dictType;
}
public String getStatus()
{
return status;
}
public void setStatus(String status)
{
this.status = status;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("dictId", getDictId())
.append("dictName", getDictName())
.append("dictType", getDictType())
.append("status", getStatus())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.append("remark", getRemark())
.toString();
}
}
@@ -0,0 +1,50 @@
package com.mhd.system.api.domain;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
/**
* 文件信息
*
* @author mhd
*/
public class SysFile
{
/**
* 文件名称
*/
private String name;
/**
* 文件地址
*/
private String url;
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
public String getUrl()
{
return url;
}
public void setUrl(String url)
{
this.url = url;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("name", getName())
.append("url", getUrl())
.toString();
}
}
@@ -0,0 +1,29 @@
package com.mhd.system.api.domain;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* 登录表单
*
* @Author scott
* @since 2019-01-18
*/
@Data
@ApiModel(value="登录对象", description="登录对象")
public class SysLoginModel {
@ApiModelProperty(value = "账号")
private String username;
@ApiModelProperty(value = "手机号")
private String userPhone;
@ApiModelProperty(value = "密码")
private String password;
@ApiModelProperty(value = "验证码")
private String captcha;
@ApiModelProperty(value = "验证码key")
private String checkKey;
@ApiModelProperty(value = "是否加密:0-否,1-base64")
private Integer isPassword = 0;
}
@@ -0,0 +1,112 @@
package com.mhd.system.api.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mhd.common.core.annotation.Excel;
import lombok.Data;
import java.util.Date;
/**
* 系统访问记录表 sys_logininfor
*
* @author mhd
*/
@Data
public class SysLogininfor {
private static final long serialVersionUID = 1L;
/**
* ID
*/
@TableId(type = IdType.AUTO)
private Long infoId;
/**
* 用户账号
*/
@Excel(name = "用户账号")
private String userAccount;
/**
* 用户姓名
*/
@Excel(name = "用户姓名")
private String userName;
/**
* 状态 0成功 1失败
*/
@Excel(name = "状态", readConverterExp = "0=成功,1=失败")
private String status;
/**
* ip地址
*/
@Excel(name = "ip地址")
private String ipaddr;
/**
* 地区
*/
@Excel(name = "地区")
private String location;
/** 登录终端 */
@Excel(name = "登录终端")
private String terminal;
/**
* 终端标识
*/
@Excel(name = "终端标识")
private String terminalLogo;
/**
* 行为类型
*/
@Excel(name = "行为类型(1-登录、2-注册、3-注销)")
private Integer behaviorType;
/**
* 组织ID
*/
@Excel(name = "组织ID")
private Long organizationId;
/**
* 组织名称
*/
@Excel(name = "组织名称")
private String organizationName;
/**
* 一级组组织ID
*/
@Excel(name = "一级组组织ID")
private Long topOrganizationId;
/**
* 描述
*/
@Excel(name = "描述")
private String msg;
/**
* 访问时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "访问时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date accessTime;
/**
* 端口
*/
private String port;
/**
* 响应时间ms
*/
private String responseTime;
}
@@ -0,0 +1,87 @@
package com.mhd.system.api.domain;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.annotation.Excel.ColumnType;
import com.mhd.common.core.web.domain.BaseEntity;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
/**
* 系统访问记录表 sys_logininfor
*
* @author mhd
*/
@Data
public class SysLogininforPo
{
private static final long serialVersionUID = 1L;
/** ID */
@Excel(name = "序号", cellType = ColumnType.NUMERIC)
private Long infoId;
/** 用户账号 */
@Excel(name = "用户账号")
private String userAccount;
/** 用户姓名 */
@Excel(name = "用户姓名")
private String userName;
/** 状态 0成功 1失败 */
@Excel(name = "状态", readConverterExp = "0=成功,1=失败")
private String status;
/** ip地址 */
@Excel(name = "ip地址")
private String ipaddr;
/** 地区 */
@Excel(name = "地区")
private String location;
/** 登录终端 */
@Excel(name = "登录终端")
private String terminal;
/** 终端标识 */
@Excel(name = "终端标识")
private String terminalLogo;
/** 行为类型 */
@Excel(name = "行为类型(1-登录、2-注册、3-注销)")
private Integer behaviorType;
/** 组织ID */
@Excel(name = "组织ID")
private Long organizationId;
/** 组织名称 */
@Excel(name = "组织名称")
private String organizationName;
/** 一级组组织ID */
@Excel(name = "一级组组织ID")
private Long topOrganizationId;
/** 描述 */
@Excel(name = "描述")
private String msg;
/** 访问时间 */
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "访问时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date accessTime;
/**
* 端口
*/
private String port;
/**
* 响应时间ms
*/
private String responseTime;
}
@@ -0,0 +1,179 @@
package com.mhd.system.api.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.annotation.Excel.ColumnType;
import com.mhd.common.core.web.domain.BaseEntity;
import lombok.Data;
import java.util.Date;
/**
* 操作日志记录表 oper_log
*
* @author mhd
*/
@Data
public class SysOperLog {
private static final long serialVersionUID = 1L;
/**
* 日志主键
*/
@Excel(name = "操作序号", cellType = ColumnType.NUMERIC)
private Long operId;
/**
* 操作模块
*/
@Excel(name = "操作模块")
private String title;
/**
* 业务类型(0其它 1新增 2修改 3删除)
*/
@Excel(name = "业务类型", readConverterExp = "0=其它,1=新增,2=修改,3=删除,4=授权,5=导出,6=导入,7=强退,8=生成代码,9=清空数据")
private Integer businessType;
/**
* 业务类型数组
*/
private Integer[] businessTypes;
/**
* 请求方法
*/
@Excel(name = "请求方法")
private String method;
/**
* 模块描述
*/
@Excel(name = "模块描述")
private String description;
/**
* 请求方式
*/
@Excel(name = "请求方式")
private String requestMethod;
/**
* 操作类别(0其它 1后台用户 2手机端用户)
*/
@Excel(name = "操作类别", readConverterExp = "0=其它,1=后台用户,2=手机端用户")
private Integer operatorType;
/**
* 操作人员
*/
@Excel(name = "操作人员")
private String operName;
/**
* 部门名称
*/
@Excel(name = "部门名称")
private String deptName;
/**
* 请求url
*/
@Excel(name = "请求地址")
private String operUrl;
/**
* 操作地址
*/
@Excel(name = "操作地址")
private String operIp;
/**
* 操作地点
*/
@Excel(name = "操作地点")
private String operLocation;
/**
* 请求参数
*/
@Excel(name = "请求参数")
private String operParam;
/**
* 返回参数
*/
@Excel(name = "返回参数")
private String jsonResult;
/**
* 操作状态(0正常 1异常)
*/
@Excel(name = "状态", readConverterExp = "0=正常,1=异常")
private Integer status;
/**
* 错误消息
*/
@Excel(name = "错误消息")
private String errorMsg;
/**
* 日志类型(1-登录日志,2-操作日志)
*/
private Integer logType;
/**
* 用户id
*/
private Long userId;
/**
* 用户名称
*/
private String userName;
/**
* 用户账号
*/
private String userAccount;
/**
* 组织表ID
*/
private Long organizationId;
/**
* 组织名称
*/
private String organizationName;
/**
* 一级组组织ID
*/
private Long topOrganizationId;
/**
* 操作时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "操作时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date operTime;
/**
* 操作终端
*/
@Excel(name = "操作终端")
private String terminal;
/**
* 终端标识
*/
@Excel(name = "终端标识")
private String terminalLogo;
/**
* 端口
*/
private String port;
}
@@ -0,0 +1,124 @@
package com.mhd.system.api.domain;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.annotation.Excel.ColumnType;
import com.mhd.common.core.web.domain.BaseEntity;
import lombok.Data;
/**
* 操作日志记录表 oper_log
*
* @author mhd
*/
@Data
public class SysOperLogPo
{
private static final long serialVersionUID = 1L;
/** 日志主键 */
@Excel(name = "操作序号", cellType = ColumnType.NUMERIC)
private Long operId;
/** 操作模块 */
@Excel(name = "操作模块")
private String title;
/** 业务类型(0其它 1新增 2修改 3删除) */
@Excel(name = "业务类型", readConverterExp = "0=其它,1=新增,2=修改,3=删除,4=授权,5=导出,6=导入,7=强退,8=生成代码,9=清空数据")
private Integer businessType;
/** 请求方法 */
@Excel(name = "请求方法")
private String method;
/** 模块描述 */
@Excel(name = "模块描述")
private String description;
/** 请求方式 */
@Excel(name = "请求方式")
private String requestMethod;
/** 操作类别(0其它 1后台用户 2手机端用户) */
@Excel(name = "操作类别", readConverterExp = "0=其它,1=后台用户,2=手机端用户")
private Integer operatorType;
/** 操作人员 */
@Excel(name = "操作人员")
private String operName;
/** 部门名称 */
@Excel(name = "部门名称")
private String deptName;
/** 请求url */
@Excel(name = "请求地址")
private String operUrl;
/** 操作地址 */
@Excel(name = "操作地址")
private String operIp;
/** 操作地点 */
@Excel(name = "操作地点")
private String operLocation;
/** 请求参数 */
@Excel(name = "请求参数")
private String operParam;
/** 返回参数 */
@Excel(name = "返回参数")
private String jsonResult;
/** 操作状态(0正常 1异常) */
@Excel(name = "状态", readConverterExp = "0=正常,1=异常")
private Integer status;
/** 错误消息 */
@Excel(name = "错误消息")
private String errorMsg;
/** 日志类型(1-登录日志,2-操作日志) */
private Integer logType;
/** 用户id */
private Long userId;
/** 用户名称 */
private String userName;
/** 用户账号 */
private String userAccount;
/** 组织表ID */
private Long organizationId;
/** 组织名称 */
private String organizationName;
/** 一级组组织ID */
@Excel(name = "一级组组织ID")
private Long topOrganizationId;
/** 操作时间 */
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "操作时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date operTime;
/** 操作终端 */
@Excel(name = "操作终端")
private String terminal;
/**
* 终端标识
*/
@Excel(name = "终端标识")
private String terminalLogo;
/**
* 端口
*/
private String port;
}
@@ -0,0 +1,241 @@
package com.mhd.system.api.domain;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.annotation.Excel.ColumnType;
import com.mhd.common.core.web.domain.BaseEntity;
/**
* 角色表 sys_role
*
* @author mhd
*/
@Data
public class SysRole extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 角色ID */
@Excel(name = "角色序号", cellType = ColumnType.NUMERIC)
private Long roleId;
/** 角色名称 */
@Excel(name = "角色名称")
private String roleName;
/** 角色权限 */
@Excel(name = "角色权限")
private String roleKey;
/** 角色排序 */
@Excel(name = "角色排序")
private String roleSort;
/** 数据范围(1:所有数据权限;2:自定义数据权限;3:本部门数据权限;4:本部门及以下数据权限;5:仅本人数据权限) */
@Excel(name = "数据范围", readConverterExp = "1=所有数据权限,2=自定义数据权限,3=本部门数据权限,4=本部门及以下数据权限,5=仅本人数据权限")
private String dataScope;
/** 菜单树选择项是否关联显示( 0:父子不互相关联显示 1:父子互相关联显示) */
private boolean menuCheckStrictly;
/** 部门树选择项是否关联显示(0:父子不互相关联显示 1:父子互相关联显示 ) */
private boolean deptCheckStrictly;
/** 角色状态(0正常 1停用) */
@Excel(name = "角色状态", readConverterExp = "0=正常,1=停用")
private String status;
/** 删除标志(0代表存在 2代表删除) */
private String delFlag;
/** 用户是否存在此角色标识 默认不存在 */
private boolean flag = false;
/** 菜单组 */
private Long[] menuIds;
/** 部门组(数据权限) */
private Long[] deptIds;
/** 角色类型*/
private Integer roleType;
/** 所属公司id */
private Long companyId;
/** 所属公司id */
private String companyName;
public SysRole()
{
}
public SysRole(Long roleId)
{
this.roleId = roleId;
}
public Long getRoleId()
{
return roleId;
}
public void setRoleId(Long roleId)
{
this.roleId = roleId;
}
public boolean isAdmin()
{
return isAdmin(this.roleId);
}
public static boolean isAdmin(Long roleId)
{
return roleId != null && 1L == roleId;
}
@NotBlank(message = "角色名称不能为空")
@Size(min = 0, max = 30, message = "角色名称长度不能超过30个字符")
public String getRoleName()
{
return roleName;
}
public void setRoleName(String roleName)
{
this.roleName = roleName;
}
@NotBlank(message = "权限字符不能为空")
@Size(min = 0, max = 100, message = "权限字符长度不能超过100个字符")
public String getRoleKey()
{
return roleKey;
}
public void setRoleKey(String roleKey)
{
this.roleKey = roleKey;
}
@NotBlank(message = "显示顺序不能为空")
public String getRoleSort()
{
return roleSort;
}
public void setRoleSort(String roleSort)
{
this.roleSort = roleSort;
}
public String getDataScope()
{
return dataScope;
}
public void setDataScope(String dataScope)
{
this.dataScope = dataScope;
}
public boolean isMenuCheckStrictly()
{
return menuCheckStrictly;
}
public void setMenuCheckStrictly(boolean menuCheckStrictly)
{
this.menuCheckStrictly = menuCheckStrictly;
}
public boolean isDeptCheckStrictly()
{
return deptCheckStrictly;
}
public void setDeptCheckStrictly(boolean deptCheckStrictly)
{
this.deptCheckStrictly = deptCheckStrictly;
}
public String getStatus()
{
return status;
}
public void setStatus(String status)
{
this.status = status;
}
public String getDelFlag()
{
return delFlag;
}
public void setDelFlag(String delFlag)
{
this.delFlag = delFlag;
}
public boolean isFlag()
{
return flag;
}
public void setFlag(boolean flag)
{
this.flag = flag;
}
public Long[] getMenuIds()
{
return menuIds;
}
public void setMenuIds(Long[] menuIds)
{
this.menuIds = menuIds;
}
public Long[] getDeptIds()
{
return deptIds;
}
public void setDeptIds(Long[] deptIds)
{
this.deptIds = deptIds;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("roleId", getRoleId())
.append("roleName", getRoleName())
.append("roleKey", getRoleKey())
.append("roleSort", getRoleSort())
.append("dataScope", getDataScope())
.append("menuCheckStrictly", isMenuCheckStrictly())
.append("deptCheckStrictly", isDeptCheckStrictly())
.append("status", getStatus())
.append("delFlag", getDelFlag())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.append("remark", getRemark())
.append("roleType", getRoleType())
.append("companyId", getCompanyId())
.append("companyName", getCompanyName())
.toString();
}
}
@@ -0,0 +1,359 @@
package com.mhd.system.api.domain;
import java.util.Date;
import java.util.List;
import javax.validation.constraints.*;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.annotation.Excel.ColumnType;
import com.mhd.common.core.annotation.Excel.Type;
import com.mhd.common.core.annotation.Excels;
import com.mhd.common.core.web.domain.BaseEntity;
import com.mhd.common.core.xss.Xss;
/**
* 用户对象 sys_user
*
* @author mhd
*/
@Data
public class SysUser extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 用户ID */
@Excel(name = "用户序号", cellType = ColumnType.NUMERIC, prompt = "用户编号")
private Long userId;
/** 部门ID */
@Excel(name = "部门编号", type = Type.IMPORT)
private Long deptId;
/** 用户账号 */
@Excel(name = "登录名称")
private String userName;
/** 用户昵称 */
@Excel(name = "用户名称")
@Xss(message = "用户昵称不能包含脚本字符")
@Size(min = 0, max = 30, message = "用户昵称长度不能超过30个字符")
private String nickName;
/** 用户邮箱 */
@Excel(name = "用户邮箱")
private String email;
/** 手机号码 */
@Excel(name = "手机号码")
private String phonenumber;
/** 用户性别 */
@Excel(name = "用户性别", readConverterExp = "0=男,1=女,2=未知")
private String sex;
/** 用户头像 */
private String avatar;
/** 密码 */
private String password;
/** 帐号状态(0正常 1停用) */
@Excel(name = "帐号状态", readConverterExp = "0=正常,1=停用")
private String status;
/** 删除标志(0代表存在 2代表删除) */
private String delFlag;
/** 最后登录IP */
@Excel(name = "最后登录IP", type = Type.EXPORT)
private String loginIp;
/** 最后登录时间 */
@Excel(name = "最后登录时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss", type = Type.EXPORT)
private Date loginDate;
/** 部门对象 */
@Excels({
@Excel(name = "部门名称", targetAttr = "deptName", type = Type.EXPORT),
@Excel(name = "部门负责人", targetAttr = "leader", type = Type.EXPORT)
})
private SysDept dept;
/** 角色对象 */
private List<SysRole> roles;
/** 角色组 */
private Long[] roleIds;
/** 岗位组 */
private Long[] postIds;
/** 角色ID */
private Long roleId;
/** 公司ID */
private Long companyId;
/** 公司名称 */
private String companyName;
// private String orgCode;
//
// public String getOrgCode(){ return orgCode; }
//
// public void setOrgCode(String orgCode) { this.orgCode = orgCode; }
public SysUser()
{
}
public Long getCompanyId() {
return companyId;
}
public void setCompanyId(Long companyId) {
this.companyId = companyId;
}
public SysUser(Long userId)
{
this.userId = userId;
}
public Long getUserId()
{
return userId;
}
public void setUserId(Long userId)
{
this.userId = userId;
}
public boolean isAdmin()
{
return isAdmin(this.userId);
}
public static boolean isAdmin(Long userId)
{
return userId != null && 1L == userId;
}
public Long getDeptId()
{
return deptId;
}
public void setDeptId(Long deptId)
{
this.deptId = deptId;
}
@Xss(message = "用户昵称不能包含脚本字符")
@Size(min = 0, max = 30, message = "用户昵称长度不能超过30个字符")
public String getNickName()
{
return nickName;
}
public void setNickName(String nickName)
{
this.nickName = nickName;
}
@Xss(message = "用户账号不能包含脚本字符")
@NotBlank(message = "用户账号不能为空")
@Size(min = 0, max = 30, message = "用户账号长度不能超过30个字符")
public String getUserName()
{
return userName;
}
public void setUserName(String userName)
{
this.userName = userName;
}
@Email(message = "邮箱格式不正确")
@Size(min = 0, max = 50, message = "邮箱长度不能超过50个字符")
public String getEmail()
{
return email;
}
public void setEmail(String email)
{
this.email = email;
}
@Size(min = 0, max = 11, message = "手机号码长度不能超过11个字符")
public String getPhonenumber()
{
return phonenumber;
}
public void setPhonenumber(String phonenumber)
{
this.phonenumber = phonenumber;
}
public String getSex()
{
return sex;
}
public void setSex(String sex)
{
this.sex = sex;
}
public String getAvatar()
{
return avatar;
}
public void setAvatar(String avatar)
{
this.avatar = avatar;
}
public String getPassword()
{
return password;
}
public void setPassword(String password)
{
this.password = password;
}
public String getStatus()
{
return status;
}
public void setStatus(String status)
{
this.status = status;
}
public String getDelFlag()
{
return delFlag;
}
public void setDelFlag(String delFlag)
{
this.delFlag = delFlag;
}
public String getLoginIp()
{
return loginIp;
}
public void setLoginIp(String loginIp)
{
this.loginIp = loginIp;
}
public Date getLoginDate()
{
return loginDate;
}
public void setLoginDate(Date loginDate)
{
this.loginDate = loginDate;
}
public SysDept getDept()
{
return dept;
}
public void setDept(SysDept dept)
{
this.dept = dept;
}
public List<SysRole> getRoles()
{
return roles;
}
public void setRoles(List<SysRole> roles)
{
this.roles = roles;
}
public Long[] getRoleIds()
{
return roleIds;
}
public void setRoleIds(Long[] roleIds)
{
this.roleIds = roleIds;
}
public Long[] getPostIds()
{
return postIds;
}
public void setPostIds(Long[] postIds)
{
this.postIds = postIds;
}
public Long getRoleId()
{
return roleId;
}
public void setRoleId(Long roleId)
{
this.roleId = roleId;
}
public String getCompanyName() {
return companyName;
}
public void setCompanyName(String companyName) {
this.companyName = companyName;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("userId", getUserId())
.append("deptId", getDeptId())
.append("userName", getUserName())
.append("nickName", getNickName())
.append("email", getEmail())
.append("phonenumber", getPhonenumber())
.append("sex", getSex())
.append("avatar", getAvatar())
.append("password", getPassword())
.append("status", getStatus())
.append("delFlag", getDelFlag())
.append("loginIp", getLoginIp())
.append("loginDate", getLoginDate())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.append("remark", getRemark())
.append("dept", getDept())
.append("companyId", getCompanyId())
.append("companyName", getCompanyName())
.toString();
}
}
@@ -0,0 +1,74 @@
package com.mhd.system.api.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;
/**
* @Description: 代收款人合同表
* @Author: Alex
* @Date: 2022-05-24 14:54:12
* @Version: V1.0
*/
@Data
public class TmsCollectionAgentWlhyDTO implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "合同编号")
private String contractNo;
@ApiModelProperty(value = "甲方-托运商")
private String partyA;
@ApiModelProperty(value = "乙方-承运商")
private String partyB;
@ApiModelProperty(value = "丙方-代收款人")
private String partyC;
@ApiModelProperty(value = "收款账户名称")
private String accountNo;
@ApiModelProperty(value = "收款卡号")
private String bankCard;
@ApiModelProperty(value = "开户行")
private String bankName;
@ApiModelProperty(value = "合同签署日期")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
private Date signingDate;
@ApiModelProperty(value = "甲方-托运商联系人")
private String contactsA;
@ApiModelProperty(value = "乙方-托运商联系人")
private String contactsB;
@ApiModelProperty(value = "丙方-托运商联系人")
private String contactsC;
@ApiModelProperty(value = "甲方-托运商联系方式")
private String phoneA;
@ApiModelProperty(value = "乙方-托运商联系方式")
private String phoneB;
@ApiModelProperty(value = "丙方-托运商联系方式")
private String phoneC;
@ApiModelProperty(value = "甲方-托运商身份证号")
private String idNumA;
@ApiModelProperty(value = "乙方-托运商身份证号")
private String idNumB;
@ApiModelProperty(value = "丙方-托运商身份证号")
private String idNumC;
@ApiModelProperty(value = "甲方-accountId")
private String accountIdA;
@ApiModelProperty(value = "乙方-accountId")
private String accountIdB;
@ApiModelProperty(value = "丙方-accountId")
private String accountIdC;
@ApiModelProperty(value = "甲方-签章")
private String templateA;
@ApiModelProperty(value = "乙方-签章")
private String templateB;
@ApiModelProperty(value = "丙方-签章")
private String templateC;
@ApiModelProperty(value = "平台印章id")
private String esignSealId;
}
@@ -0,0 +1,191 @@
package com.mhd.system.api.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;
/**
* @Description: 司机表 -新增
* @Author: Alex
* @Date: 2020-02-11 16:53:48
* @Version: V1.0
*/
@Data
public class TmsDriverAddOrUpdateDTO implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(name = "一级组织表ID")
private Long topOrganizationId;
@ApiModelProperty(name = "组织表ID")
private Long organizationId;
@ApiModelProperty(name = "组织表ID")
private String organizationName;
@ApiModelProperty(name = "数字平台用户id")
private Long szwlUserId;
@ApiModelProperty(value = "用户类型(0-司机,1-车队)")
private Integer type;
@ApiModelProperty(value = "姓名")
private String driverName;
@ApiModelProperty(value = "电话")
private String phone;
@ApiModelProperty(value = "头像")
private String avatar;
@ApiModelProperty(value = "身份证号")
private String identificationNumber;
@ApiModelProperty(value = "身份证正面图片地址")
private String identificationFrontImgUrl;
@ApiModelProperty(value = "身份证反面图片地址")
private String identificationBackImgUrl;
@ApiModelProperty(value = "驾驶证图片地址")
private String driverLicenseImgUrl;
@ApiModelProperty(value = "准驾车型id")
private String allowDrivingTypeId;
@ApiModelProperty(value = "准驾车型")
private String allowDrivingType;
@ApiModelProperty(value = "(驾驶证)档案ID")
private String driverLicenseFileId;
@ApiModelProperty(value = "领证日期")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
private java.util.Date dateOfCertification;
@ApiModelProperty(value = "驾驶证过期日期")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
private java.util.Date driverLicenseExpDate;
@ApiModelProperty(value = "发证机关")
private String certificationAuthority;
@ApiModelProperty(value = "从业资格证图片地址")
private String workCertificateImgUrl;
@ApiModelProperty(value = "从业资格证号")
private String workCertificateNumber;
@ApiModelProperty(value = "从业资格证过期日期")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
private java.util.Date workCertificateExpDate;
@ApiModelProperty(value = "营业执照图片地址")
private String businessLicenseImgUrl;
@ApiModelProperty(value = "所属部门")
private String sysOrgCode;
@ApiModelProperty(value = "证件类型")
private String legalPersonIdType;
@ApiModelProperty(value = "法人证件类型名称")
private String legalPersonIdName;
@ApiModelProperty(value = "身份证有效期限")
private String idCardIndate;
@ApiModelProperty(value = "驾驶证副页")
private String driverLicenseFrontImgUrl;
@ApiModelProperty(value = "住址")
private String ocrAddress;
@ApiModelProperty(value = "道路运输经营许可证号")
private String roadTransportBusinessLicenseNo;
@ApiModelProperty(value = "车队名称")
private String motorcadeName;
@ApiModelProperty(value = "道路运输证号")
private String roadTransportNum;
@ApiModelProperty(value = "地址")
private String address;
@ApiModelProperty(value = "注册地址")
private String registeredAddress;
@ApiModelProperty(value = "身份证有效开始日期")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
private Date idCardStartDate;
@ApiModelProperty(value = "身份证是否永久有效(0-否,1-是)")
private Integer isIdCardPermanentlyValid;
@ApiModelProperty(value = "身份证有效期结束日期")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
private Date idCardEndDate;
@ApiModelProperty(value = "驾驶证有效期开始日期")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
private Date driverLicenseStartDate;
@ApiModelProperty(value = "从业资格证发证省份")
private String workCertificateAuthority;
@ApiModelProperty(value = "个人审核状态(0-未提交,1-待审核,2-审核通过,3-审核不通过)")
private Integer auditStatus;
@ApiModelProperty(value = "审核备注")
private String auditRemark;
@ApiModelProperty(value = "审核时间")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
private Date auditTime;
@ApiModelProperty(value = "审核人ID")
private String auditorId;
@ApiModelProperty(value = "审核人姓名")
private String auditorName;
@ApiModelProperty(value = "是否允许竞价(0-不允许竞价,1-允许参与竞价,2-允许查看竞价)")
private Integer isDriverBidding;
@ApiModelProperty(value = "推广码")
private String promoCode;
@ApiModelProperty(value = "数字物流车队ID")
private Long szwlMotorcadeId;
@ApiModelProperty(name = "承运人类型:1-车队长,2-运输企业 3-车队")
private Integer carrierType;
/** 车队长id */
@ApiModelProperty("车队长id")
private Long enterpriseUserId;
@ApiModelProperty(name = "是否默认(1-是,2-否)")
private Integer defaultFlag;
@ApiModelProperty(name = "承运商编码")
private String driverEnterpriseCode;
@ApiModelProperty(name = "登录密码")
private String passWord;
@ApiModelProperty(name = "司机用户类型 自有车辆(值为1) 社会车辆(值为2)")
private Integer userDriverType;
}
@@ -0,0 +1,67 @@
package com.mhd.system.api.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
* @Description: 司机表 -审核
* @Author: Alex
* @Date: 2020-02-11 16:53:48
* @Version: V1.0
*/
@Data
public class TmsDriverAuditDTO implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "个人审核状态(0-未提交,1-待审核,2-审核通过,3-审核不通过)")
private Integer auditStatus;
/**认证状态(0-未认证,1-司机认证成功,2-人脸认证成功,3-资格证认证成功,4-驾驶证认证成功,5-行驶证认证成功,6-道路运输许可证认证成功)*/
// @ApiModelProperty(value = "认证状态(0-未提交,1-司机认证成功,2-人脸认证成功,3-资格证认证成功,4-驾驶证认证成功,5-行驶证认证成功,6-道路运输许可证认证成功,7-认证完成)")
@ApiModelProperty(value = "认证状态(0-未认证,1-等待审核,2-认证成功,3-认证失败)")
private Integer attestationStatus;
@ApiModelProperty(value = "审核备注")
private String auditRemark="";
@ApiModelProperty(value = "证件审核驳回理由")
private String attestationRemark;
@ApiModelProperty(value = "标记状态id")
private String markerStateId;
@ApiModelProperty(value = "标记状态名称")
private String markerStateName;
/**用户类型(0-司机,1-车队)*/
@ApiModelProperty(value = "用户类型(0-司机,1-车队,2-车队司机,3-企业水路承运人,4-个人水路承运人,6-经纪人)")
private Integer type;
@ApiModelProperty(value = "绑定货主id")
private String shipperId;
@ApiModelProperty(value = "审核人ID")
private String auditorId;
@ApiModelProperty(value = "审核人姓名")
private String auditorName;
@ApiModelProperty(value = "审核时间")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date auditTime;
@ApiModelProperty(name = "数字平台用户id")
private Long szwlUserId;
@ApiModelProperty(name = "角色id集合")
private List<String> roleIds;
@ApiModelProperty(name = "角色code集合")
private List<String> roleCodes;
@ApiModelProperty(name = "角色名称集合")
private List<String> roleNames;
@ApiModelProperty(name = "司机基本信息,同步使用")
private TmsDriverAddOrUpdateDTO tmsDriverAddOrUpdateDTO;
}
@@ -0,0 +1,27 @@
package com.mhd.system.api.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**
* @Description: 司机表 - 绑定
* @Author: Alex
* @Date: 2020-02-11 16:53:48
* @Version: V1.0
*/
@Data
public class TmsDriverBinDingDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**数字物流用户id*/
@ApiModelProperty(value = "数字物流用户id")
private Long szwlUserId;
/**车牌号*/
@ApiModelProperty(value = "车牌号")
private String vehicleLicenseNumber;
}
@@ -0,0 +1,41 @@
package com.mhd.system.api.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
@Data
public class UserDTO extends BaseVOEntity {
@ApiModelProperty(name = "用户ID")
private Long userId;
@ApiModelProperty(name = "一级组织表ID")
private Long topOrganizationId;
@ApiModelProperty(name = "组织表ID")
private Long organizationId;
@ApiModelProperty(name = "归属组织name")
private String organizationName;
@ApiModelProperty(name = "手机号码")
private String userPhone;
@ApiModelProperty(name = "用户姓名(真实姓名)")
private String userName;
@ApiModelProperty(name = "登录账号(2-20位)")
private String userAccount;
@ApiModelProperty(name = "登录密码")
private String userPassword;
@ApiModelProperty(name = "登录人域名")
private String tenantsDomainName;
@ApiModelProperty(name = "最近一次登录时间")
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
private Date lastLoginTime;
@ApiModelProperty(name = "最近一次登录IP")
private String lastLoginIp = "";
@ApiModelProperty(name = "用户状态:0-无状态,1-正常,2-锁定,3-作废")
private Integer userStatus;
@ApiModelProperty(name = "业务类型:0.无状态,1.托运业务,2.承运业务,3.托运、承运业务,4.无业务,5.不确定业务默认为托运业务")
private Integer businessType;
}
@@ -0,0 +1,125 @@
package com.mhd.system.api.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
@Data
public class UserUpdateDTO extends BaseVOEntity {
@ApiModelProperty(name = "用户ID")
private Long userId;
@ApiModelProperty(name = "一级组织表ID")
private Long topOrganizationId;
@ApiModelProperty(name = "组织表ID")
private Long organizationId;
@ApiModelProperty(name = "组织名称")
private String organizationName;
@ApiModelProperty(name = "职务/角色表ID")
private Long roleId;
@ApiModelProperty(name = "职务/角色权限字符")
private String roleCode;
@ApiModelProperty(name = "用户角色名称")
private String roleName;
@ApiModelProperty(name = "手机号码")
private String userPhone;
@ApiModelProperty(name = "用户姓名(真实姓名)")
private String userName;
@ApiModelProperty(name = "登录账号(2-20位)")
private String userAccount;
@ApiModelProperty(name = "会员编号")
private String userMemberCode;
@ApiModelProperty(name = "登录密码")
private String userPassword;
@ApiModelProperty(name = "")
private String userSalt;
@ApiModelProperty(name = "支付密码")
private String userPayPassword;
@ApiModelProperty(name = "身份证号")
private String userIdcardNumber;
@ApiModelProperty(name = "身份证号加密")
private String userIdcardNumberDes;
@JsonFormat(pattern = "yyyy-MM-dd")
@ApiModelProperty(name = "身份证有效期自")
private Date userIdcardDateFrom;
@JsonFormat(pattern = "yyyy-MM-dd")
@ApiModelProperty(name = "身份证有效期至")
private Date userIdcardDateTo;
@ApiModelProperty(name = "身份证是否长期:0-无状态,1-是,2-否")
private Integer userIdcardLong;
@ApiModelProperty(name = "身份证正面照片")
private String userIdcardFrontUrl;
@ApiModelProperty(name = "身份证反面照片")
private String userIdcardBackUrl;
@ApiModelProperty(name = "手持身份证")
private String userIdcardInhandUrl;
@ApiModelProperty(name = "用户头像")
private String avatar;
@ApiModelProperty(name = "用户状态:0-无状态,1-正常,2-锁定")
private Integer userStatus;
@ApiModelProperty(name = "邮箱")
private String userEmail;
@ApiModelProperty(name = "县区编码,6位")
private Long userAreaCountyId;
@ApiModelProperty(name = "县区名称")
private String userAreaName;
@ApiModelProperty(name = "详细地址")
private String userAreaAddress;
@ApiModelProperty(name = "微信账号")
private String userWechatAccount;
@ApiModelProperty(name = "微信登录openid")
private String userWechatOpenid;
@ApiModelProperty(name = "微信登录会话KEY")
private String userWechatSessionKey;
@ApiModelProperty(name = "密码登录错误次数")
private Integer passwordWrongTimes;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(name = "最近一次登录时间")
private Date lastLoginTime;
@ApiModelProperty(name = "最近一次登录IP")
private String lastLoginIp;
@ApiModelProperty(name = "app_openid")
private String appOpenid;
@ApiModelProperty(name = "备注")
private String userRemark;
@ApiModelProperty(name = "用户实名认证状态:0-无状态,1-已注册未认证,2-已认证待审核,3-审核通过,4-已驳回")
private int userAuthStatus;
@ApiModelProperty(name = "用户审核人用户姓名")
private String userAuthByUsername;
@JsonFormat(pattern = "yyyy-MM-dd")
@ApiModelProperty(name = "用户审核时间")
private Date userAuthTime;
@ApiModelProperty(name = "加入黑名单备注(解除时需要清空)")
private String userStatusRemark;
@JsonFormat(pattern = "yyyy-MM-dd")
@ApiModelProperty(name = "用户状态更新时间")
private Date userStatusTime;
@JsonFormat(pattern = "yyyy-MM-dd")
@ApiModelProperty(name = "用户生日")
private Date userBirthday;
@ApiModelProperty(name = "用户住址信息")
private String userAreaAddressInfo;
@ApiModelProperty(name = "用户身份证到期状态:0-无状态,1-正常,2-临期一个月,3-临期三个月,4-过期")
private int userIdcardStatus;
@ApiModelProperty(name = "用户电子签章状态:0-无状态,1-已创建,2-未创建")
private int userTemplateSealStatus;
@ApiModelProperty(name = "用户电子签章")
private String userTemplateSeal;
@ApiModelProperty(name = "用户三方支付账号状态:0-无状态,1-已创建,2-未创建")
private int userPayAccountStatus;
@ApiModelProperty(name = "用户三方支付账号")
private String userPayAccount;
@ApiModelProperty(name = "用户绑卡状态:0-无状态,1-已绑卡,2-未绑卡")
private int userBankCardStatus;
@ApiModelProperty(name = "用户评价小")
private int userEvaluateFrom;
@ApiModelProperty(name = "用户评价大")
private int userEvaluateTo;
@ApiModelProperty(name = "请求域名")
private String tenantsDomainName;
}
@@ -0,0 +1,121 @@
package com.mhd.system.api.domain;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* 仓库对象 warehouse
*
* @author gen
* @date 2024-04-03
*/
@Data
@ApiModel(value = "仓库对象", description = "仓库响应对象")
public class WarehouseFeignPO extends BaseVOEntity{
private static final long serialVersionUID = 1L;
@ApiModelProperty("仓库id")
private Long warehouseId;
@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 warehouseCode;
@ApiModelProperty("仓库名称")
@Excel(name = "仓库名称")
private String warehouseName;
@ApiModelProperty("仓库类型编码 数据字典")
@Excel(name = "仓库类型编码 数据字典")
private String warehouseType;
@ApiModelProperty("仓库类型名称 数据字典")
@Excel(name = "仓库类型名称 数据字典")
private String warehouseTypeName;
@ApiModelProperty("仓库结构: 1-平库 2-立体库")
@Excel(name = "仓库结构: 1-平库 2-立体库")
private Integer warehouseStructure;
@ApiModelProperty("仓库性质: 1-固定仓 2-临时仓")
@Excel(name = "仓库性质: 1-固定仓 2-临时仓")
private Integer warehouseNature;
@ApiModelProperty("温层编码 数据字典")
@Excel(name = "温层编码 数据字典")
private String warmLayerCode;
@ApiModelProperty("温层名称 数据字典")
@Excel(name = "温层名称 数据字典")
private String warmLayerName;
@ApiModelProperty("负责人名称")
@Excel(name = "负责人名称")
private String directorName;
@ApiModelProperty("负责人电话")
@Excel(name = "负责人电话")
private String directorPhone;
@ApiModelProperty("省市区编码")
@Excel(name = "省市区编码")
private String regionCode;
@ApiModelProperty("省市区名称")
@Excel(name = "省市区名称")
private String regionName;
@ApiModelProperty("详细地址")
@Excel(name = "详细地址")
private String detailAddress;
@ApiModelProperty("经度")
@Excel(name = "经度")
private String longitude;
@ApiModelProperty("纬度")
@Excel(name = "纬度")
private String latitude;
@ApiModelProperty("建筑面积 单位:平方米")
@Excel(name = "建筑面积 单位:平方米")
private BigDecimal buildingRegion;
@ApiModelProperty("使用面积 单位:平方米")
@Excel(name = "使用面积 单位:平方米")
private BigDecimal usageRegion;
@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;
}
@@ -0,0 +1,57 @@
package com.mhd.system.api.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
@Data
public class WlhyLoginUser {
//登录人id
private String id;
//登录人账号
private String username;
//登录人名字
private String realname;
//登录人密码
private String password;
//登录人支付密码
private String payPassword;
//当前登录部门code
private String orgCode;
//头像
private String avatar;
//生日
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date birthday;
//性别(1:男 2:女)
private Integer sex;
//电子邮件
private String email;
//电话
private String phone;
//状态(1:正常 2:冻结
private Integer status;
private String delFlag;
//同步工作流引擎1同步0不同步
private String activitiSync;
//创建时间
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createTime;
//角色表类型
private String userRole ;
//角色表id
private String userRoleId ;
//岗位名称/用户角色名称
private String userRoleName ;
//公司经营模式(0-总公司,1-总+分公司)
private Integer isTypeInsuranceUse;
//商户用户ID
private String merchantUserId;
//部门编号
private String depId;
}
@@ -0,0 +1,68 @@
package com.mhd.system.api.domain.cache;
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.util.List;
/**
* 关联仓库对象 association_warehouse
*
* @author gen
* @date 2024-06-11
*/
@Data
public class AssociationWarehouseCacheDO 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;
}
@@ -0,0 +1,32 @@
package com.mhd.system.api.domain.cache;
import cn.hutool.json.JSONUtil;
import com.mhd.common.core.exception.ServiceException;
import com.mhd.common.core.utils.SpringUtils;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.system.api.SystemServiceFeign;
import lombok.extern.slf4j.Slf4j;
/**
* @author ZhouGY
* @title WarehouseCache
* @description: 当前用户关联仓库
* @date 2024/6/14 15:05
**/
@Slf4j
public class SystemServiceCacheUtil {
/**
* 获取字典缓存
*
* @param key 参数键
* @return dictDatas 数据
*/
public static AssociationWarehouseCacheDO getAssociationWarehouseCache(Long key) {
AjaxResult ajaxResult = SpringUtils.getBean(SystemServiceFeign.class).getWarehouseInfo(key);
if (!"200".equals(String.valueOf(ajaxResult.get("code")))){
throw new ServiceException("获取指定用户设置的仓库信息失败");
}
return JSONUtil.toBean(JSONUtil.toJsonStr(ajaxResult.get("data")), AssociationWarehouseCacheDO.class);
}
}
@@ -0,0 +1,94 @@
package com.mhd.system.api.domain.finance;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* 用户钱包账户对象 account_cash_wallet
*
* @author mhd
* @date 2023-03-18
*/
@Data
public class AccountCashWalletPo extends BaseVOEntity
{
private static final long serialVersionUID = 1L;
/** 用户钱包账户id */
@ApiModelProperty(name = "用户钱包账户id")
private Long accountCashWalletId;
/** 钱包id */
@ApiModelProperty(name = "钱包id")
private Long accountWalletId;
/** 用户id */
@ApiModelProperty(name = "用户id")
private Long userId;
/** 姓名 */
@ApiModelProperty(name = "姓名")
private String userName = "";
/** 账号 */
@ApiModelProperty(name = "账号")
private String userAccount = "";
/** 身份证号 */
@ApiModelProperty(name = "身份证号")
private String userIdcardNumber = "";
/** 手机号 */
@ApiModelProperty(name = "手机号")
private String userPhone = "";
/** 公司名称 */
@ApiModelProperty(name = "公司名称")
private String enterpriseName = "";
/** 组织id */
@ApiModelProperty(name = "组织id")
private Long organizationId;
@ApiModelProperty(name = "一级组织表ID")
private Long topOrganizationId;
@ApiModelProperty(name = "一级组织表Name")
private String topOrganizationName = "";
/** 组织名称 */
@ApiModelProperty(name = "组织名称")
private String organizationName = "";
/** 钱包余额 */
@ApiModelProperty(name = "钱包余额")
private BigDecimal walletBalance = BigDecimal.ZERO;
/** 可用金额 */
@ApiModelProperty(name = "可用金额")
private BigDecimal walletAvailableBalance = BigDecimal.ZERO;
/** 冻结金额 */
@ApiModelProperty(name = "冻结金额")
private BigDecimal walletFreezeBalance = BigDecimal.ZERO;
/** 账户状态(1-正常,2-锁定) */
@ApiModelProperty(name = "账户状态(1-正常,2-锁定)")
private Integer accountWalletStatus;
@ApiModelProperty(name = "账户类型(1-个人,2-组织)")
private Integer accountType;
@ApiModelProperty(name = "授信额度")
private BigDecimal creditLimit;
@ApiModelProperty(name = "总授信额度")
private BigDecimal totalLimit;
@ApiModelProperty(name = "支付宝账户")
private String alipayAccount;
@ApiModelProperty(name = "支付宝账户名称")
private String alipayAccountName;
}
@@ -0,0 +1,44 @@
package com.mhd.system.api.domain.mall;
import lombok.Data;
import java.util.List;
/**
* @author
* 扩展用户信息
*/
@Data
public class BaseUser {
private static final long serialVersionUID = 1L;
/**
* 用户ID
*/
private String id;
/**
* 机构ID
*/
private String organId;
/**
* -1、系统管理员;1、租户管理员;2、店铺管理员
*/
private String type;
/**
* 租户ID
*/
private String tenantId;
/**
* 店铺ID
*/
private String shopId;
/**
* 平台系统管理员绑定的租户
*/
private List<String> tenantIds;
private String userName;
}
@@ -0,0 +1,55 @@
package com.mhd.system.api.domain.mall;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.time.LocalDateTime;
/**
* 分销员
*
* @date 2021-04-25 17:40:35
*/
@Data
public class DistributionUser{
private static final long serialVersionUID=1L;
/**
* PK
*/
@TableId(type = IdType.INPUT)
private String userId;
/**
* 所属租户
*/
private String tenantId;
/**
* 逻辑删除标记(0:显示;1:隐藏)
*/
private String delFlag;
/**
* 创建时间
*/
private LocalDateTime createTime;
/**
* 最后更新时间
*/
private LocalDateTime updateTime;
/**
* 累计佣金金额
*/
private BigDecimal commissionTotal;
/**
* 已提现佣金金额
*/
private BigDecimal commissionWithdrawal;
private UserInfo userInfo;
}
@@ -0,0 +1,106 @@
package com.mhd.system.api.domain.mall;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* <p>
* 租户机构管理
* </p>
*
* @author
*/
@Data
public class SysTenant implements Serializable {
private static final long serialVersionUID = 1L;
private String id;
/**
* 机构名称
*/
private String name;
/**
* 排序
*/
private Integer sort;
/**
* 机构编码
*/
private String code;
/**
* 机构类型
*/
private String type;
/**
* 租户ID
*/
private String tenantId;
/**
* 电话
*/
private String phone;
/**
* 传真
*/
private String fax;
/**
* 邮箱
*/
private String email;
/**
* 地址
*/
private String address;
/**
* 备注
*/
private String remarks;
private String username;
private String password;
/**
* 创建时间
*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private LocalDateTime createTime;
/**
* 修改时间
*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private LocalDateTime updateTime;
/**
* 父级ID,为0时是租户
*/
private String parentId;
/**
* 状态 0:正常,9:冻结
*/
private String status;
/**
* 是否删除 -1:已删除 0:正常
*/
private String delFlag;
/**
* logo
*/
private String logo;
private String szwlTenantId;
/**
* 官方网址
*/
private String homeUrl;
}
@@ -0,0 +1,136 @@
/**
* Copyright (C) 2018-2019
* All rights reserved, Designed By www.joolun.com
* 注意:
* 本软件为www.joolun.com开发研制,未经购买不得使用
* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台)
* 一经发现盗用、分享等行为,将追究法律责任,后果自负
*/
package com.mhd.system.api.domain.mall;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.apache.ibatis.type.JdbcType;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
/**
* 商城用户
*
*/
@Data
public class UserInfo{
private static final long serialVersionUID = 1L;
/**
* PK
*/
@TableId(type = IdType.ASSIGN_ID)
private String id;
/**
* 所属租户
*/
private String tenantId;
/**
* 逻辑删除标记(0:显示;1:隐藏)
*/
private String delFlag;
/**
* 创建时间
*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private LocalDateTime createTime;
/**
* 最后更新时间
*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private LocalDateTime updateTime;
/**
* 用户编码
*/
private Integer userCode;
/**
* 手机号码
*/
private String phone;
/**
* 密码
*/
private String password;
/**
* 来源应用(MA:小程序;H5:普通H5;H5-WX:微信H5APPappH5-PCPC端H5
*/
private String appType;
/**
* 来源应用id
*/
private String appId;
/**
* 用户等级
*/
private Integer userGrade;
/**
* 当前积分
*/
private Integer pointsCurrent;
/**
* 昵称
*/
private String nickName;
/**
* 性别(1:男,2:女,0:未知)
*/
private String sex;
/**
* 头像
*/
private String headimgUrl;
/**
* 所在城市
*/
private String city;
/**
* 所在国家
*/
private String country;
/**
* 所在省份
*/
private String province;
/**
* 上级ID
*/
private String parentId;
/**
* 版本号
*/
@Version
private Integer version;
/**
* 标签ID集合
*/
private String[] labelIds;
private String sharerUserCode;
/**
* 数字物流用户id
*/
private String szwlUserId;
/**
* 电子券数量
*/
private Integer couponNum;
private String thirdSession;
private UserInfo parentUserInfo;
private String parentSecondId;
private DistributionUser distributionUser;
}
@@ -0,0 +1,37 @@
package com.mhd.system.api.domain.mall;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**
* 用户登录参数
*
* @author www.lencle.com
* @date 2019-08-13 10:18:34
*/
@Data
public class UserInfoLoginDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 手机号码
*/
@ApiModelProperty(name = "手机号码")
private String phone;
/**
* 密码
*/
@ApiModelProperty(name = "密码")
private String password;
/**
* 验证码
*/
@ApiModelProperty(name = "验证码")
private String code;
private String sharerUserCode;
}
@@ -0,0 +1,96 @@
package com.mhd.system.api.domain.userCenter;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
/**
* 司机车辆绑定关系对象 driver_vehicle_bind
*
* @author ???
* @date 2023-05-18
*/
@Data
public class DriverVehicleBindDto extends BaseVOEntity{
private static final long serialVersionUID = 1L;
/** 司机车辆绑定表id */
@ApiModelProperty("司机车辆绑定表id")
private Long driverVehicleBindId;
/** 用户主表ID */
@ApiModelProperty("用户主表ID")
@Excel(name = "用户主表ID")
private Long userId;
/** 车辆id */
@ApiModelProperty("车辆id")
@Excel(name = "车辆id")
private Long vehicleId;
/** 车辆关联司机userid */
@ApiModelProperty("车辆关联司机userid")
@Excel(name = "车辆关联司机userid")
private Long driverBindId;
/** 绑定司机姓名 */
@ApiModelProperty("绑定司机姓名")
@Excel(name = "绑定司机姓名")
private String bindDriverName;
/** 绑定司机手机号 */
@ApiModelProperty("绑定司机手机号")
@Excel(name = "绑定司机手机号")
private String bindDriverPhone;
/** 一级组织表ID */
@ApiModelProperty("一级组织表ID")
@Excel(name = "一级组织表ID")
private Long topOrganizationId;
/** 归属组织id */
@ApiModelProperty("归属组织id")
@Excel(name = "归属组织id")
private Long organizationId;
/** 默认状态(1-是,2-否) */
@ApiModelProperty("默认状态(1-是,2-否)")
@Excel(name = "默认状态", readConverterExp = "1=-是,2-否")
private Integer defaultFlag;
@ApiModelProperty(name = "权限菜单ID")
private Long permissionMenuId;
@ApiModelProperty("车牌号")
@Excel(name = "车牌号")
private String vehicleLicensePlateNumber;
@ApiModelProperty("查询信息")
private String queryInfo;
@ApiModelProperty(name = "是否车主:0-无状态,1-我是车主,2-我是驾驶员")
private Integer identityStatus;
@ApiModelProperty(name = "车辆类型(数据字典id)")
private String vehicleTypeId;
@ApiModelProperty(name = "车辆类型(数据字典name)")
private String vehicleTypeName;
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@ApiModelProperty(name = "行驶证检验有效期")
private Date vehicleCheckoutPeriodValidity;
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@ApiModelProperty(name = "经营许可证件有效期(结束)")
private Date businessLicenseExpireEndDate;
@ApiModelProperty(name = "经营许可证件是否长期(0-无状态,1-长期,2-不长期)")
private Integer businessLicenseLongStatus;
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@ApiModelProperty(name = "道路运输证有效期")
private Date roadTransportCertificateExpireDate;
@ApiModelProperty(name = "道路运输证是否长期(0-无状态,1-长期,2-不长期)")
private Integer roadTransportCertificateLongStatus;
}
@@ -0,0 +1,26 @@
package com.mhd.system.api.event.listener;
import com.mhd.common.core.domain.dto.open.ThirdPartyServiceReqLogDTO;
import lombok.Getter;
import lombok.Setter;
import org.springframework.context.ApplicationEvent;
/**
* @author ZhouGY
* @title ThirdPartyServiceReqLogEvent
* @description: 三方服务请求日志事件
* @date 2024/2/16 14:29
**/
@Getter
@Setter
public class ThirdPartyServiceReqLogEvent extends ApplicationEvent {
/**
* 三方服务日志
*/
private ThirdPartyServiceReqLogDTO thirdPartyServiceReqLogDTO;
public ThirdPartyServiceReqLogEvent(Object source) {
super(source);
}
}
@@ -0,0 +1,28 @@
package com.mhd.system.api.event.listener;
import cn.hutool.json.JSONUtil;
import com.mhd.system.api.SystemServiceFeign;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.event.EventListener;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Component;
/**
* @author ZhouGY
* @title ThirdPartyServiceReqLogListener
* @description: 三方服务日志监听事件处理器
* @date 2024/2/16 14:29
**/
@Slf4j
@Component
public class ThirdPartyServiceReqLogListener {
@Autowired
private SystemServiceFeign systemServiceFeign;
@Async()
@EventListener(classes = ThirdPartyServiceReqLogEvent.class)
public void onHandleEvent(ThirdPartyServiceReqLogEvent event) {
log.info("三方服务日志监视器,event={}", JSONUtil.toJsonStr(event));
systemServiceFeign.saveThirdPartyServiceReqLog(event.getThirdPartyServiceReqLogDTO());
}
}
@@ -0,0 +1,8 @@
package com.mhd.system.api.event.object;
/**
* 事件接口,用于定义事件的基本规范和行为。
* 所有具体的事件实现类都应该实现此接口。
*/
public interface Event {
}
@@ -0,0 +1,26 @@
package com.mhd.system.api.event.object;
import lombok.AllArgsConstructor;
import lombok.Data;
import java.io.Serializable;
import lombok.NoArgsConstructor;
/**
* 货主名称修改事件
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public class ShipperNameChangedEvent implements Serializable,Event {
/**
* 用户Id
*/
private Long userId;
/**
* 货主更改的用户名
*/
private String newShipperName;
}
@@ -0,0 +1,21 @@
package com.mhd.system.api.event.publisher;
import com.mhd.system.api.event.object.Event;
/**
* 事件发布者接口,定义了发布事件的基本方法。
* 作为发布事件的根接口,为事件处理提供统一的约束。
*
* @param <T> 事件类型,必须继承自Event
*/
public interface EventPublisher<T extends Event> {
/**
* 发布指定事件。
*
* @param event 要发布的事件对象
*/
void publish(T event);
}
@@ -0,0 +1,42 @@
package com.mhd.system.api.factory;
import com.mhd.system.api.domain.SysLogininforPo;
import com.mhd.system.api.domain.SysOperLogPo;
import com.mhd.common.core.domain.entity.R;
import com.mhd.system.api.Auth.RemoteAuthLogService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.cloud.openfeign.FallbackFactory;
import org.springframework.stereotype.Component;
/**
* 日志服务降级处理
*
* @author mhd
*/
@Component
public class RemoteAuthLogFallbackFactory implements FallbackFactory<RemoteAuthLogService>
{
private static final Logger log = LoggerFactory.getLogger(RemoteAuthLogFallbackFactory.class);
@Override
public RemoteAuthLogService create(Throwable throwable)
{
log.error("日志服务调用失败:{}", throwable.getMessage());
return new RemoteAuthLogService()
{
@Override
public R<Boolean> saveLog(SysOperLogPo sysOperLogPo, String source)
{
return null;
}
@Override
public R<Boolean> saveLogininfor(SysLogininforPo sysLogininforPo, String source)
{
return null;
}
};
}
}
@@ -0,0 +1,56 @@
package com.mhd.system.api.factory;
import com.mhd.common.core.domain.dto.BusinessDataPushDTO;
import com.mhd.common.core.domain.entity.R;
import com.mhd.common.core.domain.po.OrganizationPo;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.system.api.BmsServiceFeign;
import com.mhd.system.api.ProductServiceFeign;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.cloud.openfeign.FallbackFactory;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
import java.util.Set;
/**
* @Description
* @Author zg
* @Version 1.0
* @Date 2023/11/3 14:37
*/
@Component
public class RemoteBmsFeignFallbackFactory implements FallbackFactory<BmsServiceFeign> {
private static final Logger log = LoggerFactory.getLogger(RemoteBmsFeignFallbackFactory.class);
@Override
public BmsServiceFeign create(Throwable throwable) {
log.error("系统服务调用失败:{}", throwable.getMessage());
return new BmsServiceFeign() {
@Override
public AjaxResult getInfoByCode(String billingRulesCode) {
return AjaxResult.error(throwable.getMessage());
}
@Override
public AjaxResult getCustomersInfoByCode(String settlementCustomersCode) {
return AjaxResult.error(throwable.getMessage());
}
@Override
public AjaxResult pushSyncData(BusinessDataPushDTO businessDataPushDTO) {
return AjaxResult.error(throwable.getMessage());
}
@Override
public AjaxResult getDocumentInfoByCodeSet(Set<String> documentTypeCodeSet) {
return AjaxResult.error(throwable.getMessage());
}
};
}
}
@@ -0,0 +1,35 @@
package com.mhd.system.api.factory;
import com.mhd.system.api.RemoteFileService;
import com.mhd.system.api.domain.SysFile;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.cloud.openfeign.FallbackFactory;
import org.springframework.stereotype.Component;
import org.springframework.web.multipart.MultipartFile;
import com.mhd.common.core.domain.entity.R;
/**
* 文件服务降级处理
*
* @author mhd
*/
@Component
public class RemoteFileFallbackFactory implements FallbackFactory<RemoteFileService>
{
private static final Logger log = LoggerFactory.getLogger(RemoteFileFallbackFactory.class);
@Override
public RemoteFileService create(Throwable throwable)
{
log.error("文件服务调用失败:{}", throwable.getMessage());
return new RemoteFileService()
{
@Override
public R<SysFile> upload(MultipartFile file)
{
return R.fail("上传文件失败:" + throwable.getMessage());
}
};
}
}
@@ -0,0 +1,42 @@
package com.mhd.system.api.factory;
import com.mhd.system.api.RemoteLogService;
import com.mhd.system.api.domain.SysLogininforPo;
import com.mhd.system.api.domain.SysOperLogPo;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.cloud.openfeign.FallbackFactory;
import org.springframework.stereotype.Component;
import com.mhd.common.core.domain.entity.R;
/**
* 日志服务降级处理
*
* @author mhd
*/
@Component
public class RemoteLogFallbackFactory implements FallbackFactory<RemoteLogService>
{
private static final Logger log = LoggerFactory.getLogger(RemoteLogFallbackFactory.class);
@Override
public RemoteLogService create(Throwable throwable)
{
log.error("日志服务调用失败:{}", throwable.getMessage());
return new RemoteLogService()
{
@Override
public void saveLog(SysOperLogPo sysOperLogPo, String source)
{
return;
}
@Override
public R<Boolean> saveLogininfor(SysLogininforPo sysLogininforPo, String source)
{
return null;
}
};
}
}
@@ -0,0 +1,51 @@
package com.mhd.system.api.factory;
import com.mhd.common.core.domain.dto.AppConfigDTO;
import com.mhd.common.core.domain.po.AppConfigPO;
import com.mhd.system.api.OrganizationServiceFeign;
import com.mhd.common.core.domain.entity.R;
import com.mhd.common.core.domain.po.OrganizationCorrelationPO;
import com.mhd.common.core.domain.po.OrganizationPo;
import com.mhd.common.core.web.domain.AjaxResult;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.cloud.openfeign.FallbackFactory;
import org.springframework.stereotype.Component;
import java.util.List;
/**
* @Description 调用用户中台
* @Author Alex
* @Date 2022/12/9 17:52
*/
@Component
public class RemoteOrganizationFeignFallbackFactory implements FallbackFactory<OrganizationServiceFeign> {
private static final Logger log = LoggerFactory.getLogger(RemoteOrganizationFeignFallbackFactory.class);
@Override
public OrganizationServiceFeign create(Throwable throwable) {
log.error("用户服务调用失败:{}", throwable.getMessage());
return new OrganizationServiceFeign() {
@Override
public AjaxResult getOrganizationByPath(String path, String source) {
return AjaxResult.error("获取组织失败:" + throwable.getMessage());
}
@Override
public R<OrganizationPo> getInfoForIdList(Long id) {
return null;
}
@Override
public R<List<OrganizationCorrelationPO>> findListByOrganizationId(Long organizationId) {
return R.fail("根据组织id获取该组织绑定关系列表失败:" + throwable.getMessage());
}
@Override
public R<AppConfigPO> getAppConfigByAppPackageFeign(AppConfigDTO appConfigDTO) {
return R.fail("根据包名获取配置失败:" + throwable.getMessage());
}
};
}
}
@@ -0,0 +1,79 @@
package com.mhd.system.api.factory;
import com.mhd.common.core.domain.entity.R;
import com.mhd.common.core.domain.po.OrganizationPo;
import com.mhd.common.core.domain.po.SysTenantsPo;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.system.api.ProductServiceFeign;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.cloud.openfeign.FallbackFactory;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.multipart.MultipartFile;
/**
* @Description
* @Author zg
* @Version 1.0
* @Date 2023/11/3 14:37
*/
@Component
public class RemoteProductFeignFallbackFactory implements FallbackFactory<ProductServiceFeign> {
private static final Logger log = LoggerFactory.getLogger(RemoteProductFeignFallbackFactory.class);
@Override
public ProductServiceFeign create(Throwable throwable) {
log.error("系统服务调用失败:{}", throwable.getMessage());
return new ProductServiceFeign() {
@Override
public AjaxResult selectTopId(Long id) {
return AjaxResult.error("查询失败");
}
@Override
public AjaxResult selectTopOrganizationList(Long id) {
return AjaxResult.error("查询失败");
}
@Override
public AjaxResult getOrganizationIdsByOrganizationId(Long organizationId) {
return AjaxResult.error("查询失败");
}
@Override
public AjaxResult selectAllOrganizationId() {
return AjaxResult.error("查询失败");
}
@Override
public AjaxResult elasticJobList(String applicationName) {
return AjaxResult.error("查询失败");
}
@Override
public AjaxResult getOrganizationInfo(Long id) {
return AjaxResult.error("查询失败");
}
@Override
public R<OrganizationPo> getInfoForIdList(Long id) {
return R.fail("查询失败");
}
@Override
public AjaxResult upload(MultipartFile file) {
return AjaxResult.error("上传失败" + throwable.getMessage());
}
@Override
public R<SysTenantsPo> getTenantsByOrgan(@RequestParam("organizationId") Long organizationId) {
return R.fail("查询失败");
}
};
}
}
@@ -0,0 +1,263 @@
package com.mhd.system.api.factory;
import com.mhd.common.core.domain.dto.NoticeMessageLoggingDto;
import com.mhd.common.core.domain.dto.SysMultistageDictDto;
import com.mhd.common.core.domain.dto.SysProvinceCityCountyDTO;
import com.mhd.common.core.domain.dto.WebSocketDTO;
import com.mhd.common.core.domain.dto.open.StorageLocation;
import com.mhd.common.core.domain.dto.open.SystemOpenApiLogDTO;
import com.mhd.common.core.domain.dto.open.ThirdPartyServiceReqLogDTO;
import com.mhd.common.core.domain.entity.R;
import com.mhd.common.core.domain.po.SysMultistageDictPo;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.system.api.AssociationWarehouseFeign;
import com.mhd.system.api.SystemServiceFeign;
import com.mhd.system.api.domain.ContainerFeignPO;
import com.mhd.system.api.domain.SysDictData;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.cloud.openfeign.FallbackFactory;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
/**
* @Description
* @Author zg
* @Version 1.0
* @Date 2023/11/3 14:37
*/
@Component
public class RemoteSystemFeignFallbackFactory implements FallbackFactory<SystemServiceFeign> {
private static final Logger log = LoggerFactory.getLogger(RemoteSystemFeignFallbackFactory.class);
@Override
public SystemServiceFeign create(Throwable throwable) {
log.error("系统服务调用失败:{}", throwable.getMessage());
return new SystemServiceFeign() {
@Override
public AjaxResult getMultistageDictInfoByCode(String multistageDictCode, String parentDictCode) {
return null;
}
@Override
public AjaxResult selectMultistageDictList(SysMultistageDictDto sysMultistageDictDto) {
return null;
}
@Override
public R<List<SysDictData>> getDictDataList(SysDictData sysDictData) {
return null;
}
@Override
public R<List<SysMultistageDictPo>> getMultistageDictList(SysMultistageDictDto sysMultistageDictDto) {
return null;
}
@Override
public R<List<SysMultistageDictPo>> getMultistageDictTreeList(SysMultistageDictDto sysMultistageDictDto) {
return null;
}
@Override
public AjaxResult selectListByDictType(String dictType) {
return null;
}
@Override
public AjaxResult getDictDataByOpen(String dictType, Long topOrgId) {
return null;
}
@Override
public AjaxResult selectFindAreaInfoList(SysProvinceCityCountyDTO sysProvinceDTO) {
return null;
}
@Override
public AjaxResult findAreaInfoByCityCode(SysProvinceCityCountyDTO sysProvinceDTO) {
return null;
}
@Override
public AjaxResult findAreaInfoByProvince(SysProvinceCityCountyDTO sysProvinceDTO) {
return null;
}
@Override
public AjaxResult addMessageLoggingList(NoticeMessageLoggingDto noticeMessageLoggingDto) {
return null;
}
@Override
public AjaxResult getUserConfigSwitchInfo() {
return null;
}
@Override
public AjaxResult getUserConfigSwitchInfoByOrgId(Long organizationId) {
return null;
}
@Override
public AjaxResult getTopMultistageDictList(String topCode) {
return null;
}
@Override
public AjaxResult addMultistageDictByOpen(SysMultistageDictDto sysMultistageDictDto) {
return null;
}
@Override
public AjaxResult getSysMultistageDictByCodeAndTopOrgId(String code, Long topOrgId) {
return null;
}
@Override
public AjaxResult getMultistageDictListByTopCodeAndTopOrgId(String topCode, Long topOrgId) {
return null;
}
@Override
public void saveLog(SystemOpenApiLogDTO systemOpenApiLogDTO) {
}
@Override
public void saveThirdPartyServiceReqLog(ThirdPartyServiceReqLogDTO thirdPartyServiceReqLogDTO) {
}
@Override
public AjaxResult bulkSend(WebSocketDTO webSocketDTO) {
return AjaxResult.error("WebSocket消息发送失败");
}
@Override
public AjaxResult oneSend(WebSocketDTO webSocketDTO) {
return AjaxResult.error("WebSocket消息发送失败");
}
@Override
public AjaxResult addMessageLogging(NoticeMessageLoggingDto noticeMessageLoggingDto) {
return AjaxResult.error("保存消息信息失败");
}
@Override
public AjaxResult getBatchInfoByBatchId(@PathVariable("batchId") Long batchId) {
return AjaxResult.error("根据批次ID获取批次信息失败");
}
@Override
public AjaxResult getBatchDetailListByBatchId(Long batchId) {
return AjaxResult.error("根据batchId获取对应批次详情信息失败");
}
@Override
public AjaxResult getBatchDetailListByMaterialBaseInfoId(Long materialBaseInfoId) {
return AjaxResult.error("根据materialBaseInfoId获取对应批次详情信息失败");
}
@Override
public AjaxResult getWarehouseInfo(Long correlationId) {
return AjaxResult.error("获取用户当前设置的仓库失败");
}
@Override
public AjaxResult getWarehouseInfoByWarehouseId(@PathVariable("warehouseId") Long warehouseId) {
return AjaxResult.error("根据仓库ID获取仓库信息失败");
}
@Override
public AjaxResult getStorageSectionInfoByStorageSectionId(@PathVariable("storageSectionId") Long storageSectionId) {
return AjaxResult.error("根据库区ID获取库区信息失败");
}
@Override
public AjaxResult getStorageLocationInfoByStorageLocationId(@PathVariable("storageLocationId") Long storageLocationId) {
return AjaxResult.error("根据库位ID获取库位信息失败");
}
@Override
public AjaxResult getStorageLocationCount(@RequestBody StorageLocation storageLocation) {
return AjaxResult.error("获取库位总数量失败");
}
@Override
public AjaxResult getInfoByPackIdAndUnitCode(@PathVariable("packId") Long packId, @PathVariable("unitCode") String unitCode) {
return AjaxResult.error("根据包装ID和单位编码获取信息失败");
}
@Override
public AjaxResult getPlatformInfoByPlatformId(Long platformId) {
return AjaxResult.error("根据platformId获取对应月台信息失败");
}
@Override
public AjaxResult getPlatformUseTimeInfoByPlatformUseTimeId(Long platformUseTimeId) {
return AjaxResult.error("根据platformUseTimeIds获取对应月台使用时间信息失败");
}
@Override
public AjaxResult getContainerInfoByContainerId(Long platformUseTimeId) {
return AjaxResult.error("根据containerId获取对应容器信息失败");
}
@Override
public AjaxResult updateUsageStatus(@RequestBody ContainerFeignPO containerFeign) {
return AjaxResult.error("修改容器占用状态失败");
}
@Override
public AjaxResult setWarehouseInfo(@RequestBody AssociationWarehouseFeign associationWarehouseFeign) {
return AjaxResult.error("查询关联仓库列表根据关联id查询失败");
}
@Override
public AjaxResult getSubInfoByCode(String subjectCode) {
return AjaxResult.error("获取科目信息失败" + throwable.getMessage());
}
@Override
public AjaxResult getProjectByCode(String projectCode) {
return AjaxResult.error("获取项目信息失败" + throwable.getMessage());
}
@Override
public AjaxResult getProjectInfoById(Long projectManageId) {
return AjaxResult.error("查询失败");
}
@Override
public AjaxResult getServiceItemsById(Long serviceItemsManageId) {
return AjaxResult.error("查询失败");
}
@Override
public AjaxResult getServiceItemsByCode(String serviceItemsCode) {
return AjaxResult.error("查询失败");
}
@Override
public AjaxResult getInfoByCode(String contractNumber) {
return AjaxResult.error("查询失败");
}
@Override
public AjaxResult getInfoByCustomer(String settlementCustomersCode, Integer contractType) {
return AjaxResult.error("查询失败");
}
@Override
public AjaxResult queryList() {
return AjaxResult.error("查询失败");
}
};
}
}
@@ -0,0 +1,43 @@
package com.mhd.system.api.factory;
import com.mhd.system.api.TicketServiceFeign;
import com.mhd.common.core.domain.entity.R;
import com.mhd.common.core.domain.po.EnterpriseAccessPO;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.cloud.openfeign.FallbackFactory;
import org.springframework.stereotype.Component;
import java.util.List;
/**
* @author ZhouGY
* @title RemoteTicketFeignFallbackFactory
* @description: 票务服务
* @date 2023/9/21 19:43
**/
@Component
public class RemoteTicketFeignFallbackFactory implements FallbackFactory<TicketServiceFeign> {
private static final Logger log = LoggerFactory.getLogger(RemoteTicketFeignFallbackFactory.class);
@Override
public TicketServiceFeign create(Throwable throwable) {
log.error("用户服务调用失败:{}", throwable.getMessage());
return new TicketServiceFeign() {
/**
* @description 根据组织id查询接入企业信息
* @author ZhouGY
* @date 2023/9/21 20:06
* @param organizationId
* @return R<TicketEnterprisePO>
*/
@Override
public R<List<EnterpriseAccessPO>> getEnterprisePoByOrganizationId(Long organizationId) {
return R.fail("根据组织id查询接入企业信息失败:" + throwable.getMessage());
}
};
}
}
@@ -0,0 +1,43 @@
package com.mhd.system.api.factory;
import com.mhd.system.api.RemoteUserService;
import com.mhd.system.api.domain.SysUser;
import com.mhd.system.api.model.LoginUser;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.cloud.openfeign.FallbackFactory;
import org.springframework.stereotype.Component;
import com.mhd.common.core.domain.entity.R;
/**
* 用户服务降级处理
*
* @author mhd
*/
@Component
public class RemoteUserFallbackFactory implements FallbackFactory<RemoteUserService>
{
private static final Logger log = LoggerFactory.getLogger(RemoteUserFallbackFactory.class);
@Override
public RemoteUserService create(Throwable throwable)
{
log.error("用户服务调用失败:{}", throwable.getMessage());
return new RemoteUserService()
{
@Override
public R<LoginUser> getUserInfo(String username, String source)
{
return R.fail("获取用户失败:" + throwable.getMessage());
}
@Override
public R<Boolean> registerUserInfo(SysUser sysUser, String source)
{
return R.fail("注册用户失败:" + throwable.getMessage());
}
};
}
}
@@ -0,0 +1,167 @@
package com.mhd.system.api.factory;
import com.mhd.common.core.domain.dto.DriverVehicleBindDto;
import com.mhd.common.core.domain.dto.StatisticalMattersDTO;
import com.mhd.common.core.domain.dto.UserDataPermissionQueryDTO;
import com.mhd.common.core.domain.dto.UserDriverDTO;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.system.api.UserServiceFeign;
import com.mhd.system.api.domain.UserDTO;
import com.mhd.system.api.domain.UserUpdateDTO;
import com.mhd.system.api.model.LoginUser;
import com.mhd.common.core.domain.entity.R;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.cloud.openfeign.FallbackFactory;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
import java.util.Map;
/**
* @Description 调用用户中台
* @Author Alex
* @Date 2022/12/9 17:52
*/
@Component
public class RemoteUserFeignFallbackFactory implements FallbackFactory<UserServiceFeign> {
private static final Logger log = LoggerFactory.getLogger(RemoteUserFeignFallbackFactory.class);
@Override
public UserServiceFeign create(Throwable throwable) {
log.error("用户服务调用失败:{}", throwable.getMessage());
return new UserServiceFeign() {
@Override
public R<LoginUser> addUser(UserDTO userDTO, String source) {
return R.fail("创建组织用户失败:" + throwable.getMessage());
}
@Override
public R<LoginUser> updateUser(UserUpdateDTO userUpdateDTO, String source) {
return R.fail("修改组织用户失败:" + throwable.getMessage());
}
@Override
public R<LoginUser> updateWhenLogin(UserUpdateDTO userUpdateDTO, String source) {
return R.fail("修改组织用户失败:" + throwable.getMessage());
}
@Override
public AjaxResult bindVehicle(UserDriverDTO userDriverDTO) {
return AjaxResult.error("绑定车辆失败:" + throwable.getMessage());
}
@Override
public AjaxResult findUserDataPermission(UserDataPermissionQueryDTO userDataPermissionQueryDTO) {
return AjaxResult.error("查询用户数据权限失败:" + throwable.getMessage());
}
@Override
public AjaxResult saveBindVehicle(DriverVehicleBindDto driverVehicleBindDto) {
return AjaxResult.error("保存司机车辆绑定信息失败:" + throwable.getMessage());
}
@Override
public AjaxResult getDriverInfoByUserId(Long userId) {
return AjaxResult.error("根据用户id查询司机信息失败:" + throwable.getMessage());
}
@Override
public Map<String, String> selectUserBindByVehicleId(Long vehicleId) {
return AjaxResult.error("根据用户id查询司机信息失败:" + throwable.getMessage());
}
@Override
public AjaxResult getInfoByVid(List<Long> ids) {
return AjaxResult.error("根据车辆id查询司机失败:" + throwable.getMessage());
}
@Override
public AjaxResult getInfo(Long userId) {
return AjaxResult.error("根据用户ID查询用户详细信息失败:" + throwable.getMessage());
}
@Override
public AjaxResult bindDriverShipList(Long vehicleId) {
return AjaxResult.error("查询车辆绑定的承运人列表信息失败:" + throwable.getMessage());
}
@Override
public AjaxResult changeVehicleUserId(DriverVehicleBindDto driverVehicleBindDto) {
return AjaxResult.error("根据车辆id查询司机失败:" + throwable.getMessage());
}
@Override
public AjaxResult getDriverAndShipperWaitingReviewSum(StatisticalMattersDTO statisticalMattersDTO) {
return AjaxResult.error("获取待审核数量失败:" + throwable.getMessage());
}
@Override
public R<List<Long>> getOnlineDriver() {
return R.fail("获取在线司机ID失败:" + throwable.getMessage());
}
@Override
public AjaxResult<?> getDriverInfoByOpen(String phone, String driverEnterpriseCode) {
return AjaxResult.error("获取司机信息失败:" + throwable.getMessage());
}
@Override
public AjaxResult getRoleListByUserId(Long userId) {
return AjaxResult.error("获取用户角色信息失败:" + throwable.getMessage());
}
@Override
public AjaxResult lockUser(UserDTO userDTO) {
return AjaxResult.error("修改用户状态失败:" + throwable.getMessage());
}
@Override
public AjaxResult<?> getDriverEnterpriseInfoByOpen(String driverEnterpriseCode) {
return AjaxResult.error("查询承运企业详情失败:" + throwable.getMessage());
}
@Override
public AjaxResult<?> userShipperListAll() {
return AjaxResult.error("获取租户托运人失败");
}
@Override
public AjaxResult<?> userDriverListAll() {
return AjaxResult.error("获取租户承运人失败");
}
@Override
public AjaxResult aloneUserDriverAuth(Long userId) {
return AjaxResult.error("独立司机绑定默认车队同步失败");
}
@Override
public AjaxResult getInfoByMoIdAndUserId(Long motorcadeId, Long userId) {
return AjaxResult.error("查询失败" + throwable.getMessage());
}
@Override
public R<LoginUser> getUserByUserId(@PathVariable("userId") Long userId, String source) {
return R.fail("获取组织用户失败:" + throwable.getMessage());
}
@Override
public R<LoginUser> getUserByDingUserId(@RequestParam(value = "dingUserId") String dingUserId, String source) {
return R.fail("获取组织用户失败:" + throwable.getMessage());
}
@Override
public R<LoginUser> getUserByTopOrganizationUserAccount(@RequestBody UserDTO userDTO, String source) {
return R.fail("获取组织用户失败:" + throwable.getMessage());
}
@Override
public R<LoginUser> getUserByTopOrganizationUserPhone(@RequestBody UserDTO userDTO, String source) {
return R.fail("获取组织用户失败:" + throwable.getMessage());
}
};
}
}
@@ -0,0 +1,504 @@
package com.mhd.system.api.factory;
import com.mhd.common.core.domain.dto.BusinessDocumentDetaliDTO;
import com.mhd.common.core.domain.dto.StaffDataPermissionDTO;
import com.mhd.common.core.domain.dto.wlhy.TmsCloudFreightPaymentDTO;
import com.mhd.common.core.domain.dto.open.OpenVehicleDto;
import com.mhd.common.core.domain.dto.open.WlhyOpenDriverDto;
import com.mhd.common.core.domain.dto.open.WlhyOpenDriverEnterpriseDto;
import com.mhd.common.core.domain.dto.wlhy.*;
import com.mhd.common.core.domain.entity.R;
import com.mhd.common.core.domain.entity.SysConfigSwitch;
import com.mhd.common.core.domain.po.UserPo;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.system.api.WlhyServiceFeign;
import com.mhd.system.api.domain.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.cloud.openfeign.FallbackFactory;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
import java.util.Map;
/**
* 网货服务降级处理
*
* @author mhd
*/
@Component
public class RemoteWlhyFallbackFactory implements FallbackFactory<WlhyServiceFeign>
{
private static final Logger log = LoggerFactory.getLogger(RemoteWlhyFallbackFactory.class);
@Override
public WlhyServiceFeign create(Throwable cause) {
log.error("网货服务调用失败:{}", cause.getMessage());
return new WlhyServiceFeign() {
@Override
public R<WlhyLoginUser> getWlhyUserInfo(SysLoginModel sysLoginModel) {
//调用服务失败情况下,返回一个空的对象
R<WlhyLoginUser> res = new R<>();
res.setMsg("未查询到基本信息"+cause.getMessage());
res.setData(new WlhyLoginUser());
res.setCode(R.SUCCESS);
return res;
}
@Override
public R<Long> getUserInfoBySzwlUserId(Long szwlUserId) {
//调用服务失败情况下,返回一个空的对象
R<Long> res = new R<>();
res.setMsg("根据数字物流的用户ID获取用户信息"+cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public R<Boolean> addPlatformUser(PlatformUserDTO platformUserDTO) {
//调用服务失败情况下,返回一个空的对象
R<Boolean> res = new R<>();
res.setMsg("新增平台员工基本信息"+cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public R<Boolean> registerUser(PlatformUserDTO platformUserDTO) {
R<Boolean> res = new R<>();
res.setMsg("新增平台员工基本信息"+cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public R<Boolean> editPlatformUser(PlatformUserDTO platformUserDTO) {
//调用服务失败情况下,返回一个空的对象
R<Boolean> res = new R<>();
res.setMsg("修改平台员工基本信息"+cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public R<Boolean> updatePhone(PlatformUserDTO platformUserDTO) {
//调用服务失败情况下,返回一个空的对象
R<Boolean> res = new R<>();
res.setMsg("修改手机号"+cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public R<Boolean> deleteBatchPlatformUser(List<Long> szwlUserIds) {
//调用服务失败情况下,返回一个空的对象
R<Boolean> res = new R<>();
res.setMsg("删除平台员工、角色和部门信息"+cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public R<Boolean> saveOrUpdateCarrierInfo(TmsDriverAddOrUpdateDTO tmsDriverAddOrUpdateDTO) {
//调用服务失败情况下,返回一个空的对象
R<Boolean> res = new R<>();
res.setMsg("新增或修改司机/车队信息 "+cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public R<String> addMotorcadeMember(TmsDriverAddOrUpdateDTO tmsDriverAddOrUpdateDTO) {
//调用服务失败情况下,返回一个空的对象
R<String> res = new R<>();
res.setMsg("加入车队 "+cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public R<Boolean> delMotorcadeMember(TmsDriverAddOrUpdateDTO tmsDriverAddOrUpdateDTO) {
//调用服务失败情况下,返回一个空的对象
R<Boolean> res = new R<>();
res.setMsg("离开车队 "+cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public R<Boolean> updateDriverBusiness(TmsDriverAddOrUpdateDTO tmsDriverAddOrUpdateDTO) {
R<Boolean> res = new R<>();
res.setMsg("修改承运人网货业务设置 "+cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public R<Boolean> auditDriverOrCarrierInfo(TmsDriverAuditDTO tmsDriverAuditDTO) {
//调用服务失败情况下,返回一个空的对象
R<Boolean> res = new R<>();
res.setMsg("审核司机/车队信息 "+cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public R<Boolean> allocationPlatformUserRole(List<PlatformUserDTO> platformUserDTOList) {
//调用服务失败情况下,返回一个空的对象
R<Boolean> res = new R<>();
res.setMsg("分配平台员工角色"+cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public R<Boolean> deleteCarrierInfo(List<Long> szwlIds) {
//调用服务失败情况下,返回一个空的对象
R<Boolean> res = new R<>();
res.setMsg("删除司机/车队信息"+cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public AjaxResult szwlSyncTaxcompany(TaxactionDTO taxactionDTO) {
return AjaxResult.error(cause.getMessage());
}
@Override
public R<List<Long>> getAllTransportNote() {
//调用服务失败情况下,返回一个空的对象
R<List<Long>> res = new R<>();
res.setMsg("获取运输单号失败"+cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public R<Boolean> synTemplateSeal(UserPo userPo) {
//调用服务失败情况下,返回一个空的对象
R<Boolean> res = new R<>();
res.setMsg("同步电子签章"+cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public AjaxResult szwlSyncBankCard(TmsBankCardDTO tmsBankCardDTO) {
return AjaxResult.error(cause.getMessage());
}
@Override
public AjaxResult szwlDeleteBankCard(TmsBankCardDTO tmsBankCardDTO) {
return AjaxResult.error(cause.getMessage());
}
@Override
public AjaxResult updateMonthlySettlementFlag(TmsShipperDTO tmsShipperDTO) {
return AjaxResult.error(cause.getMessage());
}
@Override
public R<TmsTransportNote> selectByOrderNum(String orderNo) {
R<TmsTransportNote> res = new R<>();
res.setMsg("获取运单信息失败"+cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public AjaxResult payCallback(List<TmsPayCallbackDTO> tmsPayCallbackList) {
return AjaxResult.error(cause.getMessage());
}
@Override
public AjaxResult updateBillingStatus(List<TmsTransportNote> tmsTransportNoteList) {
return AjaxResult.error(cause.getMessage());
}
@Override
public AjaxResult payCallbackShipper(List<TmsPayCallbackDTO> tmsPayCallbackList) {
return AjaxResult.error(cause.getMessage());
}
@Override
public AjaxResult auditCallback(List<TmsPayCallbackDTO> tmsPayCallbackList) {
return AjaxResult.error(cause.getMessage());
}
@Override
public AjaxResult refuseApplication(List<TmsPayCallbackDTO> tmsPayCallbackList) {
return AjaxResult.error(cause.getMessage());
}
@Override
public R<Boolean> batchStaffPermission(StaffDataPermissionDTO staffDataPermissionDTO) {
//调用服务失败情况下,返回一个空的对象
R<Boolean> res = new R<>();
res.setMsg(cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public R<String> getVehicleLicenseNumberBylogin() {
//调用服务失败情况下,返回一个空的对象
R<String> res = new R<>();
res.setMsg("根据数字物流的用户ID获取用户信息"+cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public R<String> selectByDriverId() {
//调用服务失败情况下,返回一个空的对象
R<String> res = new R<>();
res.setMsg("根据数字物流的用户ID获取用户信息"+cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public R<Boolean> deleteShipperInfo(List<Long> szwlIds) {
//调用服务失败情况下,返回一个空的对象
R<Boolean> res = new R<>();
res.setMsg(cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public R<Boolean> cancellationUser() {
//调用服务失败情况下,返回一个空的对象
R<Boolean> res = new R<>();
res.setMsg(cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public R<Boolean> pushNowOffLine(List<Long> userSzwlId) {
R<Boolean> res = new R<>();
res.setMsg(cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public R<String> signAgreement(TmsCollectionAgentWlhyDTO tmsCollectionAgentWlhyDTO) {
R<String> res = new R<>();
res.setMsg(cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public R<Boolean> syncAuthStauts(Long userId) {
R<Boolean> res = new R<>();
res.setMsg(cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public AjaxResult szwlAddAndEditShipper(TmsShipperDTO tmsShipperDTO) {
return AjaxResult.error(cause.getMessage());
}
@Override
public AjaxResult szwlAddVehicle(TmsVehicleDTO tmsVehicleDTO) {
return AjaxResult.error(cause.getMessage());
}
@Override
public AjaxResult szwlUpdateVehicle(TmsVehicleDTO tmsVehicleDTO) {
return AjaxResult.error(cause.getMessage());
}
@Override
public AjaxResult openSzwlSynchronizeVehicle(OpenVehicleDto openVehicleDto) {
return AjaxResult.error(cause.getMessage());
}
@Override
public AjaxResult openDelVehicle(OpenVehicleDto openVehicleDto) {
return AjaxResult.error(cause.getMessage());
}
@Override
public AjaxResult openSzwlSynchronizeDriver(WlhyOpenDriverDto wlhyOpenDriverDto) {
return AjaxResult.error(cause.getMessage());
}
@Override
public AjaxResult openSzwlSynchronizeDriverEnterprise(WlhyOpenDriverEnterpriseDto wlhyOpenDriverEnterpriseDto) {
return AjaxResult.error(cause.getMessage());
}
@Override
public AjaxResult openDelDriver(WlhyOpenDriverDto wlhyOpenDriverDto) {
return AjaxResult.error(cause.getMessage());
}
@Override
public R<Boolean> binding(TmsDriverBinDingDTO tmsDriverBinDingDTO) {
//调用服务失败情况下,返回一个空的对象
R<Boolean> res = new R<>();
res.setMsg("绑定车辆 "+cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public R<Boolean> untying(TmsDriverBinDingDTO tmsDriverBinDingDTO) {
//调用服务失败情况下,返回一个空的对象
R<Boolean> res = new R<>();
res.setMsg("解绑车辆 "+cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public R<Boolean> delMotorcade(TmsDriverAddOrUpdateDTO tmsDriverAddOrUpdateDTO) {
//调用服务失败情况下,返回一个空的对象
R<Boolean> res = new R<>();
res.setMsg("解散车队"+cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public R<Boolean> changePhone(PlatformUserDTO platformUserDTO) {
//调用服务失败情况下,返回一个空的对象
R<Boolean> res = new R<>();
res.setMsg("更改手机号"+cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public R<SysConfigSwitch> getConfigByLogin() {
R<SysConfigSwitch> res = new R<>();
res.setMsg(cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public R<Boolean> motorcadeRemoveDriver(TmsDriverAddOrUpdateDTO tmsDriverAddOrUpdateDTO) {
//调用服务失败情况下,返回一个空的对象
R<Boolean> res = new R<>();
res.setMsg("移除司机"+cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public R<Boolean> deleteUserByUserPo(UserPo userPo) {
//调用服务失败情况下,返回一个空的对象
R<Boolean> res = new R<>();
res.setMsg(cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public R<Map<Long, Integer>> countTransportnoteBySzwlUserIdList(List<Long> userIdList) {
//调用服务失败情况下,返回一个空的对象
R<Map<Long, Integer>> res = new R<>();
res.setMsg(cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public AjaxResult getTmsTransportNoteAllByNumber(@PathVariable("transportationNumber") String transportationNumber) {
return AjaxResult.error(cause.getMessage());
}
@Override
public AjaxResult syncTmsDispatch(@RequestBody List<TmsCloudFreightPaymentDTO> tmsCloudFreightPaymentDTOList) {
return AjaxResult.error(cause.getMessage());
}
@Override
public AjaxResult saveDispatchAdvice(List<DispatchAdviceFeign> dispatchAdviceFeignList) {
return AjaxResult.error(cause.getMessage());
}
@Override
public AjaxResult selectMainOrderByOrderNum(String waybillNumber) {
return AjaxResult.error(cause.getMessage());
}
@Override
public AjaxResult syncBusinessDocumentInfo(List<BusinessDocumentDetaliDTO> businessDocumentDetaliDtoList) {
return AjaxResult.error(cause.getMessage());
}
@Override
public AjaxResult modifyAvailableCreditLimit(TmsShipperDTO tmsShipperDTO) {
return AjaxResult.error(cause.getMessage());
}
@Override
public AjaxResult editPaymentStatus(EditPaymentStatusDTO editPaymentStatusDTO) {
return AjaxResult.error(cause.getMessage());
}
@Override
public R<List<SecondSubjectPO>> getZyclClhsSecondSubjectList(String businessCocumentId) {
R<List<SecondSubjectPO>> res = new R<>();
res.setMsg("查询失败"+cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public R<List<SecondSubjectPO>> getZyclXjhjSecondSubjectList(String businessCocumentId) {
R<List<SecondSubjectPO>> res = new R<>();
res.setMsg("查询失败"+cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public R<Boolean> handleDriverLoanInfo(RevenueExpensesRecordDTO revenueExpensesRecordDTO) {
R<Boolean> res = new R<>();
res.setMsg("处理失败"+cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public R<Boolean> updatePaymentStatusByBusinessDocumentId(List<UpdatePaymentStatusDTO> updatePaymentStatusList) {
R<Boolean> res = new R<>();
res.setMsg("更新失败"+cause.getMessage());
res.setCode(R.FAIL);
return res;
}
@Override
public R<TmsShipper> queryBySzwlUserId(Long szwlUserId) {
//调用服务失败情况下,返回一个空的对象
R<TmsShipper> res = new R<>();
res.setMsg("未查询到基本信息"+cause.getMessage());
res.setData(new TmsShipper());
res.setCode(R.SUCCESS);
return res;
}
@Override
public R<Boolean> deleteBusinessDocumentDetail(BusinessDocumentDetaliDTO businessDocumentDetaliDTO) {
R<Boolean> res = new R<>();
res.setMsg("更新失败"+cause.getMessage());
res.setCode(R.FAIL);
return res;
}
};
}
}
@@ -0,0 +1,51 @@
package com.mhd.system.api.factory;
import com.mhd.common.core.domain.entity.R;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.system.api.WlhyServiceFeign;
import com.mhd.system.api.WmsServiceFeign;
import com.mhd.system.api.domain.MaterialBaseInfoFeign;
import com.mhd.system.api.domain.NoticeOrderDTO;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.cloud.openfeign.FallbackFactory;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.PathVariable;
/**
* @author ZhouGY
* @title RemoteWmsFallbackFactory
* @description: WMS服务调用降级处理
* @date 2024/5/10 9:29
**/
@Component
public class RemoteWmsFallbackFactory implements FallbackFactory<WmsServiceFeign> {
private static final Logger log = LoggerFactory.getLogger(RemoteWmsFallbackFactory.class);
@Override
public WmsServiceFeign create(Throwable cause) {
log.error("WMS服务调用失败:{}", cause.getMessage());
return new WmsServiceFeign() {
@Override
public AjaxResult edit(MaterialBaseInfoFeign materialBaseInfoFeign) {
//调用服务失败情况下返回一个空的对象
return AjaxResult.error(cause.getMessage());
}
@Override
public AjaxResult deleteByIds(@PathVariable("materialBaseInfoIds") Long[] materialBaseInfoIds) {
return AjaxResult.error(cause.getMessage());
}
@Override
public AjaxResult getInfoByMaterialBaseInfoIds(@PathVariable("materialBaseInfoId") Long materialBaseInfoId) {
return AjaxResult.error(cause.getMessage());
}
@Override
public AjaxResult stockOutOrInInsert(NoticeOrderDTO noticeOrderDTO) {
return AjaxResult.error(cause.getMessage());
}
};
}
}
@@ -0,0 +1,96 @@
package com.mhd.system.api.factory;
import com.mhd.common.core.domain.dto.StatisticalMattersDTO;
import com.mhd.common.core.domain.dto.SyncTmsVehicleDTO;
import com.mhd.common.core.domain.dto.VehicleDto;
import com.mhd.common.core.domain.entity.R;
import com.mhd.common.core.domain.po.VehiclePo;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.common.core.web.page.TableDataInfo;
import com.mhd.system.api.TransportFeign;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.cloud.openfeign.FallbackFactory;
import org.springframework.stereotype.Component;
import java.util.List;
/**
* 运力服务降级处理
*
* @author mhd
*/
@Component
public class TransportFallbackFactory implements FallbackFactory<TransportFeign>
{
private static final Logger log = LoggerFactory.getLogger(TransportFallbackFactory.class);
@Override
public TransportFeign create(Throwable throwable) {
log.error("日志服务调用失败:{}", throwable.getMessage());
return new TransportFeign() {
@Override
public TableDataInfo listTwo(VehicleDto vehicleDto) {
return null;
}
@Override
public AjaxResult editVehicle(VehicleDto vehicleDto) {
return null;
}
@Override
public AjaxResult getVehiclePoById(Long vehicleId) {
return null;
}
@Override
public AjaxResult getVehicleByIds(VehicleDto vehicleDto) {
return null;
}
/**
* 根据用户id查询我的车辆信息
*/
@Override
public R<List<VehiclePo>> getVehiclePosByUserId(Long userId) {
return R.fail("根据用户id查询我的车辆列表失败:" + throwable.getMessage());
}
@Override
public AjaxResult vehicleCountByMatter(StatisticalMattersDTO statisticalMattersDTO) {
return AjaxResult.error("查询车辆待审核数量失败:" + throwable.getMessage());
}
@Override
public AjaxResult<?> getVehicleInfoByOpen(String vehicleLicence, String driverEnterpriseCode) {
return AjaxResult.error("获取车辆信息失败:" + throwable.getMessage());
}
@Override
public AjaxResult syncTmsVehicle(SyncTmsVehicleDTO syncTmsVehicleDTO) {
return AjaxResult.error("同步tms车辆信息失败:" + throwable.getMessage());
}
@Override
public R<VehiclePo> findVehicleByPlateNumber(String plateNumber) {
return R.fail("根据车牌号查询车辆信息失败 车牌号:" + plateNumber);
}
@Override
public R<Void> add(VehicleDto vehicleDto) {
return R.fail("添加车辆信息失败");
}
@Override
public R<Void> addForUserApp(VehicleDto vehicleDto) {
return R.fail("新增车辆失败");
}
@Override
public AjaxResult updateMotorcadeNameByMotorcadeId(VehicleDto vehicleDto) {
return AjaxResult.error("修改车辆信息失败:" + throwable.getMessage());
}
};
}
}
@@ -0,0 +1,96 @@
package com.mhd.system.api.feign;
import com.alibaba.fastjson2.JSON;
import com.mhd.common.core.utils.sms.httpclient.HttpMethod;
import feign.Request;
import feign.RequestInterceptor;
import feign.RequestTemplate;
import lombok.extern.slf4j.Slf4j;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import javax.servlet.http.HttpServletRequest;
import java.lang.reflect.Field;
import java.util.Enumeration;
import java.util.Map;
import java.util.Objects;
import java.util.Set;
/**
* Feign 配置注册
*
* @author mhd
**/
@Slf4j
@Configuration
public class FeignAutoConfiguration implements RequestInterceptor
{
@Bean
public RequestInterceptor requestInterceptor()
{
return new FeignRequestInterceptor();
}
@Override
public void apply(RequestTemplate requestTemplate) {
//获取feign请求路径
String url = requestTemplate.url();
//排除数据字典接口GET请求解析
if (url.startsWith("/basicApi/getMultistageDictInfoByCode") || url.startsWith("/dict/data/type/")){
return;
}
ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
if(null == attributes){
return;
}
HttpServletRequest request = attributes.getRequest();
//添加token
requestTemplate.header("Authorization", request.getHeader("Authorization"));
//填充get中的body数据转化成query数据
if (requestTemplate.method().equals(HttpMethod.GET.name()) && Objects.nonNull(requestTemplate.body())) {
String json = requestTemplate.requestBody().asString();
Map<String, Object> map = JSON.parseObject(json);
Set<String> set = map.keySet();
for (String key : set) {
Object values = map.get(key);
if (Objects.nonNull(values)) {
// 将body的参数写入queries
requestTemplate.query(key, values.toString());
}
}
try{
Class requestClass = requestTemplate.getClass();
Field field = requestClass.getDeclaredField("body");
field.setAccessible(true);
//修改body为空
field.set(requestTemplate, Request.Body.empty());
} catch (Exception ex) {
log.error("转换错误" + ex.getMessage());
}
}
Enumeration<String> headerNames = request.getHeaderNames();
if (headerNames != null) {
while (headerNames.hasMoreElements()) {
String name = headerNames.nextElement();
String values = request.getHeader(name);
// 跳过 content-length
if (name.equals("content-length")){
continue;
}
if ("transfer-encoding".equalsIgnoreCase(name)) {
continue;
}
requestTemplate.header(name, values);
}
} else {
log.error("feign调用GET请求转换失败");
}
}
}
@@ -0,0 +1,58 @@
package com.mhd.system.api.feign;
import com.mhd.common.core.constant.SecurityConstants;
import com.mhd.common.core.utils.ServletUtils;
import com.mhd.common.core.utils.StringUtils;
import com.mhd.common.core.utils.ip.IpUtils;
import feign.RequestInterceptor;
import feign.RequestTemplate;
import org.springframework.stereotype.Component;
import javax.servlet.http.HttpServletRequest;
import java.util.Map;
/**
* feign 请求拦截器
*
* @author mhd
*/
@Component
public class FeignRequestInterceptor implements RequestInterceptor
{
@Override
public void apply(RequestTemplate requestTemplate)
{
HttpServletRequest httpServletRequest = ServletUtils.getRequest();
if (StringUtils.isNotNull(httpServletRequest))
{
//获取feign请求路径
String url = requestTemplate.url();
Map<String, String> headers = ServletUtils.getHeaders(httpServletRequest);
// 传递用户信息请求头防止丢失
String userId = headers.get(SecurityConstants.DETAILS_USER_ID);
if (StringUtils.isNotEmpty(userId))
{
requestTemplate.header(SecurityConstants.DETAILS_USER_ID, userId);
}
String userName = headers.get(SecurityConstants.DETAILS_USERNAME);
if (StringUtils.isNotEmpty(userName))
{
requestTemplate.header(SecurityConstants.DETAILS_USERNAME, userName);
}
if (url.startsWith("/userinfo/szwlSyncMallUser") || url.startsWith("/tenant/save") || url.startsWith("/tenant/inside")){
requestTemplate.removeHeader(SecurityConstants.AUTHORIZATION_HEADER);
}else {
String authentication = headers.get(SecurityConstants.AUTHORIZATION_HEADER);
if (StringUtils.isNotEmpty(authentication))
{
requestTemplate.header(SecurityConstants.AUTHORIZATION_HEADER, authentication);
}
}
// 配置客户端IP
requestTemplate.header("X-Forwarded-For", IpUtils.getIpAddr(ServletUtils.getRequest()));
}
}
}
@@ -0,0 +1,50 @@
package com.mhd.system.api.model;
import com.mhd.common.core.annotation.Excel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author ZhouGY
* @title DigitalPlatformCustom
* @description: 数字平台客户
* @date 2023/10/31 20:54
**/
@Data
public class DigitalPlatformCustom {
@ApiModelProperty("客户id")
private String customId;
@ApiModelProperty("客户编码")
private String customCode;
@ApiModelProperty("客户名称")
private String customName;
@ApiModelProperty("应用app名称")
private String appName;
@ApiModelProperty("应用app密码")
private String appPassword;
/**
* 用户唯一标识
*/
private String token;
/**
* 登录时间
*/
private Long loginTime;
/**
* 过期时间
*/
private Long expireTime;
/**
* 登录IP地址
*/
private String ipaddr;
}
@@ -0,0 +1,161 @@
package com.mhd.system.api.model;
import java.io.Serializable;
import java.util.List;
import java.util.Map;
import java.util.Set;
import com.mhd.common.core.domain.entity.OrgProductConfig;
import com.mhd.common.core.domain.po.*;
import com.mhd.system.api.domain.MallOAuthToken;
import com.mhd.system.api.domain.mall.BaseUser;
import com.mhd.system.api.domain.SysUser;
import com.mhd.system.api.domain.WlhyLoginUser;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* 用户信息
*
* @author mhd
*/
@Data
public class LoginUser implements Serializable
{
private static final long serialVersionUID = 1L;
/**
* 用户唯一标识
*/
private String token;
/**
* 用户名id
*/
private Long userid;
/**
* 用户名
*/
private String username;
/**
* 登录时间
*/
private Long loginTime;
/**
* 初始登录时间
*/
private Long initialLoginTime;
/**
* 过期时间
*/
private Long expireTime;
/**
* 登录IP地址
*/
private String ipaddr;
/**
* 权限列表
*/
private Set<String> permissions;
/**
* 角色列表
*/
private Set<String> roles;
private List<String> roleList;
/**
* 角色ID列表
*/
private List<Long> roleIdList;
/**
* 用户信息
*/
private SysUser sysUser;
/**
* 网货用户信息
*/
private WlhyLoginUser wlhyLoginUser;
/**
* websocket地址
*/
private String websocket;
/**
* 终端类型 (1-Web端2-APP端)
*/
private String os;
/**
* 登录终端
*/
private String terminal;
/**
* 终端标识
*/
private String terminalLogo;
/**
* 登录IP所属地区
*/
private String ipRegion;
/**
* 商城用户信息
*/
private BaseUser baseUser;
/**
* 商城H5 thirdSession
*/
private String thirdSession;
/**
* 商城PC mallAccessToken
*/
private MallOAuthToken mallOAuthToken;
/**
* 商城 租户Id
*/
private String mallTenantId;
/**
* 新用户信息
*/
@ApiModelProperty(name = "用户")
private UserPo userPo;
@ApiModelProperty(name = "司机")
private UserDriverPo userDriverPo = new UserDriverPo();
@ApiModelProperty(name = "货主")
private UserShipperPo userShipperPo = new UserShipperPo();
@ApiModelProperty(name = "车辆")
private VehiclePo vehiclePo = new VehiclePo();
@ApiModelProperty(name = "运输企业")
private UserDriverEnterprisePo userDriverEnterprisePo = new UserDriverEnterprisePo();
@ApiModelProperty(name = "组织信息")
private OrganizationPo organizationPo;
@ApiModelProperty(name = "票务企业接入信息")
private List<EnterpriseAccessPO> enterpriseAccessPO;
@ApiModelProperty(name = "数字开放平台客户")
private DigitalOpenPlatformCustomPO digitalOpenPlatformCustomPO;
@ApiModelProperty(name = "APP个人中心数量")
private Map<String,String> myInfoNum;
@ApiModelProperty(name = "以及租户产品配置表")
private OrgProductConfig orgProductConfig;
@ApiModelProperty("仓库信息")
private WarehousePO warehousePO;
}
@@ -0,0 +1,41 @@
package com.mhd.system.api.service.webSocket;
import com.mhd.common.core.constant.SecurityConstants;
import com.mhd.common.core.domain.dto.WebSocketDTO;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.system.api.SystemServiceFeign;
import com.mhd.system.api.domain.SysOperLogPo;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
/**
* 异步WebSocket推送 应用服务层
*
* @author zg
*/
@Async
@Slf4j
@Component
public class AsyncWebSocketApplicationService {
@Autowired
private SystemServiceFeign systemServiceFeign;
/**
* 单个消息
*/
public void oneSend(WebSocketDTO webSocketDTO) {
systemServiceFeign.oneSend(webSocketDTO);
}
/**
* 群发消息
*/
public void bulkSend(WebSocketDTO webSocketDTO) {
systemServiceFeign.bulkSend(webSocketDTO);
}
}
@@ -0,0 +1,8 @@
com.mhd.system.api.factory.RemoteUserFallbackFactory
com.mhd.system.api.factory.RemoteLogFallbackFactory
com.mhd.system.api.factory.RemoteFileFallbackFactory
com.mhd.system.api.factory.RemoteUserFeignFallbackFactory
com.mhd.system.api.factory.RemoteOrganizationFeignFallbackFactory
com.mhd.system.api.factory.RemoteTicketFeignFallbackFactory
com.mhd.system.api.factory.RemoteSystemFeignFallbackFactory
com.mhd.system.api.factory.RemoteBmsFeignFallbackFactory
+22
View File
@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<groupId>com.mhd</groupId>
<artifactId>mhd</artifactId>
<version>3.6.0</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<modules>
<module>mhd-api-system</module>
</modules>
<artifactId>mhd-api</artifactId>
<packaging>pom</packaging>
<description>
mhd-api系统接口
</description>
</project>