style(work): 格式化代码样式

This commit is contained in:
lonewolfyx 2026-02-05 15:13:59 +08:00
parent 9b05c19b76
commit 9719cdf579
4 changed files with 591 additions and 589 deletions

View File

@ -1,70 +1,70 @@
<template> <template>
<view class="container"> <view class="container">
<view class="example"> <view class="example">
<uni-forms ref="baseForm" :modelValue="baseFormData" label-width="20vw"> <uni-forms ref="baseForm" :modelValue="baseFormData" label-width="20vw">
<uni-forms-item label="支付方式"> <uni-forms-item label="支付方式">
<uni-data-select <uni-data-select
v-model="paymentValue" v-model="paymentValue"
:localdata="paymentOptions" :localdata="paymentOptions"
@change="filterContracts" @change="filterContracts"
></uni-data-select> ></uni-data-select>
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="生产单位"> <uni-forms-item label="生产单位">
<uni-data-select <uni-data-select
v-model="companyValue" v-model="companyValue"
:localdata="companyOptions" :localdata="companyOptions"
@change="filterContracts" @change="filterContracts"
></uni-data-select> ></uni-data-select>
</uni-forms-item> </uni-forms-item>
</uni-forms> </uni-forms>
</view> </view>
<view v-if="filteredContracts.length === 0" class="no-data"> <view v-if="filteredContracts.length === 0" class="no-data">
<text>暂无匹配的合同数据</text> <text>暂无匹配的合同数据</text>
</view> </view>
<view v-else> <view v-else>
<uni-card <uni-card
v-for="(contract, index) in filteredContracts" v-for="(contract, index) in filteredContracts"
:key="contract.saleid" :key="contract.saleid"
:title="contract.usernames" :class="index % 2 === 0 ? 'card-even' : 'card-odd'"
@click="gotoDetail(contract)" :title="contract.usernames"
:class="index % 2 === 0 ? 'card-even' : 'card-odd'" @click="gotoDetail(contract)"
> >
<uni-row class="demo-uni-row"> <uni-row class="demo-uni-row">
<uni-col :span="12"> <uni-col :span="12">
<view class="demo-uni-col dark">生产单位: {{ contract.companyName }}</view> <view class="demo-uni-col dark">生产单位: {{ contract.companyName }}</view>
</uni-col> </uni-col>
<uni-col :span="12"> <uni-col :span="12">
<view class="demo-uni-col light">合同编号: {{ contract.contractcode }}</view> <view class="demo-uni-col light">合同编号: {{ contract.contractcode }}</view>
</uni-col> </uni-col>
</uni-row> </uni-row>
<uni-row class="demo-uni-row"> <uni-row class="demo-uni-row">
<uni-col :span="12"> <uni-col :span="12">
<view class="demo-uni-col dark">制单日期: {{ formatDate(contract.adddate) }}</view> <view class="demo-uni-col dark">制单日期: {{ formatDate(contract.adddate) }}</view>
</uni-col> </uni-col>
<uni-col :span="12"> <uni-col :span="12">
<view class="demo-uni-col light">订单金额: {{ contract.contractmoney.toFixed(2) }}</view> <view class="demo-uni-col light">订单金额: {{ contract.contractmoney.toFixed(2) }}</view>
</uni-col> </uni-col>
</uni-row> </uni-row>
<uni-row class="demo-uni-row"> <uni-row class="demo-uni-row">
<uni-col :span="12"> <uni-col :span="12">
<view class="demo-uni-col dark">状态: {{ contract.stateText }}</view> <view class="demo-uni-col dark">状态: {{ contract.stateText }}</view>
</uni-col> </uni-col>
<uni-col :span="12"> <uni-col :span="12">
<view class="demo-uni-col light">区域: {{ contract.areaName }}</view> <view class="demo-uni-col light">区域: {{ contract.areaName }}</view>
</uni-col> </uni-col>
</uni-row> </uni-row>
</uni-card> </uni-card>
</view> </view>
</view> </view>
</template> </template>
<script setup> <script setup>
import { ref, reactive, onMounted, computed,getCurrentInstance } from "vue" import {computed, getCurrentInstance, onMounted, ref} from "vue"
import { contractData } from "./data.js" // import {contractData} from "./data.js" //
const { proxy } = getCurrentInstance() const {proxy} = getCurrentInstance()
// //
const baseFormData = ref({}) const baseFormData = ref({})
const paymentValue = ref(0) const paymentValue = ref(0)
@ -72,15 +72,15 @@ const companyValue = ref(0)
// //
const paymentOptions = ref([ const paymentOptions = ref([
{ value: 0, text: "全部支付方式" }, {value: 0, text: "全部支付方式"},
{ value: 1, text: "账期支付" }, {value: 1, text: "账期支付"},
{ value: 2, text: "预付款" } {value: 2, text: "预付款"}
]) ])
const companyOptions = ref([ const companyOptions = ref([
{ value: 0, text: "全部生产单位" }, {value: 0, text: "全部生产单位"},
{ value: 1, text: "浙江大冢制药有限公司" }, {value: 1, text: "浙江大冢制药有限公司"},
{ value: 2, text: "广东大冢制药有限公司" } {value: 2, text: "广东大冢制药有限公司"}
]) ])
// //
@ -88,106 +88,106 @@ const contracts = ref([])
// //
const filteredContracts = computed(() => { const filteredContracts = computed(() => {
let result = contracts.value let result = contracts.value
// //
if (companyValue.value === 1) { if (companyValue.value === 1) {
result = result.filter(contract => contract.companyName.includes('浙江')) result = result.filter(contract => contract.companyName.includes('浙江'))
} else if (companyValue.value === 2) { } else if (companyValue.value === 2) {
result = result.filter(contract => contract.companyName.includes('广东')) result = result.filter(contract => contract.companyName.includes('广东'))
} }
// //
return result return result
}) })
// //
onMounted(() => { onMounted(() => {
contracts.value = contractData.rows contracts.value = contractData.rows
}) })
// //
function formatDate(dateString) { function formatDate(dateString) {
if (!dateString) return '未知日期' if (!dateString) return '未知日期'
return dateString.split(' ')[0] return dateString.split(' ')[0]
} }
// //
function filterContracts(e) { function filterContracts(e) {
console.log("筛选条件变化:", e) console.log("筛选条件变化:", e)
// //
} }
// //
function gotoDetail(contract) { function gotoDetail(contract) {
console.log("查看合同详情:", contract) console.log("查看合同详情:", contract)
// proxy.$tab.navigateTo('/pages/work/yonghu/detail') // proxy.$tab.navigateTo('/pages/work/yonghu/detail')
// proxy.$tab.navigateTo(`/pages/work/yonghu/detail?saleid=${contract.saleid}`) // proxy.$tab.navigateTo(`/pages/work/yonghu/detail?saleid=${contract.saleid}`)
proxy.$tab.navigateTo('/pages/work/BusinessApproval/OrderDetail') proxy.$tab.navigateTo('/pages/work/BusinessApproval/OrderDetail')
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.container { .container {
padding: 10px; padding: 10px;
background-color: #f5f7fa; background-color: #f5f7fa;
min-height: 100vh; min-height: 100vh;
} }
.example { .example {
padding: 10px; padding: 10px;
background: #fff; background: #fff;
border-radius: 8px; border-radius: 8px;
margin-bottom: 15px; margin-bottom: 15px;
box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05); box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
} }
:deep(.uni-section .uni-section-header) { :deep(.uni-section .uni-section-header) {
padding: 0; padding: 0;
} }
:deep(.uni-card) { :deep(.uni-card) {
padding: 0 !important; padding: 0 !important;
margin: 10px 0 !important; margin: 10px 0 !important;
border-radius: 8px; border-radius: 8px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08); box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
} }
:deep(.uni-card__content) { :deep(.uni-card__content) {
padding: 12px !important; padding: 12px !important;
} }
.demo-uni-row { .demo-uni-row {
padding: 5px 0; padding: 5px 0;
font-size: 14px; font-size: 14px;
} }
.demo-uni-col { .demo-uni-col {
padding: 2px 0; padding: 2px 0;
&.dark { &.dark {
color: #333; color: #333;
font-weight: 500; font-weight: 500;
} }
&.light { &.light {
color: #666; color: #666;
} }
} }
.card-even { .card-even {
border-left: 4px solid #2979ff; border-left: 4px solid #2979ff;
} }
.card-odd { .card-odd {
border-left: 4px solid #19be6b; border-left: 4px solid #19be6b;
} }
.no-data { .no-data {
text-align: center; text-align: center;
padding: 40px 0; padding: 40px 0;
color: #999; color: #999;
font-size: 16px; font-size: 16px;
} }
</style> </style>

