bug修改

This commit is contained in:
曹前明 2022-09-23 18:48:15 +08:00
parent 985d7dda37
commit e068923bbe
22 changed files with 379 additions and 231 deletions

View File

@ -70,6 +70,7 @@
// #endif // #endif
uni.getSystemInfo({ uni.getSystemInfo({
success(res) { success(res) {
that.$u.vuex('vuex_version', res.appVersion)
if (res.platform == 'android') { if (res.platform == 'android') {
that.$u.api.apkCheck().then(res1 => { that.$u.api.apkCheck().then(res1 => {
if (res.appVersion < res1.version) { if (res.appVersion < res1.version) {

View File

@ -41,6 +41,7 @@ const install = (Vue, vm) => {
let getTickets = (params = {}) => vm.$u.get('/wf/ticket/', params); //工单查询/wf/ticket/{id}/ let getTickets = (params = {}) => vm.$u.get('/wf/ticket/', params); //工单查询/wf/ticket/{id}/
let ticketCreate = (data = {}) => vm.$u.post('/wf/ticket/', data); //工单 let ticketCreate = (data = {}) => vm.$u.post('/wf/ticket/', data); //工单
let getTicketItem = (id) => vm.$u.get(`/wf/ticket/${id}/`); //工单详情 let getTicketItem = (id) => vm.$u.get(`/wf/ticket/${id}/`); //工单详情
let getTicketLog = (id) => vm.$u.get(`/wf/ticket/${id}/flowlogs/`); //工单日志
let getTicketTransitions = (id) => vm.$u.get(`/wf/ticket/${id}/transitions/`); //工单按钮查询 let getTicketTransitions = (id) => vm.$u.get(`/wf/ticket/${id}/transitions/`); //工单按钮查询
let workflowInit = (key) => vm.$u.get(`/wf/workflow/${key}/init_key/`); //工单按钮查询 let workflowInit = (key) => vm.$u.get(`/wf/workflow/${key}/init_key/`); //工单按钮查询
let ticketDutyAgg = (data = {}) => vm.$u.get(`/wf/ticket/duty_agg/`,data); //工单待办聚合 let ticketDutyAgg = (data = {}) => vm.$u.get(`/wf/ticket/duty_agg/`,data); //工单待办聚合
@ -54,7 +55,7 @@ const install = (Vue, vm) => {
let operationList = (data = {}) => vm.$u.get('/opm/operation/', data); //作业列表 let operationList = (data = {}) => vm.$u.get('/opm/operation/', data); //作业列表
let operationItem = (id) => vm.$u.get(`/opm/operation/${id}/`); //作业详情 let operationItem = (id) => vm.$u.get(`/opm/operation/${id}/`); //作业详情
let operationCreat = (data = {}) => vm.$u.post('/opm/operation/', data); //作业新建 let operationCreat = (data = {}) => vm.$u.post('/opm/operation/', data); //作业新建
let operationUpdate = (id, data = {}) => vm.$u.get(`/opm/operation/${id}/`, data); //作业编辑 let operationUpdate = (id, data = {}) => vm.$u.put(`/opm/operation/${id}/`, data); //作业编辑
let oplItem = (id) => vm.$u.get(`/opm/opl/${id}/`); //opl作业许可证查询 let oplItem = (id) => vm.$u.get(`/opm/opl/${id}/`); //opl作业许可证查询
let oplLists = (data = {}) => vm.$u.get('/opm/opl/', data); //作业许可证 let oplLists = (data = {}) => vm.$u.get('/opm/opl/', data); //作业许可证
let oplCate = (data = {}) => vm.$u.get('/opm/opl_cate/', data); //作业许可证类型 let oplCate = (data = {}) => vm.$u.get('/opm/opl_cate/', data); //作业许可证类型
@ -62,19 +63,24 @@ const install = (Vue, vm) => {
let oplCreate = (data = {}) => vm.$u.post('/opm/opl/', data); //添加新许可证 let oplCreate = (data = {}) => vm.$u.post('/opm/opl/', data); //添加新许可证
let oplUpdate = (id,data = {}) => vm.$u.put(`/opm/opl/${id}/`, data); //编辑许可证 let oplUpdate = (id,data = {}) => vm.$u.put(`/opm/opl/${id}/`, data); //编辑许可证
let oplWorker = (data = {}) => vm.$u.get('/opm/opl_worker/', data); //作业许可证工作人员 let oplWorker = (data = {}) => vm.$u.get('/opm/opl_worker/', data); //作业许可证工作人员
let oplWorkerCreate = (data = {}) => vm.$u.post('/opm/opl_worker/', data); //作业许可证类型 let oplWorkerCreate = (data = {}) => vm.$u.post('/opm/opl_worker/', data); //作业许可证工作人员创建
let oplWorkerDelete = (id) => vm.$u.delete(`/opm/opl_worker/${id}/`); //作业许可证工作人员删除
let oplGasList = (data = {}) => vm.$u.get('/opm/gas_check/', data); //气体检测记录 let oplGasList = (data = {}) => vm.$u.get('/opm/gas_check/', data); //气体检测记录
let oplGasCreate = (data = {}) => vm.$u.post('/opm/gas_check/', data); //作业许可证类型 let oplGasCreate = (data = {}) => vm.$u.post('/opm/gas_check/', data); //作业许可证类型
let oplMtartMtask = (id) => vm.$u.post(`/opm/opl/${id}/start_mtask/`); //作业开始监控 let oplMtartMtask = (id) => vm.$u.post(`/opm/opl/${id}/start_mtask/`); //作业开始监控
let oplStopMtask = (id) => vm.$u.post(`/opm/opl/${id}/stop_mtask/`); //作业结束监控 let oplStopMtask = (id) => vm.$u.post(`/opm/opl/${id}/stop_mtask/`); //作业结束监控
let rpartyList = (data = {}) => vm.$u.get(`/rpm/rparty/`, data); //相关方列表 let rpartyList = (data = {}) => vm.$u.get(`/rpm/rparty/`, data); //相关方列表
let remployee = (data = {}) => vm.$u.get(`/rpm/remployee/`, data); //相关方人员表
let rcertificate = (data = {}) => vm.$u.get(`/rpm/rcertificate/`, data); //相关方证书
let rpjFileList = (data = {}) => vm.$u.get(`/rpm/rpj_file/`, data); //相关方wenjian let rpjFileList = (data = {}) => vm.$u.get(`/rpm/rpj_file/`, data); //相关方wenjian
let rpjList = (data = {}) => vm.$u.get(`/rpm/rpj/`, data); //rpj查询 let rpjList = (data = {}) => vm.$u.get(`/rpm/rpj/`, data); //rpj查询
let rpjItem = (id) => vm.$u.get(`/rpm/rpj/${id}/`); //rpj查询 let rpjItem = (id) => vm.$u.get(`/rpm/rpj/${id}/`); //rpj查询
let rpjCreate = (data={}) => vm.$u.post(`/rpm/rpj/`,data); //rpj创建/rpm/rpj_member/ let rpjCreate = (data={}) => vm.$u.post(`/rpm/rpj/`,data); //rpj创建/rpm/rpj_member/
let rpjUpdate = (id,data={}) => vm.$u.put(`/rpm/rpj/${id}/`,data); //rpj更新 let rpjUpdate = (id,data={}) => vm.$u.put(`/rpm/rpj/${id}/`,data); //rpj更新
let rpjMembers = (data = {}) => vm.$u.get(`/rpm/rpj_member/`, data); //入厂项目工作人员 let rpjMembers = (data = {}) => vm.$u.get(`/rpm/rpj_member/`, data); //入厂项目工作人员
let rpjMemberCreate = (data) => vm.$u.post(`/rpm/rpj_member/`, data); //入厂项目工作人员创建
let rpjMemberDelete = (id) => vm.$u.post(`/rpm/rpj_member/${id}/`); //入厂项目工作人员删除
let areaLists = (data = {}) => vm.$u.get('/am/area/', data); //作业区域 let areaLists = (data = {}) => vm.$u.get('/am/area/', data); //作业区域
@ -82,6 +88,7 @@ const install = (Vue, vm) => {
let visitItem = (id) => vm.$u.get(`/vm/visit/${id}/`); //来访项目详情 let visitItem = (id) => vm.$u.get(`/vm/visit/${id}/`); //来访项目详情
let visitCreate = (data = {}) => vm.$u.post(`/vm/visit/`, data); //新增来访项目 let visitCreate = (data = {}) => vm.$u.post(`/vm/visit/`, data); //新增来访项目
let visitUpdate = (id, data = {}) => vm.$u.put(`/vm/visit/${id}/`, data); //编辑来访项目 let visitUpdate = (id, data = {}) => vm.$u.put(`/vm/visit/${id}/`, data); //编辑来访项目
let visitDelete = (id) => vm.$u.delete(`/vm/visit/${id}/`); //删除来访项目
let vmVisitor = (data = {}) => vm.$u.get(`/vm/visitor/`, data); //来访人员列表 let vmVisitor = (data = {}) => vm.$u.get(`/vm/visitor/`, data); //来访人员列表
let visitorRegister = (data = {}) => vm.$u.post(`/vm/visitor/register/`, data); //来访人员/司机注册 let visitorRegister = (data = {}) => vm.$u.post(`/vm/visitor/register/`, data); //来访人员/司机注册
let visitSubmit = (data = {}) => vm.$u.post(`/vm/visit/${id}/submit/`, data); //司机直接提交不走工单 let visitSubmit = (data = {}) => vm.$u.post(`/vm/visit/${id}/submit/`, data); //司机直接提交不走工单
@ -90,11 +97,12 @@ const install = (Vue, vm) => {
let vmVpeople = (data = {}) => vm.$u.get(`/vm/vpeople/`, data); //来访人员列表 let vmVpeople = (data = {}) => vm.$u.get(`/vm/vpeople/`, data); //来访人员列表
let vpeopleCreate = (data = {}) => vm.$u.post(`/vm/vpeople/`, data); //来访人员添加 let vpeopleCreate = (data = {}) => vm.$u.post(`/vm/vpeople/`, data); //来访人员添加
let vpeopleUpdate = (data = {}) => vm.$u.put(`/vm/vpeople/${id}/`, data); //来访人员编辑 let vpeopleUpdate = (data = {}) => vm.$u.put(`/vm/vpeople/${id}/`, data); //来访人员编辑
let vpeopleDelete = (id) => vm.$u.delete(`/vm/vpeople/${id}/`); //来访人员删除
let eventCateAgg = (data = {}) => vm.$u.post(`/ecm/event/cate_agg/`, data); //事件聚合统计 let eventCateAgg = (data = {}) => vm.$u.post(`/ecm/event/cate_agg/`, data); //事件聚合统计
let eventList = (data = {}) => vm.$u.get(`/ecm/event/`, data); //事件列表 let eventList = (data = {}) => vm.$u.get(`/ecm/event/`, data); //事件列表
let eventtItem = (id) => vm.$u.get(`/ecm/event/${id}/`); //事件详情 let eventtItem = (id) => vm.$u.get(`/ecm/event/${id}/`); //事件详情
let eventtHandle = (id,data={}) => vm.$u.get(`/ecm/event/${id}/handle/`, data); //事件处理 let eventtHandle = (id,data={}) => vm.$u.post(`/ecm/event/${id}/handle/`, data); //事件处理
let thirdBltBind = (data={}) => vm.$u.post(`/third/tdevice/blt_bind/`, data); //解绑卡 let thirdBltBind = (data={}) => vm.$u.post(`/third/tdevice/blt_bind/`, data); //解绑卡
@ -122,6 +130,7 @@ const install = (Vue, vm) => {
getTicketItem, getTicketItem,
workflowInit, workflowInit,
getTicketTransitions, getTicketTransitions,
getTicketLog,
visitList, visitList,
visitItem, visitItem,
@ -131,18 +140,24 @@ const install = (Vue, vm) => {
vmVisitor, vmVisitor,
visitorCreate, visitorCreate,
visitorUpdate, visitorUpdate,
visitDelete,
visitorRegister, visitorRegister,
vmVpeople, vmVpeople,
vpeopleCreate, vpeopleCreate,
vpeopleUpdate, vpeopleUpdate,
vpeopleDelete,
rpartyList, rpartyList,
remployee,
rcertificate,
rpjItem, rpjItem,
rpjList, rpjList,
rpjCreate, rpjCreate,
rpjUpdate, rpjUpdate,
rpjFileList, rpjFileList,
rpjMembers, rpjMembers,
rpjMemberCreate,
rpjMemberDelete,
oplCateItem, oplCateItem,
operationItem, operationItem,
@ -160,6 +175,7 @@ const install = (Vue, vm) => {
oplGasCreate, oplGasCreate,
oplMtartMtask, oplMtartMtask,
oplStopMtask, oplStopMtask,
oplWorkerDelete,
hrmUserInfo, hrmUserInfo,
hrmCertificate, hrmCertificate,

View File

@ -73,8 +73,8 @@
<text class="form-left-text">事件截图</text> <text class="form-left-text">事件截图</text>
</view> </view>
<view class="form-right" style=""> <view class="form-right" style="">
<image fit="cover" class="form-img" :src="eventDetail.global_img"></image> <image mode="aspectFit" class="form-img" :src="eventDetail.global_img"></image>
<image fit="cover" class="form-img form-img-face" v-if="eventDetail.face_img!==null&&eventDetail.face_img!==undefined" :src="eventDetail.face_img"></image> <image mode="aspectFit" class="form-img form-img-face" v-if="eventDetail.face_img!==null&&eventDetail.face_img!==undefined" :src="eventDetail.face_img"></image>
</view> </view>
</view> </view>
</view> </view>
@ -94,7 +94,7 @@
</view> </view>
<radio-group @change="radioChange"> <radio-group @change="radioChange">
<label class="radio"> <label class="radio">
<radio value="10" />正常 <radio value="10" checked/>正常
</label> </label>
<label class="radio"> <label class="radio">
<radio value="20" />误报 <radio value="20" />误报
@ -139,6 +139,9 @@
this.getEventItem(); this.getEventItem();
}, },
methods: { methods: {
radioChange(val) {
this.form.mark=val
},
// //
getEventItem() { getEventItem() {
this.$u.api.eventtItem(this.eventId).then((res) => { this.$u.api.eventtItem(this.eventId).then((res) => {
@ -153,14 +156,11 @@
console.log(res) console.log(res)
}); });
}, },
eventHandle() { eventHandle() {
debugger; debugger;
console.log(this.form) console.log(this.form)
this.$u.api.eventtHandle(this.eventId, this.form).then(res => { this.$u.api.eventtHandle(this.eventId, this.form).then(res => {
if (res.err_msg) {} else { this.goBack()
}
}) })
}, },
goBack() { goBack() {
@ -295,7 +295,7 @@
.form-img { .form-img {
/* width: 600upx; */ /* width: 600upx; */
height: 300upx; height: 320upx;
} }
.form-img-face{ .form-img-face{
width: 250upx; width: 250upx;

View File

@ -2,10 +2,8 @@
<view class="ticket-handle"> <view class="ticket-handle">
<uni-nav-bar @clickLeft="goBack()" class="nav-bar" height="110rpx" leftWidth="200rpx" leftText="工单审批" <uni-nav-bar @clickLeft="goBack()" class="nav-bar" height="110rpx" leftWidth="200rpx" leftText="工单审批"
leftIcon="left" border backgroundColor="#2cade8" color="#fff" fixed statusBar shadow></uni-nav-bar> leftIcon="left" border backgroundColor="#2cade8" color="#fff" fixed statusBar shadow></uni-nav-bar>
<block v-if="cateType==='visit'">
<view class="ticket-info"> <view class="ticket-info">
<view class="form-item"> <view class="form-item border-bottom">
<view class="form-left"> <view class="form-left">
<text class="form-left-text">工单流水号</text> <text class="form-left-text">工单流水号</text>
</view> </view>
@ -13,7 +11,24 @@
<view>{{ticketDetail.sn}}</view> <view>{{ticketDetail.sn}}</view>
</view> </view>
</view> </view>
<view class="form-item border-bottom">
<view class="form-left">
<text class="form-left-text">工单名称</text>
</view>
<view class="form-right">
<view v-if="oplDetail.ticket_">{{oplDetail.ticket_.title}}</view>
</view>
</view>
<view class="form-item" @click="logView">
<view class="form-left">
<text class="form-left-text">工单状态</text>
</view>
<view class="form-right" style="color:blue">
<view v-if="oplDetail.ticket_">{{oplDetail.ticket_.state_.name}}</view>
</view>
</view>
</view> </view>
<block v-if="cateType==='visit'">
<view class="ticket-info"> <view class="ticket-info">
<view class="form-content "> <view class="form-content ">
<view class="form-item border-bottom"> <view class="form-item border-bottom">
@ -93,16 +108,6 @@
</block> </block>
<block v-else-if="cateType==='rpj'"> <block v-else-if="cateType==='rpj'">
<view class="ticket-info">
<view class="form-item">
<view class="form-left">
<text class="form-left-text">工单流水号</text>
</view>
<view class="form-right">
<view>{{ticketDetail.sn}}</view>
</view>
</view>
</view>
<view class="ticket-info"> <view class="ticket-info">
<view class="form-content "> <view class="form-content ">
<view class="form-item border-bottom"> <view class="form-item border-bottom">
@ -189,33 +194,7 @@
</view> </view>
</block> </block>
<block v-else-if="cateType==='opl_fire'"> <block v-else-if="cateType==='opl'">
<view class="ticket-info">
<view class="form-item border-bottom">
<view class="form-left">
<text class="form-left-text">工单流水号</text>
</view>
<view class="form-right">
<view>{{ticketDetail.sn}}</view>
</view>
</view>
<view class="form-item border-bottom">
<view class="form-left">
<text class="form-left-text">工单名称</text>
</view>
<view class="form-right">
<view v-if="oplDetail.ticket_">{{oplDetail.ticket_.title}}</view>
</view>
</view>
<view class="form-item">
<view class="form-left">
<text class="form-left-text">工单状态</text>
</view>
<view class="form-right">
<view v-if="oplDetail.ticket_">{{oplDetail.ticket_.state_.name}}</view>
</view>
</view>
</view>
<view class="ticket-info"> <view class="ticket-info">
<view class="form-content "> <view class="form-content ">
<view class="form-item border-bottom"> <view class="form-item border-bottom">
@ -390,6 +369,29 @@
</view> </view>
</view> </view>
</block> </block>
<view class="dialogWrap" v-if="logDialog">
<view class="dialogCont">
<view class="dialogTitle">
<view>审批日志</view>
<view class="dialogCloseImg" @click="closeDialog"></view>
</view>
<scroll-view style="height: 300px;" scroll-y="true">
<uni-list>
<uni-list-item v-for="item in tLog" :key="item.id">
<text slot="body">
<view>{{item.state_.name}}</view>
<view style="color:gray">
<span v-if="item.participant">{{item.participant_.name}}-</span>
<span v-if="item.transition_attribute==1" style="color:green">同意-</span>
<span v-if="item.transition_attribute==2" style="color:red">拒绝-</span>
<span>{{item.create_time}}</span>
</view>
</text>
</uni-list-item>
</uni-list>
</scroll-view>
</view>
</view>
</view> </view>
</template> </template>
@ -403,6 +405,8 @@
format: true format: true
}) })
return { return {
logDialog: false,
tLog:[],
form: { form: {
suggestion: '', suggestion: '',
close_note: '', close_note: '',
@ -434,15 +438,15 @@
id: 2 id: 2
}], }],
range: [{ range: [{
value: 0, value: "运行",
text: "运行" text: "运行"
}, },
{ {
value: 1, value: "停机",
text: "停机" text: "停机"
}, },
{ {
value: 2, value: "检修",
text: "检修" text: "检修"
}, },
], ],
@ -529,13 +533,23 @@
this.getVisit(); this.getVisit();
} else if (this.cateType === 'rpj') { } else if (this.cateType === 'rpj') {
this.getRpj(); this.getRpj();
} else { } else if (this.cateType === 'opl') {
this.getOpl(); this.getOpl();
} }
this.getticketItem(); this.getticketItem();
this.getBtns(); this.getBtns();
}, },
methods: { methods: {
closeDialog() {
this.logDialog = false;
},
//
logView() {
this.$u.api.getTicketLog(this.ticketId).then((res) => {
this.logDialog = true;
this.tLog = res;
});
},
// //
getticketItem() { getticketItem() {
this.$u.api.getTicketItem(this.ticketId).then((res) => { this.$u.api.getTicketItem(this.ticketId).then((res) => {
@ -946,4 +960,41 @@
border-top-width: 0; border-top-width: 0;
border-bottom-color: #EBEEF5; border-bottom-color: #EBEEF5;
} }
.dialogWrap {
position: fixed;
width: 100vw;
height: 100vh;
background-color: rgba(0, 0, 0, .3);
top: 0;
left: 0;
z-index: 110;
}
.dialogCont {
width: 90vw;
position: absolute;
top: 50%;
margin: auto;
background-color: #ffffff;
left: 5vw;
transform: translateY(-50%);
padding: 20rpx;
border-radius: 20rpx;
}
.dialogTitle {
font-size: 36rpx;
padding-bottom: 20rpx;
border-bottom: 1px solid #eeeeee;
display: flex;
justify-content: space-between;
}
.dialogCloseImg {
width: 52rpx;
height: 52rpx;
background-image: url('../../../static/my/my_apply/zuofei.png');
background-repeat: no-repeat;
background-size: cover;
}
</style> </style>

View File

@ -199,11 +199,18 @@
} }
}, },
ticketHandle(val, type) { ticketHandle(row, type) {
let projectId = val.ticket_data.visit ? val.ticket_data.visit : val.ticket_data.rpj ? val.ticket_data.rpj : let projectId = null;
val.ticket_data.opl; //Id visit let cateType = row.workflow_.key;
let catetype = val.workflow_.key; if (cateType === 'visit') {
const params = `?ticketId=${val.id}&projectId=${projectId}&cateType=${catetype}&type=${type}`; projectId = row.ticket_data.visit;
} else if (cateType === 'rpj') {
projectId = row.ticket_data.rpj;
} else if(cateType.indexOf('opl_')!=-1){
projectId = row.ticket_data.opl;
cateType = 'opl'
}
const params = `?ticketId=${row.id}&projectId=${projectId}&cateType=${cateType}&type=${type}`;
uni.navigateTo({ uni.navigateTo({
url: './detail/ticketHandle' + params, url: './detail/ticketHandle' + params,
}) })

View File

@ -115,13 +115,18 @@
this.totalNum = res.count; this.totalNum = res.count;
}) })
}, },
ticketHandle(val, type) { ticketHandle(row, type) {
debugger; let projectId = null;
let projectId = val.ticket_data.visit ? val.ticket_data.visit : val.ticket_data.rpj ? val.ticket_data.rpj : let cateType = row.workflow_.key;
val.ticket_data.opl; //Id visit if (cateType === 'visit') {
let catetype = val.workflow_.key; projectId = row.ticket_data.visit;
const params = `?ticketId=${val.id}&projectId=${projectId}&cateType=${catetype}&type=${type}`; } else if (cateType === 'rpj') {
debugger; projectId = row.ticket_data.rpj;
} else if(cateType.indexOf('opl_')!=-1){
projectId = row.ticket_data.opl;
cateType = 'opl'
}
const params = `?ticketId=${row.id}&projectId=${projectId}&cateType=${cateType}&type=${type}`;
uni.navigateTo({ uni.navigateTo({
url: '../detail/ticketHandle' + params, url: '../detail/ticketHandle' + params,
}) })

View File

@ -89,10 +89,18 @@
}) })
}, },
ticketShow(val) { ticketShow(row) {
let projectId = val.ticket_data.visit?val.ticket_data.visit:val.ticket_data.rpj?val.ticket_data.rpj:val.ticket_data.opl;//Id visit let projectId = null;
let catetype = val.workflow_.key; let cateType = row.workflow_.key;
const params = `?ticketId=${val.id}&projectId=${projectId}&cateType=${catetype}&type='show'`; if (cateType === 'visit') {
projectId = row.ticket_data.visit;
} else if (cateType === 'rpj') {
projectId = row.ticket_data.rpj;
} else if(cateType.indexOf('opl_')!=-1){
projectId = row.ticket_data.opl;
cateType = 'opl'
}
const params = `?ticketId=${row.id}&projectId=${projectId}&cateType=${cateType}&type='show'`;
uni.navigateTo({ uni.navigateTo({
url: '../detail/ticketHandle' + params, url: '../detail/ticketHandle' + params,
}) })

View File

@ -24,6 +24,7 @@
<u-tag text="访客" v-if="vuex_user.type === 'visitor'"/> <u-tag text="访客" v-if="vuex_user.type === 'visitor'"/>
</view> </view>
</view> </view>
<view>{{vuex_version}}</view>
<!-- <button type="default" class="modify-info" @click="goInto('myDataChange')">完善资料</button> --> <!-- <button type="default" class="modify-info" @click="goInto('myDataChange')">完善资料</button> -->
</view> </view>
</view> </view>

View File

@ -22,7 +22,7 @@
<view class="item item_bottom_border" style="height: fit-content;" v-if="!hasPhoto"> <view class="item item_bottom_border" style="height: fit-content;" v-if="!hasPhoto">
<view class="title">证件照</view> <view class="title">证件照</view>
<view style="flex: 3;"> <view style="flex: 3;">
<u-upload action="http://10.99.5.79:20309/api/file/" :header="header" ref="uUpload" <u-upload :action="vuex_apifile" :header="header" ref="uUpload"
:file-list="fileList" max-count="1" @on-success="imgUpSuccess" ></u-upload> :file-list="fileList" max-count="1" @on-success="imgUpSuccess" ></u-upload>
</view> </view>
</view> </view>
@ -42,9 +42,7 @@
fileList:[], fileList:[],
fileListS:[], fileListS:[],
hasPhoto:false, hasPhoto:false,
head: { header:'',
Authorization: "Bearer " + this.vuex_token
},
} }
}, },
onShow() { onShow() {

View File

@ -25,8 +25,10 @@
<view class="item" style="height: fit-content;"> <view class="item" style="height: fit-content;">
<view class="title">证件照</view> <view class="title">证件照</view>
<view style="flex: 3;"> <view style="flex: 3;">
<uni-file-picker v-model="formData.photo" file-mediatype="image" mode="grid" file-extname="png,jpg" <u-upload :action="vuex_apifile" :header="upHeader" ref="uUpload"
:limit="1" ref="files" :auto-upload="false" @select="select" /> max-count="1" :file-list="fileList" @on-success="imgUpSuccess"></u-upload>
<!-- <uni-file-picker v-model="formData.photo" file-mediatype="image" mode="grid" file-extname="png,jpg"
:limit="1" ref="files" :auto-upload="false" @select="select" /> -->
</view> </view>
</view> </view>
</view> </view>
@ -45,11 +47,18 @@
name: "", name: "",
phone: "", phone: "",
id_number: "" id_number: ""
} },
upHeader:'',
fileList:[]
} }
}, },
onLoad(){
this.getHeader()
},
methods: { methods: {
getHeader(){
this.upHeader = {Authorization: "Bearer " + this.vuex_token}
},
saveVisitor(){ saveVisitor(){
this.$u.api.visitorCreate(this.formData).then(res=>{ this.$u.api.visitorCreate(this.formData).then(res=>{
if(res.err_msg){}else{ if(res.err_msg){}else{
@ -67,47 +76,10 @@
select(e) { select(e) {
this.filepath = e.tempFilePaths this.filepath = e.tempFilePaths
}, },
async upImg() { imgUpSuccess(data){
var that = this debugger;
if (that.filepath.length>0) { console.log(data)
uni.showLoading({ this.formData.photo = data.path;
title: '上传中'
})
for(var i=0;i<that.filepath.length;i++){
let base64 = 'data:image/jpeg;base64,' + uni.getFileSystemManager().readFileSync(that.filepath[i],
'base64')
let res;
try{
res = await that.$u.api.upFile({imgBase64:base64})
}
catch(e){
if(e.data.code==1){
that.rpath.push(e.data.path)
}
}
}
try{
let payload = {
id: that.rdata.id,
voucher_url: that.rpath.join(',')
}
let res = await that.$u.api.tjfk(payload)
uni.hideLoading()
uni.showToast({
title:'提交成功'
})
uni.navigateBack()
}catch(e){
uni.hideLoading()
uni.showToast({
title:'提交失败',
icon:'none'
})
}
}
}, },
} }
} }

View File

@ -59,6 +59,15 @@
</uni-data-select> </uni-data-select>
</view> </view>
</view> </view>
<view class="form-item border-bottom">
<view class="form-left">
<text class="form-left-text">监控相机</text>
</view>
<view class="form-right">
<uni-data-select v-model="formData.vchannel" :localdata="vchannelOptions">
</uni-data-select>
</view>
</view>
<view class="form-item border-bottom"> <view class="form-item border-bottom">
<view class="form-left"> <view class="form-left">
<text class="star">*</text> <text class="star">*</text>
@ -94,6 +103,7 @@
</uni-data-picker> </uni-data-picker>
</view> </view>
</view> </view>
<view class="btn" v-if="showBtns"> <view class="btn" v-if="showBtns">
<button type="primary" class="save-btn" @click="saveSubmit">下一步</button> <button type="primary" class="save-btn" @click="saveSubmit">下一步</button>
</view> </view>
@ -124,6 +134,7 @@
coordinator: '', // coordinator: '', //
}, },
userRange: [], userRange: [],
vchannelOptions: [],
// //
range: [], range: [],
// //
@ -192,14 +203,19 @@
if (!that.paramsCheck()) { if (!that.paramsCheck()) {
return; return;
} else { } else {
console.log(this.formData)
if(this.formData.id){ if(this.formData.id){
this.$u.api.operationUpdate(this.formData.id,this.formData).then(res => { if(this.formData.state!=10){
let params = `?operationId=${res.id}`;
uni.navigateTo({ uni.navigateTo({
url: '/pages/workSpace/operation/oplCate'+params url: '/pages/workSpace/operation/oplCate?operationId='+this.formData.id
}) })
}) }else{
this.$u.api.operationUpdate(this.formData.id,this.formData).then(res => {
let params = `?operationId=${res.id}`;
uni.navigateTo({
url: '/pages/workSpace/operation/oplCate'+params
})
})
}
}else{ }else{
this.$u.api.operationCreat(this.formData).then(res => { this.$u.api.operationCreat(this.formData).then(res => {
let params = `?operationId=${res.id}`; let params = `?operationId=${res.id}`;

View File

@ -41,10 +41,10 @@
<view class="info-details">作业状态{{stateOptions[val.state]}}</view> <view class="info-details">作业状态{{stateOptions[val.state]}}</view>
<view class="info-details">生产状态{{val.state_work}}</view> <view class="info-details">生产状态{{val.state_work}}</view>
<view class="info-details">作业区域{{val.area_.name}} </view> <view class="info-details">作业区域{{val.area_.name}} </view>
<view class="info-details">更新时间{{val.update_time}} </view>
<view class="info-details">属地部门{{val.dept_ter_.name}} </view> <view class="info-details">属地部门{{val.dept_ter_.name}} </view>
<view class="info-details">业务部门{{val.dept_bus_.name}} </view> <view class="info-details">业务部门{{val.dept_bus_.name}} </view>
<view class="info-details">创建人{{val.create_by_.name}} </view> <view class="info-details">创建人{{val.create_by_.name}} </view>
<view class="info-details">创建时间{{val.update_time}} </view>
</view> </view>
<view class="bottom-btns"> <view class="bottom-btns">
<view class="shenhezhong shenhe-status" @click="operationHandle(val,'edit')" v-if="val.state===10&&dataTypye==='isMy'"> <view class="shenhezhong shenhe-status" @click="operationHandle(val,'edit')" v-if="val.state===10&&dataTypye==='isMy'">

View File

@ -70,16 +70,10 @@
</view> </view>
<view class="item"> <view class="item">
<view class="title">监控状态</view> <view class="title">监控状态</view>
<view class="content contentFlex" v-if="formData.mtask_status==='REVOKED'"> <view class="content contentFlex">
<text>已中止</text> <text v-if="formData.mtask_status" style="width: 160upx;">{{msOptions[formData.mtask_status]}}</text>
<text class="bindBtn" @click="mtaskStateChange('start')">开始</text> <text class="bindBtn" @click="mtaskStateChange('start')">开始</text>
</view> <text class="bindBtn2" @click="mtaskStateChange('end')">停止</text>
<view class="content contentFlex" v-else-if="formData.mtask_status==='STARTED'">
<text>进行中</text>
<text class="bindBtn" @click="mtaskStateChange('end')">结束</text>
</view>
<view class="content contentFlex" v-else-if="formData.mtask_status==='SUCCESS'">
<text>已完成</text>
</view> </view>
</view> </view>
</view> </view>
@ -138,6 +132,11 @@
risks_checked_:{}, risks_checked_:{},
measures_checked_:{} measures_checked_:{}
}, },
msOptions:{
"REVOKED": "已停止",
"STARTED": "进行中",
"SUCCESS": "已完成"
},
workerList:[], workerList:[],
gasList:[], gasList:[],
act_states: { act_states: {
@ -312,7 +311,7 @@
} }
.contentFlex{ .contentFlex{
display: flex; display: flex;
justify-content: space-between; /* justify-content: space-between; */
} }
.visitorsWrap{ .visitorsWrap{
@ -355,4 +354,15 @@
font-size: 25upx; font-size: 25upx;
text-align: center; text-align: center;
} }
.bindBtn2{
width: 80upx;
height: 50upx;
line-height: 50upx;
background: #ff0000;
display: inline-block;
border-radius: 16upx;
color: #ffffff;
font-size: 25upx;
text-align: center;
}
</style> </style>

View File

@ -4,21 +4,23 @@
leftIcon="left" border backgroundColor="#2cade8" color="#fff" fixed statusBar shadow></uni-nav-bar> leftIcon="left" border backgroundColor="#2cade8" color="#fff" fixed statusBar shadow></uni-nav-bar>
<view class="apply-info"> <view class="apply-info">
<view class="row" v-for="(row,index) in workerList" :key="index" @tap="select(row)"> <view class="row" v-for="(row,index) in workerList" :key="index" @tap="select(row)">
<view class="center"> <view class="center" style="display: flex;">
<view class="name-tel"> <view class="name-tel" style="width: 80%;">
<view class="name">姓名{{row.worker_.name}}</view> <view class="name">姓名{{row.worker_.name}}</view>
<view class="tel">手机号{{row.phone}}</view>
<view class="tel">职责{{row.duty}}</view> <view class="tel">职责{{row.duty}}</view>
</view> </view>
</view> <view style="width: 20%;">
<view class="right"> <button type="warn" size="mini" @click="remove(row)" >X</button>
<view class="icon bianji" @tap.stop="edit(row)">
</view> </view>
</view> </view>
<!-- <view class="right">
<view class="icon bianji" @tap.stop="edit(row)">
</view>
</view> -->
</view> </view>
<button type="primary" class="select" @click="checkPeople">选择人员</button> <button type="primary" class="select" @click="checkPeople">选择人员</button>
</view> </view>
<button type="primary" class="addNew" @click="add">新增人员</button> <!-- <button type="primary" class="addNew" @click="add">新增人员</button> -->
<view class="dialogWrap" v-if="limitedPeople"> <view class="dialogWrap" v-if="limitedPeople">
<view class="dialogCont"> <view class="dialogCont">
<view class="dialogTitle"> <view class="dialogTitle">
@ -78,23 +80,23 @@
workerList: [], workerList: [],
workerRange: [], workerRange: [],
dutyRange: [{ dutyRange: [{
value: '10', value: '作业人员',
text: "作业人员" text: "作业人员"
}, },
{ {
value: '20', value: '起重司机',
text: "起重司机" text: "起重司机"
}, },
{ {
value: '30', value: '司索人员',
text: "司索人员" text: "司索人员"
}, },
{ {
value: '40', value: '起重指挥',
text: "起重指挥" text: "起重指挥"
}, },
{ {
value: '40', value: '电工',
text: "电工" text: "电工"
}, },
], ],
@ -138,6 +140,11 @@
that.workerRange = workerRange that.workerRange = workerRange
}) })
}, },
remove(row){
this.$u.api.oplWorkerDelete(row.id).then(res => {
this.getWorkerList()
})
},
// //
getWorkerList() { getWorkerList() {
let that = this; let that = this;

View File

@ -139,7 +139,7 @@
<view class="form-item " style="height: fit-content;"> <view class="form-item " style="height: fit-content;">
<view class="title">照片</view> <view class="title">照片</view>
<view style="flex: 3;"> <view style="flex: 3;">
<u-upload action="http://10.99.5.79:20309/api/file/" :header="header" ref="uUpload" <u-upload :action="vuex_apifile" :header="header" ref="uUpload"
:file-list="fileList" max-count="9" @on-success="imgUpSuccess"></u-upload> :file-list="fileList" max-count="9" @on-success="imgUpSuccess"></u-upload>
</view> </view>
</view> </view>
@ -172,7 +172,7 @@
risks_checked: [], risks_checked: [],
measures_checked: [], measures_checked: [],
}, },
head: { header: {
Authorization: "Bearer " + this.vuex_token Authorization: "Bearer " + this.vuex_token
}, },
oplId: null, oplId: null,
@ -186,15 +186,15 @@
// //
depRange: [], depRange: [],
leveloptions: [{ leveloptions: [{
value: 10, value: "特殊动火",
text: "特殊动火" text: "特殊动火"
}, },
{ {
value: 20, value: "一级动火",
text: "一级动火" text: "一级动火"
}, },
{ {
value: 30, value: "二级动火",
text: "二级动火" text: "二级动火"
}, },
], ],
@ -415,7 +415,7 @@
} else { } else {
that.$u.api.oplCreate(that.formData).then(res => { that.$u.api.oplCreate(that.formData).then(res => {
uni.hideLoading(); uni.hideLoading();
params = `?oplId=${that.oplId}`; params = `?oplId=${res.oplId}`;
uni.navigateTo({ uni.navigateTo({
url: '/pages/workSpace/operation/workerList' + params url: '/pages/workSpace/operation/workerList' + params
}) })

View File

@ -38,21 +38,18 @@
<text class="form-left-text">进厂时间</text> <text class="form-left-text">进厂时间</text>
</view> </view>
<view class="form-right form-date"> <view class="form-right form-date">
<uni-datetime-picker v-model="formData.come_time" :border="false" /> <uni-datetime-picker
v-model="datetimerange"
type="datetimerange"
rangeSeparator="至"
:hide-second="true"
/>
</view> </view>
</view> </view>
</view>
<view class="form-item border-bottom"> <view class="form-item border-bottom">
<view class="form-left"> <view class="form-left">
<text class="star">*</text> <!-- <text class="star">*</text> -->
<text class="form-left-text">离厂时间</text>
</view>
<view class="form-right form-date">
<uni-datetime-picker v-model="formData.leave_time" :border="false" />
</view>
</view>
<view class="form-item border-bottom">
<view class="form-left">
<text class="star">*</text>
<text class="form-left-text">所属部门</text> <text class="form-left-text">所属部门</text>
</view> </view>
<view class="form-right"> <view class="form-right">
@ -61,7 +58,7 @@
</view> </view>
</view> </view>
<view class="form-item border-bottom"> <view class="form-item border-bottom" v-if="vuex_user.type=='employee'">
<view class="form-left"> <view class="form-left">
<text class="star">*</text> <text class="star">*</text>
<text class="form-left-text">相关方</text> <text class="form-left-text">相关方</text>
@ -91,12 +88,14 @@
contract_number: '', // contract_number: '', //
come_time: '', // come_time: '', //
leave_time: '', // leave_time: '', //
belong_dept: '', // belong_dept: null, //
rparty: '', // rparty: null, //
}, },
showBtns:false, showBtns:false,
datetimerange: [],
depRange: [], depRange: [],
rpmRange: [], rpmRange: [],
rpj:null,
range: [{ range: [{
value: 10, value: 10,
text: "建筑施工" text: "建筑施工"
@ -116,6 +115,12 @@
], ],
} }
}, },
watch: {
datetimerange(newval) {
this.formData.come_time = this.datetimerange[0]
this.formData.leave_time = this.datetimerange[1]
},
},
onLoad(params) { onLoad(params) {
debugger; debugger;
if(params.rpj){ if(params.rpj){
@ -157,6 +162,7 @@
that.formData.leave_time = res.leave_time; // that.formData.leave_time = res.leave_time; //
that.formData.belong_dept = res.belong_dept; // that.formData.belong_dept = res.belong_dept; //
that.formData.rparty = res.rparty; // that.formData.rparty = res.rparty; //
that.datetimerange = [res.come_time, res.leave_time]
console.log(res); console.log(res);
debugger; debugger;
}); });
@ -252,21 +258,21 @@
return false; return false;
} }
if (!nonNullCheck(this.formData.belong_dept)) { // if (!nonNullCheck(this.formData.belong_dept)) {
uni.showToast({ // uni.showToast({
title: '请选择所属部门', // title: '',
icon: "none" // icon: "none"
}) // })
return false; // return false;
} // }
if (!nonNullCheck(this.formData.rparty)) { // if (!nonNullCheck(this.formData.rparty)) {
uni.showToast({ // uni.showToast({
title: '请选择相关方', // title: '',
icon: "none" // icon: "none"
}) // })
return false; // return false;
} // }
return true; return true;
}, },
redata(postList) { redata(postList) {

View File

@ -6,9 +6,10 @@
<view class="row" v-for="(row,index) in workerList" :key="index" @tap="select(row)"> <view class="row" v-for="(row,index) in workerList" :key="index" @tap="select(row)">
<view class="center"> <view class="center">
<view class="name-tel"> <view class="name-tel">
<view class="name">姓名{{row.name}}</view> <view class="name">姓名{{row.remployee_.name}}</view>
<view class="tel">手机号{{row.phone}}</view> <view class="tel">手机号{{row.remployee_.phone}}</view>
<view class="tel">职责{{row.duty}}</view> <view class="tel">职责{{row.duty}}</view>
<view v-if="row.is_manager" style="color:red">负责人</view>
</view> </view>
</view> </view>
<view class="right"> <view class="right">
@ -34,7 +35,7 @@
<view class="uni-form-item uni-column"> <view class="uni-form-item uni-column">
<view class="title">项目负责人</view> <view class="title">项目负责人</view>
<view> <view>
<switch name="is_manager" v-model="formData.is_manager" /> <u-switch v-model="formData.is_manager"></u-switch>
</view> </view>
</view> </view>
<view class="uni-form-item uni-column"> <view class="uni-form-item uni-column">
@ -43,7 +44,7 @@
</view> </view>
<view class="uni-form-item uni-column"> <view class="uni-form-item uni-column">
<view class="title">证书</view> <view class="title">证书</view>
<uni-data-select :localdata="workerRange" v-model="formData.rcertificates" @change="selectWorker"> <uni-data-select :localdata="certificateRange" v-model="formData.rcertificates" @change="checkboxMeasuresChange">
</uni-data-select> </uni-data-select>
</view> </view>
<view class="uni-btn-v"> <view class="uni-btn-v">
@ -54,8 +55,10 @@
</view> </view>
<view class="apply-info" style="min-height: fit-content;display: flex;"> <view class="apply-info" style="min-height: fit-content;display: flex;">
<button type="primary" plain="true" style="width: 25%;" @click="goBack">上一步</button> <button type="primary" plain="true" @click="goBack">上一步</button>
<button type="primary" style="width: 25%;" @click="rpjSubmit">提交</button> <button v-for=" item in initform.transitions" :key="item.id" @click="rpjSubmit(item.id)" type="primary" style="width: 25%;">{{item.name}}
</button>
<button type="warn">退出</button>
</view> </view>
</view> </view>
@ -70,7 +73,7 @@
limitedPeople: false, limitedPeople: false,
formData: { formData: {
remployee: '', remployee: '',
is_manager: '', is_manager: false,
duty: '', duty: '',
rcertificates: [], rcertificates: [],
}, },
@ -103,28 +106,27 @@
}, },
onLoad(params) { onLoad(params) {
this.rpj = params.rpj; this.rpj = params.rpj;
this.formData.rpj = params.rpj;
}, },
onShow() { onShow() {
this.workerList = []; this.workerList = [];
this.getWorkerList(); this.getWorkerList();
this.getWorkerRange(); this.getWorkerRange();
this.getInit()
// this.getVpeopleList(); // this.getVpeopleList();
}, },
methods: { methods: {
formSubmit(val) { formSubmit(val) {
let that = this; let that = this;
that.formData.opl = that.oplId; that.$u.api.rpjMemberCreate(that.formData).then(res => {
that.$u.api.oplWorkerCreate(that.formData).then(res => {
if (res.err_msg) {} else {
that.getWorkerList(); that.getWorkerList();
this.limitedPeople = false; this.limitedPeople = false;
}
}) })
}, },
// //
getWorkerRange() { getWorkerRange() {
let that = this; let that = this;
that.$u.api.userList({ that.$u.api.remployee({
page: 0 page: 0
}).then(res => { }).then(res => {
let workerRange = []; let workerRange = [];
@ -150,11 +152,12 @@
}) })
}, },
selectWorker(e) { selectWorker(e) {
this.certificateRange = []
let that = this; let that = this;
that.formData.worker = e; that.formData.worker = e;
if(e!==''){ if(e!==''){
that.$u.api.hrmCertificate({ that.$u.api.rcertificate({
employee__user:e, remployee:e,
page: 0 page: 0
}) })
.then((res) => { .then((res) => {
@ -162,21 +165,20 @@
let obj = {}; let obj = {};
res.forEach(item => { res.forEach(item => {
obj = item; obj = item;
obj.chencked = false; obj.checked = false;
certificateRange.push(obj); certificateRange.push(obj);
}) })
that.certificateRange = certificateRange that.certificateRange = certificateRange
console.log(res);
}); });
}else{} }else{}
}, },
checkboxMeasuresChange(e) { checkboxMeasuresChange(e) {
let values = e.detail.value; let values = e.detail.value;
this.formData.certificates = values; this.formData.rcertificates = values;
}, },
checkPeople() { checkPeople() {
this.certificateRange = []; this.rcertificateRange = [];
this.limitedPeople = true; this.limitedPeople = true;
}, },
closeDialog() { closeDialog() {
@ -202,7 +204,12 @@
url: '/pages/workSpace/operation/gasList'+params url: '/pages/workSpace/operation/gasList'+params
}) })
}, },
getInit() {
this.$u.api.workflowInit('rpj').then((res) => {
this.initform = res;
});
},
// //
rpjSubmit(id) { rpjSubmit(id) {
uni.showLoading({ uni.showLoading({

View File

@ -39,18 +39,24 @@
<text class="form-left-text">来访时间</text> <text class="form-left-text">来访时间</text>
</view> </view>
<view class="form-right form-date"> <view class="form-right form-date">
<uni-datetime-picker v-model="formData.visit_time" :border="false" /> <uni-datetime-picker
v-model="datetimerange"
type="datetimerange"
rangeSeparator="至"
:hide-second="true"
/>
<!-- <uni-datetime-picker v-model="formData.visit_time" :border="false" type="datetime"/> -->
</view> </view>
</view> </view>
<view class="form-item border-bottom"> <!-- <view class="form-item border-bottom">
<view class="form-left"> <view class="form-left">
<text class="star">*</text> <text class="star">*</text>
<text class="form-left-text">离开时间</text> <text class="form-left-text">离开时间</text>
</view> </view>
<view class="form-right form-date"> <view class="form-right form-date">
<uni-datetime-picker v-model="formData.leave_time" :border="false" /> <uni-datetime-picker v-model="formData.leave_time" :border="false" type="datetime"/>
</view> </view>
</view> </view> -->
<view class="form-item border-bottom" v-if="formData.purpose!==50"> <view class="form-item border-bottom" v-if="formData.purpose!==50">
<view class="form-left"> <view class="form-left">
<text class="form-left-text">接待人</text> <text class="form-left-text">接待人</text>
@ -103,7 +109,7 @@
return { return {
formData: { formData: {
name: '', //访 name: '', //访
purpose: 10, //访 purpose: 50, //访
receptionist: '', // receptionist: '', //
visit_time: '', //访 visit_time: '', //访
leave_time: '', // leave_time: '', //
@ -112,7 +118,7 @@
level: 10, //访 level: 10, //访
count_people: 1, //访 count_people: 1, //访
}, },
datetimerange: [],
depRange: [], depRange: [],
publishRangeCon: '', publishRangeCon: '',
menuId: "", menuId: "",
@ -123,6 +129,9 @@
type: '', type: '',
visitId: '', visitId: '',
range: [{ range: [{
text: "拉送货",
value: 50
},{
text: "参观", text: "参观",
value: 10 value: 10
}, { }, {
@ -134,9 +143,6 @@
}, { }, {
text: "开会", text: "开会",
value: 40 value: 40
}, {
text: "拉送货",
value: 50
}], }],
levelRange: [{ levelRange: [{
text: "一般", text: "一般",
@ -148,6 +154,12 @@
userRange: [], userRange: [],
} }
}, },
watch: {
datetimerange(newval) {
this.formData.visit_time = this.datetimerange[0]
this.formData.leave_time = this.datetimerange[1]
},
},
onLoad(params) { onLoad(params) {
if (params.visit) { if (params.visit) {
this.visitId = params.visit; this.visitId = params.visit;
@ -188,6 +200,7 @@
getVisitItem() { getVisitItem() {
this.$u.api.visitItem(this.visitId).then(res => { this.$u.api.visitItem(this.visitId).then(res => {
this.formData = res; this.formData = res;
this.datetimerange = [res.visit_time, res.leave_time]
}) })
}, },
getDate(type) { getDate(type) {
@ -286,9 +299,9 @@
}) })
return false; return false;
} }
if (!nonNullCheck(this.formData.receptionist)) { if (!nonNullCheck(this.formData.receptionist) && this.formData.purpose!=50) {
uni.showToast({ uni.showToast({
title: '请选择接待人', title: '请选择接待人',
icon: "none" icon: "none"
}) })
return false; return false;

View File

@ -7,7 +7,7 @@
<view class="item"> <view class="item">
<view class="title">来访事由</view> <view class="title">来访事由</view>
<view class="content"> <view class="content">
<text>{{formData.purpose}}</text> <text>{{purposeOptions[formData.purpose]}}</text>
</view> </view>
</view> </view>
<view class="item"> <view class="item">
@ -49,13 +49,7 @@
<view class="item"> <view class="item">
<view class="title">来访级别</view> <view class="title">来访级别</view>
<view class="content"> <view class="content">
<text>{{formData.level}}</text> <text>{{levelOptions[formData.level]}}</text>
</view>
</view>
<view class="item">
<view class="title">部门</view>
<view class="content">
<text>{{formData.belong_dept_name}}</text>
</view> </view>
</view> </view>
<view class="item"> <view class="item">
@ -93,6 +87,17 @@
return { return {
formData:{}, formData:{},
visitorsList:[], visitorsList:[],
purposeOptions: {
10: "参观",
20: "拜访",
30: "面试",
40: "开会",
50: "拉送货"
},
levelOptions: {
10: "一般",
20: "重要",
},
} }
}, },
onLoad(params) { onLoad(params) {

View File

@ -38,19 +38,23 @@
<view class="info-title">{{val.name}}</view> <view class="info-title">{{val.name}}</view>
</view> </view>
<view class="center-info"> <view class="center-info">
<!-- <view class="info-details">作业状态{{stateOptions[val.state]}}</view> --> <view class="info-details">状态{{stateOptions[val.state]}}</view>
<view class="info-details">来访概述{{val.description}}</view> <view class="info-details">创建时间{{val.create_time}}</view>
<!-- <view class="info-details">作业区域{{val.area_.name}} </view> <!-- <view class="info-details">作业区域{{val.area_.name}} </view>
<view class="info-details">更新时间{{val.update_time}} </view> <view class="info-details">更新时间{{val.update_time}} </view>
<view class="info-details">属地部门{{val.dept_ter_.name}} </view> <view class="info-details">属地部门{{val.dept_ter_.name}} </view>
<view class="info-details">业务部门{{val.dept_bus_.name}} </view> <view class="info-details">业务部门{{val.dept_bus_.name}} </view>
<view class="info-details">创建人{{val.create_by_.name}} </view> --> <view class="info-details">创建人{{val.create_by_.name}} </view> -->
</view> </view>
<view class="bottom-btns"> <view class="bottom-btns" style="display: flex;">
<view class="shenhezhong shenhe-status" @click="visitHandle(val,'edit')" v-if="val.state===10&&dataTypye==='isMy'"> <view class="shenhezhong shenhe-status" @click="visitHandle(val,'edit')" v-if="val.state===10&&dataTypye==='isMy'">
<image src="../../../static/my/my_apply/blue-time.png" mode=""></image> <image src="../../../static/my/my_apply/blue-time.png" mode=""></image>
编辑 编辑
</view> </view>
<view class="shenhezhong shenhe-status" @click="visitHandle(val,'delete')" v-if="val.state===10&&dataTypye==='isMy'" style="color: #ff0000;">
<image src="../../../static/my/my_apply/return.png" mode=""></image>
删除
</view>
<view class="shenhezhong shenhe-status" @click="visitHandle(val,'show')" v-else style="color: #15a306;"> <view class="shenhezhong shenhe-status" @click="visitHandle(val,'show')" v-else style="color: #15a306;">
<image src="../../../static/my/my_apply/tongguo.png" mode=""></image> <image src="../../../static/my/my_apply/tongguo.png" mode=""></image>
查看 查看
@ -78,9 +82,10 @@
stateOptions: { stateOptions: {
10: "创建中", 10: "创建中",
20: "审批中", 20: "审批中",
30: "待作业", 30: "待入厂",
40: "作业中", 40: "进行中",
50: "已关闭", 50: "已完成",
60: "已关闭",
}, },
dataTypye:'isMy', dataTypye:'isMy',
employee:false, employee:false,
@ -126,10 +131,16 @@
uni.navigateTo({ uni.navigateTo({
url: '/pages/workSpace/visit/visitCreate' + params, url: '/pages/workSpace/visit/visitCreate' + params,
}) })
}else{ }else if(type==='show'){
uni.navigateTo({ uni.navigateTo({
url: '/pages/workSpace/visit/visitDetail' + params, url: '/pages/workSpace/visit/visitDetail' + params,
}) })
}else if(type=='delete'){
this.$u.api.visitDelete(val.id).then(res => {
this.pageNum = 1;
this.ticketList = [];
this.getLists();
})
} }
@ -241,6 +252,7 @@
.shenhezhong { .shenhezhong {
color: #2c6fd9; color: #2c6fd9;
flex: 1
} }
.shenhe-status image { .shenhe-status image {

View File

@ -4,11 +4,15 @@
leftIcon="left" border backgroundColor="#2cade8" color="#fff" fixed statusBar shadow></uni-nav-bar> leftIcon="left" border backgroundColor="#2cade8" color="#fff" fixed statusBar shadow></uni-nav-bar>
<view class="apply-info"> <view class="apply-info">
<view class="row" v-for="(row,index) in vpeopleList" :key="index" @tap="select(row)"> <view class="row" v-for="(row,index) in vpeopleList" :key="index" @tap="select(row)">
<view class="center"> <view class="center" style="display: flex;">
<view class="name-tel"> <view class="name-tel" style="width: 80%;">
<view class="name">姓名{{row.text}}</view> <view class="name">姓名{{row.text}}</view>
<view class="tel">手机号{{row.visitor_.phone}}</view> <view class="tel">手机号{{row.visitor_.phone}}</view>
<view class="tel">身份证号{{row.visitor_.id_number}}</view> <view class="tel">身份证号{{row.visitor_.id_number}}</view>
<view class="tel" v-if="row.is_main" style="color:red">主访</view>
</view>
<view style="width: 20%;">
<button type="warn" size="mini" @click="remove(row)" >X</button>
</view> </view>
</view> </view>
<view class="right"> <view class="right">
@ -87,6 +91,11 @@
} }
}) })
}, },
remove(row){
this.$u.api.vpeopleDelete(row.id).then(res => {
this.getVpeopleList();
})
},
// //
getUserRange() { getUserRange() {
let that = this; let that = this;

View File

@ -36,9 +36,13 @@ const store = new Vuex.Store({
vuex_perm: lifeData.vuex_perm ? lifeData.vuex_perm : [], vuex_perm: lifeData.vuex_perm ? lifeData.vuex_perm : [],
vuex_appid: 'wxf7d6140f507466be', vuex_appid: 'wxf7d6140f507466be',
vuex_login: 'http://qyjy.ctc-zc.com/h5/', vuex_login: 'http://qyjy.ctc-zc.com/h5/',
vuex_host: 'http://222.222.144.147:6013', vuex_version: '1.00.08',
vuex_api: 'http://222.222.144.147:6013/api', // vuex_host: 'http://222.222.144.147:6013',
vuex_apifile: 'https://testsearch.ctc.ac.cn/api/file/', // vuex_api: 'http://222.222.144.147:6013/api',
// vuex_apifile: 'http://222.222.144.147:6013/api/file/',
vuex_host: 'http://10.99.5.79:20309',
vuex_api: 'http://10.99.5.79:20309/api',
vuex_apifile: 'http://10.99.5.79:20309/api/file/',
}, },
mutations: { mutations: {
$uStore(state, payload) { $uStore(state, payload) {