|
|
@@ -12,13 +12,13 @@
|
|
|
<div class="card col-md-8 offset-md-2">
|
|
|
<div class="card-body">
|
|
|
<div class="row">
|
|
|
- <div class="col-6 rounded mb-2 border" style="background: #efe3d9;">
|
|
|
+ <div class="col-6 rounded mb-2 border" style="background: #efe3d9;" v-if="!is_hide">
|
|
|
<div class="form-group row mt-2">
|
|
|
<label class="col-2 text-right mt-2">原料单据</label>
|
|
|
<input class="form-control col-7" v-model="process.wms_code">
|
|
|
<button class="btn btn-info btn-sm col-2" type="button" @click="addProcessContent(false)"> 新增库单据</button>
|
|
|
</div>
|
|
|
- <div class="form-group row">
|
|
|
+ <div class="form-group row" v-if="!is_hide">
|
|
|
<div class="col-10 offset-1 pl-0 pt-2 border rounded bg-light">
|
|
|
<div class="row pt-2 small"><label class="col-3 text-right" >单据号</label>
|
|
|
<b class="col-8" v-if="processContents.length>0 && processContents[0].addBtnShow && !processContents[0].type">@{{ processContents[0].wms_code }}</b></div> <!---->
|
|
|
@@ -89,7 +89,7 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <div class="col-6 rounded mb-2 border" style="background: #ccd7dc;">
|
|
|
+ <div class="col-6 rounded mb-2 border" style="background: #ccd7dc;" :class="is_hide ? 'm-auto':''">
|
|
|
<div class="form-group row mt-2">
|
|
|
<label class="col-2 text-right mt-2">成品单据</label>
|
|
|
<input class="form-control col-7" v-model="process.wms_code_full">
|
|
|
@@ -180,27 +180,27 @@
|
|
|
</div>
|
|
|
<div class="form-group row">
|
|
|
<label class="col-3 col-form-label text-right" >加工类型</label>
|
|
|
- <select v-model="process.process_method_id" class="form-control col-8" :class="error.process_method_id && error.process_method_id.length>0 ? 'is-invalid' :''">
|
|
|
+ <select :disabled="is_hide" v-model="process.process_method_id" class="form-control col-8" :class="error.process_method_id && error.process_method_id.length>0 ? 'is-invalid' :''">
|
|
|
<option v-for="processMethod in processMethods" :value="processMethod.id">@{{ processMethod.name }}</option>
|
|
|
</select>
|
|
|
</div>
|
|
|
<div class="form-group row">
|
|
|
<label class="col-3 col-form-label text-right" >加工数量</label>
|
|
|
- <input v-model="process.amount" type="text" class="form-control col-8" :class="error.amount && error.amount.length>0 ? 'is-invalid' :''">
|
|
|
+ <input :readonly="is_hide" v-model="process.amount" type="text" class="form-control col-8" :class="error.amount && error.amount.length>0 ? 'is-invalid' :''">
|
|
|
<span v-if="error.amount && error.amount.length>0" class="invalid-feedback col-8 offset-3 mt-0" role="alert">
|
|
|
<strong >@{{ error.amount[0] }}</strong>
|
|
|
</span>
|
|
|
</div>
|
|
|
<div class="form-group row">
|
|
|
<label class="col-3 col-form-label text-right" >单价</label>
|
|
|
- <input v-model="process.unit_price" type="text" class="form-control col-8" :class="error.unit_price && error.unit_price.length>0 ? 'is-invalid' :''">
|
|
|
+ <input :readonly="is_hide" v-model="process.unit_price" type="text" class="form-control col-8" :class="error.unit_price && error.unit_price.length>0 ? 'is-invalid' :''">
|
|
|
<span v-if="error.unit_price && error.unit_price.length>0" class="invalid-feedback col-8 offset-3 mt-0" role="alert">
|
|
|
<strong>@{{ error.unit_price[0] }}</strong>
|
|
|
</span>
|
|
|
</div>
|
|
|
<div class="form-group row">
|
|
|
<label class="col-3 col-form-label text-right" >备注(选填)</label>
|
|
|
- <textarea v-model="process.remark" type="text" class="form-control col-8"></textarea>
|
|
|
+ <textarea :readonly="is_hide" v-model="process.remark" type="text" class="form-control col-8"></textarea>
|
|
|
</div>
|
|
|
<div class="form-group row">
|
|
|
<div class="col-8 offset-3">
|
|
|
@@ -218,7 +218,7 @@
|
|
|
el:'#list',
|
|
|
data:{
|
|
|
process:{id:'{{$process->id}}',code:'{{$process->code}}',wms_code:'',owner_id:'{{$process->owner_id}}',amount:'{{$process->amount}}',owner_name:'{{$process->owner_name}}',
|
|
|
- process_method_id:'{{$process->process_method_id}}',unit_price:'{{$process->unit_price}}',remark:'{{$process->remark}}',wms_code_full:''},
|
|
|
+ process_method_id:'{{$process->process_method_id}}',unit_price:'{{$process->unit_price}}',remark:'{{$process->remark}}',wms_code_full:'',status:'{{$process->status}}'},
|
|
|
error:{wms_code:[],owner_id:[],process_method_id:[],unit_price:[],amount:[]},
|
|
|
processContentError:[],
|
|
|
processContents:[
|
|
|
@@ -237,8 +237,10 @@
|
|
|
selectedTutorials:[],
|
|
|
commodityIds:[],
|
|
|
is_delBtn:[],
|
|
|
+ is_hide:false,
|
|
|
},
|
|
|
mounted:function(){
|
|
|
+ if (this.process.status==='加工中' || this.process.status==='待加工')this.is_hide=true;
|
|
|
let _this=this;
|
|
|
_this.processContents.some(function (processContent) {
|
|
|
processContent.type=processContent.type==='成品单'?true:false;
|
|
|
@@ -246,7 +248,6 @@
|
|
|
_this.commodityIds.push(processContent.commodity_id+'_'+processContent.type);
|
|
|
}
|
|
|
});
|
|
|
- console.log(this.process);
|
|
|
},
|
|
|
watch:{
|
|
|
processContents:{
|
|
|
@@ -315,16 +316,27 @@
|
|
|
}
|
|
|
let _this=this;
|
|
|
let sign=true;
|
|
|
+ let is_return=false;
|
|
|
let processContentTemp={};
|
|
|
_this.processContents.some(function (processContent) {
|
|
|
if (processContent.wms_code==wms_code && processContent.commodity_id==commodity_id && processContent.type==type) {
|
|
|
-
|
|
|
+ processContent.commodities.every(function (commodity) {
|
|
|
+ if (commodity.id===commodity_id && commodity.amount<amount){
|
|
|
+ tempTip.setDuration(2000);
|
|
|
+ tempTip.show("数量不得超出原有数量!");
|
|
|
+ is_return=true;
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ return true;
|
|
|
+ });
|
|
|
+ if (is_return)return true;
|
|
|
_this.commodityIds.push(processContent.commodity_id+"_"+type);
|
|
|
processContent.addBtnShow=false;
|
|
|
processContentTemp=Object.assign({},processContent);
|
|
|
}
|
|
|
if (processContent.wms_code==wms_code && processContent.commodity_id==commodity_id && processContent.type==!type)sign=false;
|
|
|
});
|
|
|
+ if (is_return)return;
|
|
|
if (bill_type==='入库单' && !type && sign){
|
|
|
_this.commodityIds.push(processContentTemp.commodity_id+"_"+!type);
|
|
|
processContentTemp['type']=true;
|
|
|
@@ -391,7 +403,7 @@
|
|
|
_this.processContentError=[];
|
|
|
axios.put('{{url("process")}}/'+_this.process.id,{
|
|
|
owner_id:owner_id,process_method_id:process_method_id,unit_price:unit_price,
|
|
|
- remark:remark,amount:amount,processContents:_this.processContents
|
|
|
+ remark:remark,amount:amount,processContents:_this.processContents,is_hide:_this.is_hide
|
|
|
}).then(function (response) {
|
|
|
if (response.data.error && response.data.data=="process"){
|
|
|
_this.error=response.data.error;
|