优化单据的录入界面的明细排版

This commit is contained in:
季圣华
2021-11-11 00:50:27 +08:00
parent 2a192c6f24
commit b46c081628
17 changed files with 183 additions and 144 deletions

View File

@@ -23,6 +23,7 @@
"nprogress": "^0.2.0", "nprogress": "^0.2.0",
"xlsx": "^0.14.3", "xlsx": "^0.14.3",
"intro.js": "^4.2.2", "intro.js": "^4.2.2",
"jquery": "^1.12.4",
"viser-vue": "^2.4.4", "viser-vue": "^2.4.4",
"vue": "^2.6.10", "vue": "^2.6.10",
"vue-area-linkage": "^5.1.0", "vue-area-linkage": "^5.1.0",

View File

@@ -707,7 +707,9 @@
</div> </div>
<!-- else (normal) --> <!-- else (normal) -->
<span v-else :key="i" v-bind="buildProps(row,col)">{{ inputValues[rowIndex][col.key] }}</span> <span v-else :key="i" v-bind="buildProps(row,col)" class="td-span" :title="inputValues[rowIndex][col.key]">
{{ inputValues[rowIndex][col.key] }}
</span>
</template> </template>
</div> </div>
</div> </div>
@@ -761,6 +763,7 @@
<script> <script>
import Vue from 'vue' import Vue from 'vue'
import $ from 'jquery'
import Draggable from 'vuedraggable' import Draggable from 'vuedraggable'
import { ACCESS_TOKEN } from '@/store/mutation-types' import { ACCESS_TOKEN } from '@/store/mutation-types'
import { FormTypes, VALIDATE_NO_PASSED } from '@/utils/JEditableTableUtil' import { FormTypes, VALIDATE_NO_PASSED } from '@/utils/JEditableTableUtil'
@@ -1430,7 +1433,7 @@
tbody.scrollTop = tbody.scrollHeight tbody.scrollTop = tbody.scrollHeight
}) })
this.$nextTick(() => { this.$nextTick(() => {
this.autoJumpNextInputBill('billModal') this.autoJumpNextInputBill()
}) })
}, },
/** /**
@@ -1463,6 +1466,9 @@
num, insertIndex, num, insertIndex,
target: this target: this
}) })
this.$nextTick(() => {
this.autoJumpNextInputBill()
})
}, },
/** 删除被选中的行 */ /** 删除被选中的行 */
removeSelectedRows() { removeSelectedRows() {
@@ -2744,31 +2750,35 @@
return content; return content;
}, },
/** 回车后自动跳到下一个input **/ /** 回车后自动跳到下一个input **/
autoJumpNextInputBill(domInfo) { autoJumpNextInputBill() {
let that = this let that = this
let domIndex = 0 let inputDom = $(".ant-modal-cust-warp:visible").find("#billModal");
let inputs = document.getElementById(domInfo).getElementsByTagName('input') inputDom.find("input:visible:not(:checkbox)").off("keydown").on("keydown", function(e){
inputs[domIndex].focus() //响应回车键按下的处理
document.getElementById(domInfo).addEventListener('keydown',function(e){ e = event || window.event || arguments.callee.caller.arguments[0];
if(e.keyCode === 13){ //捕捉是否按键为回车键可百度JS键盘事件了解更多
domIndex++ if(e && e.keyCode==13) {
if(domIndex === inputs.length) { //捕捉inputDom下的文本输入框的个数
domIndex = 0 let inputs = inputDom.find("input:visible:not(:checkbox)");
that.handleClickAdd() let idx = inputs.index(this); // 获取当前焦点输入框所处的位置
if (idx == inputs.length - 1) { // 判断是否是最后一个输入框
let curKey = e.which;
if (curKey == 13) {
//新增行
that.handleClickAdd();
//进行下一行的自动聚焦
setTimeout(function() {
inputs = inputDom.find("input:visible:not(:checkbox)");
inputs[idx + 1].focus(); // 设置焦点
inputs[idx + 1].select(); // 选中文字
},100)
}
} else {
inputs[idx + 1].focus(); // 设置焦点
inputs[idx + 1].select(); // 选中文字
} }
inputs[domIndex].focus()
} }
}) })
for(let i=0; i<inputs.length; i++){
//这个index就是做个介质来获取当前的i是第几个
inputs[i].index = i;
inputs[i].onclick = function () {
domIndex = this.index
}
inputs[i].onselect = function () {
domIndex = this.index
}
}
}, },
/** 自动选中特殊的key **/ /** 自动选中特殊的key **/
autoSelectBySpecialKey(specialKey) { autoSelectBySpecialKey(specialKey) {
@@ -3030,6 +3040,29 @@
} }
.td-span {
font-variant: tabular-nums;
box-sizing: border-box;
margin: 0;
list-style: none;
position: relative;
display: inline-block;
padding: 2px 2px;
width: 100%;
height: 32px;
font-size: 14px;
line-height: 1.9;
color: rgba(0, 0, 0, 0.65);
background-color: #fff;
border: 1px dashed #d9d9d9;
border-radius: 4px;
transition: all 0.3s;
outline: none;
overflow:hidden;
white-space:nowrap;
text-overflow:ellipsis;
}
} }
} }

View File

