liukangdong
2024-12-31 cc43c9e4f1ff6dad52ba64095b7cb40841816809
Merge branch 'master' of http://139.186.142.91:10010/r/productDev/dmvisit
已修改21个文件
110 ■■■■ 文件已修改
admin/src/api/system/user.js 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/system/user.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/vehicle/driver.vue 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_gateway/src/main/java/com/doumee/api/gateway/JwtAuthController.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_gateway/src/main/resources/bootstrap.yml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_service/src/main/java/com/doumee/api/cloud/SystemUserCloudController.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_service/src/main/java/com/doumee/api/system/SystemUserController.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_service/src/main/java/com/doumee/biz/system/impl/SystemUserBizImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_service/src/main/java/com/doumee/config/mybatis/MyBatisInterceptor.java 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_service/src/main/java/com/doumee/dao/system/dto/NoticesDTO.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_service/src/main/java/com/doumee/dao/system/dto/ResetSystemUserPwdDTO.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_service/src/main/java/com/doumee/service/system/SystemUserService.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_service/src/main/java/com/doumee/service/system/impl/NoticesServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_service/src/main/java/com/doumee/service/system/impl/SystemUserServiceImpl.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_service/src/main/resources/mappers/SystemUserMapper.xml 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformWaterGasCloudController.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/TmsCloudController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/PlatformWaterGasForExcelVO.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/TmsServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/api/system/user.js
@@ -4,6 +4,9 @@
export function fetchList (data) {
  return request.post('/visitsAdmin/cloudService/system/user/page', data)
}
export function pageDriverList (data) {
  return request.post('/visitsAdmin/cloudService/system/user/pageDriver', data)
}
// 新建
export function create (data) {
admin/src/views/system/user.vue
@@ -65,6 +65,7 @@
          </template>
        </el-table-column>
        <el-table-column prop="mobile" label="手机号码" min-width="100px"></el-table-column>
        <el-table-column prop="openid" label="微信openid" min-width="100px"></el-table-column>
<!--        <el-table-column prop="email" label="邮箱" min-width="180px"></el-table-column>-->
<!--        <el-table-column prop="birthday" label="生日" sortable="custom" sort-by="BIRTHDAY" min-width="100px"></el-table-column>-->
        <el-table-column prop="roles" label="角色" min-width="160px" class-name="table-column-strings">
admin/src/views/vehicle/driver.vue
@@ -3,8 +3,10 @@
    <QueryForm v-model="filters" :query-form-config="queryFormConfig" @handleQuery="getList(1)" @clear="clear">
    </QueryForm>
    <el-table v-loading="loading" :data="list" stripe row-key="id" class="mb20" default-expand-all>
      <el-table-column prop="username" label="登录账号" min-width="100"></el-table-column>
      <el-table-column prop="realname" label="姓名" min-width="100"></el-table-column>
      <el-table-column prop="mobile" label="手机号" min-width="100"></el-table-column>
      <el-table-column prop="openid" label="微信openid" min-width="100px"></el-table-column>
      <el-table-column prop="createTime" label="创建时间" sortable="custom" sort-by="CREATE_TIME" min-width="140px"></el-table-column>
    </el-table>
    <pagination @size-change="handleSizeChange" @current-change="getList" :pagination="pagination" />
  </div>
@@ -13,7 +15,7 @@
<script>
import Pagination from '@/components/common/Pagination'
import QueryForm from '@/components/common/QueryForm'
import { fetchList } from '@/api/system/user.js'
import { pageDriverList  } from '@/api/system/user.js'
export default {
  components: {
    QueryForm,
@@ -53,10 +55,10 @@
    getList(page) {
      const { filters, pagination } = this
      pagination.page = page || pagination.page
      fetchList({
      pageDriverList({
        model: {
          ...filters,
           memberType: 0
           type: 0
        },
        ...pagination
      }).then(res => {
@@ -77,4 +79,4 @@
}
</script>
<style lang="scss" scoped></style>
<style lang="scss" scoped></style>
server/system_gateway/src/main/java/com/doumee/api/gateway/JwtAuthController.java
@@ -151,7 +151,6 @@
            return ApiResponse.failed(ResponseStatus.SERVER_ERROR);
        }
    }
    @PreventRepeat(limit = 10, lockTime = 10000)
    @ApiOperation("司机验证码登录")
    @PostMapping("/loginDriverWithCode")
    @LoginNoRequired
server/system_gateway/src/main/resources/bootstrap.yml
@@ -1,6 +1,6 @@
spring:
  profiles:
    active: self
    active: pro
  application:
    name: system_gateway
  # 安全配置
server/system_service/src/main/java/com/doumee/api/cloud/SystemUserCloudController.java
@@ -58,6 +58,7 @@
    @CloudRequiredPermission("system:user:resetPwd")
    public ApiResponse resetPwd (@RequestHeader(Constants.HEADER_USER_TOKEN) String token,@Validated @RequestBody ResetSystemUserPwdDTO dto) {
        dto.setOperaUserId(this.getLoginUser(token).getId());
        dto.setNeedChangePwd(Constants.ZERO);
        systemUserBiz.resetPwd(dto);
        return ApiResponse.success(null);
    }
@@ -111,6 +112,13 @@
        return ApiResponse.success(systemUserService.findPage(pageWrap));
    }
    @ApiOperation("分页查询司机列表")
    @PostMapping("/pageDriver")
    @CloudRequiredPermission("system:user:query")
    public ApiResponse<PageData<SystemUser>> findDriverPage (@RequestBody PageWrap<SystemUser> pageWrap) {
        return ApiResponse.success(systemUserService.findDriverPage(pageWrap));
    }
    @ApiOperation("查询所有系统用户")
    @PostMapping("/findAllList")
server/system_service/src/main/java/com/doumee/api/system/SystemUserController.java
@@ -59,6 +59,7 @@
    @RequiresPermissions("system:user:resetPwd")
    public ApiResponse resetPwd (@Validated @RequestBody ResetSystemUserPwdDTO dto, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
        dto.setOperaUserId(this.getLoginUser(token).getId());
        dto.setNeedChangePwd(Constants.ZERO);
        systemUserBiz.resetPwd(dto);
        return ApiResponse.success(null);
    }
server/system_service/src/main/java/com/doumee/biz/system/impl/SystemUserBizImpl.java
@@ -140,7 +140,7 @@
        updateUserDto.setId(dto.getId());
        updateUserDto.setUpdateUser(dto.getOperaUserId());
        updateUserDto.setPassword(Utils.Secure.encryptPassword(dto.getPassword(), systemUser.getSalt()));
        updateUserDto.setNeedChangePwd(Constants.ZERO);
        updateUserDto.setNeedChangePwd(dto.getNeedChangePwd());
        systemUserService.updateById(updateUserDto);
    }
server/system_service/src/main/java/com/doumee/config/mybatis/MyBatisInterceptor.java
@@ -50,13 +50,13 @@
        if (target == null)
            return invocation.proceed();
        // 创建语句
        if (SqlCommandType.INSERT == sqlCommandType) {
            this.handleOperaStatement(target, CREATE_TIME, CREATE_USER);
        }
        // 更新语句
        else if (SqlCommandType.UPDATE == sqlCommandType) {
            this.handleOperaStatement(target, UPDATE_TIME, UPDATE_USER);
        }
//        if (SqlCommandType.INSERT == sqlCommandType) {
//            this.handleOperaStatement(target, CREATE_TIME, CREATE_USER);
//        }
//        // 更新语句
//        else if (SqlCommandType.UPDATE == sqlCommandType) {
//            this.handleOperaStatement(target, UPDATE_TIME, UPDATE_USER);
//        }
        return invocation.proceed();
    }
server/system_service/src/main/java/com/doumee/dao/system/dto/NoticesDTO.java
@@ -36,7 +36,7 @@
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date endDate;
    @ApiModelProperty(value = "0访客审批 1访客报备 2用车审批 3隐患处理 4物流车审批 5系统系统")
    @ApiModelProperty(value = "0访客审批 1访客报备 2用车审批 3隐患处理 4物流车审批 5系统系统 7安防平台待办")
    private Integer type;
    @ApiModelProperty(value = "只看未读:1=是;0=否")
server/system_service/src/main/java/com/doumee/dao/system/dto/ResetSystemUserPwdDTO.java
@@ -26,4 +26,8 @@
    @ApiModelProperty(value = "操作人", hidden = true)
    private Integer operaUserId;
    @ApiModelProperty(value = "是否需要强制更新密码 0是 1否", hidden = true)
    private Integer needChangePwd;
}
server/system_service/src/main/java/com/doumee/service/system/SystemUserService.java
@@ -80,6 +80,7 @@
     * @date 2023/03/21 14:49
     */
    PageData<SystemUserListVO> findPage(PageWrap<QuerySystemUserDTO> pageWrap);
    PageData<SystemUser> findDriverPage(PageWrap<SystemUser> pageWrap);
    List<SystemUser> findAllList(SystemUser pageWrap);
server/system_service/src/main/java/com/doumee/service/system/impl/NoticesServiceImpl.java
@@ -178,7 +178,7 @@
        queryWrapper.eq(Objects.nonNull(noticesDTO.getType()),Notices::getType,noticesDTO.getType());
//        queryWrapper.eq(Objects.nonNull(noticesDTO.getMemberId()),Notices::getUserId,noticesDTO.getMemberId());
        queryWrapper.like(StringUtils.isNotBlank(noticesDTO.getTitle()),Notices::getTitle,noticesDTO.getTitle());
        queryWrapper.orderByDesc(Notices::getId);
        queryWrapper.orderByDesc(Notices::getCreateDate);
        PageData<Notices> pageData = PageData.from(noticesMapper.selectJoinPage(page,Notices.class, queryWrapper));
        if(noticesDTO.getQueryType().equals(Constants.ZERO)){
            for (Notices notices:pageData.getRecords()) {
server/system_service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java
@@ -35,6 +35,7 @@
import org.springframework.context.annotation.Lazy;
import org.springframework.http.server.reactive.ServerHttpRequest;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
@@ -58,8 +59,10 @@
    private MemberMapper memberMapper;
    @Autowired
    private SystemDictDataBiz systemDictDataBiz;
    @Lazy
    @Autowired
    private SystemUserMapper systemUserMapper;
    @Lazy
    @Autowired
    private SmsEmailMapper smsEmailMapper;
@@ -74,9 +77,10 @@
    @Lazy
    @Autowired
    private SystemPermissionService systemPermissionService;
    @Lazy
    @Autowired
    private CaptchaService captchaService;
    @Lazy
    @Autowired
    private SystemLoginLogService systemLoginLogService;
@@ -411,6 +415,7 @@
    }
    @Override
    @Transactional
    public LoginUserInfo loginDriverWithCode(LoginPhoneDTO param, ServerHttpRequest request) {
        isCaptcheValide(param.getPhone(),param.getCode());//检查验证码
@@ -446,6 +451,7 @@
            systemUser = new SystemUser();
            systemUser.setCreateTime(new Date());
            systemUser.setCreateUser(1);
            systemUser.setDeleted(Boolean.FALSE);
            systemUser.setUsername(param.getPhone());
            systemUser.setRealname(null);
@@ -458,14 +464,17 @@
            systemUser.setSource(Constants.TWO);
            systemUser.setOpenid(param.getOpenid());
            systemUserMapper.insert(systemUser);
        }else{
            if(!Constants.equalsInteger(systemUser.getType(),Constants.memberType.driver)){
                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对不起,请使用正确的司机账号登陆!");
            }
        }
        dealOpenIdBiz(systemUser,param.getOpenid());
        Company company = new Company();
        if(Objects.nonNull(systemUser.getCompanyId())){
            company = companyMapper.selectById(systemUser.getCompanyId());
        }
        LoginUserInfo userInfo = LoginUserInfo.from(systemUser, null, null,null,null);
        LoginUserInfo userInfo = LoginUserInfo.from(systemUser, null, null,company,null);
        return  userInfo;
    }
server/system_service/src/main/java/com/doumee/service/system/impl/SystemUserServiceImpl.java
@@ -2,6 +2,8 @@
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.doumee.biz.system.SystemDictDataBiz;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
@@ -163,6 +165,19 @@
        }
        return PageData.from(new PageInfo<>(userList));
    }
    @Override
    public PageData<SystemUser> findDriverPage(PageWrap<SystemUser> pageWrap) {
        IPage<SystemUser> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
        QueryWrapper<SystemUser> queryWrapper = new QueryWrapper<>();
        Utils.MP.blankToNull(pageWrap.getModel());
        queryWrapper.lambda()
                .like(StringUtils.isNotBlank(pageWrap.getModel().getRealname()),SystemUser::getRealname,pageWrap.getModel().getRealname())
                .like(StringUtils.isNotBlank(pageWrap.getModel().getMobile()),SystemUser::getMobile,pageWrap.getModel().getMobile())
                .like(StringUtils.isNotBlank(pageWrap.getModel().getUsername()),SystemUser::getUsername,pageWrap.getModel().getUsername())
                .eq( pageWrap.getModel().getType()!=null,SystemUser::getType,pageWrap.getModel().getType())
                .eq (SystemUser::getDeleted,Constants.ZERO);
        return PageData.from(systemUserMapper.selectPage(page, queryWrapper));
    }
    @Override
    public long count(SystemUser systemUser) {
server/system_service/src/main/resources/mappers/SystemUserMapper.xml
@@ -69,14 +69,8 @@
      <if test="dto.memberType != null ">
        AND  usr.`type` = #{dto.memberType}
      </if>
      <if test="dto.memberType != null ">
        AND  usr.`type` = #{dto.memberType}
      </if>
      <if test="dto.workStatus != null ">
        AND  m.WORK_STATUS = #{dto.workStatus}
      </if>
      <if test="dto.memberType != null ">
        AND  m.`type` = #{dto.memberType}
      </if>
      <if test="dto.companyId != null ">
        AND  usr.COMPANY_ID  = #{dto.companyId}
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformWaterGasCloudController.java
@@ -87,14 +87,20 @@
    public void exportExcel (@RequestBody PageWrap<PlatformWaterGas> pageWrap, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
        List<PlatformWaterGas>  waterGasPageData = platformWaterGasService.findPage(pageWrap).getRecords();
        if(Objects.nonNull(pageWrap.getModel())
        && Objects.nonNull(pageWrap.getModel().getType()) && !Constants.equalsInteger(pageWrap.getModel().getType(),Constants.TWO)){
            && Objects.nonNull(pageWrap.getModel().getType()) && !Constants.equalsInteger(pageWrap.getModel().getType(),Constants.TWO)){
            List<PlatformWaterGasForExcelVO> pageData = new ArrayList<>();
            for (PlatformWaterGas platformWaterGas:waterGasPageData) {
                PlatformWaterGasForExcelVO platformWaterGasForExcelVO = new PlatformWaterGasForExcelVO();
                BeanUtils.copyProperties(platformWaterGas,platformWaterGasForExcelVO);
                pageData.add(platformWaterGasForExcelVO);
            }
            ExcelExporter.build(PlatformWaterGasForExcelVO.class).export(pageData, Constants.equalsInteger(pageWrap.getModel().getType(),Constants.ZERO)?"月台_用水信息记录表":"月台_用气信息记录表", response);
            String title = "月台_循环烟箱记录表";
            if(Constants.equalsInteger(pageWrap.getModel().getType(),Constants.ZERO)){
                title = "月台_用水信息记录表";
            }else if(Constants.equalsInteger(pageWrap.getModel().getType(),Constants.ONE)){
                title = "月台_用气信息记录表";
            }
            ExcelExporter.build(PlatformWaterGasForExcelVO.class).export(pageData, title, response);
        }else{
            ExcelExporter.build(PlatformWaterGas.class).export(waterGasPageData, "月台_油耗信息记录表", response);
        }
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/TmsCloudController.java
@@ -99,7 +99,7 @@
    public ApiResponse<TmsDriveTaskInfoResponse> getDriverTaskDetail(@RequestBody TmsDriverTaskInfoRequest request ,@RequestHeader(Constants.HEADER_USER_TOKEN) String token)   {
        return ApiResponse.success(tmsService.getDriverTaskDetail(request));
    }
    @ApiOperation("【TMS】司机任务启动")
    @ApiOperation("【TMS】司机任务启运")
    @PostMapping("/driverStart")
    public ApiResponse driverStart(@RequestBody TmsDriverStartAndArrivalRequest request ,@RequestHeader(Constants.HEADER_USER_TOKEN) String token)   {
        tmsService.driverStart(request);
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/PlatformWaterGasForExcelVO.java
@@ -29,8 +29,8 @@
    @ExcelColumn(name="使用月份",index = 2,dateFormat="yyyy-MM",width = 10)
    private Date timeInfo;
    @ApiModelProperty(value = "类型 0用水 1用气 2用油", example = "1")
    @ExcelColumn(name="类型",valueMapping = "0=用水;1=用气;2=用油;",index = 0,width = 10)
    @ApiModelProperty(value = "类型 0用水 1用气 2用油 3烟箱", example = "1")
    @ExcelColumn(name="类型",valueMapping = "0=用水;1=用气;2=用油;3=烟箱;",index = 0,width = 10)
    private Integer type;
    @ApiModelProperty(value = "数量 (用电顿,用电度; 油耗L)", example = "1")
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java
@@ -1583,6 +1583,7 @@
        dto.setPassword(resetPasswordDTO.getPassword());
        dto.setId(systemUser.getId());
        dto.setOperaUserId(systemUser.getId());
        dto.setNeedChangePwd(Constants.ONE);
        systemUserBiz.resetPwd(dto);
    }
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/TmsServiceImpl.java
@@ -264,7 +264,7 @@
        url = "http://10.163.4.56:8088"+TMSContants.InterfacePath.driverStart[0];
        TmsBaseResponse<TmsDriveTaskInfoResponse > response = sendHttpRequest(url,TMSContants.InterfacePath.driverStart[1],JSONObject.toJSONString(param)
                ,new TypeReference< TmsBaseResponse<TmsDriveTaskInfoResponse>>(){});
        if(response ==null || response.getData() == null || !StringUtils.equals(response.getCode(),"0")){
        if(response ==null ||   !StringUtils.equals(response.getCode(),"0")){
            throw  new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"对不起,任务到货提交失败,请稍后重试!");
        }
        return  true;
@@ -286,7 +286,7 @@
        url = "http://10.163.4.56:8088"+TMSContants.InterfacePath.driverArrival[0];
        TmsBaseResponse<TmsDriveTaskInfoResponse > response = sendHttpRequest(url,TMSContants.InterfacePath.driverArrival[1],JSONObject.toJSONString(param)
                ,new TypeReference< TmsBaseResponse<TmsDriveTaskInfoResponse>>(){});
        if(response ==null || response.getData() == null ||!StringUtils.equals(response.getCode(),"0")){
        if(response ==null  ||!StringUtils.equals(response.getCode(),"0")){
          throw  new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"对不起,任务到货提交失败,请稍后重试!");
        }
        return  true;