View File

@ -1,63 +1,63 @@
<template> <template>
<view class="container"> <view class="container">
<view class="example"> <view class="example">
<uni-forms ref="baseForm" :modelValue="baseFormData" label-width="20vw"> <uni-forms ref="baseForm" :modelValue="baseFormData" label-width="20vw">
<uni-forms-item label="生产单位"> <uni-forms-item label="生产单位">
<uni-data-select <uni-data-select
v-model="companyValue" v-model="companyValue"
:localdata="companyOptions" :localdata="companyOptions"
@change="filterContracts" @change="filterContracts"
></uni-data-select> ></uni-data-select>
</uni-forms-item> </uni-forms-item>
</uni-forms> </uni-forms>
</view> </view>
<view v-if="filteredContracts.length === 0" class="no-data"> <view v-if="filteredContracts.length === 0" class="no-data">
<text>暂无匹配的合同数据</text> <text>暂无匹配的合同数据</text>
</view> </view>
<view v-else> <view v-else>
<uni-card <uni-card
v-for="(contract, index) in filteredContracts" v-for="(contract, index) in filteredContracts"
:key="contract.saleid" :key="contract.saleid"
:title="contract.usernames" :class="index % 2 === 0 ? 'card-even' : 'card-odd'"
@click="gotoDetail(contract)" :title="contract.usernames"
:class="index % 2 === 0 ? 'card-even' : 'card-odd'" @click="gotoDetail(contract)"
> >
<uni-row class="demo-uni-row"> <uni-row class="demo-uni-row">
<uni-col :span="12"> <uni-col :span="12">
<view class="demo-uni-col dark">生产单位: {{ contract.companyName }}</view> <view class="demo-uni-col dark">生产单位: {{ contract.companyName }}</view>
</uni-col> </uni-col>
<uni-col :span="12"> <uni-col :span="12">
<view class="demo-uni-col light">合同编号: {{ contract.contractcode }}</view> <view class="demo-uni-col light">合同编号: {{ contract.contractcode }}</view>
</uni-col> </uni-col>
</uni-row> </uni-row>
<uni-row class="demo-uni-row"> <uni-row class="demo-uni-row">
<uni-col :span="12"> <uni-col :span="12">
<view class="demo-uni-col dark">制单日期: {{ formatDate(contract.adddate) }}</view> <view class="demo-uni-col dark">制单日期: {{ formatDate(contract.adddate) }}</view>
</uni-col> </uni-col>
<uni-col :span="12"> <uni-col :span="12">
<view class="demo-uni-col light">订单金额: {{ contract.contractmoney.toFixed(2) }}</view> <view class="demo-uni-col light">订单金额: {{ contract.contractmoney.toFixed(2) }}</view>
</uni-col> </uni-col>
</uni-row> </uni-row>
<uni-row class="demo-uni-row"> <uni-row class="demo-uni-row">
<uni-col :span="12"> <uni-col :span="12">
<view class="demo-uni-col dark">状态: {{ contract.stateText }}</view> <view class="demo-uni-col dark">状态: {{ contract.stateText }}</view>
</uni-col> </uni-col>
<uni-col :span="12"> <uni-col :span="12">
<view class="demo-uni-col light">区域: {{ contract.areaName }}</view> <view class="demo-uni-col light">区域: {{ contract.areaName }}</view>
</uni-col> </uni-col>
</uni-row> </uni-row>
</uni-card> </uni-card>
</view> </view>
</view> </view>
</template> </template>
<script setup> <script setup>
import { ref, reactive, onMounted, computed,getCurrentInstance } from "vue" import {computed, getCurrentInstance, onMounted, ref} from "vue"
import { contractData } from "./data.js" // import {contractData} from "./data.js" //
const { proxy } = getCurrentInstance() const {proxy} = getCurrentInstance()
// //
const baseFormData = ref({}) const baseFormData = ref({})
const paymentValue = ref(0) const paymentValue = ref(0)
@ -65,15 +65,15 @@ const companyValue = ref(0)
// //
const paymentOptions = ref([ const paymentOptions = ref([
{ value: 0, text: "全部支付方式" }, {value: 0, text: "全部支付方式"},
{ value: 1, text: "账期支付" }, {value: 1, text: "账期支付"},
{ value: 2, text: "预付款" } {value: 2, text: "预付款"}
]) ])
const companyOptions = ref([ const companyOptions = ref([
{ value: 0, text: "全部生产单位" }, {value: 0, text: "全部生产单位"},
{ value: 1, text: "浙江大冢制药有限公司" }, {value: 1, text: "浙江大冢制药有限公司"},
{ value: 2, text: "广东大冢制药有限公司" } {value: 2, text: "广东大冢制药有限公司"}
]) ])
// //
@ -81,106 +81,106 @@ const contracts = ref([])
// //
const filteredContracts = computed(() => { const filteredContracts = computed(() => {
let result = contracts.value let result = contracts.value
// //
if (companyValue.value === 1) { if (companyValue.value === 1) {
result = result.filter(contract => contract.companyName.includes('浙江')) result = result.filter(contract => contract.companyName.includes('浙江'))
} else if (companyValue.value === 2) { } else if (companyValue.value === 2) {
result = result.filter(contract => contract.companyName.includes('广东')) result = result.filter(contract => contract.companyName.includes('广东'))
} }
// //
return result return result
}) })
// //
onMounted(() => { onMounted(() => {
contracts.value = contractData.rows contracts.value = contractData.rows
}) })
// //
function formatDate(dateString) { function formatDate(dateString) {
if (!dateString) return '未知日期' if (!dateString) return '未知日期'
return dateString.split(' ')[0] return dateString.split(' ')[0]
} }
// //
function filterContracts(e) { function filterContracts(e) {
console.log("筛选条件变化:", e) console.log("筛选条件变化:", e)
// //
} }
// //
function gotoDetail(contract) { function gotoDetail(contract) {
console.log("查看合同详情:", contract) console.log("查看合同详情:", contract)
// proxy.$tab.navigateTo('/pages/work/yonghu/detail') // proxy.$tab.navigateTo('/pages/work/yonghu/detail')
// proxy.$tab.navigateTo(`/pages/work/yonghu/detail?saleid=${contract.saleid}`) // proxy.$tab.navigateTo(`/pages/work/yonghu/detail?saleid=${contract.saleid}`)
proxy.$tab.navigateTo('/pages/work/FinancialApproval/OrderDetail') proxy.$tab.navigateTo('/pages/work/FinancialApproval/OrderDetail')
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.container { .container {
padding: 10px; padding: 10px;
background-color: #f5f7fa; background-color: #f5f7fa;
min-height: 100vh; min-height: 100vh;
} }
.example { .example {
padding: 10px; padding: 10px;
background: #fff; background: #fff;
border-radius: 8px; border-radius: 8px;
margin-bottom: 15px; margin-bottom: 15px;
box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05); box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
} }
:deep(.uni-section .uni-section-header) { :deep(.uni-section .uni-section-header) {
padding: 0; padding: 0;
} }
:deep(.uni-card) { :deep(.uni-card) {
padding: 0 !important; padding: 0 !important;
margin: 10px 0 !important; margin: 10px 0 !important;
border-radius: 8px; border-radius: 8px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08); box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
} }
:deep(.uni-card__content) { :deep(.uni-card__content) {
padding: 12px !important; padding: 12px !important;
} }
.demo-uni-row { .demo-uni-row {
padding: 5px 0; padding: 5px 0;
font-size: 14px; font-size: 14px;
} }
.demo-uni-col { .demo-uni-col {
padding: 2px 0; padding: 2px 0;
&.dark { &.dark {
color: #333; color: #333;
font-weight: 500; font-weight: 500;
} }
&.light { &.light {
color: #666; color: #666;
} }
} }
.card-even { .card-even {
border-left: 4px solid #2979ff; border-left: 4px solid #2979ff;
} }
.card-odd { .card-odd {
border-left: 4px solid #19be6b; border-left: 4px solid #19be6b;
} }
.no-data { .no-data {
text-align: center; text-align: center;
padding: 40px 0; padding: 40px 0;
color: #999; color: #999;
font-size: 16px; font-size: 16px;
} }
</style> </style>

