<template>
|
<view>
|
<view class="form">
|
<view class="form-item">
|
<view class="title">单据号:</view>
|
<view class="righton">
|
<input name="HBillNo" v-model="hform.HBillNo" disabled placeholder="请输入单据号" />
|
</view>
|
</view>
|
<view class="form-item">
|
<view class="title">日期:</view>
|
<view class="righton">
|
<input name="HDate" disabled v-model="hform.HDate" placeholder="请选择日期" />
|
</view>
|
</view>
|
<view class="form-item">
|
<view class="title">内部单据号:</view>
|
<view class="right">
|
<input name="HInnerBillNo" v-model="hform.HInnerBillNo" placeholder="请输入内部单据号" />
|
</view>
|
</view>
|
|
<view class="tab_area"></view>
|
|
<view class="form-item">
|
<view class="title"><text>*</text>使用部门:</view>
|
<view class="right">
|
<uni-combox :candidates="arrayHDeptName" placeholder="请选择部门" v-model="hform.HDeptName" @input="HDeptNameChange"></uni-combox>
|
</view>
|
</view>
|
<view class="form-item">
|
<view class="title"><text>*</text>发现人:</view>
|
<view class="right">
|
<uni-combox :candidates="arrayEmpName" placeholder="请选择发现人" v-model="hform.HEmpName" @input="HEmpNameChange"></uni-combox>
|
</view>
|
</view>
|
<view class="form-item">
|
<view class="title"><text>*</text>负责人:</view>
|
<view class="right">
|
<uni-combox :candidates="arrayEmpName" placeholder="请选择负责人" v-model="hform.HManagerName" @input="HManagerNameChange"></uni-combox>
|
</view>
|
</view>
|
<view class="form-item">
|
<view class="title"><text>*</text>设备:</view>
|
<view class="right" style="width: 380rpx;">
|
<!-- <picker :range="arrayHEquipName" v-model="hform.HEquipName" @change="HEquipNameChange"> -->
|
<input name="HEquipName" disabled v-model="hform.HEquipName" placeholder="请扫描设备" />
|
<!-- </picker> -->
|
</view>
|
<uni-icons type="scan" style="margin-left: 10rpx;background-color: #3A78FF;padding: 6rpx;color: #fff;border-radius: 100%;font-weight: 500;" size="20" @click="toScanCode"></uni-icons>
|
</view>
|
|
<view class="tab_area"></view>
|
|
<view class="form-item">
|
<view class="title">故障类别:</view>
|
<view class="right">
|
<uni-combox :candidates="arrayHConkTypeName" placeholder="请选择故障类别" v-model="hform.HConkTypeName" @input="HConkTypeChange"></uni-combox>
|
</view>
|
</view>
|
<view class="form-item">
|
<view class="title"><text>*</text>故障日期:</view>
|
<view class="right">
|
<picker mode="date" v-model="hform.HConkBeginDate" @change="HConkBeginDateChange">
|
<input name="HConkBeginDate" disabled v-model="hform.HConkBeginDate" placeholder="请选择故障日期" />
|
</picker>
|
</view>
|
</view>
|
|
<view class="tab_area"></view>
|
|
<view class="form-item" style="align-items: flex-start;">
|
<view class="title">摘要:</view>
|
<view class="right" style="min-height: 150rpx;">
|
<textarea name="HExplanation" v-model="hform.HExplanation" auto-height maxlength="-1" placeholder="请输入摘要"></textarea>
|
</view>
|
</view>
|
|
<view class="tab_area"></view>
|
|
<view class="form-item" style="align-items: flex-start;">
|
<view class="title">备注:</view>
|
<view class="right" style="min-height: 150rpx;">
|
<textarea name="HRemark" v-model="hform.HRemark" auto-height maxlength="-1" placeholder="请输入备注"></textarea>
|
</view>
|
</view>
|
|
<view class="form-item">
|
<view class="tip"><text>*</text>注: 请点击下方绿色新增按钮添加故障信息(必填)</view>
|
</view>
|
|
<view class="bottom-btn">
|
<button class="btn-a" size="mini" @tap="submit">提交</button>
|
<button class="btn-b" size="mini" @tap="showMask = true">新增</button>
|
<button class="btn-c" size="mini" @tap="goBack">退出</button>
|
</view>
|
</view>
|
|
<form1 :form1List='form1List' @hformList='hformList' v-if="showMask"></form1>
|
|
</view>
|
</template>
|
<script>
|
import getDateTime from '@/utils/getdateTime.js';
|
import form1 from './form1.vue';
|
|
export default {
|
components: {
|
form1
|
},
|
data() {
|
return {
|
serverUrl: uni.getStorageSync('serverUrl')||'http://47.96.97.237/API',
|
arrayHDeptName:[],//部门
|
HDeptNameList:[],
|
arrayEmpName:[],//发现人/负责人
|
EmpNameList:[],
|
|
arrayHEquipName:[],
|
arrayHConkTypeName:[],//故障类别
|
HConkTypeNameList:[],
|
|
hform:{
|
HInterID:0,
|
HBillNo:'',
|
HDate:getDateTime.dateTimeStr('y-m-d'),
|
HInnerBillNo:'',
|
|
HDeptName:'',
|
HDeptID:'',
|
HEmpName:'',
|
HEmpID:'',
|
HManagerName:'',
|
HManagerID:'',
|
HEquipName:'',
|
HEquipID:'',
|
|
HConkTypeName:'',
|
HConkTypeID:'',
|
HConkBeginDate:'',
|
HExplanation:'',
|
HRemark:'',
|
},
|
|
showMask:false,
|
form1List:[],
|
}
|
},
|
onLoad(e) {
|
// this.getEditData(119)
|
if(e.hmainid){
|
this.getEditData(e.hmainid)
|
}else{
|
this.getNewData()
|
}
|
this.getHDeptList()
|
this.getEmpList()
|
// this.getHEquipList()
|
this.getHConkType()
|
},
|
methods: {
|
//扫码
|
toScanCode(){
|
var mpaasScanModule = uni.requireNativePlugin("Mpaas-Scan-Module")
|
mpaasScanModule.mpaasScan({
|
'hideAlbum': true,
|
'timeoutInterval':'10', //超时时间
|
'timeoutText':'未识别到二维码' //超时提醒
|
},(ret) => {
|
console.log(ret.resp_result)
|
uni.request({
|
url: this.serverUrl + '/Gy_EquipFileMain/Gy_MouldFileBillBarCodeInfo',
|
data: { HBarCode: ret.resp_result },
|
success: (res) => {
|
console.log(res.data);
|
if(res.data.count == 1){
|
var data = res.data.list[0][0]
|
this.hform.HEquipID = data.hmainid
|
this.hform.HEquipName = data.设备名称
|
}
|
uni.showToast({
|
title:res.data.Message,
|
icon:'none'
|
})
|
},
|
fail: (res) => {
|
console.log(res);
|
uni.showToast({
|
title:'接口请求失败',
|
icon:'none'
|
})
|
},
|
});
|
})
|
},
|
// upCode(){
|
// uni.request({
|
// url: this.serverUrl + '/Sb_PDA_EqpRepairWorkBill/txtHBarCode_KeyDown',
|
// data: { HBarCode: this.hform.HBarCode },
|
// success: (res) => {
|
// if(res.data.count == 1){
|
// var data = res.data.data[0]
|
// this.hform.HEquipID = data.HItemID
|
// this.hform.HEquipName = data.HName
|
// }else{
|
// uni.showToast({
|
// title:res.data.Message,
|
// icon:'none'
|
// })
|
// }
|
// },
|
// fail: (res) => {
|
// console.log(res);
|
// uni.showToast({
|
// title:'接口请求失败',
|
// icon:'none'
|
// })
|
// },
|
// });
|
// },
|
//故障日期
|
HConkBeginDateChange(e){
|
// console.log(e.detail.value)
|
this.hform.HConkBeginDate = e.detail.value
|
},
|
//获取使用部门数据
|
getHDeptList(){
|
uni.request({
|
url: this.serverUrl + '/PublicPageMethod/DeptList',
|
data: { sWhere: "where HStopFlag=0 and HEndFlag=1 and HUSEORGID = " + uni.getStorageSync('OrganizationID') + "" },
|
success: (res) => {
|
if(res.data.count == 1){
|
this.HDeptNameList = res.data.data
|
for(var i=0;i<res.data.data.length;i++){
|
this.arrayHDeptName[i] = res.data.data[i].HName
|
}
|
this.$forceUpdate();
|
}else{
|
uni.showToast({
|
title:res.data.Message,
|
icon:'none'
|
})
|
}
|
},
|
fail: (res) => {
|
console.log(res);
|
uni.showToast({
|
title:'接口请求失败',
|
icon:'none'
|
})
|
},
|
});
|
},
|
//选择使用部门
|
HDeptNameChange(e){
|
for(var i=0;i<this.HDeptNameList.length;i++){
|
if(this.HDeptNameList[i].HName == e){
|
this.hform.HDeptID = this.HDeptNameList[i].HItemID
|
}
|
}
|
},
|
//获取发现人/负责人数据
|
getEmpList(){
|
uni.request({
|
url: this.serverUrl + '/PublicPageMethod/UserList',
|
data: { sWhere: '' },
|
success: (res) => {
|
if(res.data.count == 1){
|
this.EmpNameList = res.data.data
|
for(var i=0;i<res.data.data.length;i++){
|
this.arrayEmpName[i] = res.data.data[i].HName
|
}
|
this.$forceUpdate();
|
}else{
|
uni.showToast({
|
title:res.data.Message,
|
icon:'none'
|
})
|
}
|
},
|
fail: (res) => {
|
console.log(res);
|
uni.showToast({
|
title:'接口请求失败',
|
icon:'none'
|
})
|
},
|
});
|
},
|
//选择发现人
|
HEmpNameChange(e){
|
for(var i=0;i<this.EmpNameList.length;i++){
|
if(this.EmpNameList[i].HName == e){
|
this.hform.HEmpID = this.EmpNameList[i].HItemID
|
}
|
}
|
},
|
//选择负责人
|
HManagerNameChange(e){
|
for(var i=0;i<this.EmpNameList.length;i++){
|
if(this.EmpNameList[i].HName == e){
|
this.hform.HManagerID = this.EmpNameList[i].HItemID
|
}
|
}
|
},
|
|
//获取设备数据
|
getHEquipList(){
|
|
},
|
//选择设备
|
HEquipNameChange(e){
|
console.log(e.detail.value)
|
},
|
//获取故障类别
|
getHConkType(){
|
uni.request({
|
url: this.serverUrl + '/PublicPageMethod/FaultTypeList',
|
data: { sWhere: '' },
|
success: (res) => {
|
if(res.data.count == 1){
|
this.HConkTypeNameList = res.data.data
|
for(var i=0;i<res.data.data.length;i++){
|
this.arrayHConkTypeName[i] = res.data.data[i].HName
|
}
|
this.$forceUpdate();
|
}else{
|
uni.showToast({
|
title:res.data.Message,
|
icon:'none'
|
})
|
}
|
},
|
fail: (res) => {
|
console.log(res);
|
uni.showToast({
|
title:'接口请求失败',
|
icon:'none'
|
})
|
},
|
});
|
},
|
//选择故障类别
|
HConkTypeChange(e){
|
for(var i=0;i<this.HConkTypeNameList.length;i++){
|
if(this.HConkTypeNameList[i].HName == e){
|
this.hform.HConkTypeID = this.HConkTypeNameList[i].HItemID
|
}
|
}
|
},
|
|
hformList(e){
|
console.log(e)
|
this.form1List = e
|
this.showMask = false
|
},
|
|
//编辑
|
getEditData(hmainid){
|
//主表
|
uni.request({
|
url: this.serverUrl + '/Sb_EqpRepairWorkBill/Sb_EqpConkBookBillListCheckDetai',
|
data: { HID: hmainid },
|
success: (res) => {
|
// console.log(1,res.data.data.h_v_Sb_EquipConkBookBillList_Edit[0]);
|
if(res.data.code == 1){
|
var data = res.data.data.h_v_Sb_EquipConkBookBillList_Edit[0]
|
this.hform = {
|
HInterID:hmainid,
|
HBillNo:data.单据号,
|
HDate:data.日期.substr(0,10),
|
HInnerBillNo:data.内部单据号,
|
HDeptName:data.部门名称,
|
HDeptID:data.HDeptID,
|
HEmpName:data.发现人,
|
HEmpID:data.HEmpID,
|
HManagerName:data.负责人,
|
HManagerID:data.HManagerID,
|
HEquipName:data.设备名称,
|
HEquipID:data.HEquipID,
|
|
HConkTypeName:data.故障类别,
|
HConkTypeID:data.HConkTypeID,
|
HConkBeginDate:data.发生日期.substr(0,10),
|
HExplanation:data.故障描述,
|
HRemark:data.表头备注,
|
}
|
}else{
|
uni.showToast({
|
title:res.data.Message,
|
icon:'none'
|
})
|
}
|
},
|
fail: (res) => {
|
console.log(res);
|
uni.showToast({
|
title:'接口请求失败',
|
icon:'none'
|
})
|
},
|
});
|
//子表
|
uni.request({
|
url: this.serverUrl + '/Sb_EqpRepairWorkBill/Sb_EqpConkBookBillListProjectDetai',
|
data: { "sqlWhere": "and hmainid=" + hmainid },
|
success: (res) => {
|
if(res.data.count == 1){
|
this.form1List = res.data.data
|
// console.log(2,res.data.data);
|
}else{
|
uni.showToast({
|
title:res.data.Message,
|
icon:'none'
|
})
|
}
|
},
|
fail: (res) => {
|
console.log(res);
|
uni.showToast({
|
title:'接口请求失败',
|
icon:'none'
|
})
|
},
|
});
|
},
|
//新增
|
getNewData(){
|
uni.request({
|
url: this.serverUrl + '/Web/GetMAXNum',
|
data: { HBillType: '3907' },
|
success: (res) => {
|
// console.log(res.data)
|
if(res.data.count == 1){
|
this.hform.HInterID = 0
|
this.hform.HBillNo = res.data.data[0].HBillNo
|
}else{
|
uni.showToast({
|
title:res.data.Message,
|
icon:'none'
|
})
|
}
|
},
|
fail: (res) => {
|
console.log(res);
|
uni.showToast({
|
title:'接口请求失败',
|
icon:'none'
|
})
|
},
|
});
|
},
|
|
submit() {
|
if(!this.hform.HDeptID){
|
uni.showToast({
|
title:'请选择使用部门',
|
icon:'none'
|
})
|
}else if(!this.hform.HEmpID){
|
uni.showToast({
|
title:'请选择发现人',
|
icon:'none'
|
})
|
}else if(!this.hform.HManagerID){
|
uni.showToast({
|
title:'请选择负责人',
|
icon:'none'
|
})
|
}else if(!this.hform.HEquipID){
|
uni.showToast({
|
title:'请选择设备',
|
icon:'none'
|
})
|
}else if(!this.hform.HConkBeginDate){
|
uni.showToast({
|
title:'请选择故障日期',
|
icon:'none'
|
})
|
}else if(this.form1List.length == 0){
|
uni.showToast({
|
title:'请新增故障信息,故障信息不可为空',
|
icon:'none'
|
})
|
}else{
|
uni.showLoading({
|
title:'请稍候'
|
})
|
var sMainStr = JSON.stringify(this.hform);
|
var sSubStr = JSON.stringify(this.form1List);
|
var sMainSub = sMainStr + ';' + sSubStr + ";" + uni.getStorageSync('HUserName');
|
// console.log(sMainSub);
|
uni.request({
|
url: this.serverUrl + '/Sb_EqpRepairWorkBill/SaveGetEqpConkBookBillList',
|
method:'POST',
|
dataType:"json",
|
data:{ msg: sMainSub },
|
success: (res) => {
|
// console.log(1,res);
|
uni.hideLoading()
|
if(res.data.count == 1){
|
let pages = getCurrentPages();
|
let prePage = pages[pages.length - 2];
|
prePage.$vm.getList()
|
setTimeout(()=>{
|
uni.navigateBack()
|
},1000)
|
}
|
uni.showToast({
|
title:res.data.Message,
|
icon:'none'
|
})
|
},
|
fail: (res) => {
|
console.log(res);
|
uni.showToast({
|
title:'接口请求失败',
|
icon:'none'
|
})
|
},
|
});
|
}
|
},
|
goBack(){
|
uni.navigateBack()
|
}
|
}
|
}
|
</script>
|
|
<style lang="scss" scoped>
|
.form{
|
width: 668rpx;
|
margin: 20rpx auto;
|
padding-bottom: 240rpx;
|
}
|
.tab_area{
|
width: 100%;
|
height: 50rpx;
|
}
|
.form-item{
|
display: flex;
|
align-items: center;
|
font-size: 30rpx;
|
padding: 6rpx 0;
|
.title{
|
width: 208rpx;
|
}
|
.right{
|
width: 450rpx;
|
border-radius: 22rpx;
|
border: 1px solid #acacac;
|
}
|
.righton{
|
width: 450rpx;
|
border-radius: 22rpx;
|
border: 1px solid #e4e4e4;
|
background-color: #e4e4e4;
|
}
|
text{
|
color: red;
|
font-weight: bold;
|
}
|
input{
|
width: 100%;
|
padding: 8rpx 20rpx;
|
font-size: 30rpx;
|
}
|
textarea{
|
width: 98%;
|
padding: 8rpx 20rpx;
|
font-size: 30rpx;
|
}
|
.tip{
|
color: #da9100;
|
margin-top: 20rpx;
|
}
|
}
|
.bottom-btn{
|
width: 100%;
|
// height: 120rpx;
|
position: fixed;
|
bottom: 0;
|
left: 0;
|
background-color: #fff;
|
box-shadow: 0 2rpx 10rpx 2rpx rgba(0, 0, 0, 0.4);
|
padding: 30rpx 40rpx 40rpx 40rpx;
|
button{
|
border-radius: 50rpx;
|
width: 180rpx;
|
height: 66rpx;
|
line-height: 66rpx;
|
font-size: 28rpx;
|
}
|
.btn-a{
|
background-color: #3A78FF;
|
color: #fff;
|
}
|
.btn-b{
|
background-color: #41a863;
|
color: #fff;
|
margin-left: 30rpx;
|
}
|
.btn-c{
|
background-color: #acacac;
|
color: #fff;
|
position: absolute;
|
right: 120rpx;
|
}
|
}
|
</style>
|