Merge remote-tracking branch 'origin/master'
| | |
| | | /> |
| | | </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" |
| | |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="是否施工作业"> |
| | | <!-- <el-form-item label="是否施工作业"> |
| | | <el-switch |
| | | style="width: 200px" |
| | | v-model="param.type" |
| | |
| | | :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="请输入施工内容" |
| | |
| | | GlobalWindow, |
| | | UploadFaceImg |
| | | }, |
| | | |
| | | |
| | | data () { |
| | | return { |
| | | isShowModal: false, |
| | |
| | | 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' }], |
| | |
| | | } |
| | | }, |
| | | 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') |
| | |
| | | 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('入园时间和离园时间不可跨天') |
| | | // 调用新建接口 |
| | |
| | | this.getList() |
| | | }) |
| | | }).catch(() => { |
| | | |
| | | }) |
| | | }, |
| | | exportExcel () { |
| | |
| | | <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> |
| | |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="waitCallTime" label="叫号等待时间(分钟)" min-width="140px" align="center"></el-table-column> |
| | | <el-table-column prop="signInNoticeUserNames" label="签到通知人员" min-width="" align="center"></el-table-column> |
| | | <el-table-column prop="unFinishNoticeUserNames" label="未完成作业通知人员" min-width=" " align="center"></el-table-column> |
| | | <el-table-column prop="editDate" label="最近更新时间" min-width="150px" align="center"></el-table-column> |
| | | <el-table-column |
| | | v-if="containPermissions(['business:platformgroup:update', 'business:platformgroup:delete'])" |
| | |
| | | { |
| | | "name" : "laborVisitors", |
| | | "appid" : "__UNI__BCCF400", |
| | | "appid" : "__UNI__91B8BB7", |
| | | "description" : "", |
| | | "versionName" : "1.0.0", |
| | | "versionCode" : "100", |
| | |
| | | closeOnClickOverlay |
| | | :minDate="new Date().getTime()" |
| | | mode="datetime" |
| | | :formatter="formatter" |
| | | @close="showDatetime = false" |
| | | @cancel="showDatetime = false" |
| | | @confirm="setinDate" |
| | |
| | | this.initData() |
| | | }, |
| | | methods: { |
| | | formatter(type, value) { |
| | | if (type === 'year') { |
| | | return `${value}年` |
| | | } |
| | | if (type === 'month') { |
| | | return `${value}月` |
| | | } |
| | | if (type === 'day') { |
| | | return `${value}日` |
| | | } |
| | | if (type === 'hour') { |
| | | return `${value}时` |
| | | } |
| | | if (type === 'minute') { |
| | | return `${value}分` |
| | | } |
| | | return value |
| | | }, |
| | | checkSurplus() { |
| | | const { arriveDate, reasonId, totalNum } = this.param |
| | | if(!arriveDate || !reasonId || !totalNum) return |
| | |
| | | <template> |
| | | <view class="box"> |
| | | <mp-html :content="content" /> |
| | | <!-- <mp-html :content="content" /> --> |
| | | <u-parse :content="content"></u-parse> |
| | | </view> |
| | | </template> |
| | | |
| | |
| | | <template> |
| | | <view class="box"> |
| | | <!-- <view v-html="info"></view> --> |
| | | <mp-html :content="info" /> |
| | | <!-- <mp-html :content="info" /> --> |
| | | <u-parse :content="info"></u-parse> |
| | | </view> |
| | | </template> |
| | | <script> |
| | |
| | | <template> |
| | | <view class="box"> |
| | | <!-- <view v-html="info"></view> --> |
| | | <mp-html :content="info" /> |
| | | <!-- <mp-html :content="info" /> --> |
| | | <u-parse :content="info"></u-parse> |
| | | </view> |
| | | </template> |
| | | <script> |
| | |
| | | <view class="modal">
|
| | | <!-- <view v-html="htmlText"></view> -->
|
| | | <view class="content">
|
| | | <mp-html :content="htmlText" />
|
| | | <!-- <mp-html :content="htmlText" /> -->
|
| | | <u-parse :content="htmlText"></u-parse>
|
| | | </view>
|
| | | </view>
|
| | | </u-popup>
|
| | |
| | | </view> |
| | | </view> |
| | | </view> --> |
| | | <view v-if="form1.type == '1'" class="list_item"> |
| | | <view v-if="form1.type == 1" class="list_item"> |
| | | <view class="list_item_label"> |
| | | <text></text> |
| | | <text>施工内容</text> |
| | |
| | | </view> |
| | | </view> |
| | | </view> |
| | | <view class="footer"> |
| | | <view class="footer_btn" @click="onSubmit">提交</view> |
| | | <view class="footer-box"> |
| | | <view class="submit-button" @click="onSubmit">提交</view> |
| | | </view> |
| | | <!-- 入园时间 --> |
| | | <u-datetime-picker :show="show4" :minDate="new Date().getTime()" mode="datetime" :formatter="formatter" |
| | | <u-datetime-picker :show="show4" :minDate="new Date().getTime()" :formatter="formatter" mode="datetime" |
| | | @cancel="show4 = false" @confirm="setstarttime"></u-datetime-picker> |
| | | <!-- 离园时间 --> |
| | | <!-- 离园时间 --> |
| | | <u-datetime-picker v-if="form1.starttime" :show="show5" :formatter="formatter" |
| | | :minDate="formatTimeStamp(form1.starttime)" :maxDate="formatTimeStamp(form1.starttime.slice(0,10) + ' 23:59')" |
| | | mode="datetime" @cancel="show5 = false" @confirm="setendtime"></u-datetime-picker> |
| | |
| | | }, |
| | | methods: { |
| | | formatter(type, value) { |
| | | // if (type === 'year') { |
| | | // return `${value}年` |
| | | // } |
| | | // if (type === 'month') { |
| | | // return `${value}月` |
| | | // } |
| | | // if (type === 'day') { |
| | | // return `${value}日` |
| | | // } |
| | | if (type === 'year') { |
| | | return `${value}年` |
| | | } |
| | |
| | | if (type === 'day') { |
| | | return `${value}日` |
| | | } |
| | | // <<<<<<< HEAD |
| | | this.$forceUpdate() |
| | | this.closeInput() |
| | | if (type === 'hour') { |
| | | return `${value}时` |
| | | } |
| | | if (type === 'minute') { |
| | | return `${value}分` |
| | | } |
| | | // this.$forceUpdate() |
| | | // this.closeInput() |
| | | return value |
| | | }, |
| | | closeInput() { |
| | | this.$refs.keyboard.close() |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | .footer-box { |
| | | width: 100%; |
| | | position: fixed; |
| | | bottom: 30rpx; |
| | | height: 80rpx; |
| | | display: flex; |
| | | justify-content: center; |
| | | align-items: center; |
| | | .submit-button { |
| | | width: calc(100% - 60rpx); |
| | | height: 88rpx; |
| | | line-height: 88rpx; |
| | | background: #4d99a8; |
| | | border-radius: 4rpx; |
| | | color: #fff; |
| | | border-radius: 44rpx; |
| | | font-size: 32rpx; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | } |
| | | } |
| | | |
| | | .head { |
| | | width: 100%; |
| | |
| | | <template> |
| | | <view class="box"> |
| | | <!-- <view v-html="info"></view> --> |
| | | <mp-html :content="info" /> |
| | | <!-- <mp-html :content="info" /> --> |
| | | <u-parse :content="info"></u-parse> |
| | | </view> |
| | | </template> |
| | | <script> |
| | |
| | | |
| | | export const baseUrl = 'zhyq_interface/' |
| | | // export const baseUrl = 'zhyq_interface/' |
| | | // export const baseUrl = 'http://192.168.0.173/gateway_interface/' |
| | | // export const baseUrl = 'http://10.50.250.253:8088/gateway_interface/' |
| | | // export const baseUrl = 'https://atwl.ahzyssl.com/zhyq_interface/' |
| | | export const baseUrl = 'https://atwl.ahzyssl.com/zhyq_interface/' |
| | | |
| | | export const app_url = 'https://atwl.ahzyssl.com/zhyq_h5/#/' |
| | | |
| | |
| | | } |
| | | public static void main(String[] args) throws ParseException { |
| | | |
| | | |
| | | } |
| | | |
| | | |
| | |
| | | String[] customBroadcast= new String[]{"/api/ibas/v1/customBroadcast","用于设置广播的自定播放和停止"};//用于设置广播的自定播放和停止 |
| | | String[] iccmAppointment= new String[]{"/api/iccm/v2/appointment/","iccm访客登记添加"};//iccm访客登记添加 |
| | | String[] iccmUpdateAppointment= new String[]{"/api/iccm/v2/appointment/update","iccm访客登记修改"};//iccm访客登记修改 |
| | | String[] iccmCancelAppointment= new String[]{"/api/iccm/v1/appointment/cancel","iccm访客登记修改"};//iccm访客登记修改 |
| | | String[] iccmCancelAppointment= new String[]{"/api/iccm/v1/appointment/cancel","iccm访客登记取消"};//iccm访客登记取消 |
| | | String[] iccmAppointmentMDJ= new String[]{"/api/iccm/v1/appointment/free/registration","iccm访客预约免登记"};//iccm访客预约免登记 |
| | | String[] privilegIccmeGroup= new String[]{"/api/iccm/v1/privilege/groups","查询访客权限组"};//查询访客权限组 |
| | | String[] iccmAppointmentRecords= new String[]{"/api/iccm/v2/appointment/records","iccm查询已预约登记"};//iccm查询已预约登记 |
| | |
| | | import com.doumee.core.haikang.model.param.request.CarPictureRequest; |
| | | import com.doumee.core.haikang.model.param.request.FacePictureCheckRequest; |
| | | import com.doumee.core.haikang.model.param.request.ParkReservationAddRequest; |
| | | import com.doumee.core.haikang.model.param.request.VisitAppointmentCancelRequest; |
| | | import com.doumee.core.haikang.service.HKService; |
| | | import com.doumee.core.utils.Constants; |
| | | import com.doumee.core.utils.DateUtil; |
| | |
| | | ArtemisConfig.appSecret = "88wFsg3xfn7o8QMsWEO2"; |
| | | HKConstants.https = "https://"; |
| | | |
| | | ParkReservationAddRequest request = new ParkReservationAddRequest(); |
| | | request.setPlateNo("皖A90LL0"); |
| | | request.setParkSyscode("1c4cdb8b66ed4c23bacb385c3fb6c46b"); |
| | | request.setPhoneNo("15345690849"); |
| | | request.setOwner("施旭辉"); |
| | | request.setAllowTimes(Constants.ONE+""); |
| | | request.setIsCharge(Constants.ONE+""); |
| | | request.setStartTime( DateUtil.getISO8601Timestamp2(new Date()) ); |
| | | request.setEndTime( "2025-03-27T00:00:00+08:00" ); |
| | | String response = parkAddition(JSONObject.toJSONString(request)); |
| | | VisitAppointmentCancelRequest request = new VisitAppointmentCancelRequest(); |
| | | request.setAppointRecordIds(new String[]{"皖A90LL0"}); |
| | | String response = iccmCancelAppointment(JSONObject.toJSONString(request)); |
| | | System.out.println(response); |
| | | |
| | | /* CarPictureRequest param = new CarPictureRequest(); |
| | |
| | | @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; |
| | | } |
| | |
| | | |
| | | 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; |
| | |
| | | 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; |
| | | |
| | | /** |
| | |
| | | |
| | | @Autowired |
| | | private PlatformGroupMapper platformGroupMapper; |
| | | @Autowired |
| | | private SystemUserMapper systemUserMapper; |
| | | |
| | | @Autowired |
| | | private PlatformJoinMapper platformJoinMapper; |
| | |
| | | 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 |