View File

@ -1,78 +1,78 @@
<template> <template>
<view class="container"> <view class="container">
<view class="example"> <view class="example">
<uni-forms ref="baseForm" :modelValue="baseFormData" label-width="20vw"> <uni-forms ref="baseForm" :modelValue="baseFormData" label-width="20vw">
<uni-forms-item label="生产单位"> <uni-forms-item label="生产单位">
<uni-data-select <uni-data-select
v-model="companyValue" v-model="companyValue"
:localdata="companyOptions" :localdata="companyOptions"
@change="filterContracts" @change="filterContracts"
></uni-data-select> ></uni-data-select>
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="仓库"> <uni-forms-item label="仓库">
<uni-data-select <uni-data-select
v-model="paymentValue" v-model="paymentValue"
:localdata="warehouseList" :localdata="warehouseList"
@change="filterContracts" @change="filterContracts"
></uni-data-select> ></uni-data-select>
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="大区"> <uni-forms-item label="大区">
<uni-data-select <uni-data-select
v-model="paymentValue" v-model="paymentValue"
:localdata="areaList" :localdata="areaList"
@change="filterContracts" @change="filterContracts"
></uni-data-select> ></uni-data-select>
</uni-forms-item> </uni-forms-item>
</uni-forms> </uni-forms>
</view> </view>
<view v-if="filteredContracts.length === 0" class="no-data"> <view v-if="filteredContracts.length === 0" class="no-data">
<text>暂无匹配的合同数据</text> <text>暂无匹配的合同数据</text>
</view> </view>
<view v-else> <view v-else>
<uni-card <uni-card
v-for="(contract, index) in filteredContracts" v-for="(contract, index) in filteredContracts"
:key="contract.saleid" :key="contract.saleid"
:title="contract.usernames" :class="index % 2 === 0 ? 'card-even' : 'card-odd'"
@click="gotoDetail(contract)" :title="contract.usernames"
:class="index % 2 === 0 ? 'card-even' : 'card-odd'" @click="gotoDetail(contract)"
> >
<uni-row class="demo-uni-row"> <uni-row class="demo-uni-row">
<uni-col :span="12"> <uni-col :span="12">
<view class="demo-uni-col dark">生产单位: {{ contract.companyName }}</view> <view class="demo-uni-col dark">生产单位: {{ contract.companyName }}</view>
</uni-col> </uni-col>
<uni-col :span="12"> <uni-col :span="12">
<view class="demo-uni-col light">合同编号: {{ contract.contractcode }}</view> <view class="demo-uni-col light">合同编号: {{ contract.contractcode }}</view>
</uni-col> </uni-col>
</uni-row> </uni-row>
<uni-row class="demo-uni-row"> <uni-row class="demo-uni-row">
<uni-col :span="12"> <uni-col :span="12">
<view class="demo-uni-col dark">制单日期: {{ formatDate(contract.adddate) }}</view> <view class="demo-uni-col dark">制单日期: {{ formatDate(contract.adddate) }}</view>
</uni-col> </uni-col>
<uni-col :span="12"> <uni-col :span="12">
<view class="demo-uni-col light">订单金额: {{ contract.contractmoney.toFixed(2) }}</view> <view class="demo-uni-col light">订单金额: {{ contract.contractmoney.toFixed(2) }}</view>
</uni-col> </uni-col>
</uni-row> </uni-row>
<uni-row class="demo-uni-row"> <uni-row class="demo-uni-row">
<uni-col :span="12"> <uni-col :span="12">
<view class="demo-uni-col dark">状态: {{ contract.stateText }}</view> <view class="demo-uni-col dark">状态: {{ contract.stateText }}</view>
</uni-col> </uni-col>
<uni-col :span="12"> <uni-col :span="12">
<view class="demo-uni-col light">区域: {{ contract.areaName }}</view> <view class="demo-uni-col light">区域: {{ contract.areaName }}</view>
</uni-col> </uni-col>
</uni-row> </uni-row>
</uni-card> </uni-card>
</view> </view>
</view> </view>
</template> </template>
<script setup> <script setup>
import { ref, reactive, onMounted, computed,getCurrentInstance } from "vue" import {computed, getCurrentInstance, onMounted, ref} from "vue"
import { contractData } from "./data.js" // import {contractData} from "./data.js" //
const { proxy } = getCurrentInstance() const {proxy} = getCurrentInstance()
// //
const baseFormData = ref({}) const baseFormData = ref({})
const paymentValue = ref(0) const paymentValue = ref(0)
@ -80,20 +80,20 @@ const companyValue = ref(0)
// //
const warehouseList = ref([ const warehouseList = ref([
{ value: 0, text: "广东直发" }, {value: 0, text: "广东直发"},
{ value: 1, text: "四川直发" }, {value: 1, text: "四川直发"},
{ value: 2, text: "浙江直发" } {value: 2, text: "浙江直发"}
]) ])
const areaList = ref([ const areaList = ref([
{ value: 0, text: "南区" }, {value: 0, text: "南区"},
{ value: 1, text: "北区" }, {value: 1, text: "北区"},
{ value: 2, text: "东区" }, {value: 2, text: "东区"},
{ value: 3, text: "西区" } {value: 3, text: "西区"}
]) ])
const companyOptions = ref([ const companyOptions = ref([
{ value: 0, text: "全部生产单位" }, {value: 0, text: "全部生产单位"},
{ value: 1, text: "浙江大冢制药有限公司" }, {value: 1, text: "浙江大冢制药有限公司"},
{ value: 2, text: "广东大冢制药有限公司" } {value: 2, text: "广东大冢制药有限公司"}
]) ])
// //
@ -101,106 +101,106 @@ const contracts = ref([])
// //
const filteredContracts = computed(() => { const filteredContracts = computed(() => {
let result = contracts.value let result = contracts.value
// //
if (companyValue.value === 1) { if (companyValue.value === 1) {
result = result.filter(contract => contract.companyName.includes('浙江')) result = result.filter(contract => contract.companyName.includes('浙江'))
} else if (companyValue.value === 2) { } else if (companyValue.value === 2) {
result = result.filter(contract => contract.companyName.includes('广东')) result = result.filter(contract => contract.companyName.includes('广东'))
} }
// //
return result return result
}) })
// //
onMounted(() => { onMounted(() => {
contracts.value = contractData.rows contracts.value = contractData.rows
}) })
// //
function formatDate(dateString) { function formatDate(dateString) {
if (!dateString) return '未知日期' if (!dateString) return '未知日期'
return dateString.split(' ')[0] return dateString.split(' ')[0]
} }
// //
function filterContracts(e) { function filterContracts(e) {
console.log("筛选条件变化:", e) console.log("筛选条件变化:", e)
// //
} }
// //
function gotoDetail(contract) { function gotoDetail(contract) {
console.log("查看合同详情:", contract) console.log("查看合同详情:", contract)
// proxy.$tab.navigateTo('/pages/work/yonghu/detail') // proxy.$tab.navigateTo('/pages/work/yonghu/detail')
// proxy.$tab.navigateTo(`/pages/work/yonghu/detail?saleid=${contract.saleid}`) // proxy.$tab.navigateTo(`/pages/work/yonghu/detail?saleid=${contract.saleid}`)
proxy.$tab.navigateTo('/pages/work/OrderApproval/OrderDetail') proxy.$tab.navigateTo('/pages/work/OrderApproval/OrderDetail')
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.container { .container {
padding: 10px; padding: 10px;
background-color: #f5f7fa; background-color: #f5f7fa;
min-height: 100vh; min-height: 100vh;
} }
.example { .example {
padding: 10px; padding: 10px;
background: #fff; background: #fff;
border-radius: 8px; border-radius: 8px;
margin-bottom: 15px; margin-bottom: 15px;
box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05); box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
} }
:deep(.uni-section .uni-section-header) { :deep(.uni-section .uni-section-header) {
padding: 0; padding: 0;
} }
:deep(.uni-card) { :deep(.uni-card) {
padding: 0 !important; padding: 0 !important;
margin: 10px 0 !important; margin: 10px 0 !important;
border-radius: 8px; border-radius: 8px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08); box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
} }
:deep(.uni-card__content) { :deep(.uni-card__content) {
padding: 12px !important; padding: 12px !important;
} }
.demo-uni-row { .demo-uni-row {
padding: 5px 0; padding: 5px 0;
font-size: 14px; font-size: 14px;
} }
.demo-uni-col { .demo-uni-col {
padding: 2px 0; padding: 2px 0;
&.dark { &.dark {
color: #333; color: #333;
font-weight: 500; font-weight: 500;
} }
&.light { &.light {
color: #666; color: #666;
} }
} }
.card-even { .card-even {
border-left: 4px solid #2979ff; border-left: 4px solid #2979ff;
} }
.card-odd { .card-odd {
border-left: 4px solid #19be6b; border-left: 4px solid #19be6b;
} }
.no-data { .no-data {
text-align: center; text-align: center;
padding: 40px 0; padding: 40px 0;
color: #999; color: #999;
font-size: 16px; font-size: 16px;
} }
</style> </style>