@@ -117,10 +117,10 @@ export const BillModalMixin = {
if(this.prefixNo === 'CGRK' || this.prefixNo === 'XSTH' || this.prefixNo === 'CGTH') { if(this.prefixNo === 'CGRK' || this.prefixNo === 'XSTH' || this.prefixNo === 'CGTH') {
columns[i].type = FormTypes.date //显示 columns[i].type = FormTypes.date //显示
} else { } else {
columns[i].type = FormTypes.input //显示 columns[i].type = FormTypes.normal //显示
} }
} else { } else {
columns[i].type = FormTypes.input //显示 columns[i].type = FormTypes.normal //显示
} }
} else { } else {
columns[i].type = FormTypes.hidden //隐藏 columns[i].type = FormTypes.hidden //隐藏

View File

@@ -129,15 +129,15 @@
{ title: '条码', key: 'barCode', width: '8%', type: FormTypes.popupJsh, kind: 'material', multi: true, { title: '条码', key: 'barCode', width: '8%', type: FormTypes.popupJsh, kind: 'material', multi: true,
validateRules: [{ required: true, message: '${title}不能为空' }] validateRules: [{ required: true, message: '${title}不能为空' }]
}, },
{ title: '名称', key: 'name', width: '6%', type: FormTypes.input, readonly: true }, { title: '名称', key: 'name', width: '6%', type: FormTypes.normal },
{ title: '规格', key: 'standard', width: '5%', type: FormTypes.input, readonly: true }, { title: '规格', key: 'standard', width: '5%', type: FormTypes.normal },
{ title: '型号', key: 'model', width: '5%', type: FormTypes.input, readonly: true }, { title: '型号', key: 'model', width: '5%', type: FormTypes.normal },
{ title: '颜色', key: 'color', width: '5%', type: FormTypes.input, readonly: true }, { title: '颜色', key: 'color', width: '5%', type: FormTypes.normal },
{ title: '扩展信息', key: 'materialOther', width: '5%', type: FormTypes.input, readonly: true }, { title: '扩展信息', key: 'materialOther', width: '5%', type: FormTypes.normal },
{ title: '库存', key: 'stock', width: '5%', type: FormTypes.input, readonly: true }, { title: '库存', key: 'stock', width: '5%', type: FormTypes.normal },
{ title: '调入仓库', key: 'anotherDepotId', width: '7%', type: FormTypes.select, placeholder: '请选择${title}', options: [], allowSearch:true}, { title: '调入仓库', key: 'anotherDepotId', width: '7%', type: FormTypes.select, placeholder: '请选择${title}', options: [], allowSearch:true},
{ title: '单位', key: 'unit', width: '4%', type: FormTypes.input, readonly: true }, { title: '单位', key: 'unit', width: '4%', type: FormTypes.normal },
{ title: '多属性', key: 'sku', width: '4%', type: FormTypes.input, readonly: true }, { title: '多属性', key: 'sku', width: '4%', type: FormTypes.normal },
{ title: '数量', key: 'operNumber', width: '5%', type: FormTypes.inputNumber, statistics: true, { title: '数量', key: 'operNumber', width: '5%', type: FormTypes.inputNumber, statistics: true,
validateRules: [{ required: true, message: '${title}不能为空' }] validateRules: [{ required: true, message: '${title}不能为空' }]
}, },

View File

@@ -123,21 +123,21 @@
loading: false, loading: false,
dataSource: [], dataSource: [],
columns: [ columns: [
{ title: '商品类型',key: 'mType',width:'7%', type: FormTypes.input, readonly: true }, { title: '商品类型',key: 'mType',width:'7%', type: FormTypes.normal },
{ title: '仓库名称', key: 'depotId', width: '7%', type: FormTypes.select, placeholder: '请选择${title}', options: [], { title: '仓库名称', key: 'depotId', width: '7%', type: FormTypes.select, placeholder: '请选择${title}', options: [],
allowSearch:true, validateRules: [{ required: true, message: '${title}不能为空' }] allowSearch:true, validateRules: [{ required: true, message: '${title}不能为空' }]
}, },
{ title: '条码', key: 'barCode', width: '8%', type: FormTypes.popupJsh, kind: 'material', multi: true, { title: '条码', key: 'barCode', width: '8%', type: FormTypes.popupJsh, kind: 'material', multi: true,
validateRules: [{ required: true, message: '${title}不能为空' }] validateRules: [{ required: true, message: '${title}不能为空' }]
}, },
{ title: '名称', key: 'name', width: '6%', type: FormTypes.input, readonly: true }, { title: '名称', key: 'name', width: '6%', type: FormTypes.normal },
{ title: '规格', key: 'standard', width: '5%', type: FormTypes.input, readonly: true }, { title: '规格', key: 'standard', width: '5%', type: FormTypes.normal },
{ title: '型号', key: 'model', width: '5%', type: FormTypes.input, readonly: true }, { title: '型号', key: 'model', width: '5%', type: FormTypes.normal },
{ title: '颜色', key: 'color', width: '5%', type: FormTypes.input, readonly: true }, { title: '颜色', key: 'color', width: '5%', type: FormTypes.normal },
{ title: '扩展信息', key: 'materialOther', width: '5%', type: FormTypes.input, readonly: true }, { title: '扩展信息', key: 'materialOther', width: '5%', type: FormTypes.normal },
{ title: '库存', key: 'stock', width: '5%', type: FormTypes.input, readonly: true }, { title: '库存', key: 'stock', width: '5%', type: FormTypes.normal },
{ title: '单位', key: 'unit', width: '4%', type: FormTypes.input, readonly: true }, { title: '单位', key: 'unit', width: '4%', type: FormTypes.normal },
{ title: '多属性', key: 'sku', width: '4%', type: FormTypes.input, readonly: true }, { title: '多属性', key: 'sku', width: '4%', type: FormTypes.normal },
{ title: '数量', key: 'operNumber', width: '5%', type: FormTypes.inputNumber, statistics: true, { title: '数量', key: 'operNumber', width: '5%', type: FormTypes.inputNumber, statistics: true,
validateRules: [{ required: true, message: '${title}不能为空' }] validateRules: [{ required: true, message: '${title}不能为空' }]
}, },

View File

@@ -123,21 +123,21 @@
loading: false, loading: false,
dataSource: [], dataSource: [],
columns: [ columns: [
{ title: '商品类型',key: 'mType',width:'7%', type: FormTypes.input, readonly: true }, { title: '商品类型',key: 'mType',width:'7%', type: FormTypes.normal },
{ title: '仓库名称', key: 'depotId', width: '7%', type: FormTypes.select, placeholder: '请选择${title}', options: [], { title: '仓库名称', key: 'depotId', width: '7%', type: FormTypes.select, placeholder: '请选择${title}', options: [],
allowSearch:true, validateRules: [{ required: true, message: '${title}不能为空' }] allowSearch:true, validateRules: [{ required: true, message: '${title}不能为空' }]
}, },
{ title: '条码', key: 'barCode', width: '8%', type: FormTypes.popupJsh, kind: 'material', multi: true, { title: '条码', key: 'barCode', width: '8%', type: FormTypes.popupJsh, kind: 'material', multi: true,
validateRules: [{ required: true, message: '${title}不能为空' }] validateRules: [{ required: true, message: '${title}不能为空' }]
}, },
{ title: '名称', key: 'name', width: '6%', type: FormTypes.input, readonly: true }, { title: '名称', key: 'name', width: '6%', type: FormTypes.normal },
{ title: '规格', key: 'standard', width: '5%', type: FormTypes.input, readonly: true }, { title: '规格', key: 'standard', width: '5%', type: FormTypes.normal },
{ title: '型号', key: 'model', width: '5%', type: FormTypes.input, readonly: true }, { title: '型号', key: 'model', width: '5%', type: FormTypes.normal },
{ title: '颜色', key: 'color', width: '5%', type: FormTypes.input, readonly: true }, { title: '颜色', key: 'color', width: '5%', type: FormTypes.normal },
{ title: '扩展信息', key: 'materialOther', width: '5%', type: FormTypes.input, readonly: true }, { title: '扩展信息', key: 'materialOther', width: '5%', type: FormTypes.normal },
{ title: '库存', key: 'stock', width: '5%', type: FormTypes.input, readonly: true }, { title: '库存', key: 'stock', width: '5%', type: FormTypes.normal },
{ title: '单位', key: 'unit', width: '4%', type: FormTypes.input, readonly: true }, { title: '单位', key: 'unit', width: '4%', type: FormTypes.normal },
{ title: '多属性', key: 'sku', width: '4%', type: FormTypes.input, readonly: true }, { title: '多属性', key: 'sku', width: '4%', type: FormTypes.normal },
{ title: '数量', key: 'operNumber', width: '5%', type: FormTypes.inputNumber, statistics: true, { title: '数量', key: 'operNumber', width: '5%', type: FormTypes.inputNumber, statistics: true,
validateRules: [{ required: true, message: '${title}不能为空' }] validateRules: [{ required: true, message: '${title}不能为空' }]
}, },

View File

@@ -151,14 +151,14 @@
{ title: '条码', key: 'barCode', width: '8%', type: FormTypes.popupJsh, kind: 'material', multi: true, { title: '条码', key: 'barCode', width: '8%', type: FormTypes.popupJsh, kind: 'material', multi: true,
validateRules: [{ required: true, message: '${title}不能为空' }] validateRules: [{ required: true, message: '${title}不能为空' }]
}, },
{ title: '名称', key: 'name', width: '6%', type: FormTypes.input, readonly: true }, { title: '名称', key: 'name', width: '6%', type: FormTypes.normal },
{ title: '规格', key: 'standard', width: '5%', type: FormTypes.input, readonly: true }, { title: '规格', key: 'standard', width: '5%', type: FormTypes.normal },
{ title: '型号', key: 'model', width: '5%', type: FormTypes.input, readonly: true }, { title: '型号', key: 'model', width: '5%', type: FormTypes.normal },
{ title: '颜色', key: 'color', width: '5%', type: FormTypes.input, readonly: true }, { title: '颜色', key: 'color', width: '5%', type: FormTypes.normal },
{ title: '扩展信息', key: 'materialOther', width: '5%', type: FormTypes.input, readonly: true }, { title: '扩展信息', key: 'materialOther', width: '5%', type: FormTypes.normal },
{ title: '库存', key: 'stock', width: '5%', type: FormTypes.input, readonly: true }, { title: '库存', key: 'stock', width: '5%', type: FormTypes.normal },
{ title: '单位', key: 'unit', width: '4%', type: FormTypes.input, readonly: true }, { title: '单位', key: 'unit', width: '4%', type: FormTypes.normal },
{ title: '多属性', key: 'sku', width: '4%', type: FormTypes.input, readonly: true }, { title: '多属性', key: 'sku', width: '4%', type: FormTypes.normal },
{ title: '数量', key: 'operNumber', width: '5%', type: FormTypes.inputNumber, statistics: true, { title: '数量', key: 'operNumber', width: '5%', type: FormTypes.inputNumber, statistics: true,
validateRules: [{ required: true, message: '${title}不能为空' }] validateRules: [{ required: true, message: '${title}不能为空' }]
}, },

View File

@@ -151,14 +151,14 @@
{ title: '条码', key: 'barCode', width: '8%', type: FormTypes.popupJsh, kind: 'material', multi: true, { title: '条码', key: 'barCode', width: '8%', type: FormTypes.popupJsh, kind: 'material', multi: true,
validateRules: [{ required: true, message: '${title}不能为空' }] validateRules: [{ required: true, message: '${title}不能为空' }]
}, },
{ title: '名称', key: 'name', width: '6%', type: FormTypes.input, readonly: true }, { title: '名称', key: 'name', width: '6%', type: FormTypes.normal },
{ title: '规格', key: 'standard', width: '5%', type: FormTypes.input, readonly: true }, { title: '规格', key: 'standard', width: '5%', type: FormTypes.normal },
{ title: '型号', key: 'model', width: '5%', type: FormTypes.input, readonly: true }, { title: '型号', key: 'model', width: '5%', type: FormTypes.normal },
{ title: '颜色', key: 'color', width: '5%', type: FormTypes.input, readonly: true }, { title: '颜色', key: 'color', width: '5%', type: FormTypes.normal },
{ title: '扩展信息', key: 'materialOther', width: '5%', type: FormTypes.input, readonly: true }, { title: '扩展信息', key: 'materialOther', width: '5%', type: FormTypes.normal },
{ title: '库存', key: 'stock', width: '5%', type: FormTypes.input, readonly: true }, { title: '库存', key: 'stock', width: '5%', type: FormTypes.normal },
{ title: '单位', key: 'unit', width: '4%', type: FormTypes.input, readonly: true }, { title: '单位', key: 'unit', width: '4%', type: FormTypes.normal },
{ title: '多属性', key: 'sku', width: '4%', type: FormTypes.input, readonly: true }, { title: '多属性', key: 'sku', width: '4%', type: FormTypes.normal },
{ title: '数量', key: 'operNumber', width: '5%', type: FormTypes.inputNumber, statistics: true, { title: '数量', key: 'operNumber', width: '5%', type: FormTypes.inputNumber, statistics: true,
validateRules: [{ required: true, message: '${title}不能为空' }] validateRules: [{ required: true, message: '${title}不能为空' }]
}, },

View File

@@ -220,27 +220,27 @@
{ title: '条码', key: 'barCode', width: '8%', type: FormTypes.popupJsh, kind: 'material', multi: true, { title: '条码', key: 'barCode', width: '8%', type: FormTypes.popupJsh, kind: 'material', multi: true,
validateRules: [{ required: true, message: '${title}不能为空' }] validateRules: [{ required: true, message: '${title}不能为空' }]
}, },
{ title: '名称', key: 'name', width: '6%', type: FormTypes.input, readonly: true }, { title: '名称', key: 'name', width: '6%', type: FormTypes.normal },
{ title: '规格', key: 'standard', width: '5%', type: FormTypes.input, readonly: true }, { title: '规格', key: 'standard', width: '5%', type: FormTypes.normal },
{ title: '型号', key: 'model', width: '5%', type: FormTypes.input, readonly: true }, { title: '型号', key: 'model', width: '5%', type: FormTypes.normal },
{ title: '颜色', key: 'color', width: '5%', type: FormTypes.input, readonly: true }, { title: '颜色', key: 'color', width: '5%', type: FormTypes.normal },
{ title: '扩展信息', key: 'materialOther', width: '5%', type: FormTypes.input, readonly: true }, { title: '扩展信息', key: 'materialOther', width: '5%', type: FormTypes.normal },
{ title: '库存', key: 'stock', width: '5%', type: FormTypes.input, readonly: true }, { title: '库存', key: 'stock', width: '5%', type: FormTypes.normal },
{ title: '单位', key: 'unit', width: '4%', type: FormTypes.input, readonly: true }, { title: '单位', key: 'unit', width: '4%', type: FormTypes.normal },
{ title: '序列号', key: 'snList', width: '12%', type: FormTypes.input, placeholder: '多个序列号请用逗号隔开', { title: '序列号', key: 'snList', width: '12%', type: FormTypes.input, placeholder: '多个序列号请用逗号隔开',
validateRules: [{ pattern: /^\S{1,100}$/, message: '请小于100位字符' }] validateRules: [{ pattern: /^\S{1,100}$/, message: '请小于100位字符' }]
}, },
{ title: '批号', key: 'batchNumber', width: '5%', type: FormTypes.input }, { title: '批号', key: 'batchNumber', width: '5%', type: FormTypes.input },
{ title: '有效期', key: 'expirationDate',width: '7%', type: FormTypes.date }, { title: '有效期', key: 'expirationDate',width: '7%', type: FormTypes.date },
{ title: '多属性', key: 'sku', width: '4%', type: FormTypes.input, readonly: true }, { title: '多属性', key: 'sku', width: '4%', type: FormTypes.normal },
{ title: '数量', key: 'operNumber', width: '5%', type: FormTypes.inputNumber, statistics: true, { title: '数量', key: 'operNumber', width: '5%', type: FormTypes.inputNumber, statistics: true,
validateRules: [{ required: true, message: '${title}不能为空' }] validateRules: [{ required: true, message: '${title}不能为空' }]
}, },
{ title: '单价', key: 'unitPrice', width: '5%', type: FormTypes.inputNumber}, { title: '单价', key: 'unitPrice', width: '5%', type: FormTypes.inputNumber},
{ title: '含税单价', key: 'taxUnitPrice', width: '5%', type: FormTypes.inputNumber, readonly: true}, { title: '含税单价', key: 'taxUnitPrice', width: '5%', type: FormTypes.normal },
{ title: '金额', key: 'allPrice', width: '5%', type: FormTypes.inputNumber, statistics: true }, { title: '金额', key: 'allPrice', width: '5%', type: FormTypes.inputNumber, statistics: true },
{ title: '税率', key: 'taxRate', width: '4%', type: FormTypes.inputNumber,placeholder: '%'}, { title: '税率', key: 'taxRate', width: '4%', type: FormTypes.inputNumber,placeholder: '%'},
{ title: '税额', key: 'taxMoney', width: '4%', type: FormTypes.inputNumber, statistics: true, readonly: true}, { title: '税额', key: 'taxMoney', width: '4%', type: FormTypes.normal },
{ title: '价税合计', key: 'taxLastMoney', width: '5%', type: FormTypes.inputNumber, statistics: true }, { title: '价税合计', key: 'taxLastMoney', width: '5%', type: FormTypes.inputNumber, statistics: true },
{ title: '备注', key: 'remark', width: '5%', type: FormTypes.input } { title: '备注', key: 'remark', width: '5%', type: FormTypes.input }
] ]

View File

@@ -235,29 +235,29 @@
{ title: '条码', key: 'barCode', width: '8%', type: FormTypes.popupJsh, kind: 'material', multi: true, { title: '条码', key: 'barCode', width: '8%', type: FormTypes.popupJsh, kind: 'material', multi: true,
validateRules: [{ required: true, message: '${title}不能为空' }] validateRules: [{ required: true, message: '${title}不能为空' }]
}, },
{ title: '名称', key: 'name', width: '6%', type: FormTypes.input, readonly: true }, { title: '名称', key: 'name', width: '6%', type: FormTypes.normal },
{ title: '规格', key: 'standard', width: '5%', type: FormTypes.input, readonly: true }, { title: '规格', key: 'standard', width: '5%', type: FormTypes.normal },
{ title: '型号', key: 'model', width: '5%', type: FormTypes.input, readonly: true }, { title: '型号', key: 'model', width: '5%', type: FormTypes.normal },
{ title: '颜色', key: 'color', width: '5%', type: FormTypes.input, readonly: true }, { title: '颜色', key: 'color', width: '5%', type: FormTypes.normal },
{ title: '扩展信息', key: 'materialOther', width: '5%', type: FormTypes.input, readonly: true }, { title: '扩展信息', key: 'materialOther', width: '5%', type: FormTypes.normal },
{ title: '库存', key: 'stock', width: '5%', type: FormTypes.input, readonly: true }, { title: '库存', key: 'stock', width: '5%', type: FormTypes.normal },
{ title: '单位', key: 'unit', width: '4%', type: FormTypes.input, readonly: true }, { title: '单位', key: 'unit', width: '4%', type: FormTypes.normal },
{ title: '序列号', key: 'snList', width: '12%', type: FormTypes.input, placeholder: '多个序列号请用逗号隔开', { title: '序列号', key: 'snList', width: '12%', type: FormTypes.input, placeholder: '多个序列号请用逗号隔开',
validateRules: [{ pattern: /^\S{1,100}$/, message: '请小于100位字符' }] validateRules: [{ pattern: /^\S{1,100}$/, message: '请小于100位字符' }]
}, },
{ title: '批号', key: 'batchNumber', width: '5%', type: FormTypes.input }, { title: '批号', key: 'batchNumber', width: '5%', type: FormTypes.input },
{ title: '有效期', key: 'expirationDate',width: '7%', type: FormTypes.date }, { title: '有效期', key: 'expirationDate',width: '7%', type: FormTypes.date },
{ title: '多属性', key: 'sku', width: '4%', type: FormTypes.input, readonly: true }, { title: '多属性', key: 'sku', width: '4%', type: FormTypes.normal },
{ title: '原数量', key: 'preNumber', width: '4%', type: FormTypes.input, readonly: true }, { title: '原数量', key: 'preNumber', width: '4%', type: FormTypes.normal },
{ title: '已入库', key: 'finishNumber', width: '4%', type: FormTypes.input, readonly: true }, { title: '已入库', key: 'finishNumber', width: '4%', type: FormTypes.normal },
{ title: '数量', key: 'operNumber', width: '4%', type: FormTypes.inputNumber, statistics: true, { title: '数量', key: 'operNumber', width: '4%', type: FormTypes.inputNumber, statistics: true,
validateRules: [{ required: true, message: '${title}不能为空' }] validateRules: [{ required: true, message: '${title}不能为空' }]
}, },
{ title: '单价', key: 'unitPrice', width: '4%', type: FormTypes.inputNumber}, { title: '单价', key: 'unitPrice', width: '4%', type: FormTypes.inputNumber},
{ title: '含税单价', key: 'taxUnitPrice', width: '5%', type: FormTypes.inputNumber, readonly: true}, { title: '含税单价', key: 'taxUnitPrice', width: '5%', type: FormTypes.normal },
{ title: '金额', key: 'allPrice', width: '5%', type: FormTypes.inputNumber, statistics: true }, { title: '金额', key: 'allPrice', width: '5%', type: FormTypes.inputNumber, statistics: true },
{ title: '税率', key: 'taxRate', width: '3%', type: FormTypes.inputNumber,placeholder: '%'}, { title: '税率', key: 'taxRate', width: '3%', type: FormTypes.inputNumber,placeholder: '%'},
{ title: '税额', key: 'taxMoney', width: '3%', type: FormTypes.inputNumber, statistics: true , readonly: true}, { title: '税额', key: 'taxMoney', width: '3%', type: FormTypes.normal },
{ title: '价税合计', key: 'taxLastMoney', width: '5%', type: FormTypes.inputNumber, statistics: true }, { title: '价税合计', key: 'taxLastMoney', width: '5%', type: FormTypes.inputNumber, statistics: true },
{ title: '备注', key: 'remark', width: '5%', type: FormTypes.input } { title: '备注', key: 'remark', width: '5%', type: FormTypes.input }
] ]

View File

@@ -148,14 +148,14 @@
{ title: '条码', key: 'barCode', width: '8%', type: FormTypes.popupJsh, kind: 'material', multi: true, { title: '条码', key: 'barCode', width: '8%', type: FormTypes.popupJsh, kind: 'material', multi: true,
validateRules: [{ required: true, message: '${title}不能为空' }] validateRules: [{ required: true, message: '${title}不能为空' }]
}, },
{ title: '名称', key: 'name', width: '6%', type: FormTypes.input, readonly: true }, { title: '名称', key: 'name', width: '6%', type: FormTypes.normal },
{ title: '规格', key: 'standard', width: '5%', type: FormTypes.input, readonly: true }, { title: '规格', key: 'standard', width: '5%', type: FormTypes.normal },
{ title: '型号', key: 'model', width: '5%', type: FormTypes.input, readonly: true }, { title: '型号', key: 'model', width: '5%', type: FormTypes.normal },
{ title: '颜色', key: 'color', width: '5%', type: FormTypes.input, readonly: true }, { title: '颜色', key: 'color', width: '5%', type: FormTypes.normal },
{ title: '扩展信息', key: 'materialOther', width: '5%', type: FormTypes.input, readonly: true }, { title: '扩展信息', key: 'materialOther', width: '5%', type: FormTypes.normal },
{ title: '库存', key: 'stock', width: '5%', type: FormTypes.input, readonly: true }, { title: '库存', key: 'stock', width: '5%', type: FormTypes.normal },
{ title: '单位', key: 'unit', width: '4%', type: FormTypes.input, readonly: true }, { title: '单位', key: 'unit', width: '4%', type: FormTypes.normal },
{ title: '多属性', key: 'sku', width: '4%', type: FormTypes.input, readonly: true }, { title: '多属性', key: 'sku', width: '4%', type: FormTypes.normal },
{ title: '数量', key: 'operNumber', width: '5%', type: FormTypes.inputNumber, statistics: true, { title: '数量', key: 'operNumber', width: '5%', type: FormTypes.inputNumber, statistics: true,
validateRules: [{ required: true, message: '${title}不能为空' }] validateRules: [{ required: true, message: '${title}不能为空' }]
}, },

View File

@@ -203,14 +203,14 @@
{ title: '条码', key: 'barCode', width: '12%', type: FormTypes.popupJsh, kind: 'material', multi: true, { title: '条码', key: 'barCode', width: '12%', type: FormTypes.popupJsh, kind: 'material', multi: true,
validateRules: [{ required: true, message: '${title}不能为空' }] validateRules: [{ required: true, message: '${title}不能为空' }]
}, },
{ title: '名称', key: 'name', width: '9%', type: FormTypes.input, readonly: true }, { title: '名称', key: 'name', width: '9%', type: FormTypes.normal },
{ title: '规格', key: 'standard', width: '6%', type: FormTypes.input, readonly: true }, { title: '规格', key: 'standard', width: '6%', type: FormTypes.normal },
{ title: '型号', key: 'model', width: '6%', type: FormTypes.input, readonly: true }, { title: '型号', key: 'model', width: '6%', type: FormTypes.normal },
{ title: '颜色', key: 'color', width: '5%', type: FormTypes.input, readonly: true }, { title: '颜色', key: 'color', width: '5%', type: FormTypes.normal },
{ title: '扩展信息', key: 'materialOther', width: '7%', type: FormTypes.input, readonly: true }, { title: '扩展信息', key: 'materialOther', width: '7%', type: FormTypes.normal },
{ title: '库存', key: 'stock', width: '5%', type: FormTypes.input, readonly: true }, { title: '库存', key: 'stock', width: '5%', type: FormTypes.normal },
{ title: '单位', key: 'unit', width: '4%', type: FormTypes.input, readonly: true }, { title: '单位', key: 'unit', width: '4%', type: FormTypes.normal },
{ title: '多属性', key: 'sku', width: '5%', type: FormTypes.input, readonly: true }, { title: '多属性', key: 'sku', width: '5%', type: FormTypes.normal },
{ title: '数量', key: 'operNumber', width: '5%', type: FormTypes.inputNumber, statistics: true, { title: '数量', key: 'operNumber', width: '5%', type: FormTypes.inputNumber, statistics: true,
validateRules: [{ required: true, message: '${title}不能为空' }] validateRules: [{ required: true, message: '${title}不能为空' }]
}, },

View File

@@ -216,14 +216,14 @@
{ title: '条码', key: 'barCode', width: '12%', type: FormTypes.popupJsh, kind: 'material', multi: true, { title: '条码', key: 'barCode', width: '12%', type: FormTypes.popupJsh, kind: 'material', multi: true,
validateRules: [{ required: true, message: '${title}不能为空' }] validateRules: [{ required: true, message: '${title}不能为空' }]
}, },
{ title: '名称', key: 'name', width: '9%', type: FormTypes.input, readonly: true }, { title: '名称', key: 'name', width: '9%', type: FormTypes.normal },
{ title: '规格', key: 'standard', width: '6%', type: FormTypes.input, readonly: true }, { title: '规格', key: 'standard', width: '6%', type: FormTypes.normal },
{ title: '型号', key: 'model', width: '5%', type: FormTypes.input, readonly: true }, { title: '型号', key: 'model', width: '5%', type: FormTypes.normal },
{ title: '颜色', key: 'color', width: '5%', type: FormTypes.input, readonly: true }, { title: '颜色', key: 'color', width: '5%', type: FormTypes.normal },
{ title: '扩展信息', key: 'materialOther', width: '7%', type: FormTypes.input, readonly: true }, { title: '扩展信息', key: 'materialOther', width: '7%', type: FormTypes.normal },
{ title: '库存', key: 'stock', width: '5%', type: FormTypes.input, readonly: true }, { title: '库存', key: 'stock', width: '5%', type: FormTypes.normal },
{ title: '单位', key: 'unit', width: '4%', type: FormTypes.input, readonly: true }, { title: '单位', key: 'unit', width: '4%', type: FormTypes.normal },
{ title: '多属性', key: 'sku', width: '5%', type: FormTypes.input, readonly: true }, { title: '多属性', key: 'sku', width: '5%', type: FormTypes.normal },
{ title: '数量', key: 'operNumber', width: '5%', type: FormTypes.inputNumber, statistics: true, { title: '数量', key: 'operNumber', width: '5%', type: FormTypes.inputNumber, statistics: true,
validateRules: [{ required: true, message: '${title}不能为空' }] validateRules: [{ required: true, message: '${title}不能为空' }]
}, },

View File

@@ -225,27 +225,27 @@
{ title: '条码', key: 'barCode', width: '8%', type: FormTypes.popupJsh, kind: 'material', multi: true, { title: '条码', key: 'barCode', width: '8%', type: FormTypes.popupJsh, kind: 'material', multi: true,
validateRules: [{ required: true, message: '${title}不能为空' }] validateRules: [{ required: true, message: '${title}不能为空' }]
}, },
{ title: '名称', key: 'name', width: '6%', type: FormTypes.input, readonly: true }, { title: '名称', key: 'name', width: '6%', type: FormTypes.normal },
{ title: '规格', key: 'standard', width: '5%', type: FormTypes.input, readonly: true }, { title: '规格', key: 'standard', width: '5%', type: FormTypes.normal },
{ title: '型号', key: 'model', width: '5%', type: FormTypes.input, readonly: true }, { title: '型号', key: 'model', width: '5%', type: FormTypes.normal },
{ title: '颜色', key: 'color', width: '5%', type: FormTypes.input, readonly: true }, { title: '颜色', key: 'color', width: '5%', type: FormTypes.normal },
{ title: '扩展信息', key: 'materialOther', width: '5%', type: FormTypes.input, readonly: true }, { title: '扩展信息', key: 'materialOther', width: '5%', type: FormTypes.normal },
{ title: '库存', key: 'stock', width: '5%', type: FormTypes.input, readonly: true }, { title: '库存', key: 'stock', width: '5%', type: FormTypes.normal },
{ title: '单位', key: 'unit', width: '4%', type: FormTypes.input, readonly: true }, { title: '单位', key: 'unit', width: '4%', type: FormTypes.normal },
{ title: '序列号', key: 'snList', width: '12%', type: FormTypes.input, placeholder: '多个序列号请用逗号隔开', { title: '序列号', key: 'snList', width: '12%', type: FormTypes.input, placeholder: '多个序列号请用逗号隔开',
validateRules: [{ pattern: /^\S{1,100}$/, message: '请小于100位字符' }] validateRules: [{ pattern: /^\S{1,100}$/, message: '请小于100位字符' }]
}, },
{ title: '批号', key: 'batchNumber', width: '5%', type: FormTypes.input }, { title: '批号', key: 'batchNumber', width: '5%', type: FormTypes.input },
{ title: '有效期', key: 'expirationDate',width: '7%', type: FormTypes.date }, { title: '有效期', key: 'expirationDate',width: '7%', type: FormTypes.date },
{ title: '多属性', key: 'sku', width: '4%', type: FormTypes.input, readonly: true }, { title: '多属性', key: 'sku', width: '4%', type: FormTypes.normal },
{ title: '数量', key: 'operNumber', width: '5%', type: FormTypes.inputNumber, statistics: true, { title: '数量', key: 'operNumber', width: '5%', type: FormTypes.inputNumber, statistics: true,
validateRules: [{ required: true, message: '${title}不能为空' }] validateRules: [{ required: true, message: '${title}不能为空' }]
}, },
{ title: '单价', key: 'unitPrice', width: '5%', type: FormTypes.inputNumber}, { title: '单价', key: 'unitPrice', width: '5%', type: FormTypes.inputNumber},
{ title: '含税单价', key: 'taxUnitPrice', width: '5%', type: FormTypes.inputNumber, readonly: true}, { title: '含税单价', key: 'taxUnitPrice', width: '5%', type: FormTypes.normal },
{ title: '金额', key: 'allPrice', width: '5%', type: FormTypes.inputNumber, statistics: true }, { title: '金额', key: 'allPrice', width: '5%', type: FormTypes.inputNumber, statistics: true },
{ title: '税率', key: 'taxRate', width: '4%', type: FormTypes.inputNumber,placeholder: '%'}, { title: '税率', key: 'taxRate', width: '4%', type: FormTypes.inputNumber,placeholder: '%'},
{ title: '税额', key: 'taxMoney', width: '4%', type: FormTypes.inputNumber, statistics: true, readonly: true}, { title: '税额', key: 'taxMoney', width: '4%', type: FormTypes.normal },
{ title: '价税合计', key: 'taxLastMoney', width: '5%', type: FormTypes.inputNumber, statistics: true }, { title: '价税合计', key: 'taxLastMoney', width: '5%', type: FormTypes.inputNumber, statistics: true },
{ title: '备注', key: 'remark', width: '5%', type: FormTypes.input } { title: '备注', key: 'remark', width: '5%', type: FormTypes.input }
] ]

