jiangping
2025-03-27 e4a06e0730dc0aa6ced97cbb3362d6b8ef473d39
最新版本541200007
已修改4个文件
100 ■■■■ 文件已修改
admin/src/components/business/operaVisitsWindow.vue 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/meeting/components/OperaBookingsWindow.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformGroup.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformGroupServiceImpl.java 60 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/components/business/operaVisitsWindow.vue
@@ -92,7 +92,7 @@
        />
      </el-form-item>
      <el-form-item label="来访事由" prop="reason">
        <el-select v-model="param.reason" placeholder="请选择">
        <el-select v-model="param.reason" placeholder="请选择" @change="changeReason" value-key="id">
          <el-option
            v-for="item in VisitReason"
            :key="item.id"
@@ -101,7 +101,7 @@
          />
        </el-select>
      </el-form-item>
      <el-form-item label="是否施工作业">
<!--      <el-form-item label="是否施工作业">
        <el-switch
          style="width: 200px"
          v-model="param.type"
@@ -109,8 +109,8 @@
          :inactive-value="0"
        >
        </el-switch>
      </el-form-item>
      <el-form-item v-if="param.type == 1" label="施工内容">
      </el-form-item>-->
      <el-form-item v-if="param.type == 2" label="施工内容">
        <el-input
          v-model="param.constructionReason"
          placeholder="请输入施工内容"
