fix user exprience

main
chenshuichuan 2 years ago
parent 4682e22278
commit 51192078f9

@ -53,7 +53,7 @@ public class OrgWorkerController {
return success(orgWorkerService.createOrgWorker(createReqVO));
}
@GetMapping("/createWorker")
@Operation(summary = "获得工位安排分页")
@Operation(summary = "工位多日期派工")
public CommonResult<Long> createWorker(@Valid OrgWorkerSaveReqVO createReqVO) {
return success(orgWorkerService.createOrgWorker(createReqVO));
}

@ -90,6 +90,14 @@ public class ProduceReportController {
PageResult<ProduceReportDO> pageResult = produceReportService.getProduceReportPage(pageReqVO);
return success(new PageResult<>(produceReportService.buildVOList(pageResult.getList()),pageResult.getTotal()));
}
@GetMapping("/pageDailyReport")
@Operation(summary = "获得生产报工单分页")
//@PreAuthorize("@ss.hasPermission('mes:produce-report:query')")
public CommonResult<PageResult<ProduceReportRespVO>> getPageDailyReport(@Valid ProduceReportPageReqVO pageReqVO) {
PageResult<ProduceReportDO> pageResult = produceReportService.getProduceReportPage(pageReqVO);
return success(new PageResult<>(produceReportService.buildVOList(pageResult.getList()),pageResult.getTotal()));
}
@Resource
private WorkTeamService workTeamService;

@ -38,8 +38,6 @@ public interface ProduceReportDetailMapper extends BaseMapperX<ProduceReportDeta
.eqIfPresent(ProduceReportDetailDO::getOrgId, reqVO.getOrgId())
.eqIfPresent(ProduceReportDetailDO::getQualityRate, reqVO.getQualityRate())
.eqIfPresent(ProduceReportDetailDO::getWasteReason, reqVO.getWasteReason())
.eqIfPresent(ProduceReportDetailDO::getTotalTime, reqVO.getTotalTime())
.eqIfPresent(ProduceReportDetailDO::getPackageNumber, reqVO.getPackageNumber())
.eqIfPresent(ProduceReportDetailDO::getRemark, reqVO.getRemark())
.eqIfPresent(ProduceReportDetailDO::getIsEnable, reqVO.getIsEnable())