View File

@@ -153,14 +153,14 @@
{ title: '条码', key: 'barCode', width: '8%', type: FormTypes.popupJsh, kind: 'material', multi: true, { title: '条码', key: 'barCode', width: '8%', type: FormTypes.popupJsh, kind: 'material', multi: true,
validateRules: [{ required: true, message: '${title}不能为空' }] validateRules: [{ required: true, message: '${title}不能为空' }]
}, },
{ title: '名称', key: 'name', width: '6%', type: FormTypes.input, readonly: true }, { title: '名称', key: 'name', width: '6%', type: FormTypes.normal },
{ title: '规格', key: 'standard', width: '5%', type: FormTypes.input, readonly: true }, { title: '规格', key: 'standard', width: '5%', type: FormTypes.normal },
{ title: '型号', key: 'model', width: '5%', type: FormTypes.input, readonly: true }, { title: '型号', key: 'model', width: '5%', type: FormTypes.normal },
{ title: '颜色', key: 'color', width: '5%', type: FormTypes.input, readonly: true }, { title: '颜色', key: 'color', width: '5%', type: FormTypes.normal },
{ title: '扩展信息', key: 'materialOther', width: '5%', type: FormTypes.input, readonly: true }, { title: '扩展信息', key: 'materialOther', width: '5%', type: FormTypes.normal },
{ title: '库存', key: 'stock', width: '5%', type: FormTypes.input, readonly: true }, { title: '库存', key: 'stock', width: '5%', type: FormTypes.normal },
{ title: '单位', key: 'unit', width: '4%', type: FormTypes.input, readonly: true }, { title: '单位', key: 'unit', width: '4%', type: FormTypes.normal },
{ title: '多属性', key: 'sku', width: '4%', type: FormTypes.input, readonly: true }, { title: '多属性', key: 'sku', width: '4%', type: FormTypes.normal },
{ title: '数量', key: 'operNumber', width: '5%', type: FormTypes.inputNumber, statistics: true, { title: '数量', key: 'operNumber', width: '5%', type: FormTypes.inputNumber, statistics: true,
validateRules: [{ required: true, message: '${title}不能为空' }] validateRules: [{ required: true, message: '${title}不能为空' }]
}, },

