Commit 8d428e7a by huangqy

1111

parent cf5dedb3
...@@ -25,7 +25,7 @@ ...@@ -25,7 +25,7 @@
<el-table-column label="操作" width="200" align="center"> <el-table-column label="操作" width="200" align="center">
<template #default="scope"> <template #default="scope">
<el-button type="success" size="small" @click="activateBill(scope.row)">激活</el-button> <el-button type="success" size="small" @click="activateBill(scope.row)">激活</el-button>
<el-button type="primary" size="small" @click="reportBill(scope.row)">上报</el-button> <el-button type="primary" size="small" :disabled="scope.row.activeState !== 2" @click="reportBill(scope.row)">上报</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
...@@ -71,7 +71,18 @@ ...@@ -71,7 +71,18 @@
<el-table-column prop="modelName" label="号型名称" align="center"/> <el-table-column prop="modelName" label="号型名称" align="center"/>
<el-table-column prop="planAmount" label="计划数量" align="center"/> <el-table-column prop="planAmount" label="计划数量" align="center"/>
<el-table-column prop="realAmount" label="实际数量" align="center"/> <el-table-column prop="realAmount" label="实际数量" align="center"/>
<el-table-column prop="writeAmount" label="手动修改数量" align="center"/> <el-table-column prop="writeAmount" label="手动修改数量" align="center">
<template #default="scope">
<div class="editable-cell">
<div v-if="editable" class="editable-cell-input-wrapper">
<el-input-number ref='inputs' size="small" style="height: 30px" :value="writeAmount" @change="handleChange" @blur="check" :max="scope.row.planAmount - scope.row.realAmount"/>
</div>
<div v-else class="editable-cell-text-wrapper" @dblclick="edit(scope.row)">
<span>{{ scope.row.writeAmount }}</span>
</div>
</div>
</template>
</el-table-column>
</el-table> </el-table>
<el-pagination <el-pagination
style="left: 36%;margin-top: 6px;" style="left: 36%;margin-top: 6px;"
...@@ -91,7 +102,7 @@ ...@@ -91,7 +102,7 @@
<script> <script>
import { defineComponent, ref, reactive, toRefs, getCurrentInstance } from 'vue' import { defineComponent, ref, reactive, toRefs, getCurrentInstance } from 'vue'
import { ElMessage } from 'element-plus' import { ElMessage } from 'element-plus'
import { postAction } from '@/api/manage' import { postAction, getAction } from '@/api/manage'
export default defineComponent({ export default defineComponent({
setup() { setup() {
const billList = ref([]) const billList = ref([])
...@@ -99,6 +110,9 @@ export default defineComponent({ ...@@ -99,6 +110,9 @@ export default defineComponent({
const modelList = ref([]) const modelList = ref([])
const selectBill = ref({}) const selectBill = ref({})
const selectGoods = ref({}) const selectGoods = ref({})
const editable = ref(false)
const writeAmount = ref()
const itemForm = ref({})
const { proxy } = getCurrentInstance() const { proxy } = getCurrentInstance()
const searchData = ref({ const searchData = ref({
pageNo: 1, pageNo: 1,
...@@ -119,7 +133,9 @@ export default defineComponent({ ...@@ -119,7 +133,9 @@ export default defineComponent({
url: { url: {
getBillPage: '/bill/getBillPage', getBillPage: '/bill/getBillPage',
getGoodsPage: '/bill/getGoodsPage', getGoodsPage: '/bill/getGoodsPage',
getModelPage: '/bill/getModelPage' getModelPage: '/bill/getModelPage',
updateItem: '/bill/updateItem',
reportBill: '/platform/reportInBill'
}, },
storeInfo: {}, storeInfo: {},
storeCode: '' storeCode: ''
...@@ -193,6 +209,40 @@ export default defineComponent({ ...@@ -193,6 +209,40 @@ export default defineComponent({
loadModel() loadModel()
} }
function edit(row) {
proxy.editable = true;
itemForm.value = row
proxy.$nextTick((x) => {
if (proxy.$refs.inputs) {
proxy.$refs.inputs.focus();
}
})
}
function handleChange(e) {
writeAmount.value = e
itemForm.value.writeAmount = e
}
function check() {
proxy.editable = false;
itemForm.value.bizBillNo = selectBill.value.bizBillNo
itemForm.value.storeCode = searchData.value.storeCode
postAction(state.url.updateItem, itemForm.value).then(res => {
if (res.code !== 99200) return ElMessage.error(res.message);
ElMessage.success(res.message)
loadData()
})
}
function reportBill(row) {
getAction(state.url.reportBill, {storeCode: searchData.value.storeCode, billNo: row.billNo}).then(res => {
if (res.code !== 99200) return ElMessage.error(res.message);
ElMessage.success(res.message)
loadData()
})
}
loadData() loadData()
return { return {
...toRefs(state), ...toRefs(state),
...@@ -207,12 +257,30 @@ export default defineComponent({ ...@@ -207,12 +257,30 @@ export default defineComponent({
total, total,
total1, total1,
total2, total2,
editable,
writeAmount,
itemForm,
handleCurrentChange, handleCurrentChange,
handleCurrentChange1, handleCurrentChange1,
handleCurrentChange2, handleCurrentChange2,
billClick, billClick,
goodsClick goodsClick,
handleChange,
edit,
check,
reportBill
} }
}, },
}) })
</script> </script>
\ No newline at end of file
<style scoped>
.editable-cell {
position: relative;
}
.editable-cell-text-wrapper {
padding: 4px 5px 5px 5px;
cursor: pointer;
}
</style>
\ No newline at end of file
...@@ -25,7 +25,7 @@ ...@@ -25,7 +25,7 @@
<el-table-column label="操作" width="200" align="center"> <el-table-column label="操作" width="200" align="center">
<template #default="scope"> <template #default="scope">
<el-button type="success" size="small" @click="activateBill(scope.row)">激活</el-button> <el-button type="success" size="small" @click="activateBill(scope.row)">激活</el-button>
<el-button type="primary" size="small" @click="reportBill(scope.row)">上报</el-button> <el-button type="primary" size="small" :disabled="scope.row.activeState !== 2" @click="reportBill(scope.row)">上报</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
...@@ -71,7 +71,18 @@ ...@@ -71,7 +71,18 @@
<el-table-column prop="modelName" label="号型名称" align="center"/> <el-table-column prop="modelName" label="号型名称" align="center"/>
<el-table-column prop="planAmount" label="计划数量" align="center"/> <el-table-column prop="planAmount" label="计划数量" align="center"/>
<el-table-column prop="realAmount" label="实际数量" align="center"/> <el-table-column prop="realAmount" label="实际数量" align="center"/>
<el-table-column prop="writeAmount" label="手动修改数量" align="center"/> <el-table-column prop="writeAmount" label="手动修改数量" align="center">
<template #default="scope">
<div class="editable-cell">
<div v-if="editable" class="editable-cell-input-wrapper">
<el-input-number ref='inputs' size="small" style="height: 30px" :value="writeAmount" @change="handleChange" @blur="check" :max="scope.row.planAmount - scope.row.realAmount"/>
</div>
<div v-else class="editable-cell-text-wrapper" @dblclick="edit(scope.row)">
<span>{{ scope.row.writeAmount }}</span>
</div>
</div>
</template>
</el-table-column>
</el-table> </el-table>
<el-pagination <el-pagination
style="left: 36%;margin-top: 6px;" style="left: 36%;margin-top: 6px;"
...@@ -99,6 +110,9 @@ export default defineComponent({ ...@@ -99,6 +110,9 @@ export default defineComponent({
const modelList = ref([]) const modelList = ref([])
const selectBill = ref({}) const selectBill = ref({})
const selectGoods = ref({}) const selectGoods = ref({})
const editable = ref(false)
const writeAmount = ref()
const itemForm = ref({})
const { proxy } = getCurrentInstance() const { proxy } = getCurrentInstance()
const searchData = ref({ const searchData = ref({
pageNo: 1, pageNo: 1,
...@@ -119,7 +133,9 @@ export default defineComponent({ ...@@ -119,7 +133,9 @@ export default defineComponent({
url: { url: {
getBillPage: '/bill/getBillPage', getBillPage: '/bill/getBillPage',
getGoodsPage: '/bill/getGoodsPage', getGoodsPage: '/bill/getGoodsPage',
getModelPage: '/bill/getModelPage' getModelPage: '/bill/getModelPage',
updateItem: '/bill/updateItem',
reportBill: '/platform/reportOutBill'
}, },
storeInfo: {}, storeInfo: {},
storeCode: '' storeCode: ''
...@@ -193,6 +209,40 @@ export default defineComponent({ ...@@ -193,6 +209,40 @@ export default defineComponent({
loadModel() loadModel()
} }
function edit(row) {
proxy.editable = true;
itemForm.value = row
proxy.$nextTick((x) => {
if (proxy.$refs.inputs) {
proxy.$refs.inputs.focus();
}
})
}
function handleChange(e) {
writeAmount.value = e
itemForm.value.writeAmount = e
}
function check() {
proxy.editable = false;
itemForm.value.bizBillNo = selectBill.value.bizBillNo
itemForm.value.storeCode = searchData.value.storeCode
postAction(state.url.updateItem, itemForm.value).then(res => {
if (res.code !== 99200) return ElMessage.error(res.message);
ElMessage.success(res.message)
loadData()
})
}
function reportBill(row) {
getAction(state.url.reportBill, {storeCode: searchData.value.storeCode, billNo: row.billNo}).then(res => {
if (res.code !== 99200) return ElMessage.error(res.message);
ElMessage.success(res.message)
loadData()
})
}
loadData() loadData()
return { return {
...toRefs(state), ...toRefs(state),
...@@ -207,12 +257,30 @@ export default defineComponent({ ...@@ -207,12 +257,30 @@ export default defineComponent({
total, total,
total1, total1,
total2, total2,
editable,
writeAmount,
itemForm,
handleCurrentChange, handleCurrentChange,
handleCurrentChange1, handleCurrentChange1,
handleCurrentChange2, handleCurrentChange2,
billClick, billClick,
goodsClick goodsClick,
handleChange,
edit,
check,
reportBill
} }
}, },
}) })
</script> </script>
\ No newline at end of file
<style scoped>
.editable-cell {
position: relative;
}
.editable-cell-text-wrapper {
padding: 4px 5px 5px 5px;
cursor: pointer;
}
</style>
\ No newline at end of file
...@@ -68,6 +68,7 @@ export default defineComponent({ ...@@ -68,6 +68,7 @@ export default defineComponent({
const searchData = ref({ const searchData = ref({
pageNo: 1, pageNo: 1,
pageSize: 10, pageSize: 10,
state: 'IN',
startTime: parseTime(new Date(new Date().setHours(0, 0, 0, 0))), startTime: parseTime(new Date(new Date().setHours(0, 0, 0, 0))),
endTime: parseTime(new Date()) endTime: parseTime(new Date())
}) })
...@@ -112,7 +113,6 @@ export default defineComponent({ ...@@ -112,7 +113,6 @@ export default defineComponent({
const loadData = () => { const loadData = () => {
if (sessionStorage.getItem('storeInfo')) { if (sessionStorage.getItem('storeInfo')) {
let config = JSON.parse(sessionStorage.getItem('storeInfo')) let config = JSON.parse(sessionStorage.getItem('storeInfo'))
searchData.value.state = 'IN'
searchData.value.storeCode = config.storeCode searchData.value.storeCode = config.storeCode
postAction('http://' + config.serverIp + ':' + config.serverPort + state.url.getGoodsRecord, searchData.value).then(res => { postAction('http://' + config.serverIp + ':' + config.serverPort + state.url.getGoodsRecord, searchData.value).then(res => {
if (res.code !== 99200) return ElMessage.error(res.message); if (res.code !== 99200) return ElMessage.error(res.message);
......
...@@ -91,16 +91,20 @@ export default defineComponent({ ...@@ -91,16 +91,20 @@ export default defineComponent({
} }
const loadData = () => { const loadData = (e) => {
if (sessionStorage.getItem('storeInfo')) { if (sessionStorage.getItem('storeInfo')) {
searchData.value.storeCode = JSON.parse(sessionStorage.getItem('storeInfo')).storeCode searchData.value.storeCode = JSON.parse(sessionStorage.getItem('storeInfo')).storeCode
postAction(state.url.getBindPage, searchData.value).then(res => { postAction(state.url.getBindPage, searchData.value).then(res => {
if (res.code !== 99200) return ElMessage.error(res.message); if (res.code !== 99200) return ElMessage.error(res.message);
bindList.value = res.data.records bindList.value = res.data.records
total.value = res.data.totalRows - 0 total.value = res.data.totalRows - 0
if (res.data.records.length > 0) { if(e) {
formData.value.stationId = res.data.records[0].stationId
formData.value.id = res.data.records[0].id } else {
if (res.data.records.length > 0) {
formData.value.stationId = res.data.records[0].stationId
formData.value.id = res.data.records[0].id
}
} }
}) })
} }
...@@ -155,7 +159,7 @@ export default defineComponent({ ...@@ -155,7 +159,7 @@ export default defineComponent({
postAction(state.url.updateBind, formData.value).then(res => { postAction(state.url.updateBind, formData.value).then(res => {
if (res.code !== 99200) return ElMessage.error(res.message); if (res.code !== 99200) return ElMessage.error(res.message);
ElMessage.success(res.message) ElMessage.success(res.message)
loadData() loadData(1)
}) })
} }
...@@ -173,7 +177,7 @@ export default defineComponent({ ...@@ -173,7 +177,7 @@ export default defineComponent({
postAction(state.url.updateBind, formData.value).then(res => { postAction(state.url.updateBind, formData.value).then(res => {
if (res.code !== 99200) return ElMessage.error(res.message); if (res.code !== 99200) return ElMessage.error(res.message);
ElMessage.success(res.message) ElMessage.success(res.message)
loadData() loadData(1)
}) })
} }
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论