@ -26,6 +26,7 @@ public interface ProduceReportMapper extends BaseMapperX<ProduceReportDO> {
.eqIfPresent(ProduceReportDO::getOrgType, reqVO.getOrgType())
.eqIfPresent(ProduceReportDO::getReportStatus, reqVO.getReportStatus())
.eqIfPresent(ProduceReportDO::getRemark, reqVO.getRemark())
.gtIfPresent(ProduceReportDO::getTotalTime, reqVO.getTotalTime())
.betweenIfPresent(ProduceReportDO::getCreateTime, reqVO.getCreateTime())
.eqIfPresent(ProduceReportDO::getGroupType, reqVO.getGroupType())
.eqIfPresent(ProduceReportDO::getReportType, reqVO.getReportType())

@ -63,6 +63,10 @@ public class MesNoRedisDAO {
*
*/
public static final String REPORT_NO_PREFIX = "WR-";
/**
*
*/
public static final String ENERGY_NO_PREFIX = "EN-";
@Resource
private StringRedisTemplate stringRedisTemplate;

@ -9,6 +9,8 @@ import cn.iocoder.yudao.module.mes.dal.dataobject.energydevice.EnergyDeviceCheck
import cn.iocoder.yudao.module.mes.dal.dataobject.energydevice.EnergyDeviceDO;
import cn.iocoder.yudao.module.mes.dal.mysql.energydevice.EnergyDeviceCheckRecordMapper;
import cn.iocoder.yudao.module.mes.dal.mysql.energydevice.EnergyDeviceMapper;
import cn.iocoder.yudao.module.mes.dal.redis.no.MesNoRedisDAO;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated;
@ -20,8 +22,7 @@ import java.util.Collection;
import java.util.List;
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.ENERGY_DEVICE_CHECK_RECORD_NOT_EXISTS;
import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.ENERGY_DEVICE_NOT_EXISTS;
import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.*;
/**
* Service
@ -36,11 +37,17 @@ public class EnergyDeviceServiceImpl implements EnergyDeviceService {
private EnergyDeviceMapper energyDeviceMapper;
@Resource
private EnergyDeviceCheckRecordMapper energyDeviceCheckRecordMapper;
@Resource
private MesNoRedisDAO noRedisDAO;
@Override
public Long createEnergyDevice(EnergyDeviceSaveReqVO createReqVO) {
// 插入
EnergyDeviceDO energyDevice = BeanUtils.toBean(createReqVO, EnergyDeviceDO.class);
if (StringUtils.isEmpty(energyDevice.getCode())) {
// 1.4 生成编号
String no = noRedisDAO.generate2(MesNoRedisDAO.ENERGY_NO_PREFIX);
energyDevice.setCode(no);
}
energyDeviceMapper.insert(energyDevice);
// 返回
return energyDevice.getId();

@ -16,6 +16,7 @@ import cn.iocoder.yudao.module.mes.service.organization.OrganizationService;
import cn.iocoder.yudao.module.system.api.user.AdminUserApi;
import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource;
@ -47,6 +48,7 @@ public class OrgWorkerServiceImpl implements OrgWorkerService {
private AdminUserApi adminUserApi;
@Override
@Transactional(rollbackFor = Exception.class)
public Long createOrgWorker(OrgWorkerSaveReqVO createReqVO) {
OrganizationDO organizationDO = organizationService.getOrganization(createReqVO.getOrgId());
// 插入
@ -54,7 +56,7 @@ public class OrgWorkerServiceImpl implements OrgWorkerService {
orgWorker.setOrgType(organizationDO.getOrgType());
//多个日期
if(createReqVO.getPlanDates()!=null && createReqVO.getPlanDates().length>0){
//校验同工位、同班别、同日期是否已经存在,存在则失败()不保存
//校验同工位、同班别、同日期是否已经存在,存在则替换保存
OrgWorkerPageReqVO reqVO = new OrgWorkerPageReqVO()
.setOrgId(createReqVO.getOrgId())
.setGroupType(createReqVO.getGroupType());
@ -62,11 +64,14 @@ public class OrgWorkerServiceImpl implements OrgWorkerService {
LocalDateTime[] dates = {date,date};
reqVO.setWorkDate(dates);
List<OrgWorkerDO> list = orgWorkerMapper.selectList(reqVO);
if(list==null || list.size()==0){
orgWorker.setWorkDate(date);
orgWorker.setId(null);
orgWorkerMapper.insert(orgWorker);
//删掉旧的,增加新的替换
if(list!=null && list.size()>0){
List<Long> ids = list.stream().map(OrgWorkerDO::getId).collect(Collectors.toList());
orgWorkerMapper.deleteBatchIds(ids);
}
orgWorker.setWorkDate(date);
orgWorker.setId(null);
orgWorkerMapper.insert(orgWorker);
}
}
else orgWorkerMapper.insert(orgWorker);

@ -12,7 +12,6 @@ import org.hibernate.validator.constraints.Length;
import javax.validation.constraints.AssertTrue;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.Pattern;
@Schema(description = "管理后台 - 账号密码登录 Request VO如果登录并绑定社交用户需要传递 social 开头的参数")
@Data
@ -23,8 +22,8 @@ public class AuthLoginReqVO {
@Schema(description = "账号", requiredMode = Schema.RequiredMode.REQUIRED, example = "yudaoyuanma")
@NotEmpty(message = "登录账号不能为空")
@Length(min = 4, max = 16, message = "账号长度为 4-16 位")
@Pattern(regexp = "^[A-Za-z0-9]+$", message = "账号格式为数字以及字母")
@Length(min = 2, max = 30, message = "账号长度为 2-30 位")
//@Pattern(regexp = "^[A-Za-z0-9]+$", message = "账号格式为数字以及字母")
private String username;
@Schema(description = "密码", requiredMode = Schema.RequiredMode.REQUIRED, example = "buzhidao")

@ -8,7 +8,6 @@ import org.hibernate.validator.constraints.Length;
import javax.validation.constraints.AssertTrue;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;
import javax.validation.constraints.Size;
import java.time.LocalDateTime;
@ -52,8 +51,8 @@ public class TenantSaveReqVO {
// ========== 仅【创建】时,需要传递的字段 ==========
@Schema(description = "用户账号", requiredMode = Schema.RequiredMode.REQUIRED, example = "yudao")
@Pattern(regexp = "^[a-zA-Z0-9]{4,30}$", message = "用户账号由 数字、字母 组成")
@Size(min = 4, max = 30, message = "用户账号长度为 4-30 个字符")
//@Pattern(regexp = "^[a-zA-Z0-9]{4,30}$", message = "用户账号由 数字、字母 组成")
@Size(min = 2, max = 30, message = "用户账号长度为 4-30 个字符")
private String username;
@Schema(description = "密码", requiredMode = Schema.RequiredMode.REQUIRED, example = "123456")

@ -23,8 +23,8 @@ public class UserSaveReqVO {
@Schema(description = "用户账号", requiredMode = Schema.RequiredMode.REQUIRED, example = "yudao")
@NotBlank(message = "用户账号不能为空")
@Pattern(regexp = "^[a-zA-Z0-9]{4,30}$", message = "用户账号由 数字、字母 组成")
@Size(min = 4, max = 30, message = "用户账号长度为 4-30 个字符")
//@Pattern(regexp = "^[a-zA-Z0-9]{4,30}$", message = "用户账号由 数字、字母 组成")
@Size(min = 2, max = 30, message = "用户账号长度为 4-30 个字符")
@DiffLogField(name = "用户账号")
private String username;

@ -75,12 +75,19 @@ public class AdminAuthServiceImpl implements AdminAuthService {
public Boolean getCaptchaEnable(){
return captchaEnable;
}
public static boolean is13DigitPhoneNumber(String str) {
// 检查字符串是否为13位并且是否全由数字组成
return str != null && str.length() == 11 && str.matches("\\d+");
}
@Override
public AdminUserDO authenticate(String username, String password) {
final LoginLogTypeEnum logTypeEnum = LoginLogTypeEnum.LOGIN_USERNAME;
// 校验账号是否存在
AdminUserDO user = userService.getUserByUsername(username);
AdminUserDO user = null;
if(is13DigitPhoneNumber(username)){
user = userService.getUserByMobile(username);
}
else user = userService.getUserByUsername(username);
if (user == null) {
createLoginLog(null, username, logTypeEnum, LoginResultEnum.BAD_CREDENTIALS);
throw exception(AUTH_LOGIN_BAD_CREDENTIALS);

Loading…
Cancel
Save