View File

@@ -241,27 +241,27 @@
{ title: '条码', key: 'barCode', width: '8%', type: FormTypes.popupJsh, kind: 'material', multi: true, { title: '条码', key: 'barCode', width: '8%', type: FormTypes.popupJsh, kind: 'material', multi: true,
validateRules: [{ required: true, message: '${title}不能为空' }] validateRules: [{ required: true, message: '${title}不能为空' }]
}, },
{ title: '名称', key: 'name', width: '6%', type: FormTypes.input, readonly: true }, { title: '名称', key: 'name', width: '6%', type: FormTypes.normal },
{ title: '规格', key: 'standard', width: '5%', type: FormTypes.input, readonly: true }, { title: '规格', key: 'standard', width: '5%', type: FormTypes.normal },
{ title: '型号', key: 'model', width: '5%', type: FormTypes.input, readonly: true }, { title: '型号', key: 'model', width: '5%', type: FormTypes.normal },
{ title: '颜色', key: 'color', width: '5%', type: FormTypes.input, readonly: true }, { title: '颜色', key: 'color', width: '5%', type: FormTypes.normal },
{ title: '扩展信息', key: 'materialOther', width: '5%', type: FormTypes.input, readonly: true }, { title: '扩展信息', key: 'materialOther', width: '5%', type: FormTypes.normal },
{ title: '库存', key: 'stock', width: '5%', type: FormTypes.input, readonly: true }, { title: '库存', key: 'stock', width: '5%', type: FormTypes.normal },
{ title: '单位', key: 'unit', width: '4%', type: FormTypes.input, readonly: true }, { title: '单位', key: 'unit', width: '4%', type: FormTypes.normal },
{ title: '序列号', key: 'snList', width: '12%', type: FormTypes.popupJsh, kind: 'sn', multi: true }, { title: '序列号', key: 'snList', width: '12%', type: FormTypes.popupJsh, kind: 'sn', multi: true },
{ title: '批号', key: 'batchNumber', width: '7%', type: FormTypes.popupJsh, kind: 'batch', multi: false }, { title: '批号', key: 'batchNumber', width: '7%', type: FormTypes.popupJsh, kind: 'batch', multi: false },
{ title: '有效期', key: 'expirationDate',width: '5%', type: FormTypes.input, readonly: true }, { title: '有效期', key: 'expirationDate',width: '5%', type: FormTypes.normal },
{ title: '多属性', key: 'sku', width: '4%', type: FormTypes.input, readonly: true }, { title: '多属性', key: 'sku', width: '4%', type: FormTypes.normal },
{ title: '原数量', key: 'preNumber', width: '4%', type: FormTypes.input, readonly: true }, { title: '原数量', key: 'preNumber', width: '4%', type: FormTypes.normal },
{ title: '已入库', key: 'finishNumber', width: '4%', type: FormTypes.input, readonly: true }, { title: '已入库', key: 'finishNumber', width: '4%', type: FormTypes.normal },
{ title: '数量', key: 'operNumber', width: '4%', type: FormTypes.inputNumber, statistics: true, { title: '数量', key: 'operNumber', width: '4%', type: FormTypes.inputNumber, statistics: true,
validateRules: [{ required: true, message: '${title}不能为空' }] validateRules: [{ required: true, message: '${title}不能为空' }]
}, },
{ title: '单价', key: 'unitPrice', width: '4%', type: FormTypes.inputNumber}, { title: '单价', key: 'unitPrice', width: '4%', type: FormTypes.inputNumber},
{ title: '含税单价', key: 'taxUnitPrice', width: '5%', type: FormTypes.inputNumber, readonly: true}, { title: '含税单价', key: 'taxUnitPrice', width: '5%', type: FormTypes.normal },
{ title: '金额', key: 'allPrice', width: '5%', type: FormTypes.inputNumber, statistics: true }, { title: '金额', key: 'allPrice', width: '5%', type: FormTypes.inputNumber, statistics: true },
{ title: '税率', key: 'taxRate', width: '3%', type: FormTypes.inputNumber,placeholder: '%'}, { title: '税率', key: 'taxRate', width: '3%', type: FormTypes.inputNumber,placeholder: '%'},
{ title: '税额', key: 'taxMoney', width: '3%', type: FormTypes.inputNumber, statistics: true, readonly: true}, { title: '税额', key: 'taxMoney', width: '3%', type: FormTypes.normal },
{ title: '价税合计', key: 'taxLastMoney', width: '5%', type: FormTypes.inputNumber, statistics: true }, { title: '价税合计', key: 'taxLastMoney', width: '5%', type: FormTypes.inputNumber, statistics: true },
{ title: '备注', key: 'remark', width: '5%', type: FormTypes.input } { title: '备注', key: 'remark', width: '5%', type: FormTypes.input }
] ]

