qsh 4 weeks ago
parent ca95f6dcf3
commit 4b0fa9fd7f
  1. 5
      src/api/clue/sign.js
  2. 78
      src/views/Clue/Order/Comp/DialogOrderProduct.vue
  3. 26
      src/views/Clue/Order/Comp/MallOrderList.vue

@ -61,3 +61,8 @@ export const addOrderProduct = (data) => {
export const removeOrderProduct = (id) => { export const removeOrderProduct = (id) => {
return request.delete({ url: '/admin-api/crm/sign-prodcut/delete?id=' + id }) return request.delete({ url: '/admin-api/crm/sign-prodcut/delete?id=' + id })
} }
// 查询订单商品
export const getOrderProductList = (params) => {
return request.get({ url: '/admin-api/crm/sign-prodcut/list', params })
}

@ -3,8 +3,8 @@
<el-table :data="orderProductList" border stripe> <el-table :data="orderProductList" border stripe>
<el-table-column prop="productName" label="成交产品" /> <el-table-column prop="productName" label="成交产品" />
<el-table-column prop="specsName" label="产品规格" /> <el-table-column prop="specsName" label="产品规格" />
<el-table-column prop="signNum" label="成交数量" /> <el-table-column prop="signNum" label="成交数量" width="100px" />
<el-table-column prop="remark" label="成交备注" /> <el-table-column prop="remark" label="产品备注" />
<el-table-column label="生产状态" width="160px"> <el-table-column label="生产状态" width="160px">
<template #default="scope"> <template #default="scope">
<el-switch <el-switch
@ -27,7 +27,7 @@
</el-tag> </el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="发货备注" width="100px"> <el-table-column label="发货备注">
<template #default="scope"> <template #default="scope">
<el-popover <el-popover
placement="top" placement="top"
@ -67,56 +67,62 @@
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<DialogDelivery ref="deliveryDialog" @success="getList" />
</Dialog> </Dialog>
</template> </template>
<script setup> <script setup>
import * as OrderApi from '@/api/clue/sign' import * as SignApi from '@/api/clue/sign'
import { checkPermi } from '@/utils/permission' import { checkPermi } from '@/utils/permission'
import DialogDelivery from './DialogDelivery.vue'
const show = ref(false) const show = ref(false)
const orderProductList = ref([]) const orderProductList = ref([])
function open(orderId) { const orderId = ref(null)
const message = useMessage() //
function open(signId) {
try { try {
show.value = true show.value = true
getFields() orderId.value = signId
OrderApi.getSign(orderId).then((data) => { getList()
orderProductList.value = data.signProducts || []
})
} catch (error) { } catch (error) {
console.log(error) console.log(error)
} }
} }
const orderSchema = ref([]) function getList() {
function getFields() { try {
getOrderFieldList().then((data) => { SignApi.getOrderProductList({ signId: orderId.value }).then((data) => {
const list = useCrudSchemas(data).allSchemas.detailSchema orderProductList.value = data || []
const arr = [] })
list.forEach((it) => { } catch (error) {
if (it.label.includes('日期')) { console.log(error)
it.dateFormat = 'YYYY-MM-DD' }
} }
if (it.field == 'receivedMoney') { async function handleChangeProdoce(row) {
checkPermi(['clue:order:return-list']) && arr.push(it) try {
} else { //
arr.push(it) await message.confirm('确认要修改生产状态吗?')
} //
await SignApi.updateProduceStatus({
signId: row.signId,
id: row.id,
isProduced: row.isProduced
}) })
if (arr.filter((item) => item.span != 2).length % 2 != 0) { message.success('修改成功')
arr.push({}) //
} // getTableList()
orderSchema.value = [ } catch {
...arr, //
{ row.isProduced = !row.isProduced
field: 'remark', }
label: '备注', }
span: 2,
isEditor: true const deliveryDialog = ref()
} function handleDelivery(row) {
] deliveryDialog.value.open(row)
})
} }
defineExpose({ defineExpose({

@ -133,16 +133,6 @@
</el-table-column> </el-table-column>
<el-table-column label="操作" width="120px" fixed="right"> <el-table-column label="操作" width="120px" fixed="right">
<template #default="scope"> <template #default="scope">
<el-button
type="primary"
class="mr-10px"
link
style="padding: 0; margin-left: 0"
v-hasPermi="['clue:order:detail']"
@click="handleDetail(scope.row)"
>
详情
</el-button>
<el-button <el-button
type="primary" type="primary"
class="mr-10px" class="mr-10px"
@ -158,11 +148,9 @@
</SSTable> </SSTable>
<!-- 详情 --> <!-- 详情 -->
<DialogOrder ref="orderDetailDialog" />
<DialogFeeback ref="feedbackDialog" /> <DialogFeeback ref="feedbackDialog" />
<DialogAfterSale ref="afterSaleDialog" /> <DialogAfterSale ref="afterSaleDialog" />
<DialogExtraFee ref="extraFeeDialog" /> <DialogExtraFee ref="extraFeeDialog" />
<DialogDelivery ref="deliveryDialog" @success="getTableList" />
<DialogAddProduct ref="addProductDialog" @success="getTableList" /> <DialogAddProduct ref="addProductDialog" @success="getTableList" />
<DialogOrderProduct ref="orderProductDialog" /> <DialogOrderProduct ref="orderProductDialog" />
</div> </div>
@ -173,11 +161,9 @@ import { getSimpleFieldList } from '@/api/clue/orderField'
import * as SignApi from '@/api/clue/sign' import * as SignApi from '@/api/clue/sign'
import { getSimpleUserList as getUserOption, getAllUserList } from '@/api/system/user' import { getSimpleUserList as getUserOption, getAllUserList } from '@/api/system/user'
import DialogOrder from './DialogOrder.vue'
import DialogFeeback from './DialogFeeback.vue' import DialogFeeback from './DialogFeeback.vue'
import DialogAfterSale from './DialogAfterSale.vue' import DialogAfterSale from './DialogAfterSale.vue'
import DialogExtraFee from './DialogExtraPay.vue' import DialogExtraFee from './DialogExtraPay.vue'
import DialogDelivery from './DialogDelivery.vue'
import DialogAddProduct from './DialogAddProduct.vue' import DialogAddProduct from './DialogAddProduct.vue'
import DialogOrderProduct from './DialogOrderProduct.vue' import DialogOrderProduct from './DialogOrderProduct.vue'
@ -197,7 +183,6 @@ const message = useMessage() // 消息弹窗
const allSchemas = ref({}) const allSchemas = ref({})
const orderDetailDialog = ref()
const searchRef = ref() const searchRef = ref()
const searchForm = ref({ const searchForm = ref({
@ -270,11 +255,6 @@ function getCheckedColumns(list) {
list && list.length ? list : allSchemas.value.tableColumns.filter((it) => it.paramLevel == 1) list && list.length ? list : allSchemas.value.tableColumns.filter((it) => it.paramLevel == 1)
} }
//
function handleDetail(row) {
orderDetailDialog.value.open(row.clueId, row.signId)
}
const feedbackDialog = ref() const feedbackDialog = ref()
const afterSaleDialog = ref() const afterSaleDialog = ref()
// //
@ -312,10 +292,6 @@ async function getOptions() {
allUserOptions.value = await getAllUserList() allUserOptions.value = await getAllUserList()
getCurdSchemas() getCurdSchemas()
} }
const deliveryDialog = ref()
// function handleDelivery(row) {
// deliveryDialog.value.open(row)
// }
const batchIds = ref([]) const batchIds = ref([])
function handleSelectionChange(val) { function handleSelectionChange(val) {
@ -375,7 +351,7 @@ function handleBatchUpdateInstall() {
const orderProductDialog = ref() const orderProductDialog = ref()
function openProduct(row) { function openProduct(row) {
orderProductDialog.value.open(row.orderId) orderProductDialog.value.open(row.signId)
} }
// async function handleRemoveProduct(row) { // async function handleRemoveProduct(row) {

Loading…
Cancel
Save