@{
|
ViewBag.Title = "检验单维护检验结果";
|
Layout = "~/Views/Shared/_LayoutVue.cshtml";
|
}
|
@model TN_WM_INSPECT_MSTEntity
|
<el-container id="inspectDiv" v-cloak>
|
<el-header height="100%">
|
<el-card class="box-card">
|
<el-form v-bind:model="formData" v-bind:rules="formRules" ref="formData" label-width="120px" class="demo-ruleForm" v-bind:inline="true">
|
<el-form-item v-need="'JYD_INSPECT_NO'" label="检验单号:" prop="CN_S_INSPECT_NO">
|
<el-input v-model="formData.CN_S_INSPECT_NO" v-bind:disabled="true" readonly="readonly" required size="mini"></el-input>
|
</el-form-item>
|
<el-form-item v-need="'JYD_INSPECT_TYPE'" label="检验类型:" prop="CN_S_INSPECT_TYPE">
|
<hh-select-url v-bind:disabled="true" v-model="formData.CN_S_INSPECT_TYPE" url="/Basic/Common/GetOperationTypeList?opType=到货单"
|
valuefield="CN_S_OPERATION_NAME"
|
textfield="CN_S_OPERATION_NAME"
|
datafield="Data"></hh-select-url>
|
</el-form-item>
|
<el-form-item v-need="'JYD_STATE'" label="检验状态:" prop="CN_S_STATE">
|
<hh-select-url v-bind:disabled="true" v-model="formData.CN_S_STATE" url="/Basic/Common/GetDictionary?dictName=到货单状态"
|
valuefield="NAME"
|
textfield="NAME"></hh-select-url>
|
</el-form-item>
|
<el-form-item v-need="'JYD_FROM_NO'" label="来源单号:" prop="CN_S_FROM_NO">
|
<el-input v-model="formData.CN_S_FROM_NO" v-bind:disabled="true" readonly="readonly" required size="mini"></el-input>
|
</el-form-item>
|
<el-form-item v-need="'JYD_OP_TYPE'" label="业务类型:" prop="CN_S_OP_TYPE">
|
<hh-select-url v-bind:disabled="true" v-model="formData.CN_S_OP_TYPE" url="/Basic/Common/GetOperationTypeList?opType=到货单"
|
valuefield="CN_S_OPERATION_NAME"
|
textfield="CN_S_OPERATION_NAME"
|
datafield="Data"></hh-select-url>
|
</el-form-item>
|
<el-form-item v-need="'JYD_SUBMIT_INSPECT'" label="送检日期:" prop="CN_T_SUBMIT_INSPECT">
|
<el-date-picker v-model="formData.CN_T_SUBMIT_INSPECT" size="mini" v-bind:disabled="readOnly" value-format="yyyy-MM-dd" style="width: 100%;" type="date" placeholder="请选择日期"></el-date-picker>
|
</el-form-item>
|
<el-form-item v-need="'JYD_INSPECT_DEPT'" label="送检部门:" prop="CN_S_INSPECT_DEPT">
|
<el-input v-model="formData.CN_S_INSPECT_DEPT" v-bind:disabled="true" readonly="readonly" required size="mini"></el-input>
|
</el-form-item>
|
<el-form-item v-need="'JYD_SUBMIT_PERSONER'" label="送检员:" prop="CN_S_SUBMIT_PERSONER">
|
<el-input v-model="formData.CN_S_SUBMIT_PERSONER" required size="mini" v-bind:disabled="true"></el-input>
|
</el-form-item>
|
<el-form-item v-need="'JYD_OPERATOR'" label="检验员:" prop="CN_S_OPERATOR">
|
<el-input v-model="formData.CN_S_OPERATOR" required size="mini" v-bind:disabled="readOnly"></el-input>
|
</el-form-item>
|
<el-form-item v-need="'JYD_DATE'" label="检验日期:" prop="CN_T_DATE">
|
<el-date-picker v-model="formData.CN_T_DATE" size="mini" v-bind:disabled="readOnly" value-format="yyyy-MM-dd" style="width: 100%;" type="date" placeholder="请选择日期"></el-date-picker>
|
</el-form-item>
|
<el-form-item v-need="'JYD_NOTE'" label="摘要:" prop="CN_S_NOTE">
|
<el-input v-model="formData.CN_S_NOTE" v-bind:disabled="true" size="mini"></el-input>
|
</el-form-item>
|
|
</el-form>
|
</el-card>
|
</el-header>
|
<el-main>
|
<el-table v-bind:data="tableData" class="tb-edit" style="width: 100%;"
|
v-bind:height="tableHeight" border highlight-current-row size="mini">
|
@*<el-table-column label="操作" width="50" align="center">
|
<template scope="scope">
|
<i style="cursor:pointer" class="el-icon-plus" v-if="IsHandWork" v-on:click="addRow" title="新增行"></i>
|
<i style="cursor:pointer" class="el-icon-minus" v-on:click="deleteRow(scope.$index, tableData)" title="删除行"></i>
|
</template>
|
</el-table-column>*@
|
<el-table-column type="index" width="45" label="行号">
|
</el-table-column>
|
<el-table-column v-if="$_need('JYD_ITEM_CODE')" label="物料编码" prop="CN_S_ITEM_CODE" width="180" align="center">
|
<template scope="scope">
|
<el-input size="mini"
|
v-model="scope.row.CN_S_ITEM_CODE"
|
v-bind:disabled="readOnly"
|
v-bind:ref="'_refItem'+scope.$index"
|
v-on:input="itemInputChange(scope.row,scope.$index)"
|
v-on:blur="itemInputBlur(scope.row,scope.$index)">
|
<i slot="suffix" v-on:click="selectItem(scope.row)" class="el-icon-more"></i>
|
</el-input>
|
<span>{{scope.row.CN_S_ITEM_CODE}}</span>
|
</template>
|
</el-table-column>
|
<el-table-column v-if="$_need('JYD_ITEM_NAME')" label="物料名称" prop="CN_S_ITEM_NAME" width="180" align="center"></el-table-column>
|
|
<el-table-column v-if="$_need('JYD_MODEL')" label="规格型号" prop="CN_S_MODEL" width="120" align="center"></el-table-column>
|
<el-table-column v-if="$_need('JYD_FIGURE_NO')" label="图号" prop="CN_S_FIGURE_NO" width="140" align="center"></el-table-column>
|
<el-table-column v-if="$_need('JYD_MEASURE_UNIT')" label="计量单位" prop="CN_S_MEASURE_UNIT" width="70"></el-table-column>
|
<el-table-column v-if="$_need('JYD_QUANTITY')" label="数量" prop="CN_F_QUANTITY" width="70" align="center"></el-table-column>
|
<el-table-column v-if="$_need('JYD_QUALIFIED')" label="合格数量" prop="CN_F_QUALIFIED" width="120" align="center">
|
<template scope="scope">
|
<el-input-number v-model="scope.row.CN_F_QUALIFIED"
|
v-bind:min="0"
|
size="mini" @*v-bind:precision="2" v-on:change="checkQty(scope.row,scope.$index)"*@
|
v-bind:disabled="readOnly" style="width:100px"></el-input-number>
|
<span>{{scope.row.CN_F_QUALIFIED}}</span>
|
</template>
|
</el-table-column>
|
<el-table-column v-if="$_need('JYD_DTL_NOTE')" label="备注" prop="CN_S_NOTE" width="180" align="center">
|
<template scope="scope">
|
<el-input size="mini" v-model="scope.row.CN_S_NOTE" v-bind:disabled="true" placeholder=""></el-input>
|
<span>{{scope.row.CN_S_NOTE}}</span>
|
</template>
|
</el-table-column>
|
</el-table>
|
</el-main>
|
<el-footer style="position:fixed;bottom:0px;height:50px;width:100%">
|
<el-row style="padding:20px;text-align:center">
|
<el-button size="mini" type="primary" v-on:click="save(false)" v-show="!readOnly">保 存</el-button>
|
<el-button size="mini" type="warning" v-on:click="submit" v-show="!readOnly">提 交</el-button>
|
<el-button size="mini" v-on:click="cancel">{{readOnly?'返 回':'取 消'}}</el-button>
|
</el-row>
|
</el-footer>
|
|
</el-container>
|
@section scripts{
|
<script>
|
$(function () {
|
|
});
|
new Vue({
|
el: '#inspectDiv',
|
mixins: [useAutoHeight,wmsApps],
|
computed: {
|
tableHeight: function () {
|
return this.autoHeight - 210;
|
},
|
itemTop:function(){
|
return this.itemTable.top+28;
|
},
|
itemLeft:function(){
|
return this.itemTable.left;
|
}
|
},
|
data: {
|
itemTable:{
|
show:false,
|
top:0,
|
left:0
|
},
|
where: {},
|
IsHandWork: true,
|
readOnly :false,
|
formData: {
|
CN_S_INSPECT_NO: "@Model.CN_S_INSPECT_NO",
|
CN_S_OP_TYPE: "@Model.CN_S_OP_TYPE",
|
CN_S_INSPECT_TYPE: "@Model.CN_S_INSPECT_TYPE",
|
CN_S_STATE: "@Model.CN_S_STATE",
|
CN_S_FROM_NO: "@Model.CN_S_FROM_NO",
|
CN_T_DATE: "@Model.CN_T_DATE",
|
CN_S_INSPECT_DEPT: "@Model.CN_S_INSPECT_DEPT",
|
CN_S_OPERATOR: "@Model.CN_S_OPERATOR",
|
CN_T_SUBMIT_INSPECT: "@Model.CN_T_SUBMIT_INSPECT",
|
CN_S_SUBMIT_PERSONER: "@Model.CN_S_SUBMIT_PERSONER",
|
CN_T_CREATE: "@Model.CN_T_CREATE",
|
CN_S_NOTE: "@Model.CN_S_NOTE",
|
OperateType: "@Model.OperateType",
|
DTLEntity: [],
|
OperateMessage:""
|
},
|
formRules: {
|
CN_S_OP_NO: [
|
{ required: true, message: ' ', trigger: 'blur' }
|
],
|
CN_S_OPERATOR: [
|
{ required: true, message: ' ', trigger: 'change' }
|
],
|
CN_T_SUBMIT_INSPECT: [
|
{ required: true, message: ' ', trigger: 'change' }
|
]
|
},
|
@if(Model.OperateType==
|
HH.WMS.Entitys.Common.OperateType.Add
|
|| Model.DTLEntity == null
|
|| !Model.DTLEntity.Any())
|
{
|
<text>
|
tableData: [{
|
CN_S_ITEM_CODE: '',
|
CN_S_ITEM_NAME: '',
|
CN_S_MODEL: '',
|
CN_S_FIGURE_NO: '',
|
CN_S_MEASURE_UNIT: '',
|
CN_F_QUANTITY: '',
|
CN_F_QUALIFIED: '',
|
CN_S_NOTE: ''
|
}],
|
</text>
|
}
|
else
|
{
|
<text>
|
tableData: @Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(Model.DTLEntity, Html.DateFormatter())),
|
</text>
|
}
|
//是否打开父页面弹窗列表
|
selectItemDialog: false,
|
//选中当前物料的行数据
|
currentRow: {},
|
form: {
|
name: '',
|
region: '',
|
date1: '',
|
date2: '',
|
delivery: false,
|
type: [],
|
resource: '',
|
desc: ''
|
},
|
//父页面选择的物料数据
|
selections: [],
|
currentTitle:parent.$(".layui-tab-title li[class='layui-this'] cite").text(),
|
emptyValue:'',
|
itemData:[],
|
hasEdit:false
|
},
|
watch:{
|
tableData:{
|
deep:true,
|
handler:function(val){
|
console.log('edit');
|
this.hasEdit = true;
|
}
|
},
|
formData:{
|
deep:true,
|
handler:function(val){
|
console.log('edit');
|
this.hasEdit = true;
|
}
|
}
|
},
|
methods: {
|
cancel:function(){
|
var $this = this;
|
if(!this.readOnly&&this.hasEdit){
|
wms.confirm("是否保存?", function () {
|
if($this.save(false))
|
parent.tab.tabDeleteRefresh($this.currentTitle,GetUrlParam("mainPage"));
|
},function(){
|
parent.tab.tabDeleteRefresh($this.currentTitle,GetUrlParam("mainPage"));
|
});
|
}else{
|
parent.tab.tabDeleteRefresh($this.currentTitle,GetUrlParam("mainPage"));
|
}
|
},
|
//提交
|
submit: function () {
|
var $this = this;
|
if($this.formData.OperateType=="@HH.WMS.Entitys.Common.OperateType.Edit"){
|
wms.confirm("确认提交?",function(){
|
$this.save(true);
|
});
|
}else{
|
wms.warning("请先保存单据再提交");
|
}
|
},
|
save: function (isSubmit) {
|
var $this = this;
|
var validData = [];
|
var errorMsg = null;
|
$.each($this.tableData, function (i, n) {
|
if (n.CN_S_ITEM_CODE) {
|
if (n.CN_F_QUALIFIED==undefined || (n.CN_F_QUALIFIED=="undefined") || (n.CN_F_QUALIFIED==0) || (n.CN_F_QUALIFIED=="0")) {
|
errorMsg = "第" + (i + 1) + "行合格数量未维护!";
|
return false;
|
}
|
validData.push(n);
|
|
if (parseFloat(n.CN_F_QUANTITY) < parseFloat(n.CN_F_QUALIFIED)) {
|
errorMsg = "第" + (i + 1) + "行合格数量不能大于总数量!";
|
return false;
|
}
|
validData.push(n);
|
|
}
|
});
|
|
var sj=new Date($this.formData.CN_T_SUBMIT_INSPECT.replace(/-/g,"\/"));
|
var jy=new Date($this.formData.CN_T_DATE.replace(/-/g,"\/"));
|
if(sj.toLocaleDateString()>jy.toLocaleDateString())
|
{
|
errorMsg = "检验日期不能小于送检日期!";
|
}
|
|
if (errorMsg) {
|
wms.warning(errorMsg);
|
return false;
|
}
|
this.$refs["formData"].validate(function (valid) {
|
if (valid) {
|
console.log($this.tableData);
|
$this.formData.DTLEntity = $this.tableData;
|
var successMsg = "保存成功";
|
$this.formData.OperateMessage="";
|
if(isSubmit){
|
$this.formData.OperateMessage = "@HH.WMS.Common.Constants.Operate_EditAndSubmit";
|
successMsg = "提交成功";
|
}
|
//保存数据
|
ajaxManage({
|
url: "@Url.Action("SaveInspect")",
|
data: JSON.stringify($this.formData),
|
traditional: true,
|
success: function (data) {
|
wms.showMsg(data, function () {
|
wms.success(successMsg);
|
$this.formData.OperateType = "@HH.WMS.Entitys.Common.OperateType.Edit";
|
$this.hasEdit = false;
|
if(isSubmit)
|
{
|
var currentTitle = parent.$(".layui-tab-title li[class='layui-this'] cite").text();
|
parent.tab.tabDeleteRefresh(currentTitle,GetUrlParam("mainPage"));
|
}
|
}, function () {
|
|
});
|
}
|
});
|
|
} else {
|
wms.warning("验证不通过");
|
return false;
|
}
|
});
|
return true;
|
},
|
checkQty:function(row,index){
|
var regu = /^[0-9]+\.?[0-9]*$/;
|
var qty=row.CN_F_QUANTITY+"";
|
if (qty != "") {
|
var zhenshu=qty.split('.')[0];
|
if (zhenshu.length > 15) {
|
zhenshu=zhenshu.substring(0,14);
|
}
|
if (qty.indexOf('.') > -1) {
|
if (qty.split('.')[1].length > 2) {
|
zhenshu =zhenshu+"."+qty.split('.')[1].substring(0,2);
|
}
|
}
|
}
|
row.CN_F_QUANTITY = zhenshu;
|
var $this = this;
|
this.$set($this.tableData,index,row);
|
},
|
changeSelect: function (val) {
|
this.selections = val;
|
}
|
},
|
mounted: function () {
|
var $this = this;
|
if($this.formData.OperateType=="@HH.WMS.Entitys.Common.OperateType.Read"){
|
$this.readOnly = true;
|
}
|
}
|
});
|
</script>
|
}
|