View File

@@ -6657,6 +6657,11 @@ javascript-stringify@^1.6.0:
resolved "https://registry.npmjs.org/javascript-stringify/-/javascript-stringify-1.6.0.tgz#142d111f3a6e3dae8f4a9afd77d45855b5a9cce3" resolved "https://registry.npmjs.org/javascript-stringify/-/javascript-stringify-1.6.0.tgz#142d111f3a6e3dae8f4a9afd77d45855b5a9cce3"
integrity sha1-FC0RHzpuPa6PSpr9d9RYVbWpzOM= integrity sha1-FC0RHzpuPa6PSpr9d9RYVbWpzOM=
jquery@^1.12.4:
version "1.12.4"
resolved "https://registry.yarnpkg.com/jquery/-/jquery-1.12.4.tgz#01e1dfba290fe73deba77ceeacb0f9ba2fec9e0c"
integrity sha1-AeHfuikP5z3rp3zurLD5ui/sngw=
js-base64@^2.1.9: js-base64@^2.1.9:
version "2.5.2" version "2.5.2"
resolved "https://registry.npmjs.org/js-base64/-/js-base64-2.5.2.tgz#313b6274dda718f714d00b3330bbae6e38e90209" resolved "https://registry.npmjs.org/js-base64/-/js-base64-2.5.2.tgz#313b6274dda718f714d00b3330bbae6e38e90209"