Skip to content

Commit ee96675

Browse files
YunaiVgitee-org
authored andcommitted
!342 【CRM:优化产品以及产品分类】
Merge pull request !342 from ZanGe丶/master
2 parents 0c613e9 + dde61c2 commit ee96675

File tree

6 files changed

+86
-91
lines changed

6 files changed

+86
-91
lines changed

src/views/crm/product/ProductDetail.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333
</template>
3434
<script setup lang="ts">
3535
import { DICT_TYPE } from '@/utils/dict'
36-
import * as ProductCategoryApi from '@/api/crm/productCategory'
36+
import * as ProductCategoryApi from '@/api/crm/product/productCategory'
3737
import * as ProductApi from '@/api/crm/product'
3838
import { formatDate } from '@/utils/formatTime'
3939
import { fenToYuan } from '@/utils'

src/views/crm/product/ProductForm.vue

Lines changed: 82 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -8,63 +8,87 @@
88
label-width="100px"
99
v-loading="formLoading"
1010
>
11-
<el-form-item label="产品名称" prop="name">
12-
<el-input v-model="formData.name" placeholder="请输入产品名称" />
13-
</el-form-item>
14-
<el-form-item label="产品编码" prop="no">
15-
<el-input v-model="formData.no" placeholder="请输入产品编码" />
16-
</el-form-item>
17-
<el-form-item label="单位" prop="unit">
18-
<el-select v-model="formData.unit" class="w-1/1" placeholder="请选择单位">
19-
<el-option
20-
v-for="dict in getIntDictOptions(DICT_TYPE.PRODUCT_UNIT)"
21-
:key="dict.value"
22-
:label="dict.label"
23-
:value="dict.value"
24-
/>
25-
</el-select>
26-
</el-form-item>
27-
<el-form-item label="价格" prop="price">
28-
<el-input type="number" v-model="formData.price" placeholder="请输入价格" />
29-
</el-form-item>
30-
<el-form-item label="状态" prop="status">
31-
<el-select v-model="formData.status" placeholder="请选择状态">
32-
<el-option
33-
v-for="dict in getIntDictOptions(DICT_TYPE.CRM_PRODUCT_STATUS)"
34-
:key="dict.value"
35-
:label="dict.label"
36-
:value="dict.value"
37-
/>
38-
</el-select>
39-
</el-form-item>
40-
<el-form-item label="产品分类" prop="categoryId">
41-
<el-cascader
42-
v-model="formData.categoryId"
43-
:options="productCategoryList"
44-
:props="defaultProps"
45-
class="w-1/1"
46-
clearable
47-
placeholder="请选择产品分类"
48-
filterable
49-
/>
50-
</el-form-item>
51-
<el-form-item label="产品描述" prop="description">
52-
<el-input v-model="formData.description" placeholder="请输入产品描述" />
53-
</el-form-item>
54-
<el-form-item label="负责人" prop="ownerUserId">
55-
<el-select
56-
v-model="formData.ownerUserId"
57-
placeholder="请选择负责人"
58-
:disabled="formData.id"
59-
>
60-
<el-option
61-
v-for="user in userList"
62-
:key="user.id"
63-
:label="user.nickname"
64-
:value="user.id"
65-
/>
66-
</el-select>
67-
</el-form-item>
11+
<el-row>
12+
<el-col :span="12">
13+
<el-form-item label="产品名称" prop="name">
14+
<el-input v-model="formData.name" placeholder="请输入产品名称" />
15+
</el-form-item>
16+
</el-col>
17+
<el-col :span="12">
18+
<el-form-item label="产品编码" prop="no">
19+
<el-input v-model="formData.no" placeholder="请输入产品编码" />
20+
</el-form-item>
21+
</el-col>
22+
</el-row>
23+
<el-row>
24+
<el-col :span="12">
25+
<el-form-item label="单位" prop="unit">
26+
<el-select v-model="formData.unit" class="w-1/1" placeholder="请选择单位">
27+
<el-option
28+
v-for="dict in getIntDictOptions(DICT_TYPE.PRODUCT_UNIT)"
29+
:key="dict.value"
30+
:label="dict.label"
31+
:value="dict.value"
32+
/>
33+
</el-select>
34+
</el-form-item>
35+
</el-col>
36+
<el-col :span="12">
37+
<el-form-item label="价格" prop="price">
38+
<el-input type="number" v-model="formData.price" placeholder="请输入价格" />
39+
</el-form-item>
40+
</el-col>
41+
</el-row>
42+
<el-row>
43+
<el-col :span="12">
44+
<el-form-item label="状态" prop="status">
45+
<el-select v-model="formData.status" placeholder="请选择状态">
46+
<el-option
47+
v-for="dict in getIntDictOptions(DICT_TYPE.CRM_PRODUCT_STATUS)"
48+
:key="dict.value"
49+
:label="dict.label"
50+
:value="dict.value"
51+
/>
52+
</el-select>
53+
</el-form-item>
54+
</el-col>
55+
<el-col :span="12">
56+
<el-form-item label="产品分类" prop="categoryId">
57+
<el-cascader
58+
v-model="formData.categoryId"
59+
:options="productCategoryList"
60+
:props="defaultProps"
61+
class="w-1/1"
62+
clearable
63+
placeholder="请选择产品分类"
64+
filterable
65+
/>
66+
</el-form-item>
67+
</el-col>
68+
</el-row>
69+
<el-row>
70+
<el-col :span="12">
71+
<el-form-item label="产品描述" prop="description">
72+
<el-input v-model="formData.description" placeholder="请输入产品描述" />
73+
</el-form-item>
74+
</el-col>
75+
<el-col :span="12">
76+
<el-form-item label="负责人" prop="ownerUserId">
77+
<el-select
78+
v-model="formData.ownerUserId"
79+
placeholder="请选择负责人"
80+
:disabled="formData.id"
81+
>
82+
<el-option
83+
v-for="user in userList"
84+
:key="user.id"
85+
:label="user.nickname"
86+
:value="user.id"
87+
/>
88+
</el-select>
89+
</el-form-item>
90+
</el-col>
91+
</el-row>
6892
</el-form>
6993
<template #footer>
7094
<el-button @click="submitForm" type="primary" :disabled="formLoading">确 定</el-button>
@@ -75,7 +99,7 @@
7599
<script setup lang="ts">
76100
import { DICT_TYPE, getIntDictOptions } from '@/utils/dict'
77101
import * as ProductApi from '@/api/crm/product'
78-
import * as ProductCategoryApi from '@/api/crm/productCategory'
102+
import * as ProductCategoryApi from '@/api/crm/product/productCategory'
79103
import { defaultProps, handleTree } from '@/utils/tree'
80104
import { getSimpleUserList, UserVO } from '@/api/system/user'
81105
import { useUserStore } from '@/store/modules/user'