@@ -135,7 +135,7 @@
    GlobalWindow,
    UploadFaceImg
  },
  data () {
    return {
      isShowModal: false,
@@ -169,7 +169,7 @@
        starttime: [{ required: true, message: '请选择日期', trigger: 'change' }],
        endtime: [{ required: true, message: '请选择日期', trigger: 'change' }],
        reason: [{ required: true, message: '请选择', trigger: 'change' }],
        type: [{ required: true, message: '请选择', trigger: 'change' }],
        // type: [{ required: true, message: '请选择', trigger: 'change' }],
        receptMemberId: [{ required: true, message: '请选择', trigger: 'change' }],
        idcardType: [{ required: true, message: '请选择', trigger: 'change' }],
        faceImgUrl: [{ required: true, message: '请上传', trigger: 'change' }],
@@ -232,6 +232,17 @@
    }
  },
  methods: {
    changeReason (val) {
      console.log(val)
      var obj = this.VisitReason.find(function (i) {
        return i.title === val
      })
      // 在change中获取到整条对象数据
      if(obj){
        this.param.type = obj.constructionType
      }
      console.log(obj)
    },
    close () {
      this.isShowModal = false
      this.$emit('close')
@@ -259,9 +270,9 @@
          return
        }
        const { param } = this
        if(param.carNos){
          param.carNos = param.carNos.replace(/\s*/g,"")
          param.carNos = param.carNos.replace(/[\r\n]/g, "")
        if (param.carNos) {
          param.carNos = param.carNos.replace(/\s*/g, '')
          param.carNos = param.carNos.replace(/[\r\n]/g, '')
        }
        if (param.starttime.slice(0, 10) !== param.endtime.slice(0, 10)) return this.$tip.error('入园时间和离园时间不可跨天')
        // 调用新建接口
admin/src/views/meeting/components/OperaBookingsWindow.vue
@@ -4,7 +4,7 @@
    <el-form :model="form" ref="form" :rules="rules" label-width="120px" label-suffix=":">
      <el-form-item label="关联会议室" prop="roomId">
        <el-select v-model="form.roomId" filterable clearable :disabled="isEdit" placeholder="请选择关联会议室"
          @change="selectRoom">
        >  @change="selectRoom"
          <el-option v-for="item in rooms()" :key="item.id" :value="item.id" :label="item.name" />
        </el-select>
      </el-form-item>
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformGroup.java
@@ -102,4 +102,13 @@
    @ApiModelProperty(value = "计划收货数量(非wms)", example = "1")
    @TableField(exist = false)
    private BigDecimal ortherTotalNum;
    @ApiModelProperty(value = "车辆签到微信通知接收人员主键多个以,分割")
    @TableField(exist = false)
    private String signInNoticeUserNames;
    @ApiModelProperty(value = "作业未完成微信通知接收人员主键多个以,分割")
    @TableField(exist = false)
    private String unFinishNoticeUserNames;
}
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformGroupServiceImpl.java
@@ -2,6 +2,10 @@
import com.doumee.core.constants.ResponseStatus;
import com.doumee.core.exception.BusinessException;
import com.doumee.core.wx.wxPlat.WxPlatConstants;
import com.doumee.core.wx.wxPlat.WxPlatNotice;
import com.doumee.dao.system.SystemUserMapper;
import com.doumee.dao.system.model.SystemUser;
import com.doumee.service.business.third.model.LoginUserInfo;
import com.doumee.service.business.third.model.PageData;
import com.doumee.service.business.third.model.PageWrap;
@@ -21,13 +25,12 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.Date;
import java.util.List;
import java.util.Objects;
import java.util.*;
import java.util.stream.Collectors;
/**
@@ -40,6 +43,8 @@
    @Autowired
    private PlatformGroupMapper platformGroupMapper;
    @Autowired
    private SystemUserMapper systemUserMapper;
    @Autowired
    private PlatformJoinMapper platformJoinMapper;
@@ -188,7 +193,54 @@
                queryWrapper.orderByAsc(sortData.getProperty());
            }
        }
        return PageData.from(platformGroupMapper.selectPage(page, queryWrapper));
        PageData<PlatformGroup> result =PageData.from(platformGroupMapper.selectPage(page, queryWrapper));
        if(result !=null && result.getRecords()!=null){
            List<String > ids0 = new ArrayList<>();
            List<SystemUser> systemUserList ;
            for(PlatformGroup platformGroup : result.getRecords()){
                if( StringUtils.isNotBlank(platformGroup.getSignInNoticeUsers()) || StringUtils.isNotBlank(platformGroup.getUnFinishNoticeUsers())) {
                    if( StringUtils.isNotBlank(platformGroup.getSignInNoticeUsers()) ){
                        ids0.addAll(Arrays.asList(platformGroup.getSignInNoticeUsers().split(",")));
                    }
                    if( StringUtils.isNotBlank(platformGroup.getUnFinishNoticeUsers()) ){
                        ids0.addAll(Arrays.asList(platformGroup.getUnFinishNoticeUsers().split(",")));
                    }
                }
            }
            systemUserList = systemUserMapper.selectList(new QueryWrapper<SystemUser>().lambda()
                    .eq(SystemUser::getDeleted, Constants.ZERO).eq(SystemUser::getStatus, Constants.ZERO).isNotNull(SystemUser::getOpenid)
                    .in(SystemUser::getId,ids0)  );
            if (systemUserList!=null) {
                for(PlatformGroup platformGroup : result.getRecords()){
                    platformGroup.setSignInNoticeUserNames(getUserNameFromList(0,platformGroup,systemUserList));
                    platformGroup.setUnFinishNoticeUserNames(getUserNameFromList(1,platformGroup,systemUserList));
                }
            }
        }
        return result;
    }
    private String getUserNameFromList(int i, PlatformGroup platformGroup, List<SystemUser> systemUserList) {
           String ids = i ==0?platformGroup.getSignInNoticeUsers():platformGroup.getSignInNoticeUsers();
           String name = "";
            if( StringUtils.isNotBlank(ids)) {
                List<String > ids0 = Arrays.asList(ids.split(","));
                if (systemUserList!=null) {
                    for(SystemUser user :systemUserList){
                        for(String s : ids0){
                            if(StringUtils.isNotBlank(name)){
                                name += ",";
                            }
                            if(StringUtils.equals(user.getId().toString(),s)){
                                name += StringUtils.defaultString(user.getRealname(),user.getUsername());
                            }
                        }
                    }
                }
            }
            return  name;
    }
    @Override