<template>
|
<view class="container">
|
<view class="group-chat-box">
|
<u-form :model="form" ref="uForm">
|
|
<u-form-item label-width='132' label="检查人">
|
<u-input type='text' disabled="disabled" v-model="createData.nick_name" placeholder="请输入检查内容" />
|
</u-form-item>
|
|
<u-form-item label-width='158' label="检查人单位">
|
<u-input type='text' disabled="disabled" v-model="createData.deptName" placeholder="请输入检查内容" />
|
</u-form-item>
|
|
<u-form-item label-width='158' prop="unit" label="被检查单位" :required="true">
|
|
<u-input v-model="form.unitText" type="select" placeholder="请选择被检查单位" :border="false"
|
@click="unitClick" />
|
<u-select v-model="unitShow" mode="mutil-column-auto" :list="unitList" @confirm="unitConfirm">
|
</u-select>
|
|
</u-form-item>
|
|
|
<u-form-item label-width='132' prop="content" label="检查内容" :required="true">
|
<u-input type='textarea' v-model="form.content" placeholder="请输入检查内容" />
|
</u-form-item>
|
|
<u-form-item label-width='132' prop="outcome" label="检查结果" :required="true">
|
<u-input type='textarea' v-model="form.outcome" placeholder="请输入检查结果" />
|
</u-form-item>
|
|
<u-form-item label-width='132' label="附属图片" class='imgissue-upload'>
|
<seeImgs :imgs="imgs" :videos="[]" @del="delImg" :type="'imgs'"></seeImgs>
|
<image style="width: 4rem; height: 4rem; display: block;" @tap="takePhoto"
|
src="../../static/images/upload.png" mode=""></image>
|
</u-form-item>
|
|
</u-form>
|
</view>
|
<view class="establish-box">
|
<u-button class="submit" type="primary" @click="initiateClick">发送</u-button>
|
</view>
|
<view>
|
<u-toast ref="uToast" />
|
</view>
|
</view>
|
</template>
|
|
<script>
|
import seeImgs from '../../components/seeImges/seeImges.vue';
|
export default {
|
components: {
|
seeImgs
|
},
|
data() {
|
return {
|
|
unitShow: false,
|
unitList: [],
|
|
form: {
|
content: '',
|
outcome: '',
|
unit: '',
|
unitText: ''
|
},
|
rules: {
|
content: [{
|
min: 5,
|
required: true,
|
message: '检查内容不能少于5个字',
|
trigger: ['change', 'blur'],
|
}],
|
|
outcome: [{
|
min: 2,
|
required: true,
|
message: '检查结果不能少于2个字',
|
trigger: ['change', 'blur'],
|
}],
|
|
unit: [{
|
required: true,
|
message: '请选择被检查单位',
|
trigger: ['change', 'blur'],
|
}],
|
},
|
imgs: [],
|
createData: null,
|
};
|
},
|
onLoad() {
|
this.createData = this.$store.state.UserData
|
|
},
|
onReachBottom() {
|
|
},
|
mounted() {},
|
onReady() {
|
this.$refs.uForm.setRules(this.rules);
|
|
|
},
|
methods: {
|
|
unitClick() {
|
uni.request({
|
url: this.$store.state.piAPI + "/blade-system/dept/security_lazy-tree",
|
method: "get",
|
data: {
|
jurisdiction: this.$store.state
|
.UserData.jurisdiction,
|
},
|
success: (res) => {
|
this.unitList = []
|
|
res.data.data.forEach(item => {
|
var data = {}
|
|
data.value = item.id
|
|
data.label = item.title
|
|
if (item.children != undefined) {
|
data.children = []
|
|
item.children.forEach(chi => {
|
var ch = {}
|
|
ch.value = chi.id
|
|
ch.label = chi.title
|
|
data.children.push(ch)
|
})
|
} else {
|
data.children = [{
|
value: 112233,
|
label: "暂无数据"
|
}]
|
}
|
|
this.unitList.push(data)
|
})
|
// console.log(this.unitList)
|
|
this.unitShow = true;
|
|
}
|
});
|
|
},
|
|
unitConfirm(e) {
|
this.form.unit = e[1].value
|
this.form.unitText = e[1].label
|
|
},
|
|
getCurrentTime() {
|
let date = new Date();
|
let dateYear = date.getFullYear(); //获取年
|
let dateMonth = date.getMonth() + 1 < 10 ? '0' + date.getMonth() + 1 : date.getMonth() + 1; //获取月
|
let dateDate = date.getDate() < 10 ? '0' + date.getDate() : date.getDate(); //获取当日
|
let dateDay = date.getDay(); //获取当日星期数
|
let dateHours = date.getHours() < 10 ? '0' + date.getHours() : date.getHours(); //获取小时
|
let dateMinutes = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes(); //获取分钟
|
let dateSeconds = date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds(); //获取秒
|
|
return dateYear + '-' + dateMonth + '-' + dateDate + ' ' + dateHours + ':' + dateMinutes + ':' +
|
dateSeconds
|
},
|
|
initiateClick() {
|
var imgurl = '';
|
this.imgs.forEach((item, index) => {
|
if (index == this.imgs.length - 1) {
|
imgurl += item.src
|
} else {
|
imgurl += item.src + ','
|
}
|
})
|
this.$refs.uForm.validate(valid => {
|
if (valid && this.form.unit != 112233) {
|
let d = {
|
// name: this.createData.nick_name,
|
// deptname: this.createData.deptName,
|
// sname: this.form.unitText,
|
// reviewtime: this.getCurrentTime(),
|
// insid: this.form.content,
|
// results: this.form.outcome,
|
// url: imgurl
|
examinerId: this.createData.Id,
|
examinerDeptId: this.createData.dept_id,
|
reviewedDeptId: this.form.unit,
|
// reviewtime: this.getCurrentTime(),
|
insid: this.form.content,
|
results: this.form.outcome,
|
url: imgurl
|
};
|
console.log(d, "dddddddddddddddddd")
|
uni.request({
|
url: this.$store.state.piAPI + "/coinspect/save",
|
method: "post",
|
data: d,
|
success: (res) => {
|
if (res.data.msg.indexOf('成功') != -1) {
|
this.$refs.uToast.show({
|
title: '新增单位检查成功',
|
type: 'success',
|
url: '/pages/examine/examine'
|
})
|
}
|
}
|
});
|
} else {
|
console.log('验证失败');
|
}
|
});
|
},
|
//图片删除
|
delImg(index) {
|
this.imgs.splice(index, 1);
|
},
|
//图片上传
|
takePhoto() {
|
var that = this;
|
uni.chooseImage({
|
count: 3, //可选择数量,默认9
|
sizeType: ['compressed', 'original'], //上传压缩图,原图
|
sourceType: ['album', 'camera'], //从相册选择或从使用相机
|
success: async (res) => {
|
|
for (var i = 0; i < res.tempFiles.length; i++) {
|
if (res.tempFiles[i].size > 10 * 1024 * 1000) { //上传图片大小限制
|
uni.showToast({
|
title: "照片大小不能超过10MB",
|
icon: "none"
|
})
|
return
|
}
|
}
|
|
var tempFilePath = res.tempFilePaths;
|
// try {
|
uni.showLoading({
|
title: "上传中...",
|
mask: true
|
})
|
|
var that = this;
|
|
// 循环调用uni.uploadFile ,因微信小程序只支持单文件上传
|
for (var i = 0; i < tempFilePath.length; i++) {
|
uni.uploadFile({
|
// url: 'https://web.byisf.com/api/blade-jfpts/depl/put-depl', //仅为示例,非真实的接口地址
|
url: this.$store.state.piAPI +
|
'/blade-resource/oss/endpoint/put-file-app',
|
filePath: tempFilePath[i],
|
name: 'file',
|
formData: {
|
'user': 'test' // 上传附带参数
|
},
|
success: (data) => {
|
|
function isJSON_test(str) {
|
if (typeof str == 'string') {
|
try {
|
var obj = JSON.parse(str);
|
return obj.data;
|
} catch (e) {
|
return str;
|
}
|
}
|
console.log('It is not a string!')
|
}
|
|
uni.showToast({
|
title: '上传图片成功!',
|
duration: 1000
|
});
|
|
// 根据接口具体返回格式 赋值具体对应url
|
that.imgs.push({
|
id: i,
|
src: isJSON_test(data.data)
|
})
|
}
|
});
|
}
|
|
}
|
});
|
},
|
}
|
};
|
</script>
|
|
|
<style lang="scss">
|
.submit {
|
border: none;
|
width: 94%;
|
height: 86rpx;
|
line-height: 86rpx;
|
box-sizing: border-box;
|
border-radius: 15rpx;
|
color: #ffffff;
|
font-size: 38rpx;
|
|
}
|
|
.container {
|
height: 100%;
|
|
.group-chat-box {
|
height: calc(100% - 116rpx);
|
padding: 0 36rpx;
|
box-sizing: border-box;
|
overflow-y: auto;
|
}
|
|
.establish-box {
|
position: relative;
|
height: 116rpx;
|
background: #fff;
|
text-align: center;
|
|
uni-button {
|
margin: 0;
|
position: absolute;
|
top: 0;
|
left: 0;
|
right: 0;
|
bottom: 0;
|
margin: auto;
|
}
|
|
}
|
|
}
|
</style>
|