src/views/crm/product/index.vue

Lines changed: 1 addition & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -17,15 +17,6 @@
1717
class="!w-240px"
1818
/>
1919
</el-form-item>
20-
<el-form-item label="产品编码" prop="no">
21-
<el-input
22-
v-model="queryParams.no"
23-
placeholder="请输入产品编码"
24-
clearable
25-
@keyup.enter="handleQuery"
26-
class="!w-240px"
27-
/>
28-
</el-form-item>
2920
<el-form-item label="状态" prop="status">
3021
<el-select v-model="queryParams.status" placeholder="请选择状态" clearable class="!w-240px">
3122
<el-option
@@ -36,26 +27,6 @@
3627
/>
3728
</el-select>
3829
</el-form-item>
39-
<el-form-item label="产品分类" prop="categoryId">
40-
<el-input
41-
v-model="queryParams.categoryId"
42-
placeholder="请选择产品分类"
43-
clearable
44-
@keyup.enter="handleQuery"
45-
class="!w-240px"
46-
/>
47-
</el-form-item>
48-
<el-form-item label="创建时间" prop="createTime">
49-
<el-date-picker
50-
v-model="queryParams.createTime"
51-
value-format="YYYY-MM-DD HH:mm:ss"
52-
type="daterange"
53-
start-placeholder="开始日期"
54-
end-placeholder="结束日期"
55-
:default-time="[new Date('1 00:00:00'), new Date('1 23:59:59')]"
56-
class="!w-240px"
57-
/>
58-
</el-form-item>
5930
<el-form-item>
6031
<el-button @click="handleQuery"><Icon icon="ep:search" class="mr-5px" /> 搜索</el-button>
6132
<el-button @click="resetQuery"><Icon icon="ep:refresh" class="mr-5px" /> 重置</el-button>
@@ -167,7 +138,7 @@ import * as ProductApi from '@/api/crm/product'
167138
import ProductForm from './ProductForm.vue'
168139
import ProductDetail from './ProductDetail.vue'
169140
import { fenToYuan } from '@/utils'
170-
import * as ProductCategoryApi from '@/api/crm/productCategory'
141+
import * as ProductCategoryApi from '@/api/crm/product/productCategory'
171142
import { getSimpleUserList, UserVO } from '@/api/system/user'
172143
173144
defineOptions({ name: 'CrmProduct' })

src/views/crm/productCategory/ProductCategoryForm.vue renamed to src/views/crm/product/productCategory/ProductCategoryForm.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929
</Dialog>
3030
</template>
3131
<script setup lang="ts">
32-
import * as ProductCategoryApi from '@/api/crm/productCategory'
32+
import * as ProductCategoryApi from '@/api/crm/product/productCategory'
3333
3434
defineOptions({ name: 'CrmProductCategoryForm' })
3535

src/views/crm/productCategory/index.vue renamed to src/views/crm/product/productCategory/index.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@
7474
<script setup lang="ts">
7575
import { dateFormatter } from '@/utils/formatTime'
7676
import download from '@/utils/download'
77-
import * as ProductCategoryApi from '@/api/crm/productCategory'
77+
import * as ProductCategoryApi from '@/api/crm/product/productCategory'
7878
import ProductCategoryForm from './ProductCategoryForm.vue'
7979
import { handleTree } from '@/utils/tree'
8080

0 commit comments

Comments
 (0)