Commit ca89b4a0 by 周圣杰

mes_project

parents
#过滤文件夹target,.idea
.vscode
.idea
out
*.iml
*.project
*.settings
target
#编译文件
*.class
*.classpath
#包文件
*.jar
*.war
*.zip
*.rar
*.tar.gz
#日志文件
*.log
\ No newline at end of file
# BUILD_ROOT is relative path of target module for project
# example:
# project structure
# workflow_server
# |--build
# |--common
# |--web (available build module root for project)
# |--doc
# |--script
# |--src
# |--target
# |--workflow
# you can adjust BUILD_ROOT value according to project
BUILD_ROOT=system
BUILD_BRANCH_TYPE="S"
\ No newline at end of file
#!/bin/env bash
source ./BUILD_ENV.txt
BUILD_HASH=$(git show --pretty=format:%h -s HEAD 2>/dev/null)
BUILD_DATE=$(date "+%Y%m%d%H%M%S")
BUILD_URL=${BUILD_ROOT}/target/version.vsn
BUILD_BRANCH=${BUILD_BRANCH_TYPE}
# don't modify this line
BUILD_BRANCH_NAME=${GIT_BRANCH##*\/}
rm -rf ${BUILD_URL}
if [ "0" = "$?" ]; then
echo "BUILD_HASH:${BUILD_HASH}" >> ${BUILD_URL}
else
echo "BUILD_HASH:0000000" >> ${BUILD_URL}
fi
echo "BUILD_DATE:${BUILD_DATE}" >> ${BUILD_URL}
echo "BUILD_BRANCH:${BUILD_BRANCH}" >> ${BUILD_URL}
echo "BUILD_BRANCH_NAME:${BUILD_BRANCH_NAME}" >> ${BUILD_URL}
#!/bin/env bash
if [ $# -ne 2 ]; then
echo "参数错误: $#"
exit 1
else
TARGET_ROOT=$1
BRANCH_NAME=$2
source ./BUILD_ENV.txt
cp -rf ${BUILD_ROOT}/doc ${TARGET_ROOT}
cp -rf ${BUILD_ROOT}/script ${TARGET_ROOT}/script-sample
# copy file folder
cp -rf ${BUILD_ROOT}/../file ${TARGET_ROOT}
# copy project jar package
cp -rf ${BUILD_ROOT}/target/*.jar ${TARGET_ROOT}
# copy project version file
cp -rf ${BUILD_ROOT}/target/*.vsn ${TARGET_ROOT}
mkdir -p ${TARGET_ROOT}/properties-sample
if [ $BRANCH_NAME = "stage" ]; then
cp -rf ${BUILD_ROOT}/target/classes/application-stage.properties ${TARGET_ROOT}/properties-sample/application-stage.properties
elif [ $BRANCH_NAME = "master" ]; then
cp -rf ${BUILD_ROOT}/target/classes/application-master.properties ${TARGET_ROOT}/properties-sample/application-master.properties
else
echo "branch name error : $BRANCH_NAME"
exit 1
fi
fi
exit 0
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>mes_ufc</artifactId>
<groupId>groupId</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>mes_ufc_hm</artifactId>
<dependencies>
<dependency>
<groupId>org.gidea.mes</groupId>
<artifactId>commonweb</artifactId>
<version>${mes.product.version}</version>
</dependency>
</dependencies>
</project>
package com.jln.ufc.web.action.aop;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.jln.common.RedisUtil.RedisUtil;
import com.jln.common.annotation.jurisdictionAnnotation.ParametersLoading;
import com.jln.common.constant.TokenCacheConst;
import com.jln.common.entity.Result;
import com.jln.common.entity.User;
import com.jln.common.enums.ResultCodeEnum;
import com.jln.common.exception.CustomException;
import com.jln.common.utils.EmptyUtil;
import com.jln.common.utils.JwtUtils;
import com.jln.common.utils.PageParameter;
import com.jln.system.web.action.commonweb.sysrelevance.pojo.Dto.TableDataDto;
import com.jln.system.web.action.commonweb.sysrelevance.pojo.Vo.TableDataVo;
import com.jln.system.web.action.commonweb.sysrelevance.service.SysRelevanceTableRoleService;
import com.jln.ufc.web.action.entity.LaboratoryPermissions;
import io.jsonwebtoken.Claims;
import lombok.extern.slf4j.Slf4j;
import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Pointcut;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import javax.servlet.http.HttpServletRequest;
import java.beans.IntrospectionException;
import java.beans.PropertyDescriptor;
import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import java.util.stream.Collectors;
/**
* @ClassName: MES-业务,生产调度、生产计划、基础数据-物料管理数据权限控制
* @Description:
* @Author:三刀 Date:2021/9/15 16:35
* Version:1.0
**/
@Slf4j
@Aspect
@Component
public class AuthorityUfcAop {
@Autowired
private RedisUtil redisUtil;
@Autowired
private JwtUtils jwtUtils;
@Autowired
private SysRelevanceTableRoleService sysRelevanceTableRoleService;
@Autowired
private ObjectMapper objectMapper;
/**
* 切入点-----注解切入
*/
@Pointcut("@annotation(com.jln.common.annotation.ApplyForPermission)")
public void entryPoint () {
}
/**
* 前置验证---验证参数是否符合要求
* @param joinPoint
* @return
* @throws Throwable
*/
@Around("entryPoint()")
public Object processingData(ProceedingJoinPoint joinPoint) throws Throwable {
Object[] params = joinPoint.getArgs();
//获取用户信息----通过用户信息查询出,当前用户角色
ServletRequestAttributes requestAttributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
HttpServletRequest request = requestAttributes.getRequest();
Object sysUseroid = request.getHeader("api_key");
if(EmptyUtil.isEmpty(sysUseroid)){
throw new CustomException(ResultCodeEnum.Expire_TOKEN);
}
Claims claimByToken = jwtUtils.getClaimByToken(sysUseroid.toString());
Object o = redisUtil.get(TokenCacheConst.TOKEN_USER_INFO + "::" + claimByToken.getSubject());
if(EmptyUtil.isEmpty(o)){
throw new CustomException(ResultCodeEnum.Expire_TOKEN);
}
User userInfo = objectMapper.convertValue(o, User.class);
//TO-DO--通过参数编码查询出对应参数设置的 default_value值 返回的是数组
for (int i = 0; i < params.length; i++) {
Object param = params[i];
if(param instanceof PageParameter){
Object data = ((PageParameter) param).getData();
// 业务分类
if (data instanceof LaboratoryPermissions) {
data = parameterInjection(userInfo, data);
((PageParameter) param).setData(data);
params[i] = param;
}
}
// 业务分类
if (param instanceof LaboratoryPermissions) {
params[i] = parameterInjection(userInfo, param);
}
}
return joinPoint.proceed(params);
}
private List<Long> getRoleValue(String code, User userInfo){
//根据角色查询配置的id集合
Set<TableDataVo> list = new HashSet<>();
userInfo.getSysRoles().forEach(sysRole -> {
TableDataDto tableDataDto = new TableDataDto();
tableDataDto.setBusinessCode(code);
tableDataDto.setRoleFk(sysRole.getSysRoleId());
//取出配置的参数值
Result<List<TableDataVo>> tableRoleData = sysRelevanceTableRoleService.getTableRoleData(tableDataDto);
if (tableRoleData.confirmSuccess()){
list.addAll(tableRoleData.getData());
}
});
//取出id集合
List<Long> collect = list.stream().map(TableDataVo::getId).collect(Collectors.toList());
return collect;
}
/**
* 通过参数配置的 值,查询出需要加载哪些对应参数(实验室)
* @return
*/
private Object parameterInjection(User userInfo, Object object){
LaboratoryPermissions laboratoryPermissions = new LaboratoryPermissions();
Class<?> aClass = laboratoryPermissions.getClass();
Field[] declaredFields = aClass.getDeclaredFields();
ParametersLoading annotation = declaredFields[0].getAnnotation(ParametersLoading.class);
//参数对应编码
String value = annotation.value();
List<Long> roleValue = getRoleValue(value, userInfo);
PropertyDescriptor pd = null;
try {
if(!EmptyUtil.isEmpty(roleValue)){
pd = new PropertyDescriptor(declaredFields[0].getName(), aClass);
//获得写方法
Method wM = pd.getWriteMethod();
wM.invoke(laboratoryPermissions, roleValue);
}
} catch (IntrospectionException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
}
BeanUtils.copyProperties(laboratoryPermissions, object);
return object;
}
}
package com.jln.ufc.web.action.entity;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.jln.common.annotation.jurisdictionAnnotation.ParametersLoading;
import io.swagger.annotations.ApiModel;
import lombok.experimental.Accessors;
import java.util.List;
/**
* @author: Luca.Liu
* @date: 2022/1/12
*/
@JsonIgnoreProperties(ignoreUnknown = true)
@Accessors(chain = true)
@ApiModel(value = "权限封装对象")
public class LaboratoryPermissions {
/**
* 业务分类List
*/
@ParametersLoading(value = "SYGL001",describe = "用户可操作的实验业务分类")
private List<Long> ufcLmBusinessTypeIds;
public List<Long> getUfcLmBusinessTypeIds() {
return ufcLmBusinessTypeIds;
}
public void setUfcLmBusinessTypeIds(List<Long> ufcLmBusinessTypeIds) {
this.ufcLmBusinessTypeIds = ufcLmBusinessTypeIds;
}
}
package com.jln.ufc.web.action.entity;
import com.jln.common.entity.Result;
import com.jln.ufc.web.action.enums.ResultCodeInterface;
/**
* @ClassName:
* @Description:
* @Author:三刀 Date:2022/1/19 15:51
* Version:1.0
**/
public class ResultUfc<T> extends Result {
public Result toFailure(ResultCodeInterface resultCode) {
this.setCode(resultCode.getCode());
this.setMsg(resultCode.getMsg().toString());
this.setData(resultCode.getMsg());
return this;
}
}
package com.jln.ufc.web.action.enums;
import com.jln.common.enums.ResultCodeEnum;
import org.apache.poi.ss.formula.functions.T;
import javax.xml.transform.Result;
import java.io.Serializable;
/**
* @ClassName:
* @Description:
* @Author:三刀 Date:2022/1/19 15:25
* Version:1.0
**/
public interface ResultCodeInterface<T extends Serializable>{
/**
* 枚举数据库存储值
* @return
*/
T getMsg();
/**
* 获取code
* @return
*/
int getCode();
}
package com.jln.ufc.web.action.enums;
import com.jln.common.enums.ResultCodeEnum;
public enum UfcResultCodeEnum implements ResultCodeInterface{
ERPERROR30001(30001,"有员工没有组织信息!"),
ERPERROR30002(30002,"请先维护完整的组织信息!"),
ERPERROR30003(30003,"有员工没有部门信息!"),
ERPERROR30004(30004,"请先维护完整的部门信息!"),
ERPERROR30005(30005,"新增岗位信息失败!"),
ERPERROR30006(30006,"保存员工信息失败!"),
ERPERROR30007(30007,"保存用户信息失败!"),
ERPERROR30008(30008,"保存用户主表信息失败!"),
ERPERROR30009(30009,"保存员工关联岗位信息失败!"),
ERPERROR30010(30010,"当前订单号已经不符合可以修改的状态"),
ERPERROR30011(30011,"当前订单号已经不符合可以删除的状态"),
ERPERROR30012(30012,"删除订单失败,请稍后再试!"),
;
private int code;
private String msg;
UfcResultCodeEnum(int code, String msg) {
this.code = code;
this.msg = msg;
}
UfcResultCodeEnum(ResultCodeEnum ufcResultCodeEnum) {
this.code = ufcResultCodeEnum.getCode();
this.msg = ufcResultCodeEnum.getMsg();
}
@Override
public int getCode() {
return code;
}
public void setCode(int code) {
this.code = code;
}
@Override
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
}
package com.jln.ufc.web.action.exception;
import com.jln.common.utils.EmptyUtil;
import com.jln.ufc.web.action.enums.ResultCodeInterface;
/*
* message
*异常的描述信息,也就是在打印栈追踪信息时异常类名后面紧跟着的描述字符串
*cause
*导致此异常发生的父异常,即追踪信息里的caused by
*enableSuppress
*关于异常挂起的参数,这里我们永远设为false即可
*writableStackTrace
*表示是否生成栈追踪信息,只要将此参数设为false, 则在构造异常对象时就不会调用fillInStackTrace()
* 生成”轻量级”异常,对性能的耗费从大到小依次为:输出到日志、获取异常堆栈、创建并 catch 异常
* */
public class UfcCustomException extends RuntimeException {
private int code;
private String msg;
public UfcCustomException(ResultCodeInterface resultCode) {
super(EmptyUtil.isEmpty(resultCode.getMsg())?null: resultCode.toString(), (Throwable)null, false, false);
String string = EmptyUtil.isEmpty(resultCode.getMsg())?null: resultCode.toString();
this.code = resultCode.getCode();
this.msg = string;
}
public UfcCustomException(int code, String msg) {
super(msg, (Throwable)null, false, false);
this.code = code;
this.msg = msg;
}
public int getCode() {
return this.code;
}
public void setCode(int code) {
this.code = code;
}
public String getMsg() {
return this.msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
}
package com.jln.ufc.web.action.ufc.bm.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jln.common.annotation.ApplyForPermission;
import com.jln.common.entity.Result;
import com.jln.common.utils.PageParameter;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcBMaterialSelectCopyVo;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcBMaterialSelectVo;
import com.jln.ufc.web.action.ufc.bm.service.UfcBMaterialService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.web.bind.annotation.*;
/**
* <p>
* 前端控制器
* </p>
*
* @author Aaron
* @since 2020-02-12
*/
@Api(tags = "物料基础信息维护")
@RestController
@RequestMapping("/ufc/bm/bm04/bm0402")
public class UfcBMaterialController {
@Autowired
@Qualifier("UfcBMaterial")
private UfcBMaterialService bMaterialService;
@ApplyForPermission
@ApiOperation(value = "物料信息下拉框查询", notes = "物料信息下拉框查询")
@PostMapping("/selectList")
public Result<Page<UfcBMaterialSelectVo>> select(@RequestBody PageParameter<UfcBMaterialSelectCopyVo> query) {
return bMaterialService.selectList(query);
}
}
package com.jln.ufc.web.action.ufc.bm.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jln.common.entity.Result;
import com.jln.common.utils.PageParameter;
import com.jln.ufc.web.action.ufc.bm.entity.UfcBStandardprocess;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcStandardprocessInfo;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcStandprocessQuery;
import com.jln.ufc.web.action.ufc.bm.service.UfcBStandardprocessService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@Api(tags = "工序维护")
@RestController
@RequestMapping("/bm/ucfBp")
public class UfcBStandardprocessController {
@Autowired
private UfcBStandardprocessService ufcBStandardprocessService;
@ApiOperation(value = "标准工序保存接口",notes="标准工序保存接口")
@PostMapping("/saveerp")
public Result saveerp(@RequestBody List<UfcBStandardprocess> bStandardprocess) {
try {
return ufcBStandardprocessService.saveerp(bStandardprocess);
} catch (Exception e) {
return new Result().toFailure(e.getMessage());
}
}
@ApiOperation(value = "标准工序批量删除接口",notes="标准工序批量删除接口")
@PostMapping("/deleteerp")
public Result deleteerp(@RequestBody List<Long> bStandardprocessoids) {
return ufcBStandardprocessService.deleteerp(bStandardprocessoids);
}
@ApiOperation(value = "工序列表",notes="工序列表")
@PostMapping("/selectPage")
public Result<Page<UfcStandardprocessInfo>> selectPage(@Validated @RequestBody PageParameter<UfcStandprocessQuery> page ) {
return ufcBStandardprocessService.selectPage(page);
}
}
package com.jln.ufc.web.action.ufc.bm.controller;
import com.jln.common.annotation.LoginUser;
import com.jln.common.entity.Result;
import com.jln.common.entity.User;
import com.jln.ufc.web.action.ufc.bm.entity.UfcBStandardprocessflow;
import com.jln.ufc.web.action.ufc.bm.service.UfcBStandardprocessflowService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@Api(tags = "标准工艺路线维护")
@RestController
@RequestMapping("/bm/ucfBsf")
public class UfcBStandardprocessflowController {
@Autowired
private UfcBStandardprocessflowService ufcBStandardprocessflowService;
@ApiOperation(value = "标准工艺路线保存接口",notes="标准工艺路线保存接口")
@PostMapping("/saveerp")
public Result saveerp(@RequestBody List<UfcBStandardprocessflow> bStandardprocessflow, @LoginUser User user) {
return ufcBStandardprocessflowService.saveerp(bStandardprocessflow,user);
}
@ApiOperation(value = "标准工序批量删除接口",notes="标准工序批量删除接口")
@PostMapping("/deleteerp")
public Result deleteerp(@RequestBody List<Long> bStandardprocessflowoids) {
return ufcBStandardprocessflowService.deleteerp(bStandardprocessflowoids);
}
}
package com.jln.ufc.web.action.ufc.bm.controller;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.jln.common.annotation.LoginUser;
import com.jln.common.entity.Result;
import com.jln.common.entity.User;
import com.jln.common.utils.PageParameter;
import com.jln.ufc.web.action.ufc.bm.entity.dto.UfcBSupplierFl;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcBSupplierInfo;
import com.jln.ufc.web.action.ufc.bm.service.UfcBSupplierService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
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.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
/**
* @author: Luca.Liu
* @date: 2022/2/28
*/
@Api(tags = "供应商维护")
@RestController
@RequestMapping("/ufc/bm/bm06/bm0603")
public class UfcBSupplierController {
@Autowired
private UfcBSupplierService bSupplierService;
@ApiOperation(value = "保存供应商设置信息接口",notes="保存供应商设置信息接口")
@PostMapping("/save")
@JsonIgnoreProperties(ignoreUnknown = true)
public Result save(@RequestBody UfcBSupplierInfo bSupplierInfo, @LoginUser User user ) {
return bSupplierService.save(bSupplierInfo,user);
}
@ApiOperation(value = "获取供应商设置接口oid回显",notes="获取供应商设置接口oid回显")
@GetMapping("/get")
@JsonIgnoreProperties(ignoreUnknown = true)
public Result getbyoid(@RequestParam Long oid){
return bSupplierService.getbyoid(oid);
}
@ApiOperation(value = "供应商设置列表",notes="供应商设置列表")
@PostMapping("/selectPage")
@JsonIgnoreProperties(ignoreUnknown = true)
public Result selectPage(@RequestBody PageParameter<UfcBSupplierFl> page) {
return bSupplierService.selectPage(page);
}
}
package com.jln.ufc.web.action.ufc.bm.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jln.common.entity.Result;
import com.jln.common.utils.PageParameter;
import com.jln.ufc.web.action.ufc.bm.entity.dto.UfcMaterialPageDto;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcBMaterialInfo;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcBMaterialSelectCopyVo;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcBMaterialSelectInfoVo;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcBMaterialSelectVo;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcBMaterialView;
import com.jln.ufc.web.action.ufc.bm.service.UfcJcBMaterialService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@Api(tags = "物料基础信息维护")
@RestController
@RequestMapping("/ufc/bm/bm")
public class UfcJcBMaterialController {
@Autowired
private UfcJcBMaterialService bMaterialService;
@ApiOperation(value = "物料信息下拉框查询", notes = "物料信息下拉框查询")
@PostMapping("/queryList")
public Result<Page<UfcBMaterialSelectVo>> queryList(@RequestBody PageParameter<UfcBMaterialSelectCopyVo> query) {
return bMaterialService.queryList(query);
}
@ApiOperation(value = "根据工厂编码查询物料数据", notes = "根据工厂编码查询物料数据")
@PostMapping("/queryByGcidList")
public Result<Page<UfcBMaterialInfo>> queryByGcidList(@RequestBody PageParameter<UfcMaterialPageDto> query) {
return bMaterialService.queryByGcidList(query);
}
@ApiOperation(value = "检验标准维护——获取物料列表", notes = "检验标准维护——获取物料列表")
@PostMapping("/getBMaterialList")
public Result<Page<UfcBMaterialView>> getBMaterialList(@RequestBody PageParameter<UfcBMaterialSelectInfoVo> bMaterialSelectInfo) {
return bMaterialService.getBMaterialList(new Page<>(bMaterialSelectInfo.getPageNum(), bMaterialSelectInfo.getPageSize()), bMaterialSelectInfo.getData());
}
}
package com.jln.ufc.web.action.ufc.bm.entity;
import com.baomidou.mybatisplus.annotation.FieldStrategy;
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 com.baomidou.mybatisplus.extension.activerecord.Model;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.io.Serializable;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.jln.common.constant.LocalDateTimeConst;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
/**
* <p>
*
* </p>
*
* @author
* @since 2020-02-11
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel("工厂实体类")
@TableName("b_factory")
public class UfcBFactory extends Model<UfcBFactory> {
private static final long serialVersionUID = 1L;
/**
* 工厂主键
*/
@ApiModelProperty(example = "工厂主键", required = true,dataType = "String")
@TableId(value = "B_FactoryOID", type = IdType.INPUT)
private Long bFactoryoid;
/**
* 工厂编码
*/
@Size(max = 4,message = "工厂编码最大长度为4个字节")
@NotNull(message = "工厂编码不能为空")
@ApiModelProperty(example = "工厂编码", required = true,dataType = "string")
private String gcid;
/**
* 工厂名称
*/
@Size(max = 24,message = "工厂名称最大长度为24个字节")
@ApiModelProperty(example = "工厂名称", required = true,dataType = "string")
private String gcmc;
/**
* 备注
*/
@Size(max = 250,message = "备注最大长度为250个字节")
@ApiModelProperty(example = " 备注", required = true,dataType = "string")
private String bz;
/**
* 停用标志 0为未停用,1为停用
*/
@ApiModelProperty(example = " 0:启用;1:停用", required = true,dataType = "boolean")
private Boolean tybz;
/**
* 启用日期
*/
@ApiModelProperty(example = "启用日期", required = true,dataType = "date")
@DateTimeFormat(pattern = LocalDateTimeConst.DATE_PATTERN)
@JsonFormat(shape = JsonFormat.Shape.STRING,pattern = LocalDateTimeConst.DATE_PATTERN)
@TableField(updateStrategy= FieldStrategy.IGNORED)
private LocalDate qyrq;
/**
* 停用日期
*/
@ApiModelProperty(example = "停用日期", required = true,dataType = "date")
@DateTimeFormat(pattern = LocalDateTimeConst.DATE_PATTERN)
@JsonFormat(shape = JsonFormat.Shape.STRING,pattern = "yyyy-MM-dd")
@TableField(updateStrategy= FieldStrategy.IGNORED)
private LocalDate tyrq;
/**
* 维护时间
*/
@ApiModelProperty(example = "维护时间", required = true,dataType = "date")
//@JsonFormat(pattern = LocalDateTimeConst.DATE_TIME_PATTERN)
private LocalDateTime sysLastUpd;
/**
* 维护人
*/
@Size(max = 36,message = "维护人主键最大长度为36个字节")
@ApiModelProperty(example = "维护人主键", required = true,dataType = "date")
private Long sysLastUpdBy;
/**
* 是否删除,0为未删除,1为删除
*/
private Integer del;
@Override
protected Serializable pkVal() {
return this.bFactoryoid;
}
}
package com.jln.ufc.web.action.ufc.bm.entity;
import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.jln.common.constant.LocalDateTimeConst;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
/**
* <p>
*
* </p>
*
* @author
* @since 2020-02-12
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("b_material")
public class UfcBMaterial extends Model<UfcBMaterial> {
private static final long serialVersionUID = 1L;
@ApiModelProperty(example = "物料基础信息主键", required = true,dataType = "string")
@TableId(value = "b_materialoid", type = IdType.INPUT)
private Long bMaterialoid;
/**
* 物料编码
*/
@NotBlank(message = "物料编码不能为空")
@ApiModelProperty(example = "物料编码 1001", required = true,dataType = "string")
@Size(max = 20,message = "物料编码最大长度为20个字节")
private String wlid;
/**
* 物料名称
*/
@NotBlank(message = "物料名称不能为空")
@ApiModelProperty(example = "物料名称 老干妈", required = true,dataType = "string")
@Size(max = 80,message = "物料名称最大长度为80个字节")
private String mc;
/**
* 规格型号
*/
@ApiModelProperty(example = "规格型号 XT-1001", required = true,dataType = "string")
@Size(max = 80,message = "规格型号最大长度为80个字节")
private String gg;
/**
* 计量单位
*/
@ApiModelProperty(example = "计量单位 吨", required = true,dataType = "string")
@Size(max = 8,message = "计量单位最大长度为8个字节")
private String jldw;
/**
* 对应物料类别
*/
@ApiModelProperty(example = "物料分类id FL01", required = true,dataType = "string")
@Size(max = 10,message = "对应物料类别最大长度为10个字节")
private String piid;
/**
* 图号
*/
@ApiModelProperty(example = "图号 TH01", required = true,dataType = "string")
@Size(max = 50,message = "图号最大长度为50个字节")
private String tz;
/**
* 材质
*/
@ApiModelProperty(example = "材料 CL01", required = true,dataType = "string")
@Size(max = 30,message = "材质最大长度为30个字节")
private String cl;
/**
* 辅助计量单位
*/
@ApiModelProperty(example = "辅助计量单位 cm", required = true,dataType = "string")
@Size(max = 8,message = "辅助计量单位最大长度为8个字节")
private String fjldw;
/**
* 单件管理
*/
@ApiModelProperty(example = "单件管理 1", required = true)
private Boolean djgl;
/**
* 批号控制
*/
@ApiModelProperty(example = "批号控制 2", required = true)
private Boolean phkz;
/**
* 净重
*/
@ApiModelProperty(example = "净重 2", required = true)
private BigDecimal jz;
/**
* 毛重
*/
@ApiModelProperty(example = "毛重 2", required = true)
private BigDecimal mz;
/**
* 备注
*/
@Size(max = 250,message = "备注最大长度为250个字节")
private String bz;
/**
* 停用标志
*/
@ApiModelProperty(example = "false", required = true)
private Boolean tybz;
/**
* 启用日期
*/
@ApiModelProperty(example = "启用日期", required = true,dataType = "date")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(shape = JsonFormat.Shape.STRING,pattern = "yyyy-MM-dd")
@TableField(updateStrategy= FieldStrategy.IGNORED)
private LocalDate qyrq;
/**
* 停用日期
*/
@ApiModelProperty(example = "停用日期", required = true,dataType = "date")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(shape = JsonFormat.Shape.STRING,pattern = "yyyy-MM-dd")
@TableField(updateStrategy= FieldStrategy.IGNORED)
private LocalDate tyrq;
/**
* 创建日期
*/
@ApiModelProperty(example = "创建日期", hidden = true,dataType = "date")
@JsonFormat(pattern = LocalDateTimeConst.DATE_TIME_PATTERN)
private LocalDateTime sysCreated;
/**
* 最后修改日期
*/
@ApiModelProperty(example = "最后修改日期", hidden = true,dataType = "date")
@JsonFormat(pattern = LocalDateTimeConst.DATE_TIME_PATTERN)
private LocalDateTime sysLastUpd;
/**
* 创建用户
*/
@ApiModelProperty( hidden = true)
@Size(message = "创建用户主键")
private Long sysCreatedBy;
/**
* 最后修改用户
*/
@ApiModelProperty( hidden = true)
@Size(message = "最后修改用户主键")
private Long sysLastUpdBy;
/**
* 物料分类外键
*/
@Size(message = "物料分类主键")
@ApiModelProperty( example = "00000",value = "物料分类外键",required = true)
private Long bMaterialclassFk;
/**
* 删除标记
*/
@TableLogic
@ApiModelProperty(example = "是否删除 0", required = true)
private Boolean del;
/* 2021-05-27 数据库增加字段 */
/**
* 版本号
*/
private String bbh;
/**
* 物料质量等级外键
*/
private Long qualityFk;
/**
* 产品系列外键
*/
private Long cpxlFk;
/**
* 是否ERP物料
*/
private Boolean erpMaterial;
/**
* ERP物料编码
*/
private String erpMaterialCode;
/**
* 存货形态
*/
private String inventoryForms;
/**
* 标准包装数量
*/
private Integer standardPackageQuantity;
/**
* 安全库存
*/
private Integer safetyStock;
/**
* 有效期
*/
private Integer validityPeriod;
/**
* 包装方式(PC|批次采集包装、DJ|单件采集包装、ZJ|不采集直接包装、NO|不需要包装)
*/
private String packingMethod;
/**
* 缺省工厂
*/
private String defaultFactory;
/**
* 缺省工厂外键
*/
private Long defaultFactoryFk;
/**
* 缺省仓库
*/
private String defaultWarehouse;
/**
* 产品结构号
*/
private String productStructure;
/**
* 工艺路线号
*/
private String processRoute;
/**
* 是否属性管理
*/
private Boolean whetherProperty;
/**
* 物料属性组外键
*/
private Long propertyGroupFk;
/**
* 物料属性值
*/
private String materialPropertyValue;
/**
* 批号属性组外键
*/
private Long batchGroupFk;
/**
* 批号属性值
*/
private String batchPropertyValue;
/**
* 订货类型(M|制造 P|外购 W|外协 V|虚拟)
*/
private String orderType;
/**
* 文档附件名称
*/
@ApiModelProperty(example = "文档附件名称",dataType = "string")
private String cessoryName;
/**
* 文档地址
*/
@ApiModelProperty(example = "文档地址",dataType = "string")
private String accessoryUrl;
@Override
protected Serializable pkVal() {
return this.bMaterialoid;
}
}
package com.jln.ufc.web.action.ufc.bm.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* <p>
* 物料属性组和物料属性项目关联表
* </p>
*
* @author
* @since 2021-05-26
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("b_material_group_item")
public class UfcBMaterialGroupItem extends Model<UfcBMaterialGroupItem> {
private static final long serialVersionUID = 1L;
@TableId
private Long id;
/**
* 属性组外键
*/
private Long groupId;
/**
* 属性项目外键
*/
private Long itemId;
/**
* 是否在信息中显示(0:不显示,1:显示)
*/
private Boolean whetherDisplay;
/**
* 显示格式(1:显示属性名称、2:不显示属性名称)
*/
private Integer displayFormat;
/**
* 分隔符(1:空格、2:竖线、3:英文分号、4:中文分号)
*/
@TableField("`separator`")
private Integer separator;
/**
* 属性字段
*/
private String attrField;
/**
* 长度
*/
private Integer length;
@Override
protected Serializable pkVal() {
return this.id;
}
}
package com.jln.ufc.web.action.ufc.bm.entity;
import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* <p>
* 物料属性组
* </p>
*
* @author
* @since 2021-05-25
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("b_material_property_group")
public class UfcBMaterialPropertyGroup extends Model<UfcBMaterialPropertyGroup> {
private static final long serialVersionUID = 1L;
/**
* 物料属性组主键
*/
@TableId
private Long materialPropertyGroupOid;
/**
* 物料属性组编码
*/
private String materialPropertyGroupCode;
/**
* 物料属性组名称
*/
private String name;
/**
* 数量属性
*/
private String numAttr;
/**
* 数量属性(辅)
*/
private String numAttrSecondary;
/**
* 停用标志 0:已停用1:未停用
*/
private Boolean tybz;
/**
* 启用日期
*/
@TableField(updateStrategy = FieldStrategy.IGNORED)
private LocalDate qyrq;
/**
* 停用日期
*/
@TableField(updateStrategy = FieldStrategy.IGNORED)
private LocalDate tyrq;
/**
* 维护人外键
*/
private Long sysLastUpdBy;
/**
* 维护时间
*/
private LocalDateTime sysLastUpd;
/**
* 删除标识(0.未删除1.已删除)
*/
@TableLogic
private Boolean del;
@Override
protected Serializable pkVal() {
return this.materialPropertyGroupOid;
}
}
package com.jln.ufc.web.action.ufc.bm.entity;
import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* <p>
* 物料属性项目
* </p>
*
* @author
* @since 2021-05-25
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("b_material_property_item")
public class UfcBMaterialPropertyItem extends Model<UfcBMaterialPropertyItem> {
private static final long serialVersionUID = 1L;
/**
* 物料属性项目主键
*/
@TableId
private Long materialPropertyItemOid;
/**
* 物料属性项目编码
*/
private String materialPropertyItemCode;
/**
* 物料属性项目名称
*/
private String name;
/**
* 属性值类型(F:分数值型,S:字符型,D:日期型)
*/
private String propertyValueType;
/**
* 属性分类(G:公有,S:私有)
*/
private String propertyType;
/**
* 辅助输入模块
*/
private String auxiliaryInput;
/**
* 可空
*/
private Boolean canEnpty;
/**
* 枚举类型
*/
private Boolean enumType;
/**
* 枚举列表
*/
private String enumList;
/**
* 唯一
*/
private Boolean only;
/**
* 数值上限
*/
private String numUpper;
/**
* 数值下限
*/
private String nunLower;
/**
* 缺省值
*/
private String defaultValue;
/**
* 属性字段
*/
private String attrField;
/**
* 显示
*/
private Boolean display;
/**
* 显示宽度
*/
private Integer displayWidth;
/**
* 长度
*/
private Integer length;
/**
* 备注
*/
private String bz;
/**
* 停用标志 0:已停用1:未停用
*/
private Boolean tybz;
/**
* 启用日期
*/
@TableField(updateStrategy = FieldStrategy.IGNORED)
private LocalDate qyrq;
/**
* 停用日期
*/
@TableField(updateStrategy = FieldStrategy.IGNORED)
private LocalDate tyrq;
/**
* 维护人外键
*/
private Long sysLastUpdBy;
/**
* 维护时间
*/
private LocalDateTime sysLastUpd;
/**
* 删除标识(0.未删除1.已删除)
*/
@TableLogic
private Boolean del;
@Override
protected Serializable pkVal() {
return this.materialPropertyItemOid;
}
}
package com.jln.ufc.web.action.ufc.bm.entity;
import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
/**
* <p>
*
* </p>
*
* @author
* @since 2020-02-21
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("b_productprocessdetail")
public class UfcBProductprocessdetail extends Model<UfcBProductprocessdetail> {
private static final long serialVersionUID = 1L;
@TableId
private Long bProductprocessdetailoid;
/**
* 产品工艺路线编码
*/
private String cpgyid;
/**
* 工序编码
*/
private String gxid;
/**
* 序号
*/
private Integer xh;
/**
* 工序名称
*/
private String gxmc;
/**
* 工序类型
*/
private String gxlx;
/**
* 关键工序
*/
private Integer gjgx;
/**
* 上料
*/
private Integer slgx;
/**
* 下料
*/
private Integer xlgx;
/**
* 测试
*/
private Integer csgx;
/**
* 工位机编码
*/
private String gwjid;
/**
* 备注
*/
private String bz;
/**
* 停用标志
*/
private Boolean tybz;
/**
* 启用日期
*/
@TableField(updateStrategy = FieldStrategy.IGNORED)
private LocalDate qyrq;
/**
* 停用日期
*/
@TableField(updateStrategy = FieldStrategy.IGNORED)
private LocalDate tyrq;
/**
* 最后修改日期
*/
private LocalDateTime sysLastUpd;
/**
* 最后修改用户
*/
private Long sysLastUpdBy;
/**
* 产品工艺明细
*/
private Long bProductprocessFk;
/**
* 删除标识
*/
@TableLogic
private Integer del;
/**
* 工位外键
*/
private Long bWorkstationFk;
/**
* 工段外键
*/
private Long bWorksectionFk;
/**
* 基础工序外键
*/
private Long bStandardprocessFk;
/**
*
*/
private BigDecimal rggs;
/**
*
*/
private Float zbsj;
/**
*
*/
private Float jgsj;
/**
*
*/
private Float pdsj;
private Float zysj;
private Float ddsj;
//------------------------新增字段----------------------------
@ApiModelProperty(example = "作业方式 PC、PDA、DCT", required = true)
private String zyfs;
@ApiModelProperty(example = "采集内容 PD|产能、PD|产能和缺陷", required = true)
private String cjnr;
@ApiModelProperty(example = "是否批次上料 1是 0不是", required = true)
private Boolean isPcsl;
@ApiModelProperty(example = "是否经过本工序", required = true)
private Boolean jgbgx;
@ApiModelProperty(example = "关键物料校验", required = true)
private Boolean gjwljy;
@ApiModelProperty(example = "合格率预警", required = true)
private Boolean hglyj;
@ApiModelProperty(example = "合格率预警阀值 百分比", required = true)
private BigDecimal hglyjfz;
@ApiModelProperty(example = "产品工艺路线节点外键", value = "产品工艺路线节点外键")
private Long technologicalProcessFk;
//标准工艺路线明细带出
@ApiModelProperty(example = "标准产量", value = "标准产量")
private BigDecimal bzcl;
@ApiModelProperty(example = "标准工时", value = "标准产量")
private BigDecimal bzgs;
@ApiModelProperty(example = "标准人数", value = "标准人数")
private Integer bzrs;
//------------------------新增字段----------------------------
//----------------------新增字段 判断是否存在工位外键
@ApiModelProperty(example = "是否维护", value = "是否维护")
@TableField(exist = false)
private Boolean sfwh;
/**
* 首检工序
*/
@ApiModelProperty(value = "首检工序", example = "false", position = 107)
private Boolean firstInspectionProcess;
/**
* 单件管理
*/
@ApiModelProperty(value = "单件管理", example = "false", position = 107)
private Boolean individualManagement;
/**
* 单件生成
*/
@ApiModelProperty(value = "单件生成", example = "false", position = 107)
private Boolean singleGenerating;
/**
* 特殊过程
*/
@ApiModelProperty(value = "特殊过程", example = "false", position = 107)
private Boolean specialProcess;
/**
* 是否允许入库
*/
@ApiModelProperty(value = "是否允许入库", example = "false", position = 101)
private Boolean sfyxrk;
/**
* 默认入库仓库
*/
@ApiModelProperty(value = "默认入库仓库", example = "2000000", position = 102)
private String mrrkck;
/**
* 是否允许变更产品
*/
@ApiModelProperty(value = "是否允许变更产品", example = "false", position = 106)
private Boolean sfyxbgcp;
/**
* 是否允许拆分流程卡
*/
@ApiModelProperty(value = "是否允许拆分流程卡", example = "false", position = 105)
private Boolean sfyxcslck;
/**
* 是否校验工序
*/
@ApiModelProperty(value = "是否校验工序", example = "false", position = 100)
private Boolean sfjygx;
/**
* 是否进行数量校验
*/
@ApiModelProperty(value = "是否进行数量校验", example = "false", position = 107)
private Boolean sfjxsljy;
/**
* 是否允许自动接收
*/
@ApiModelProperty(value = "是否允许自动接收", example = "false", position = 104)
private Boolean sfyxzdjs;
@ApiModelProperty(value = "排序")
private Integer sort;
/**
* 文档附件名称
*/
@ApiModelProperty(example = "文档附件名称",dataType = "string")
private String cessoryName;
/**
* 文档地址
*/
@ApiModelProperty(example = "文档地址",dataType = "string")
private String accessoryUrl;
@ApiModelProperty(example = "是否转包工序",dataType = "boolean")
private Boolean zbgx;
@Override
protected Serializable pkVal() {
return this.bProductprocessdetailoid;
}
}
package com.jln.ufc.web.action.ufc.bm.entity;
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 com.baomidou.mybatisplus.extension.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.jln.common.constant.LocalDateTimeConst;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
@Data
@JsonIgnoreProperties(ignoreUnknown = true)
@ApiModel("Ufc标准工序实体类")
@TableName(value = "b_standardprocess")
public class UfcBStandardprocess extends Model<UfcBStandardprocess> {
private static final long serialVersionUID = 1L;
@TableId(value = "b_standardprocessoid", type = IdType.UUID)
private Long bStandardprocessoid;
/**
* 标准工序编码
*/
@TableField("bzgxid")
private String bzgxid;
/**
* 标准工序名称
*/
@TableField("bzgxmc")
private String bzgxmc;
/**
* 设备数
*/
private Integer sbs;
/**
* 人数
*/
private Integer rs;
/**
* 准备时间
*/
private Float zbsj;
/**
* 排队时间
*/
private Float pdsj;
/**
* 加工时间
*/
private Float jgsj;
/**
* 等待时间
*/
private Float ddsj;
/**
* 关键工序
*/
private Boolean gjgx;
/**
* 上料
*/
private Boolean slgx;
/**
* 下料
*/
private Boolean xlgx;
/**
* 测试
*/
private Boolean csgx;
/**
* 备注
*/
private String bz;
/**
* 停用标志
*/
private Boolean tybz;
/**
* 启用日期
*/
@JsonFormat(pattern = LocalDateTimeConst.DATE_PATTERN)
@ApiModelProperty(value = "启用日期",example = "2021-06-02")
private LocalDate qyrq;
/**
* 停用日期
*/
@JsonFormat(pattern = LocalDateTimeConst.DATE_PATTERN)
@ApiModelProperty(value = "停用日期",example = "2021-06-02")
private LocalDate tyrq;
/**
* 最后修改日期
*/
@JsonFormat(pattern = LocalDateTimeConst.DATE_TIME_PATTERN)
@ApiModelProperty(value = "最后修改日期",example = "2021-06-02 00:00:00")
private LocalDateTime sysLastUpd;
/**
* 最后修改用户
*/
private Long sysLastUpdBy;
private Integer del;
/**
* 转移时间
*/
private Float zysj;
/* 2021-06-01 新增字段 */
/**
* 是否校验工序
*/
private Boolean sfjygx;
/**
* 是否允许入库
*/
private Boolean sfyxrk;
/**
* 默认入库仓库
*/
private String mrrkck;
/**
* 是否允许自动接收
*/
private Boolean sfyxzdjs;
/**
* 是否允许拆分流程卡
*/
private Boolean sfyxcslck;
/**
* 是否允许变更产品
*/
private Boolean sfyxbgcp;
/**
* 是否进行数量校验
*/
private Boolean sfjxsljy;
/**
* 首检工序
*/
@ApiModelProperty(value = "首检工序", example = "false", position = 107)
private Boolean firstInspectionProcess;
/**
* 单件管理
*/
@ApiModelProperty(value = "单件管理", example = "false", position = 107)
private Boolean individualManagement;
/**
* 单件生成
*/
@ApiModelProperty(value = "单件生成", example = "false", position = 107)
private Boolean singleGenerating;
/**
* 特殊过程
*/
@ApiModelProperty(value = "特殊过程", example = "false", position = 107)
private Boolean specialProcess;
@ApiModelProperty(example = "是否经过本工序", required = true)
private Boolean jgbgx;
@ApiModelProperty(example = "是否批次上料 1是 0不是", required = true)
private Boolean isPcsl;
@ApiModelProperty(example = "关键工序校验", required = true)
private Boolean gjgxjy;
@ApiModelProperty(example = "合格率预警", required = true)
private Boolean hglyj;
@ApiModelProperty(example = "合格率预警阀值 百分比", required = true)
private BigDecimal hglyjfz;
/**
* 文档附件名称
*/
@ApiModelProperty(example = "文档附件名称",dataType = "string")
private String cessoryName;
/**
* 文档地址
*/
@ApiModelProperty(example = "文档地址",dataType = "string")
private String accessoryUrl;
/**
* 新增字段,erp组织主键
*/
private String sszz;
/**
* 表示数据是新增还是修改的标识(MES不需要存储:1为新增,2为修改)
*/
@TableField(exist = false)
private Integer aebj;
@Override
protected Serializable pkVal() {
return this.bStandardprocessoid;
}
}
package com.jln.ufc.web.action.ufc.bm.entity;
import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List;
@Data
@JsonIgnoreProperties(ignoreUnknown = true)
@ApiModel("Ufc标准工艺路线实体类")
@TableName(value = "b_standardprocessflow")
public class UfcBStandardprocessflow extends Model<UfcBStandardprocessflow>{
private static final long serialVersionUID = 1L;
@TableId
private Long bStandardprocessflowoid;
private String bzgylxid;
private String bzgymc;
private String gylxlb;
private String gcid;
private String bz;
private Boolean tybz;
private LocalDate qyrq;
@TableField(updateStrategy= FieldStrategy.IGNORED)
private LocalDate tyrq;
private String zt;
private Long sysLastUpdBy;
private Integer del;
private LocalDateTime sysLastUpd;
private Long bFactoryFk;
@ApiModelProperty(example = "版本号:BM001", required = true,dataType = "string")
private String bbh;
@ApiModelProperty(example = "是否发布", required = true,dataType = "boolean")
private Boolean isFb;
@ApiModelProperty(example = "是否缺省版本", required = true,dataType = "boolean")
private Boolean isQsbb;
@ApiModelProperty(example = "标准工艺路线目录外键", required = true,dataType = "long")
private Long stdprocatFk;
@ApiModelProperty(example = "物料外键", required = true,dataType = "long")
private Long bMaterialFk;
@Override
protected Serializable pkVal() {
return this.bStandardprocessflowoid;
}
/**
* 新增字段
* @return
*/
@ApiModelProperty(value = "新增字段,erp组织主键")
private String sszz;
@ApiModelProperty(value = "新增字段,序号 erp作业号")
private Integer xh;
@ApiModelProperty(value = "组织编码")
private String gcCode;
@ApiModelProperty(value = "物料外键")
@TableField(exist = false)
private String cpCode;
@ApiModelProperty(value = "表示数据是新增还是修改的标识(MES不需要存储:1为新增,2为修改)")
@TableField(exist = false)
private Integer aebj;
@ApiModelProperty(value = "产品工艺路线明细")
@TableField(exist = false)
private List<UfcBStandardprocessflowdetail> gx;
}
package com.jln.ufc.web.action.ufc.bm.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName(value = "b_standardprocessflowdetail")
public class UfcBStandardprocessflowdetail extends Model<UfcBStandardprocessflowdetail>{
private static final long serialVersionUID = 1L;
@ApiModelProperty(example = "标准工序主键", value = "标准工序主键")
@TableId
private Long bStandardprocessflowdetailoid;
@ApiModelProperty(example = "标准工序编码", value = "标准工序编码")
private String bzgylxid;
@ApiModelProperty(example = "序号", value = "序号")
private Integer xh;
@ApiModelProperty(example = "标准工序编码:GX01",value = "标准工序编码:GX01")
private String bzgxid;
@ApiModelProperty(example = "标准工序名称:测试", required = true,dataType = "string")
private String bzgxmc;
@ApiModelProperty(example = "工序类型:4", required = true,dataType = "string")
private String gxlx;
private Boolean gjgx;
private Boolean slgx;
private Boolean xlgx;
private Boolean csgx;
private String gdid;
private Float zbsj;
private Float jgsj;
private Float pdsj;
private Float zysj;
private Float ddsj;
private String bz;
@TableLogic
private Integer del;
private Long sysLastUpdBy;
private LocalDateTime sysLastUpd;
@ApiModelProperty(example = "标准工序外键", value = "标准工序外键")
private Long Standardprocessflowfk;
@ApiModelProperty(example = "工位外键", value = "工位外键")
private Long bWorksectionFk;
@ApiModelProperty(example = "工艺节点编码", value = "工艺节点编码")
private Long bStandardprocessflowFk;
@ApiModelProperty(example = "工艺节点编码", value = "工艺节点编码")
private String gyjdbm;
@ApiModelProperty(example = "工艺节点名称", value = "工艺节点名称")
private String gyjdmc;
@ApiModelProperty(example = "流转方式 A|流转节点内所有工序、S|流转节点内某一道工序", value = "流转方式 A|流转节点内所有工序、S|流转节点内某一道工序")
private String lzfs;
@ApiModelProperty(example = "标准产量3位小数", value = "标准产量3位小数")
private BigDecimal bzcl;
@ApiModelProperty(example = "标准工时", value = "标准工时")
private BigDecimal bzgs;
@ApiModelProperty(example = "标准人数", value = "标准人数")
private Integer bzrs;
@ApiModelProperty(example = "作业方式 PC、PDA、DCT", value = "作业方式 PC、PDA、DCT")
private String zyfs;
@ApiModelProperty(example = "采集内容 PD|产能、PD|产能和缺陷", value = "采集内容 PD|产能、PD|产能和缺陷")
private String cjnr;
@ApiModelProperty(example = "是否批次上料 1是 0不是", value = "是否批次上料 1是 0不是")
private Boolean isPcsl;
@ApiModelProperty(example = "是否经过本工序", value = "是否经过本工序")
private Boolean jgbgx;
@ApiModelProperty(example = "关键物料校验", value = "关键物料校验")
private Boolean gjwljy;
@ApiModelProperty(example = "合格率预警", value = "合格率预警")
private Boolean hglyj;
@ApiModelProperty(example = "合格率预警阀值 百分比", value = "合格率预警阀值 百分比")
private BigDecimal hglyjfz;
@ApiModelProperty(example = "标准工序节点外键-新增字段", value = "标准工序节点外键-新增字段")
private Long technologicalProcessFk;
/**
* 首检工序
*/
@ApiModelProperty(value = "首检工序", example = "false", position = 107)
private Boolean firstInspectionProcess;
/**
* 单件管理
*/
@ApiModelProperty(value = "单件管理", example = "false", position = 107)
private Boolean individualManagement;
/**
* 单件生成
*/
@ApiModelProperty(value = "单件生成", example = "false", position = 107)
private Boolean singleGenerating;
/**
* 特殊过程
*/
@ApiModelProperty(value = "特殊过程", example = "false", position = 107)
private Boolean specialProcess;
/**
* 是否允许入库
*/
@ApiModelProperty(value = "是否允许入库", example = "false", position = 101)
private Boolean sfyxrk;
/**
* 默认入库仓库
*/
@ApiModelProperty(value = "默认入库仓库", example = "2000000", position = 102)
private String mrrkck;
/**
* 是否允许变更产品
*/
@ApiModelProperty(value = "是否允许变更产品", example = "false", position = 106)
private Boolean sfyxbgcp;
/**
* 是否允许拆分流程卡
*/
@ApiModelProperty(value = "是否允许拆分流程卡", example = "false", position = 105)
private Boolean sfyxcslck;
/**
* 是否校验工序
*/
@ApiModelProperty(value = "是否校验工序", example = "false", position = 100)
private Boolean sfjygx;
/**
* 是否进行数量校验
*/
@ApiModelProperty(value = "是否进行数量校验", example = "false", position = 107)
private Boolean sfjxsljy;
/**
* 是否允许自动接收
*/
@ApiModelProperty(value = "是否允许自动接收", example = "false", position = 104)
private Boolean sfyxzdjs;
@ApiModelProperty(value = "排序")
private Integer sort;
@Override
protected Serializable pkVal() {
return this.bStandardprocessflowdetailoid;
}
/**
* 新增字段
*/
@ApiModelProperty(example = "是否批次上料 1是 0不是", value = "是否批次上料 1是 0不是")
@TableField(exist = false)
private Boolean is_pcsl;
@ApiModelProperty(value = "首检工序")
@TableField(exist = false)
private Boolean first_inspection_process;
@ApiModelProperty(value = "单件管理")
@TableField(exist = false)
private Boolean individual_management;
@ApiModelProperty(value = "单件生成")
@TableField(exist = false)
private Boolean single_generating;
@ApiModelProperty(value = "特殊过程")
@TableField(exist = false)
private Boolean special_process;
}
package com.jln.ufc.web.action.ufc.bm.entity;
import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.io.Serializable;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.jln.common.constant.LocalDateTimeConst;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* <p>
* 标准工艺路线目录
* </p>
*
* @author
* @since 2021-06-02
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="BStdprocat对象", description="标准工艺路线目录")
@TableName("b_stdprocat")
public class UfcBStdprocat extends Model<UfcBStdprocat> {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "标准工艺路线目录主键")
@TableId
private Long bStdprocatoid;
@ApiModelProperty(value = "标准工艺路线编码")
private String bzgylxid;
@ApiModelProperty(value = "标准工艺路线名称")
private String bzgylxmc;
@ApiModelProperty(value = "工艺路线类别")
private String lbid;
@ApiModelProperty(value = "工厂编码")
private String gcid;
@ApiModelProperty(value = "当前缺省版本号")
private String qsver;
@ApiModelProperty(value = "备注")
private String bz;
@ApiModelProperty(value = "停用标志")
private Boolean tybz;
@ApiModelProperty(value = "维护人")
private Long sysLastUpdBy;
@ApiModelProperty(value = "维护时间")
@JsonFormat(pattern = LocalDateTimeConst.DATE_TIME_PATTERN)
private LocalDateTime sysLastUpd;
@ApiModelProperty(value = "工艺路线类别外键")
private Long fkBProcat;
@ApiModelProperty(value = "工厂外键")
private Long fkBFactory;
@ApiModelProperty(value = "停用日期")
@TableField(updateStrategy = FieldStrategy.IGNORED)
@JsonFormat(pattern = LocalDateTimeConst.DATE_PATTERN)
private LocalDate tyrq;
@ApiModelProperty(value = "启用日期")
@JsonFormat(pattern = LocalDateTimeConst.DATE_PATTERN)
private LocalDate qyrq;
@ApiModelProperty(value = "维护人名称")
@TableField(exist = false)
private String empName;
@Override
protected Serializable pkVal() {
return this.bStdprocatoid;
}
}
package com.jln.ufc.web.action.ufc.bm.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import java.time.LocalDateTime;
import java.io.Serializable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* <p>
*
* </p>
*
* @author
* @since 2020-02-14
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("b_supplier")
public class UfcBSupplier extends Model<UfcBSupplier> {
private static final long serialVersionUID = 1L;
@TableId(value = "b_supplieroid", type = IdType.INPUT)
private Long bSupplieroid;
/**
* 供应商编码
*/
private String gysid;
/**
* 供应商名称
*/
private String mc;
/**
* 供应商简称
*/
private String jc;
/**
* 英文名称
*/
private String ywmc;
/**
* 地址
*/
private String dz;
/**
* 电话
*/
private String tel;
/**
* 传真
*/
private String fax;
/**
* e-mail
*/
private String email;
/**
* 开户行
*/
private String yh;
/**
* 银行账号
*/
private String yhzh;
/**
* 税号
*/
private String sh;
/**
* 法人代表
*/
private String frdb;
/**
* 联系人
*/
private String lxr;
/**
* 货币
*/
private String hbid;
/**
* 地区
*/
private String dq;
/**
* 采购员
*/
private String cgy;
/**
* abc分类
*/
private String abc;
/**
* 供应商分类
*/
private String fl;
/**
* 供应商类型
*/
private String gyslx;
/**
* 冻结
*/
private Boolean dj;
/**
* 状态
*/
private String zt;
/**
* 维护人
*/
private Long sysLastUpdBy;
/**
* 维护时间
*/
private LocalDateTime sysLastUpd;
/**
* 删除标记
*/
private Integer del;
/**
* 是否检测试验供应商
*/
private Boolean ufcJesygys;
/**
* 组织编码
*/
@ApiModelProperty(example = "false", value = "组织名称")
private Long erpOrgId;
@Override
protected Serializable pkVal() {
return this.bSupplieroid;
}
}
package com.jln.ufc.web.action.ufc.bm.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* <p>
* 基础数据-标准工艺路线-记录工序节点数据
* </p>
*
* @author
* @since 2021-06-09
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value = "BTechnologicalStandard对象", description = "基础数据-标准工艺路线-记录工序节点数据")
@TableName("b_technological_standard")
public class UfcBTechnologicalStandard extends Model<UfcBTechnologicalStandard> {
private static final long serialVersionUID = 1L;
@TableId
@ApiModelProperty(value = "标准工艺路线-工序节点数据-主键")
private Long technologicalProcessOid;
@TableField(exist = false)
@ApiModelProperty(value = "旧主键")
private Long oldOid;
@ApiModelProperty(value = "节点名称")
private String nodeName;
@ApiModelProperty(value = "节点编码")
private String nodeCode;
@ApiModelProperty(value = "流转方式:A|流转节点内的所有工序,S|流转节点内的某一道工序")
private String transferMode;
@ApiModelProperty(value = "流转某一道工序:某一道工序的外键")
private Long defaultProcess;
@ApiModelProperty(value = "流程节点的父级主键-开始的pid为:100000000000000000")
private Long technologicalProcessPid;
@ApiModelProperty(value = "标准工艺路线主键")
private Long processRouteFk;
@ApiModelProperty(value = "工序节点的样式信息数据")
private String textJson;
@ApiModelProperty(value = "节点的类型:1|开始节点,2|中间节点,3|结束节点")
private Integer nodeTypes;
@ApiModelProperty(value = "流班组外键")
private Long bGroupFk;
@ApiModelProperty(value = "班组编码")
@TableField(exist = false)
private String BGroupCode;
@TableField(exist = false)
@ApiModelProperty(value = "班组名称")
private String BGroupName;
@ApiModelProperty(value = "排序")
private Integer sort = 0;
@Override
protected Serializable pkVal() {
return this.technologicalProcessOid;
}
}
package com.jln.ufc.web.action.ufc.bm.entity;
import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.jln.common.constant.LocalDateTimeConst;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
/**
* <p>
*
* </p>
*
* @author
* @since 2020-02-12
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("b_material")
public class UfcJcBMaterial extends Model<UfcJcBMaterial> {
private static final long serialVersionUID = 1L;
@ApiModelProperty(example = "物料基础信息主键", required = true,dataType = "string")
@TableId(value = "B_MaterialOID", type = IdType.INPUT)
private Long bMaterialoid;
/**
* 物料编码
*/
@NotBlank(message = "物料编码不能为空")
@ApiModelProperty(example = "物料编码 1001", required = true,dataType = "string")
@Size(max = 20,message = "物料编码最大长度为20个字节")
private String wlid;
/**
* 物料名称
*/
@NotBlank(message = "物料名称不能为空")
@ApiModelProperty(example = "物料名称 老干妈", required = true,dataType = "string")
@Size(max = 80,message = "物料名称最大长度为80个字节")
private String mc;
/**
* 规格型号
*/
@ApiModelProperty(example = "规格型号 XT-1001", required = true,dataType = "string")
@Size(max = 80,message = "规格型号最大长度为80个字节")
private String gg;
/**
* 计量单位
*/
@ApiModelProperty(example = "计量单位 吨", required = true,dataType = "string")
@Size(max = 8,message = "计量单位最大长度为8个字节")
private String jldw;
/**
* 对应物料类别
*/
@ApiModelProperty(example = "物料分类id FL01", required = true,dataType = "string")
@Size(max = 10,message = "对应物料类别最大长度为10个字节")
private String piid;
/**
* 图号
*/
@ApiModelProperty(example = "图号 TH01", required = true,dataType = "string")
@Size(max = 50,message = "图号最大长度为50个字节")
private String tz;
/**
* 材质
*/
@ApiModelProperty(example = "材料 CL01", required = true,dataType = "string")
@Size(max = 30,message = "材质最大长度为30个字节")
private String cl;
/**
* 辅助计量单位
*/
@ApiModelProperty(example = "辅助计量单位 cm", required = true,dataType = "string")
@Size(max = 8,message = "辅助计量单位最大长度为8个字节")
private String fjldw;
/**
* 单件管理
*/
@ApiModelProperty(example = "单件管理 1", required = true)
private Boolean djgl;
/**
* 批号控制
*/
@ApiModelProperty(example = "批号控制 2", required = true)
private Boolean phkz;
/**
* 净重
*/
@ApiModelProperty(example = "净重 2", required = true)
private BigDecimal jz;
/**
* 毛重
*/
@ApiModelProperty(example = "毛重 2", required = true)
private BigDecimal mz;
/**
* 备注
*/
@Size(max = 250,message = "备注最大长度为250个字节")
private String bz;
/**
* 停用标志
*/
@ApiModelProperty(example = "false", required = true)
private Boolean tybz;
/**
* 启用日期
*/
@ApiModelProperty(example = "启用日期", required = true,dataType = "date")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(shape = JsonFormat.Shape.STRING,pattern = "yyyy-MM-dd")
@TableField(updateStrategy= FieldStrategy.IGNORED)
private LocalDate qyrq;
/**
* 停用日期
*/
@ApiModelProperty(example = "停用日期", required = true,dataType = "date")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(shape = JsonFormat.Shape.STRING,pattern = "yyyy-MM-dd")
@TableField(updateStrategy= FieldStrategy.IGNORED)
private LocalDate tyrq;
/**
* 创建日期
*/
@ApiModelProperty(example = "创建日期", hidden = true,dataType = "date")
@JsonFormat(pattern = LocalDateTimeConst.DATE_TIME_PATTERN)
private LocalDateTime sysCreated;
/**
* 最后修改日期
*/
@ApiModelProperty(example = "最后修改日期", hidden = true,dataType = "date")
@JsonFormat(pattern = LocalDateTimeConst.DATE_TIME_PATTERN)
private LocalDateTime sysLastUpd;
/**
* 创建用户
*/
@ApiModelProperty( hidden = true)
@Size(message = "创建用户主键")
private Long sysCreatedBy;
/**
* 最后修改用户
*/
@ApiModelProperty( hidden = true)
@Size(message = "最后修改用户主键")
private Long sysLastUpdBy;
/**
* 物料分类外键
*/
@Size(message = "物料分类主键")
@ApiModelProperty( example = "00000",value = "物料分类外键",required = true)
private Long bMaterialclassFk;
/**
* 删除标记
*/
@TableLogic
@ApiModelProperty(example = "是否删除 0", required = true)
private Boolean del;
/* 2021-05-27 数据库增加字段 */
/**
* 版本号
*/
private String bbh;
/**
* 物料质量等级外键
*/
private Long qualityFk;
/**
* 产品系列外键
*/
private Long cpxlFk;
/**
* 是否ERP物料
*/
private Boolean erpMaterial;
/**
* ERP物料编码
*/
private String erpMaterialCode;
/**
* 存货形态
*/
private String inventoryForms;
/**
* 标准包装数量
*/
private Integer standardPackageQuantity;
/**
* 安全库存
*/
private Integer safetyStock;
/**
* 有效期
*/
private Integer validityPeriod;
/**
* 包装方式(PC|批次采集包装、DJ|单件采集包装、ZJ|不采集直接包装、NO|不需要包装)
*/
private String packingMethod;
/**
* 缺省工厂
*/
private String defaultFactory;
/**
* 缺省工厂外键
*/
private Long defaultFactoryFk;
/**
* 缺省仓库
*/
private String defaultWarehouse;
/**
* 产品结构号
*/
private String productStructure;
/**
* 工艺路线号
*/
private String processRoute;
/**
* 是否属性管理
*/
private Boolean whetherProperty;
/**
* 物料属性组外键
*/
private Long propertyGroupFk;
/**
* 物料属性值
*/
private String materialPropertyValue;
/**
* 批号属性组外键
*/
private Long batchGroupFk;
/**
* 批号属性值
*/
private String batchPropertyValue;
/**
* 订货类型(M|制造 P|外购 W|外协 V|虚拟)
*/
private String orderType;
/**
* 文档附件名称
*/
@ApiModelProperty(example = "文档附件名称",dataType = "string")
private String cessoryName;
/**
* 文档地址
*/
@ApiModelProperty(example = "文档地址",dataType = "string")
private String accessoryUrl;
@Override
protected Serializable pkVal() {
return this.bMaterialoid;
}
}
package com.jln.ufc.web.action.ufc.bm.entity.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @ClassName:
* @Description:
* @Author:三刀 Date:2021/11/24 20:40
* Version:1.0
**/
@Data
@ApiModel(value = "bMaterialPropertyDto",description = "物料属性查询条件")
public class UfcBMaterialPropertyDto {
/**
* 属性项目外键
*/
@ApiModelProperty(value = "属性项目外键")
private Long bmaterialGorupItemfk;
/**
* 属性值
*/
@ApiModelProperty(value = "物料属性值查询")
private String sxz;
}
package com.jln.ufc.web.action.ufc.bm.entity.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel("供应商设置分类")
public class UfcBSupplierFl {
private static final long serialVersionUID = 1L;
@ApiModelProperty(example = "客户设置分类", required = true, dataType = "string")
private String fl;
@ApiModelProperty(example = "供应商编码", required = true, dataType = "string")
private String gysid;
@ApiModelProperty(example = "供应商名称", required = true, dataType = "string")
private String mc;
}
package com.jln.ufc.web.action.ufc.bm.entity.dto;
import com.jln.common.entity.AuthorityEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* @ClassName:
* @Description:
* @Author:三刀 Date:2020/8/23 10:54
* Version:1.0
**/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="物料查询-分页查询--page", description="物料查询-分页查询--page")
public class UfcMaterialPageDto extends AuthorityEntity {
@ApiModelProperty(value = "物料编码",example = "0001")
private String wlid;
@ApiModelProperty(value = "物料名称",example = "电脑")
private String mc;
@ApiModelProperty(value = "规格型号",example = "GG")
private String gg;
@ApiModelProperty(value = "物料关联属性组",example = "物料关联属性组")
private Long propertyGroupFk;
@ApiModelProperty(value = "批号属性组",example = "批号属性组")
private Long batchGroupFk;
@ApiModelProperty(value = "工厂名称",example = "工厂名称")
private String defaultFactory;
}
package com.jln.ufc.web.action.ufc.bm.entity.vo;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.jln.common.constant.LocalDateTimeConst;
import com.jln.common.entity.AuthorityEntity;
import com.jln.ufc.web.action.ufc.bm.entity.dto.UfcBMaterialPropertyDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.hibernate.validator.constraints.Length;
import javax.validation.constraints.NotBlank;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List;
/**
* @author: Luca.Liu
* @date: 2022/1/5
*/
@Data
@ApiModel(value = "物料查询接口")
public class UfcBMaterialSelectCopyVo extends AuthorityEntity {
@ApiModelProperty(example = "物料基础信息主键", hidden = true,dataType = "string")
@TableId(value = "B_MaterialOID", type = IdType.INPUT)
private Long bMaterialoid;
@NotBlank(message = "物料编码不能为空")
@ApiModelProperty(example = "物料编码", required = true,dataType = "string")
private String wlid;
@NotBlank(message = "物料名称不能为空")
@ApiModelProperty(example = "物料名称", required = true,dataType = "string")
private String mc;
@ApiModelProperty(example = "规格型号", required = true,dataType = "string")
private String gg;
@ApiModelProperty(example = "计量单位", required = true,dataType = "string")
private String jldw;
@ApiModelProperty(example = "图号", required = true,dataType = "string")
private String tz;
@ApiModelProperty(example = "材质", required = true,dataType = "string")
private String cl;
@ApiModelProperty(example = "物料分类编码", required = true,dataType = "string")
private String piid;
@ApiModelProperty(example = "物料分类名称", required = true,dataType = "string")
private String typeName;
@ApiModelProperty(example = "物料分类外键", required = true,dataType = "string")
private String bMaterialclassFk;
/**
* 物料属性组外键
*/
@ApiModelProperty(value = "物料属性组外键", example = "")
private Long propertyGroupFk;
/**
* 物料属性组名称
*/
@ApiModelProperty(value = "物料属性组名称", example = "")
private String propertyGroupName;
/**
* 物料属性值
*/
@ApiModelProperty(value = "物料属性值", example = "")
private String materialPropertyValue;
/**
* 批号属性组外键
*/
@ApiModelProperty(value = "批号属性组外键", example = "")
private Long batchGroupFk;
/**
* 批号属性组名称
*/
@ApiModelProperty(value = "批号属性组名称", example = "")
private String batchGroupName;
/**
* 批号属性值
*/
@ApiModelProperty(value = "批号属性值", example = "")
private String batchPropertyValue;
@ApiModelProperty(example = "当前时间", hidden = true,dataType = "string")
private LocalDateTime thisTime;
/**
* 产品结构号
*/
@ApiModelProperty(value = "产品结构号", example = "")
@Length(max = 50)
private String productStructure;
@ApiModelProperty(value = "产品结构号", example = "")
private String productStructureCode;
@ApiModelProperty(value = "工艺路线号编码", example = "")
private String processRoute;
private String processRouteCode;
@ApiModelProperty(example = "版本号", hidden = true,dataType = "string")
private String bbh;
/**
* 停用标志
*/
@ApiModelProperty(example = "false", required = true)
private Boolean tybz;
/**
* 启用日期
*/
@ApiModelProperty(example = "启用日期", required = true,dataType = "date")
@JsonFormat(shape = JsonFormat.Shape.STRING,pattern =LocalDateTimeConst.DATE_PATTERN)
private LocalDate qyrq;
/**
* 停用日期
*/
@ApiModelProperty(example = "停用日期", required = true,dataType = "date")
@JsonFormat(shape = JsonFormat.Shape.STRING,pattern = LocalDateTimeConst.DATE_PATTERN)
private LocalDate tyrq;
/**
* 物料属性查询条件:2021-11-24新增
*/
private List<UfcBMaterialPropertyDto> wlsxList;
@ApiModelProperty(value = "查询属性组明细外键-处理数据", hidden = true)
private List<Long> gorupItemList;
/**
* 属性值
*/
@ApiModelProperty(value = "物料属性值查询",hidden = true)
private List<String> sxzList;
//2021/6/26新增物料属性相关字段
@ApiModelProperty(example = "物料属性字段", required = true, dataType = "string")
private String wlsxJson;
@ApiModelProperty(example = "物料批次字段", required = true, dataType = "string")
private String wlpcJson;
@ApiModelProperty(example = "物料属性组编码", required = true, dataType = "string")
private String wlsxzbm;
@ApiModelProperty(example = "物料属性组名称", required = true, dataType = "string")
private String wlsxzmc;
@ApiModelProperty(example = "物料批次组编码", required = true, dataType = "string")
private String wlpczbm;
@ApiModelProperty(example = "物料批次组名称", required = true, dataType = "string")
private String wlpczmc;
@ApiModelProperty(example = "物料批次属性组外键", required = true, dataType = "string")
private Long batchGroupId;
@ApiModelProperty(example = "物料属性组外键", required = true, dataType = "string")
private Long groupId;
}
package com.jln.ufc.web.action.ufc.bm.entity.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class UfcBMaterialSelectInfoVo {
@ApiModelProperty(example = "物料编码", required = true,dataType = "string")
private String wlid;
@ApiModelProperty(example = "物料名称", required = true,dataType = "string")
private String wlmc;
@ApiModelProperty(example = "规格型号", required = true,dataType = "string")
private String gg;
@ApiModelProperty(example = "物料分类", required = true,dataType = "string")
private String piid;
@ApiModelProperty(example = "图号", required = true,dataType = "string")
private String th;
@ApiModelProperty(example = "材质", required = true,dataType = "string")
private String cz;
@ApiModelProperty(example = "组织机构", required = true,dataType = "string")
private String defaultFactory;
}
package com.jln.ufc.web.action.ufc.bm.entity.vo;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.jln.common.constant.LocalDateTimeConst;
import com.jln.common.entity.PswlsxInfo;
import com.jln.ufc.web.action.ufc.bm.entity.dto.UfcBMaterialPropertyDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.hibernate.validator.constraints.Length;
import javax.validation.constraints.NotBlank;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List;
/**
* @ClassName: 物料查询接口
* @Description:
* @Author:三刀 Date:2020/3/2 18:35
* Version:1.0
**/
@Data
@ApiModel(value = "物料查询接口")
public class UfcBMaterialSelectVo extends PswlsxInfo {
@ApiModelProperty(example = "物料基础信息主键", hidden = true,dataType = "string")
@TableId(value = "B_MaterialOID", type = IdType.INPUT)
private Long bMaterialoid;
@NotBlank(message = "物料编码不能为空")
@ApiModelProperty(example = "物料编码", required = true,dataType = "string")
private String wlid;
@NotBlank(message = "物料名称不能为空")
@ApiModelProperty(example = "物料名称", required = true,dataType = "string")
private String mc;
@ApiModelProperty(example = "规格型号", required = true,dataType = "string")
private String gg;
@ApiModelProperty(example = "计量单位", required = true,dataType = "string")
private String jldw;
@ApiModelProperty(example = "图号", required = true,dataType = "string")
private String tz;
@ApiModelProperty(example = "材质", required = true,dataType = "string")
private String cl;
@ApiModelProperty(example = "物料分类编码", required = true,dataType = "string")
private String piid;
@ApiModelProperty(example = "物料分类名称", required = true,dataType = "string")
private String typeName;
@ApiModelProperty(example = "物料分类外键", required = true,dataType = "string")
private String bMaterialclassFk;
/**
* 物料属性组外键
*/
@ApiModelProperty(value = "物料属性组外键", example = "")
private Long propertyGroupFk;
/**
* 物料属性组名称
*/
@ApiModelProperty(value = "物料属性组名称", example = "")
private String propertyGroupName;
/**
* 物料属性值
*/
@ApiModelProperty(value = "物料属性值", example = "")
private String materialPropertyValue;
/**
* 批号属性组外键
*/
@ApiModelProperty(value = "批号属性组外键", example = "")
private Long batchGroupFk;
/**
* 批号属性组名称
*/
@ApiModelProperty(value = "批号属性组名称", example = "")
private String batchGroupName;
/**
* 批号属性值
*/
@ApiModelProperty(value = "批号属性值", example = "")
private String batchPropertyValue;
@ApiModelProperty(example = "当前时间", hidden = true,dataType = "string")
private LocalDateTime thisTime;
/**
* 产品结构号
*/
@ApiModelProperty(value = "产品结构号", example = "")
@Length(max = 50)
private String productStructure;
@ApiModelProperty(value = "产品结构号", example = "")
private String productStructureCode;
@ApiModelProperty(value = "工艺路线号编码", example = "")
private String processRoute;
private String processRouteCode;
@ApiModelProperty(example = "版本号", hidden = true,dataType = "string")
private String bbh;
@ApiModelProperty(example = "组织名称")
private String defaultFactory;
/**
* 停用标志
*/
@ApiModelProperty(example = "false", required = true)
private Boolean tybz;
/**
* 启用日期
*/
@ApiModelProperty(example = "启用日期", required = true,dataType = "date")
@JsonFormat(shape = JsonFormat.Shape.STRING,pattern = LocalDateTimeConst.DATE_PATTERN)
private LocalDate qyrq;
/**
* 停用日期
*/
@ApiModelProperty(example = "停用日期", required = true,dataType = "date")
@JsonFormat(shape = JsonFormat.Shape.STRING,pattern =LocalDateTimeConst.DATE_PATTERN)
private LocalDate tyrq;
/**
* 物料属性查询条件:2021-11-24新增
*/
private List<UfcBMaterialPropertyDto> wlsxList;
@ApiModelProperty(value = "查询属性组明细外键-处理数据", hidden = true)
private List<Long> gorupItemList;
/**
* 属性值
*/
@ApiModelProperty(value = "物料属性值查询",hidden = true)
private List<String> sxzList;
}
package com.jln.ufc.web.action.ufc.bm.entity.vo;
import com.jln.common.entity.PswlsxInfo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class UfcBMaterialView extends PswlsxInfo {
@ApiModelProperty(example = "物料主键", required = true,dataType = "string")
private Long bMaterialoid;
@ApiModelProperty(example = "物料编码", required = true,dataType = "string")
private String wlid;
@ApiModelProperty(example = "物料名称", required = true,dataType = "string")
private String wlmc;
@ApiModelProperty(example = "规格型号", required = true,dataType = "string")
private String gg;
@ApiModelProperty(example = "物料分类", required = true,dataType = "string")
private String piid;
@ApiModelProperty(example = "物料分类名称", required = true,dataType = "string")
private String pimc;
@ApiModelProperty(example = "图号", required = true,dataType = "string")
private String th;
@ApiModelProperty(example = "材质", required = true,dataType = "string")
private String cz;
@ApiModelProperty(example = "计量单位", required = true,dataType = "string")
private String jldw;
@ApiModelProperty(example = "组织机构", required = true,dataType = "string")
private String defaultFactory;
}
package com.jln.ufc.web.action.ufc.bm.entity.vo;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.jln.common.constant.LocalDateTimeConst;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.Size;
import java.time.LocalDateTime;
@Data
@ApiModel("供应商设置数据层")
@JsonIgnoreProperties(ignoreUnknown = true)
public class UfcBSupplierInfo {
private static final long serialVersionUID = 1L;
@ApiModelProperty(example = "00000", value = "客户设置主键", required = true,dataType = "Long")
@TableId(value = "b_supplieroid", type = IdType.INPUT)
private Long bSupplieroid;
/**
* 供应商编码
*/
@ApiModelProperty(example = "王五", value = "供应商编码", required = true,dataType = "string")
private String gysid;
/**
* 供应商名称
*/
@ApiModelProperty(example = "杰夫供应商", value = "供应商名称", required = true,dataType = "string")
@Size(max = 120,message = "供应商名称最大长度为120个字节")
private String mc;
/**
* 供应商简称
*/
@ApiModelProperty(example = "杰夫", value = "供应商简称", required = true,dataType = "string")
@Size(max = 60,message = "供应商简称最大长度为60个字节")
private String jc;
/**
* 英文名称
*/
@ApiModelProperty(example = "JieFU", value = "英文名称", required = true,dataType = "string")
@Size(max = 100,message = "英文名称最大长度为100个字节")
private String ywmc;
/**
* 地址
*/
@ApiModelProperty(example = "无锡", value = "地址", required = true,dataType = "string")
@Size(max = 100,message = "地址最大长度为100个字节")
private String dz;
/**
* 电话
*/
@ApiModelProperty(example = "18596586632", value = "电话", required = true,dataType = "string")
@Size(max = 20,message = "电话最大长度为20个字节")
private String tel;
/**
* 传真
*/
@ApiModelProperty(example = "1516489988262625", value = "传真", required = true,dataType = "string")
@Size(max = 20,message = "传真最大长度为20个字节")
private String fax;
/**
* e-mail
*/
@ApiModelProperty(example = "2985587456@qq.com", value = "e-mail", required = true,dataType = "string")
@Size(max = 40,message = "e-mail最大长度为40个字节")
private String email;
/**
* 开户行
*/
@ApiModelProperty(example = "建设银行", value = "开户行", required = true,dataType = "string")
@Size(max = 250,message = "开户行最大长度为250个字节")
private String yh;
/**
* 银行账号
*/
@ApiModelProperty(example = "121561652525295829", value = "银行账号", required = true,dataType = "string")
@Size(max = 40,message = "银行账号最大长度为40个字节")
private String yhzh;
/**
* 税号
*/
@ApiModelProperty(example = "595985295298529", value = "税号", required = true,dataType = "string")
@Size(max = 20,message = "税号最大长度为20个字节")
private String sh;
/**
* 法人代表
*/
@ApiModelProperty(example = "张三", value = "法人代表", required = true,dataType = "string")
@Size(max = 30,message = "法人代表最大长度为30个字节")
private String frdb;
/**
* 联系人
*/
@ApiModelProperty(example = "李四", value = "联系人", required = true,dataType = "string")
@Size(max = 20,message = "联系人最大长度为20个字节")
private String lxr;
/**
* 货币
*/
@ApiModelProperty(example = "CNY", value = "货币", required = true,dataType = "string")
@Size(max = 10,message = "货币最大长度为10个字节")
private String hbid;
@ApiModelProperty(example = "CNY", value = "名称", dataType = "string")
private String hbmc;
/**
* 地区
*/
@ApiModelProperty(example = "福州", value = "地区编码", required = true,dataType = "string")
@Size(max = 10,message = "地区最大长度为10个字节")
private String dq;
/**
* 采购员
*/
@ApiModelProperty(example = "李四", value = "采购员", required = true,dataType = "string")
@Size(max = 30,message = "采购员最大长度为30个字节")
private String cgy;
/**
* abc分类
*/
@ApiModelProperty(example = "A", value = "abc分类", required = true,dataType = "string")
@Size(max = 1,message = "abc分类最大长度为1个字节")
private String abc;
/**
* 供应商分类
*/
@ApiModelProperty(example = "FL01", value = "供应商分类", required = true,dataType = "string")
@Size(max = 10,message = "供应商分类最大长度为10个字节")
private String fl;
/**
* 供应商类型
*/
@ApiModelProperty(example = "A", value = "供应商类型", required = true,dataType = "string")
@Size(max = 1,message = "供应商类型最大长度为1个字节")
private String gyslx;
/**
* 冻结
*/
@ApiModelProperty(example = "false", value = "冻结", required = true,dataType = "boolean")
private Boolean dj;
/**
* 状态
*/
@ApiModelProperty(example = "I", value = "状态", required = true,dataType = "string")
@Size(max = 1,message = "状态最大长度为1个字节")
private String zt;
/**
* 维护人主键
*/
@ApiModelProperty(example = "000000", value = "维护人主键", required = true,dataType = "Long")
private Long sysLastUpdBy;
/**
* 维护时间
*/
@ApiModelProperty(example = "2020-02-19 03:59:16", value = "维护时间", required = true,dataType = "date")
@JsonFormat(pattern = LocalDateTimeConst.DATE_TIME_PATTERN)
private LocalDateTime sysLastUpd;
/**
* 维护人姓名
*/
@ApiModelProperty(example = "王五", value = "维护人姓名", required = true,dataType = "string")
private String userName;
/**
* 供应商分类名称
*/
@ApiModelProperty(example = "A1", value = "供应商分类名称", required = true,dataType = "string")
private String flmc;
/**
* 供应商地区名称
*/
@ApiModelProperty(example = "无锡", value = "供应商地区名称", required = true,dataType = "string")
private String dqmc;
/**
* 是否检测试验供应商
*/
@ApiModelProperty(example = "false", value = "是否检测试验供应商", required = true, dataType = "boolean")
private Boolean jesygys;
/**
* 组织名称
*/
@ApiModelProperty(example = "false", value = "组织名称")
private String organizeName;
/**
* 组织编码
*/
@ApiModelProperty(example = "false", value = "组织名称")
private Long erpOrgId;
}
package com.jln.ufc.web.action.ufc.bm.entity.vo;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.jln.common.constant.LocalDateTimeConst;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
@Data
@ApiModel("标准工序数据层")
@JsonIgnoreProperties(ignoreUnknown = true)
public class UfcStandardprocessInfo {
private static final long serialVersionUID = 1L;
@ApiModelProperty(example = "标准工序主键", required = true, dataType = "string")
@TableId(value = "bStandardprocessoid", type = IdType.INPUT)
@JsonProperty(value = "bStandardprocessoid")
private Long bStandardprocessoid;
/**
* 标准工序编码
*/
@NotBlank(message = "标准工序编码不能为空")
@ApiModelProperty(example = "标准工序编码:BZGX001", required = true, dataType = "string")
private String bzgxid;
/**
* 标准工序名称
*/
@NotBlank(message = "标准工序名称不能为空")
@ApiModelProperty(example = "标准工序名称:测试工序", required = true, dataType = "string")
@Size(max = 24, message = "标准工序名称最大长度为24个字节")
private String bzgxmc;
/**
* 设备数
*/
@ApiModelProperty(example = "设备数:10", required = true, dataType = "int")
private Integer sbs;
/**
* 人数
*/
@ApiModelProperty(example = "人数;5", required = true, dataType = "int")
private Integer rs;
/**
* 准备时间
*/
@ApiModelProperty(example = "准备时间:19", required = true, dataType = "float")
private Float zbsj;
/**
* 排队时间
*/
@ApiModelProperty(example = "排队时间:12", required = true, dataType = "float")
private Float pdsj;
/**
* 加工时间
*/
@ApiModelProperty(example = "加工时间:50", required = true, dataType = "float")
private Float jgsj;
/**
* 等待时间
*/
@ApiModelProperty(example = "等待时间:23", required = true, dataType = "float")
private Float ddsj;
/**
* 关键工序
*/
@ApiModelProperty(example = "关键工序:6", required = true, dataType = "int")
private boolean gjgx;
/**
* 上料
*/
@ApiModelProperty(example = "上料:4", required = true, dataType = "int")
private boolean slgx;
/**
* 下料
*/
@ApiModelProperty(example = "下料:1", required = true, dataType = "int")
private boolean xlgx;
/**
* 测试
*/
@ApiModelProperty(example = "测试:4", required = true, dataType = "int")
private boolean csgx;
/**
* 备注
*/
@ApiModelProperty(example = "备注:测试", required = true, dataType = "string")
@Size(max = 250, message = "备注最大长度为250个字节")
private String bz;
/**
* 停用标志
*/
@ApiModelProperty(example = "停用标志", required = true, dataType = "int")
private Boolean tybz;
/**
* 启用日期
*/
@ApiModelProperty(example = "启用日期", required = true, dataType = "date")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd")
private LocalDate qyrq;
/**
* 停用日期
*/
@ApiModelProperty(example = "停用日期", required = true, dataType = "date")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd")
private LocalDate tyrq;
/**
* 创建日期
*//*
@ApiModelProperty(example = "创建日期", required = true,dataType = "date")
@JsonFormat(pattern = LocalDateTimeConst.DATE_TIME_PATTERN)
private LocalDateTime sysCreated;*/
/**
* 最后修改日期
*/
@ApiModelProperty(example = "最后修改日期", required = true, dataType = "date")
@JsonFormat(pattern = LocalDateTimeConst.DATE_TIME_PATTERN)
private LocalDateTime sysLastUpd;
/**
* 创建用户
*/
@ApiModelProperty(example = "创建用户", required = true, dataType = "string")
private Long sysCreatedBy;
/**
* 维护人
*/
@ApiModelProperty(example = "维护人", dataType = "string")
private String userName;
private Float zysj;
/**
* 是否校验工序
*/
@ApiModelProperty(value = "是否校验工序", example = "false", position = 100)
private Boolean sfjygx;
/**
* 是否允许入库
*/
@ApiModelProperty(value = "是否允许入库", example = "false", position = 101)
private Boolean sfyxrk;
/**
* 默认入库仓库
*/
@ApiModelProperty(value = "默认入库仓库", example = "2000000", position = 102)
private String mrrkck;
/**
* 默认入库仓库
*/
@ApiModelProperty(value = "默认入库仓库名称", example = "第一仓库", position = 103)
private String ckmc;
/**
* 是否允许自动接收
*/
@ApiModelProperty(value = "是否允许自动接收", example = "false", position = 104)
private Boolean sfyxzdjs;
/**
* 是否允许拆分流程卡
*/
@ApiModelProperty(value = "是否允许拆分流程卡", example = "false", position = 105)
private Boolean sfyxcslck;
/**
* 是否允许变更产品
*/
@ApiModelProperty(value = "是否允许变更产品", example = "false", position = 106)
private Boolean sfyxbgcp;
/**
* 是否进行数量校验
*/
@ApiModelProperty(value = "是否进行数量校验", example = "false", position = 107)
private Boolean sfjxsljy;
/**
* 是否进行数量校验
*/
@ApiModelProperty(value = "工序是否存在", example = "false", position = 107)
private Boolean whetherTheProcessExists;
/**
* 首检工序
*/
@ApiModelProperty(value = "首检工序", example = "false", position = 107)
private Boolean firstInspectionProcess;
/**
* 单件管理
*/
@ApiModelProperty(value = "单件管理", example = "false", position = 107)
private Boolean individualManagement;
/**
* 单件生成
*/
@ApiModelProperty(value = "单件生成", example = "false", position = 107)
private Boolean singleGenerating;
/**
* 特殊过程
*/
@ApiModelProperty(value = "特殊过程", example = "false", position = 107)
private Boolean specialProcess;
@ApiModelProperty(example = "是否经过本工序", required = true)
private Boolean jgbgx;
@ApiModelProperty(example = "是否批次上料 1是 0不是", required = true)
private Boolean isPcsl;
@ApiModelProperty(example = "关键工序校验", required = true)
private Boolean gjgxjy;
@ApiModelProperty(example = "合格率预警", required = true)
private Boolean hglyj;
@ApiModelProperty(example = "合格率预警阀值 百分比", required = true)
private BigDecimal hglyjfz;
/**
* 文档附件名称
*/
@ApiModelProperty(example = "文档附件名称",dataType = "string")
private String cessoryName;
/**
* 文档地址
*/
@ApiModelProperty(example = "文档地址",dataType = "string")
private String accessoryUrl;
@ApiModelProperty(example = "是否转包工序",dataType = "boolean")
private Boolean zbgx;
@ApiModelProperty(example = "组织名称")
private String organizeName;
@ApiModelProperty(example = "组织名称")
private String sszz;
}
package com.jln.ufc.web.action.ufc.bm.entity.vo;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@JsonIgnoreProperties(ignoreUnknown = true)
public class UfcStandprocessQuery {
@ApiModelProperty(example = "工序编码:1001", required = true,dataType = "string")
private String gxid;
@ApiModelProperty(example = "工序名称:测试工序", required = true,dataType = "string")
private String gxmc;
@ApiModelProperty(example = "节点主键", required = true)
private Long nodePrimaryKey;
@ApiModelProperty(example = "使用组织")
private String sszz;
}
package com.jln.ufc.web.action.ufc.bm.entity.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class UfcWoBindWlVo {
@ApiModelProperty(value = "生产订单绑定物料信息")
private Long woBindWloid;
@ApiModelProperty(value = "物料外键")
private Long wlfk;
@ApiModelProperty(value = "物料属性组明细外键")
private Long bMaterialGorupItemfk;
@ApiModelProperty(value = "属性值")
private String sxz;
@ApiModelProperty(value = "类型(0|物料绑定 1|批号绑定)")
private String type;
@ApiModelProperty(value = "生产订单外键")
private Long wofk;
@ApiModelProperty(value = "属性项目名称")
private String sxxmmc;
@ApiModelProperty(value = "属性项目类型")
private String sxxmlx;
@ApiModelProperty(value = "分隔符(1:空格、2:竖线、3:英文分号、4:中文分号)")
private Integer separator;
@ApiModelProperty(value = "是否在信息中显示(0:不显示,1:显示)")
private Boolean whetherDisplay;
@ApiModelProperty(value = "显示格式(1:显示属性名称、2:不显示属性名称)")
private Integer displayFormat;
}
package com.jln.ufc.web.action.ufc.bm.entity.vo;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.jln.common.utils.EmptyUtil;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
import java.util.List;
@Data
@JsonIgnoreProperties(ignoreUnknown = true)
@Accessors(chain = true)
@ApiModel(value = "物料属性202108封装类")
public class UfcWoWlsxVo {
@ApiModelProperty(example = "物料属性值字段")
private List<UfcWoBindWlVo> wlsxzList;
@ApiModelProperty(example = "生产订单属性组信息")
private List<UfcWoBindWlVo> wosxzList;
@ApiModelProperty(example = "物料属性组编码", required = true, dataType = "string")
private String wlsxzbm;
@ApiModelProperty(example = "物料属性组名称", required = true, dataType = "string")
private String wlsxzmc;
@ApiModelProperty(example = "物料批次组编码", required = true, dataType = "string")
private String wlpcsxzbm;
@ApiModelProperty(example = "物料批次组名称", required = true, dataType = "string")
private String wlpcsxzmc;
@ApiModelProperty(example = "物料批次属性组外键", required = true, dataType = "string")
private Long wlpcsxzfk;
@ApiModelProperty(example = "物料属性组外键", required = true, dataType = "string")
private Long wlsxzfk;
@ApiModelProperty(example = "物料属性字段", required = true, dataType = "string")
private String wlsxJson;
@ApiModelProperty(example = "物料批次字段", required = true, dataType = "string")
private String wlpcJson;
public String getWlsxJson() {
if (EmptyUtil.isEmpty(wlsxzList)) {
return "";
}
StringBuffer buffer = new StringBuffer();
for (UfcWoBindWlVo itemVo : wlsxzList) {
separatorItem(itemVo,buffer);
}
return buffer.toString();
}
public String getWlpcJson() {
if (EmptyUtil.isEmpty(wosxzList)) {
return "";
}
StringBuffer buffer = new StringBuffer();
for (UfcWoBindWlVo itemVo : wosxzList) {
separatorItem(itemVo,buffer);
}
return buffer.toString();
}
private void separatorItem(UfcWoBindWlVo itemVo, StringBuffer buffer) {
if (itemVo.getWhetherDisplay() != null && itemVo.getWhetherDisplay()) {
if (itemVo.getDisplayFormat() == 1) {
buffer.append(itemVo.getSxxmmc());
switch (itemVo.getSeparator()) {
case 1:
buffer.append(" ");
break;
case 2:
buffer.append("|");
break;
case 3:
buffer.append(";");
break;
case 4: //default暂时和4相同,代码规范所以4暂时不写
default:
buffer.append(";");
break;
}
}
buffer.append(itemVo.getSxz());
buffer.append(" ");
}
}
}
package com.jln.ufc.web.action.ufc.bm.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.jln.ufc.web.action.ufc.bm.entity.UfcBFactory;
import org.springframework.stereotype.Component;
@Component
public interface UfcBFactoryMapper extends BaseMapper<UfcBFactory> {
}
package com.jln.ufc.web.action.ufc.bm.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.jln.ufc.web.action.ufc.bm.entity.UfcBMaterialGroupItem;
import org.springframework.stereotype.Component;
/**
* @author: Luca.Liu
* @date: 2022/3/11
*/
@Component
public interface UfcBMaterialGroupItemMapper extends BaseMapper<UfcBMaterialGroupItem> {
}
package com.jln.ufc.web.action.ufc.bm.mapper;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jln.ufc.web.action.ufc.bm.entity.UfcBMaterial;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcBMaterialSelectCopyVo;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcBMaterialSelectVo;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Component;
import java.util.List;
/**
* <p>
* Mapper 接口
* </p>
*
* @author
* @since 2020-02-12
*/
@Component("UfcBMaterialMapper")
public interface UfcBMaterialMapper extends BaseMapper<UfcBMaterial> {
Page<UfcBMaterialSelectVo> selectLists(Page<UfcBMaterialSelectVo> page, @Param("dto") UfcBMaterialSelectCopyVo bMaterialSelectVo);
List<UfcBMaterial> getList(@Param(Constants.WRAPPER) Wrapper wrapper);
/**
* 统计物料信息的分页查询总条数
* @param bMaterialSelectVo 物料分类信息
* @return
*/
Integer selectListCount(@Param("dto") UfcBMaterialSelectCopyVo bMaterialSelectVo);
}
package com.jln.ufc.web.action.ufc.bm.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.jln.ufc.web.action.ufc.bm.entity.UfcBMaterialPropertyGroup;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcWoBindWlVo;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcWoWlsxVo;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Component;
import java.util.List;
@Component
public interface UfcBMaterialPropertyGroupMapper extends BaseMapper<UfcBMaterialPropertyGroup> {
/**
* 生产订单维护接口—获取生产订单绑定物料信息接口
* @param woFk
* @return
*/
UfcWoWlsxVo getWoWlsx(@Param("woFk") Long woFk);
/**
*
* @param woFk
* @param type
* @return
*/
List<UfcWoBindWlVo> getWoWlsxzList(@Param("woFk") Long woFk, @Param("type") String type);
}
package com.jln.ufc.web.action.ufc.bm.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jln.ufc.web.action.ufc.bm.entity.UfcBStandardprocess;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcStandardprocessInfo;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcStandprocessQuery;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Component;
@Component
public interface UfcBStandardprocessMapper extends BaseMapper<UfcBStandardprocess> {
Page<UfcStandardprocessInfo> selectQueryPage(Page<Object> objectPage,@Param("QueryView") UfcStandprocessQuery data);
}
package com.jln.ufc.web.action.ufc.bm.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.jln.ufc.web.action.ufc.bm.entity.UfcBStandardprocessflow;
import org.springframework.stereotype.Component;
@Component
public interface UfcBStandardprocessflowMapper extends BaseMapper<UfcBStandardprocessflow> {
}
package com.jln.ufc.web.action.ufc.bm.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.jln.ufc.web.action.ufc.bm.entity.UfcBStandardprocessflowdetail;
import org.springframework.stereotype.Component;
@Component
public interface UfcBStandardprocessflowdetailMapper extends BaseMapper<UfcBStandardprocessflowdetail> {
}
package com.jln.ufc.web.action.ufc.bm.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.jln.ufc.web.action.ufc.bm.entity.UfcBStdprocat;
import org.springframework.stereotype.Component;
@Component
public interface UfcBStdprocatMapper extends BaseMapper<UfcBStdprocat> {
}
package com.jln.ufc.web.action.ufc.bm.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jln.ufc.web.action.ufc.bm.entity.UfcBSupplier;
import com.jln.ufc.web.action.ufc.bm.entity.dto.UfcBSupplierFl;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcBSupplierInfo;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Component;
/**
* @author: Luca.Liu
* @date: 2022/2/28
*/
@Component
public interface UfcBSupplierMapper extends BaseMapper<UfcBSupplier> {
UfcBSupplierInfo getbyoid(Long oid);
Page<UfcBSupplierInfo> getlist(Page<Object> objectPage, @Param("data") UfcBSupplierFl data);
}
package com.jln.ufc.web.action.ufc.bm.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.jln.ufc.web.action.ufc.bm.entity.UfcBTechnologicalStandard;
import org.springframework.stereotype.Component;
@Component
public interface UfcBTechnologicalStandardMapper extends BaseMapper<UfcBTechnologicalStandard> {
}
package com.jln.ufc.web.action.ufc.bm.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jln.common.entity.BMaterialGorupItemVo;
import com.jln.common.entity.WlsxInfo;
import com.jln.ufc.web.action.ufc.bm.entity.UfcJcBMaterial;
import com.jln.ufc.web.action.ufc.bm.entity.dto.UfcMaterialPageDto;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcBMaterialInfo;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcBMaterialSelectCopyVo;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcBMaterialSelectInfoVo;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcBMaterialSelectVo;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcBMaterialView;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Component;
import java.util.List;
@Component
public interface UfcJcBMaterialMapper extends BaseMapper<UfcJcBMaterial> {
Page<UfcBMaterialSelectVo> queryList(Page<UfcBMaterialSelectVo> page, @Param("dto") UfcBMaterialSelectCopyVo bMaterialSelectVo);
Page<UfcBMaterialInfo> queryByGcidList(Page<Object> objectPage, @Param("data") UfcMaterialPageDto wlmc);
/**
* 通过物料主键查询物料属性信息
* @param wlfk
* @return
*/
WlsxInfo getWlsx(@Param("wlfk") Long wlfk);
List<BMaterialGorupItemVo> getWlsxzList(@Param("wlfk") Long wlfk, @Param("type") String type);
List<UfcBMaterialView> getBMaterialList(@Param("page") Page<UfcBMaterialView> page, @Param("bMaterialSelectInfo") UfcBMaterialSelectInfoVo bMaterialSelectInfo);
}
package com.jln.ufc.web.action.ufc.bm.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.jln.ufc.web.action.ufc.bm.entity.UfcBFactory;
public interface UfcBFactoryService extends IService<UfcBFactory> {
}
package com.jln.ufc.web.action.ufc.bm.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.jln.ufc.web.action.ufc.bm.entity.UfcBMaterialGroupItem;
/**
* @author: Luca.Liu
* @date: 2022/3/11
*/
public interface UfcBMaterialGroupItemService extends IService<UfcBMaterialGroupItem> {
}
package com.jln.ufc.web.action.ufc.bm.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.jln.ufc.web.action.ufc.bm.entity.UfcBMaterialPropertyGroup;
public interface UfcBMaterialPropertyGroupService extends IService<UfcBMaterialPropertyGroup> {
/**
* 填充批次属性值
* @param t
*/
void packedAbsorber(Object o);
}
package com.jln.ufc.web.action.ufc.bm.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.jln.common.entity.Result;
import com.jln.common.utils.PageParameter;
import com.jln.ufc.web.action.ufc.bm.entity.UfcBMaterial;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcBMaterialSelectCopyVo;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcBMaterialSelectVo;
/**
* <p>
* 服务类
* </p>
*
* @author
* @since 2020-02-12
*/
public interface UfcBMaterialService extends IService<UfcBMaterial> {
/**
* 物料编码,名称,规格,图号等信息查询物料,分类名称,编码
*
* @param query
* @return
*/
Result<Page<UfcBMaterialSelectVo>> selectList(PageParameter<UfcBMaterialSelectCopyVo> query);
}
package com.jln.ufc.web.action.ufc.bm.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.jln.common.entity.Result;
import com.jln.common.utils.PageParameter;
import com.jln.ufc.web.action.ufc.bm.entity.UfcBStandardprocess;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcStandardprocessInfo;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcStandprocessQuery;
import java.util.List;
public interface UfcBStandardprocessService extends IService<UfcBStandardprocess> {
/**
* 标准工序保存接口
* @param bStandardprocess
* @return
* @throws Exception
*/
Result saveerp(List<UfcBStandardprocess> bStandardprocess) throws Exception;
/**
* 标准工序批量删除接口
* @param bStandardprocessoids
* @return
*/
Result deleteerp(List<Long> bStandardprocessoids);
Result<Page<UfcStandardprocessInfo>> selectPage(PageParameter<UfcStandprocessQuery> page);
}
package com.jln.ufc.web.action.ufc.bm.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.jln.common.entity.Result;
import com.jln.common.entity.User;
import com.jln.ufc.web.action.ufc.bm.entity.UfcBStandardprocessflow;
import java.util.List;
public interface UfcBStandardprocessflowService extends IService<UfcBStandardprocessflow> {
/**
* 标准工艺路线保存接口
* @param bStandardprocessflow
* @param user
* @return
*/
Result saveerp(List<UfcBStandardprocessflow> bStandardprocessflow, User user);
/**
* 标准工序批量删除接口
* @param bStandardprocessflowoids
* @return
*/
Result deleteerp(List<Long> bStandardprocessflowoids);
}
package com.jln.ufc.web.action.ufc.bm.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.jln.ufc.web.action.ufc.bm.entity.UfcBStandardprocessflowdetail;
public interface UfcBStandardprocessflowdetailService extends IService<UfcBStandardprocessflowdetail> {
}
package com.jln.ufc.web.action.ufc.bm.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.jln.ufc.web.action.ufc.bm.entity.UfcBStdprocat;
/**
* @author: Luca.Liu
* @date: 2022/2/24
*/
public interface UfcBStdprocatService extends IService<UfcBStdprocat> {
}
package com.jln.ufc.web.action.ufc.bm.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.jln.common.entity.Result;
import com.jln.common.entity.User;
import com.jln.common.utils.PageParameter;
import com.jln.ufc.web.action.ufc.bm.entity.UfcBSupplier;
import com.jln.ufc.web.action.ufc.bm.entity.dto.UfcBSupplierFl;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcBSupplierInfo;
/**
* @author: Luca.Liu
* @date: 2022/2/28
*/
public interface UfcBSupplierService extends IService<UfcBSupplier> {
/**
* 保存供应商设置
* @param bSupplierInfo 供应商设置
* @return
*/
Result save(UfcBSupplierInfo bSupplierInfo, User user);
/**
* 通过主键查询供应商设置信息
* @param oid 供应商设置主键
* @return
*/
Result getbyoid(Long oid);
Result selectPage(PageParameter<UfcBSupplierFl> page);
}
package com.jln.ufc.web.action.ufc.bm.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.jln.ufc.web.action.ufc.bm.entity.UfcBTechnologicalStandard;
public interface UfcBTechnologicalStandardService extends IService<UfcBTechnologicalStandard> {
}
package com.jln.ufc.web.action.ufc.bm.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.jln.common.entity.Result;
import com.jln.common.entity.WlsxInfo;
import com.jln.common.utils.PageParameter;
import com.jln.ufc.web.action.ufc.bm.entity.UfcJcBMaterial;
import com.jln.ufc.web.action.ufc.bm.entity.dto.UfcMaterialPageDto;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcBMaterialInfo;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcBMaterialSelectCopyVo;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcBMaterialSelectInfoVo;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcBMaterialSelectVo;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcBMaterialView;
public interface UfcJcBMaterialService extends IService<UfcJcBMaterial> {
/**
* 物料信息下拉框查询
* @param query
* @return
*/
Result<Page<UfcBMaterialSelectVo>> queryList(PageParameter<UfcBMaterialSelectCopyVo> query);
Result<Page<UfcBMaterialInfo>> queryByGcidList(PageParameter<UfcMaterialPageDto> query);
/**
* 物料属性查询-通过物料主键查询物料属性信息
* @param wlfk
* @return
*/
Result<WlsxInfo> getWlsx(Long wlfk);
Result<Page<UfcBMaterialView>> getBMaterialList(Page<UfcBMaterialView> page, UfcBMaterialSelectInfoVo bMaterialSelectInfo);
}
package com.jln.ufc.web.action.ufc.bm.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jln.ufc.web.action.ufc.bm.entity.UfcBFactory;
import com.jln.ufc.web.action.ufc.bm.mapper.UfcBFactoryMapper;
import com.jln.ufc.web.action.ufc.bm.service.UfcBFactoryService;
import org.springframework.stereotype.Service;
/**
* @author: Luca.Liu
* @date: 2022/2/24
*/
@Service
public class UfcBFactoryServiceImpl extends ServiceImpl<UfcBFactoryMapper, UfcBFactory> implements UfcBFactoryService {
}
package com.jln.ufc.web.action.ufc.bm.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jln.ufc.web.action.ufc.bm.entity.UfcBMaterialGroupItem;
import com.jln.ufc.web.action.ufc.bm.mapper.UfcBMaterialGroupItemMapper;
import com.jln.ufc.web.action.ufc.bm.service.UfcBMaterialGroupItemService;
import org.springframework.stereotype.Service;
/**
* @author: Luca.Liu
* @date: 2022/3/11
*/
@Service
public class UfcBMaterialGroupItemServiceImpl extends ServiceImpl<UfcBMaterialGroupItemMapper, UfcBMaterialGroupItem> implements UfcBMaterialGroupItemService {
}
package com.jln.ufc.web.action.ufc.bm.service.impl;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jln.common.entity.PswlsxInfo;
import com.jln.common.entity.Result;
import com.jln.common.entity.WlsxInfo;
import com.jln.common.utils.EmptyUtil;
import com.jln.ufc.web.action.ufc.bm.entity.UfcBMaterialPropertyGroup;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcWoBindWlVo;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcWoWlsxVo;
import com.jln.ufc.web.action.ufc.bm.mapper.UfcBMaterialPropertyGroupMapper;
import com.jln.ufc.web.action.ufc.bm.service.UfcBMaterialPropertyGroupService;
import com.jln.ufc.web.action.ufc.bm.service.UfcJcBMaterialService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.lang.reflect.Field;
import java.util.List;
@Service
public class UfcBMaterialPropertyGroupServiceImpl extends ServiceImpl<UfcBMaterialPropertyGroupMapper, UfcBMaterialPropertyGroup> implements UfcBMaterialPropertyGroupService {
private static Logger logger = LoggerFactory.getLogger(UfcBMaterialPropertyGroupServiceImpl.class);
@Autowired
private UfcJcBMaterialService bMaterialService;
@Override
public void packedAbsorber(Object o) {
if (o instanceof Page) {
for (Object record : ((Page) o).getRecords()) {
packed1(record);
}
} else if (o instanceof List) {
((List) o).forEach(o1 -> {
packed1(o1);
});
} else {
packed1(o);
}
}
private void packed1(Object o) {
if (o instanceof PswlsxInfo) {
try {
Field field1 = o.getClass().getDeclaredField("bMaterialoid");
if (field1 != null) {
field1.setAccessible(true);
Long wlfk = (Long) field1.get(o);
Result<WlsxInfo> wlsx = bMaterialService.getWlsx(wlfk);
if (wlsx.confirmSuccess()) {
if (!EmptyUtil.isEmpty(wlsx.getData())) {
BeanUtils.copyProperties(wlsx.getData(), o);
}
}
}
} catch (NoSuchFieldException e) {
logger.warn("没有【bMaterialoid】字段");
} catch (IllegalAccessException e) {
e.printStackTrace();
}
try {
Field field2 = o.getClass().getDeclaredField("wooid");
if (field2 != null) {
field2.setAccessible(true);
Long oid = (Long) field2.get(o);
Result<UfcWoWlsxVo> wlsx = getWoWlsx(oid);
if (wlsx.confirmSuccess()) {
if (!EmptyUtil.isEmpty(wlsx.getData())) {
BeanUtils.copyProperties(wlsx.getData(), o);
}
}
}
} catch (NoSuchFieldException e) {
logger.warn("没有【wooid】字段");
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
}
/**
* 生产订单维护接口—获取生产订单绑定物料信息接口
*
* @param oid
* @return
*/
public Result<UfcWoWlsxVo> getWoWlsx(Long oid) {
if (EmptyUtil.isEmpty(oid)) {
return new Result().toFailure("没有生产订单信息");
}
//通过生产订单主键获取物料外键
UfcWoWlsxVo woWlsx = new UfcWoWlsxVo();
//获取的生产订单及物料外键不能为空
woWlsx = this.baseMapper.getWoWlsx(oid);
if (!EmptyUtil.isEmpty(woWlsx)) {
//物料属性信息
List<UfcWoBindWlVo> wlsxzList = this.baseMapper.getWoWlsxzList(oid, "0");
//订单属性信息
List<UfcWoBindWlVo> wosxzList = this.baseMapper.getWoWlsxzList(oid, "1");
woWlsx.setWlsxzList(wlsxzList);
woWlsx.setWosxzList(wosxzList);
}
return new Result<UfcWoWlsxVo>().toSuccess(woWlsx);
}
}
package com.jln.ufc.web.action.ufc.bm.service.impl;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jln.common.entity.Result;
import com.jln.common.entity.User;
import com.jln.common.exception.CustomException;
import com.jln.common.utils.EmptyUtil;
import com.jln.common.utils.PageParameter;
import com.jln.system.web.action.commonweb.parameterize.validation.ValidationRules;
import com.jln.ufc.web.action.ufc.bm.entity.UfcBMaterial;
import com.jln.ufc.web.action.ufc.bm.entity.dto.UfcBMaterialPropertyDto;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcBMaterialSelectCopyVo;
import com.jln.ufc.web.action.ufc.bm.entity.vo.UfcBMaterialSelectVo;
import com.jln.ufc.web.action.ufc.bm.mapper.UfcBMaterialMapper;
import com.jln.ufc.web.action.ufc.bm.service.UfcBMaterialPropertyGroupService;
import com.jln.ufc.web.action.ufc.bm.service.UfcBMaterialService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;
/**
* <p>
* 服务实现类
* </p>
*
* @author
* @since 2020-02-12
*/
@Slf4j
@Service("UfcBMaterial")
public class UfcBMaterialServiceImpl extends ServiceImpl<UfcBMaterialMapper, UfcBMaterial> implements UfcBMaterialService, ValidationRules<UfcBMaterial> {
@Autowired
private UfcBMaterialMapper bMaterialMapper;
/**
* 物料属性-属性组的业务逻辑层
*/
@Autowired
private UfcBMaterialPropertyGroupService bMaterialPropertyGroupService;
@Override
public Result<Page<UfcBMaterialSelectVo>> selectList(PageParameter<UfcBMaterialSelectCopyVo> query) {
UfcBMaterialSelectCopyVo vo = null;
// BMaterialSelectVo vo = null;
if (EmptyUtil.isEmpty(query.getData())) {
vo = new UfcBMaterialSelectCopyVo();
} else {
vo = query.getData();
}
disposeMaterialProperty(vo);
vo.setThisTime(LocalDateTime.now());
Page<UfcBMaterialSelectVo> page = new Page<>(query.getPageNum(), query.getPageSize());
Integer count = this.baseMapper.selectListCount(vo);
//手动计算总数
page.setSearchCount(false);
page.setTotal(count);
Page<UfcBMaterialSelectVo> selectVos = bMaterialMapper.selectLists(page, vo);
if (selectVos.getRecords().size() > 0) {
bMaterialPropertyGroupService.packedAbsorber(selectVos);
}
return new Result<Page<UfcBMaterialSelectVo>>().toSuccess(selectVos);
}
/**
* 处理物料属性查询的时候,如果传递了物料属性组 的时候数据处理
* @param vo
*/
private void disposeMaterialProperty(UfcBMaterialSelectCopyVo vo){
if(EmptyUtil.isEmpty(vo)){
log.info("处理物料列表查询是否包含属性值方法:查询条件为空!");
return;
}
if(EmptyUtil.isEmpty(vo.getWlsxList())){
log.info("处理物料列表查询是否包含属性值方法:物料属性为空,不需要处理!");
return;
}
//属性组明细外键-存储数据
List<Long> gorupItemList=new ArrayList<>();
//属性组值-存储数据
List<String> sxzList=new ArrayList<>();
for (UfcBMaterialPropertyDto dto : vo.getWlsxList()) {
if(!EmptyUtil.isEmpty(dto.getSxz())){
//当属性值不为空的时候才需要加入查询条件
gorupItemList.add(dto.getBmaterialGorupItemfk());
sxzList.add(dto.getSxz());
}
}
if(EmptyUtil.isEmpty(sxzList)){
//属性值为空的时候,需要将 前端传递的查询条件删除掉
vo.setWlsxList(null);
}
vo.setSxzList(sxzList);
vo.setGorupItemList(gorupItemList);
}
@Override
public void verify(String code, User user, UfcBMaterial paramers) throws CustomException {
}
@Override
public void verify(String code, UfcBMaterial paramers) throws CustomException {
}
}
差异被折叠。 点击展开。
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论