View File

@ -1,113 +1,109 @@
<template> <template>
<view class="container"> <view class="container">
<view class="example"> <view class="example">
<uni-forms ref="baseForm" :modelValue="baseFormData" label-width="20vw"> <uni-forms ref="baseForm" :modelValue="baseFormData" label-width="20vw">
<uni-forms-item label="生产单位"> <uni-forms-item label="生产单位">
<uni-data-select <uni-data-select
v-model="queryParams.CompanyId" v-model="queryParams.CompanyId"
:localdata="companyOptions" :clear="true"
text-field="deptName" :localdata="companyOptions"
value-field="deptId" text-field="deptName"
@change="getTableData" value-field="deptId"
:clear="true" @change="getTableData"
/> />
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="状态"> <uni-forms-item label="状态">
<uni-data-select <uni-data-select
v-model="queryParams.state" v-model="queryParams.state"
:localdata="stateList" :clear="true"
@change="getTableData" :localdata="stateList"
:clear="true" @change="getTableData"
></uni-data-select> ></uni-data-select>
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="合同编号" > <uni-forms-item label="合同编号">
<input <input
class="uni-input custom-input" v-model="queryParams.contractcode"
v-model="queryParams.contractcode" class="uni-input custom-input"
placeholder="请输入合同编号" placeholder="请输入合同编号"
@confirm="getTableData"/> @confirm="getTableData"/>
</uni-forms-item> </uni-forms-item>
<!-- <uni-forms-item label="合同编号" > <!-- <uni-forms-item label="合同编号" >
<view class="uni-form-item uni-column"> <view class="uni-form-item uni-column">
<input class="uni-input" focus placeholder="自动获得焦点" /> <input class="uni-input" focus placeholder="自动获得焦点" />
</view> </view>
</uni-forms-item> --> </uni-forms-item> -->
</uni-forms> </uni-forms>
<button type="primary" @click="gotoNewAdd">新增</button> <button type="primary" @click="gotoNewAdd">新增</button>
</view> </view>
<view v-if="filteredContracts.length === 0" class="no-data"> <view v-if="filteredContracts.length === 0" class="no-data">
<text>暂无匹配的合同数据</text> <text>暂无匹配的合同数据</text>
</view> </view>
<view v-else> <view v-else>
<uni-card <uni-card
v-for="(contract, index) in filteredContracts" v-for="(contract, index) in filteredContracts"
:key="contract.saleid" :key="contract.saleid"
:title="contract.usernames" :class="index % 2 === 0 ? 'card-even' : 'card-odd'"
@click="gotoDetail(contract)" :title="contract.usernames"
:class="index % 2 === 0 ? 'card-even' : 'card-odd'" @click="gotoDetail(contract)"
> >
<uni-row class="demo-uni-row"> <uni-row class="demo-uni-row">
<uni-col :span="12"> <uni-col :span="12">
<view class="demo-uni-col dark">生产单位: {{ contract.companyName }}</view> <view class="demo-uni-col dark">生产单位: {{ contract.companyName }}</view>
</uni-col> </uni-col>
<uni-col :span="12"> <uni-col :span="12">
<view class="demo-uni-col light">合同编号: {{ contract.contractcode }}</view> <view class="demo-uni-col light">合同编号: {{ contract.contractcode }}</view>
</uni-col> </uni-col>
</uni-row> </uni-row>
<uni-row class="demo-uni-row"> <uni-row class="demo-uni-row">
<uni-col :span="12"> <uni-col :span="12">
<view class="demo-uni-col dark">制单日期: {{ formatDate(contract.adddate) }}</view> <view class="demo-uni-col dark">制单日期: {{ formatDate(contract.adddate) }}</view>
</uni-col> </uni-col>
<uni-col :span="12"> <uni-col :span="12">
<view class="demo-uni-col light">订单金额: {{ contract.contractmoney.toFixed(2) }}</view> <view class="demo-uni-col light">订单金额: {{ contract.contractmoney.toFixed(2) }}</view>
</uni-col> </uni-col>
</uni-row> </uni-row>
<uni-row class="demo-uni-row"> <uni-row class="demo-uni-row">
<uni-col :span="12"> <uni-col :span="12">
<view class="demo-uni-col dark">状态: {{ contract.stateText }}</view> <view class="demo-uni-col dark">状态: {{ contract.stateText }}</view>
</uni-col> </uni-col>
<uni-col :span="12" style="display: flex;"> <uni-col :span="12" style="display: flex;">
<view class="demo-uni-col light">订单类型: </view> <view class="demo-uni-col light">订单类型:</view>
<dict-tag :options="orderTypeList" :value="contract.type" style="color: red;"/> <dict-tag :options="orderTypeList" :value="contract.type" style="color: red;"/>
</uni-col> </uni-col>
</uni-row> </uni-row>
</uni-card> </uni-card>
</view> </view>
</view> </view>
</template> </template>
<script setup> <script setup>
import { listsalemain } from "../../../api/orderManager/index.js" import {listproductList, listsalemain} from "../../../api/orderManager/index.js"
import { listproductList } from "../../../api/orderManager/index.js" import {computed, getCurrentInstance, onMounted, ref} from "vue"
import { ref, reactive, onMounted, computed,getCurrentInstance } from "vue" import {getDicts} from "../../../api/system/dict/data.js"
import { contractData } from "../OrderManager/data.js" //
import { getDicts } from "../../../api/system/dict/data.js"
// import DictTag from '@/components/dict-tag/dict-tag.vue'; // import DictTag from '@/components/dict-tag/dict-tag.vue';
import { useOrderManagerStore } from "../../../store/modules/orderManager.js" import {useOrderManagerStore} from "../../../store/modules/orderManager.js"
// import { log } from "console" // import { log } from "console"
const { proxy } = getCurrentInstance() const {proxy} = getCurrentInstance()
// //
const baseFormData = ref({ const baseFormData = ref({})
})
// //
const orderTypeList =ref([]) const orderTypeList = ref([])
const paymentValue = ref(0) const paymentValue = ref(0)
const companyValue = ref(0) const companyValue = ref(0)
const paging = ref({ const paging = ref({
// //
pageNum: 1, pageNum: 1,
// //
pageSize:999, pageSize: 999,
isAsc: 'descending', isAsc: 'descending',
orderByColumn: 'adddate' orderByColumn: 'adddate'
}) })
const queryParams = ref({ const queryParams = ref({
params:{ params: {
state: "0,1,-1,2,-2,3,-3,9,10,11,12,-12,13,-13,14,15,16", state: "0,1,-1,2,-2,3,-3,9,10,11,12,-12,13,-13,14,15,16",
} }
}) })
@ -132,175 +128,181 @@ const contracts = ref([])
// //
const filteredContracts = computed(() => { const filteredContracts = computed(() => {
let result = contracts.value let result = contracts.value
// //
if (companyValue.value === 1) { if (companyValue.value === 1) {
result = result.filter(contract => contract.companyName.includes('浙江')) result = result.filter(contract => contract.companyName.includes('浙江'))
} else if (companyValue.value === 2) { } else if (companyValue.value === 2) {
result = result.filter(contract => contract.companyName.includes('广东')) result = result.filter(contract => contract.companyName.includes('广东'))
} }
// //
return result return result
}) })
// //
onMounted(() => { onMounted(() => {
getDictData() getDictData()
getTableData() getTableData()
getDeptLists() getDeptLists()
}) })
// //
function formatDate(dateString) { function formatDate(dateString) {
if (!dateString) return '未知日期' if (!dateString) return '未知日期'
return dateString.split(' ')[0] return dateString.split(' ')[0]
} }
//
const getDictData = () =>{
getDicts("order_state").then(res =>{
console.log('order_state',res.data)
stateList.value = res.data.map(item =>{
return{ //
value:item.dictValue, const getDictData = () => {
text:item.dictLabel getDicts("order_state").then(res => {
} console.log('order_state', res.data)
}) stateList.value = res.data.map(item => {
})
getDicts("dazhong_dingdan_type").then(res =>{ return {
console.log('dazhong_dingdan_type',res.data) value: item.dictValue,
orderTypeList.value = res.data text: item.dictLabel
}) }
})
})
getDicts("dazhong_dingdan_type").then(res => {
console.log('dazhong_dingdan_type', res.data)
orderTypeList.value = res.data
})
} }
// //
const getTableData = () =>{ const getTableData = () => {
console.log(queryParams.value) console.log(queryParams.value)
listsalemain(queryParams.value,paging.value).then(res => { listsalemain(queryParams.value, paging.value).then(res => {
contracts.value = res.rows contracts.value = res.rows
// total.value = res.total; // total.value = res.total;
}); });
} }
const getDeptLists = () =>{ const getDeptLists = () => {
listproductList().then(res => { listproductList().then(res => {
companyOptions.value = res.data.map(item => { companyOptions.value = res.data.map(item => {
return { return {
value:item.deptId, value: item.deptId,
text:item.deptName text: item.deptName
} }
}) })
console.log('companyOptions.value', companyOptions.value) console.log('companyOptions.value', companyOptions.value)
}); });
} }
// //
function filterContracts(e) { function filterContracts(e) {
console.log("筛选条件变化:",e) console.log("筛选条件变化:", e)
// //
} }
// //
const handleInput = (e) =>{ const handleInput = (e) => {
console.log('handleInput',e.detail.value) console.log('handleInput', e.detail.value)
} }
// //
function gotoDetail(contract) { function gotoDetail(contract) {
console.log("查看合同详情:", contract) console.log("查看合同详情:", contract)
// proxy.$tab.navigateTo('/pages/work/yonghu/detail') // proxy.$tab.navigateTo('/pages/work/yonghu/detail')
// proxy.$tab.navigateTo(`/pages/work/yonghu/detail?saleid=${contract.saleid}`) // proxy.$tab.navigateTo(`/pages/work/yonghu/detail?saleid=${contract.saleid}`)
// proxy.$tab.navigateTo('pages/work/OrderManager/OrderDetail') // proxy.$tab.navigateTo('pages/work/OrderManager/OrderDetail')
//pinia //pinia
useOrderManagerStore().addOrder(contract) useOrderManagerStore().addOrder(contract)
console.log('数据',useOrderManagerStore().orders) console.log('数据', useOrderManagerStore().orders)
if(contract.state == '0'){ if (contract.state == '0') {
uni.navigateTo({ uni.navigateTo({
url: "/pages/work/OrderManager/components/EditData?" url: "/pages/work/OrderManager/components/EditData?"
}); });
}else{ } else {
uni.navigateTo({ uni.navigateTo({
url: "/pages/work/OrderManager/components/LookData" url: "/pages/work/OrderManager/components/LookData"
}); });
} }
} }
const gotoNewAdd = () =>{
uni.navigateTo({ const gotoNewAdd = () => {
url: "/pages/work/OrderManager/components/NewAdd" uni.navigateTo({
}); url: "/pages/work/OrderManager/components/NewAdd"
});
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.custom-input { .custom-input {
border: 1px solid #ccc; border: 1px solid #ccc;
border-radius: 4px; border-radius: 4px;
padding: 5px; padding: 5px;
height: 35px; height: 35px;
} }
.container { .container {
padding: 10px; padding: 10px;
background-color: #f5f7fa; background-color: #f5f7fa;
min-height: 100vh; min-height: 100vh;
} }
.example { .example {
padding: 10px; padding: 10px;
background: #fff; background: #fff;
border-radius: 8px; border-radius: 8px;
margin-bottom: 15px; margin-bottom: 15px;
box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05); box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
} }
:deep(.uni-section .uni-section-header) { :deep(.uni-section .uni-section-header) {
padding: 0; padding: 0;
} }
:deep(.uni-card) { :deep(.uni-card) {
padding: 0 !important; padding: 0 !important;
margin: 10px 0 !important; margin: 10px 0 !important;
border-radius: 8px; border-radius: 8px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08); box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
} }
:deep(.uni-card__content) { :deep(.uni-card__content) {
padding: 12px !important; padding: 12px !important;
} }
.demo-uni-row { .demo-uni-row {
padding: 5px 0; padding: 5px 0;
font-size: 14px; font-size: 14px;
} }
.demo-uni-col { .demo-uni-col {
padding: 2px 0; padding: 2px 0;
&.dark { &.dark {
color: #333; color: #333;
font-weight: 500; font-weight: 500;
} }
&.light { &.light {
color: #666; color: #666;
} }
} }
.card-even { .card-even {
border-left: 4px solid #2979ff; border-left: 4px solid #2979ff;
} }
.card-odd { .card-odd {
border-left: 4px solid #19be6b; border-left: 4px solid #19be6b;
} }
.no-data { .no-data {
text-align: center; text-align: center;
padding: 40px 0; padding: 40px 0;
color: #999; color: #999;
font-size: 16px; font-size: 16px;
} }
</style> </style>