diff --git a/yudao-ui-admin-vben-master/src/api/xxjj/businessWarehouse/index.ts b/yudao-ui-admin-vben-master/src/api/xxjj/businessWarehouse/index.ts
index f77ab45..d254b0a 100644
--- a/yudao-ui-admin-vben-master/src/api/xxjj/businessWarehouse/index.ts
+++ b/yudao-ui-admin-vben-master/src/api/xxjj/businessWarehouse/index.ts
@@ -25,7 +25,12 @@ export function deleteBusinessWarehouse(id: number) {
return defHttp.delete({ url: '/system/business-warehouse/delete?id=' + id })
}
-// 导出业务线/仓库 Excel
+// 导出业务线 Excel
export function exportBusinessWarehouse(params) {
- return defHttp.download({ url: '/xxjj/business-warehouse/export-excel', params }, '业务线/仓库.xls')
+ return defHttp.download({ url: '/system/business-warehouse/export-excel', params }, '业务线.xls')
}
+
+// 查询业务线(精简)列表
+export function listSimpleBusiness() {
+ return defHttp.get({ url: '/system/business-warehouse/list-all-simple' })
+ }
diff --git a/yudao-ui-admin-vben-master/src/utils/dict.ts b/yudao-ui-admin-vben-master/src/utils/dict.ts
index 79aaa0f..8a150a0 100644
--- a/yudao-ui-admin-vben-master/src/utils/dict.ts
+++ b/yudao-ui-admin-vben-master/src/utils/dict.ts
@@ -156,9 +156,11 @@ export enum DICT_TYPE {
// ============= BUSINESSLINE 模块=================
BUSINESS_TYPE = 'business_type', //业务线类型
DIFF_FLAG = 'diff_flag',
+ CLASS_STATUS = 'class_status', //类别状态
+ DUTY_TYPE = 'duty_type', //业务线的所属分类
+ BUSINESS_ORGANIZATION_TYPE = 'business_organization_type', //业务组织类型
// ============= ENTERPRISEBRANCHING 模块=================
ENTERPRISE_TYPE = 'enterprise_type', //业务线类型
- CLASS_STATUS = 'class_status',
}
diff --git a/yudao-ui-admin-vben-master/src/views/xxjj/businessOrganization/BusinessOrganizationModal.vue b/yudao-ui-admin-vben-master/src/views/xxjj/businessOrganization/BusinessOrganizationModal.vue
new file mode 100644
index 0000000..1f4d021
--- /dev/null
+++ b/yudao-ui-admin-vben-master/src/views/xxjj/businessOrganization/BusinessOrganizationModal.vue
@@ -0,0 +1,57 @@
+
+
+
+
+
+
diff --git a/yudao-ui-admin-vben-master/src/views/xxjj/businessOrganization/businessOrganization.data.ts b/yudao-ui-admin-vben-master/src/views/xxjj/businessOrganization/businessOrganization.data.ts
new file mode 100644
index 0000000..75d6aab
--- /dev/null
+++ b/yudao-ui-admin-vben-master/src/views/xxjj/businessOrganization/businessOrganization.data.ts
@@ -0,0 +1,258 @@
+import { BasicColumn, FormSchema, useRender } from '@/components/Table'
+import { DICT_TYPE, getDictOptions } from '@/utils/dict'
+import { listSimpleBusiness } from '@/api/xxjj/businessWarehouse'
+
+export const columns: BasicColumn[] = [
+ {
+ title: '业务线名称',
+ dataIndex: 'name',
+ width: 160
+ },
+ {
+ title: '类型',
+ dataIndex: 'type',
+ width: 180,
+ customRender: ({ text }) => {
+ return useRender.renderDict(text, DICT_TYPE.BUSINESS_ORGANIZATION_TYPE)
+ }
+ },
+ {
+ title: '状态',
+ dataIndex: 'type',
+ width: 180,
+ customRender: ({ text }) => {
+ return useRender.renderDict(text, DICT_TYPE.CLASS_STATUS)
+ }
+ },
+ {
+ title: '成员数量',
+ dataIndex: 'employeeNum',
+ width: 160
+ },
+ {
+ title: '主管人员',
+ dataIndex: 'belongUserId',
+ width: 160
+ },
+ {
+ title: '描述',
+ dataIndex: 'description',
+ width: 160
+ },
+ {
+ title: '更新时间',
+ dataIndex: 'updateTime',
+ width: 180,
+ customRender: ({ text }) => {
+ return useRender.renderDate(text)
+ }
+ },
+]
+
+export const searchFormSchema: FormSchema[] = [
+ {
+ label: '业务线名称',
+ field: 'name',
+ component: 'Input',
+ colProps: { span: 8 }
+ },
+ // {
+ // label: '类型',
+ // field: 'type',
+ // component: 'Select',
+ // componentProps: {
+ // options: getDictOptions(DICT_TYPE.BUSINESS_ORGANIZATION_TYPE)
+ // },
+ // colProps: { span: 8 }
+ // },
+ // {
+ // label: '所属行业',
+ // field: 'industry',
+ // component: 'Select',
+ // componentProps: {
+ // options: getDictOptions(DICT_TYPE.DUTY_TYPE)
+ // },
+ // colProps: { span: 8 }
+ // },
+ // {
+ // label: '成立时间',
+ // field: 'establishDate',
+ // component: 'RangePicker',
+ // colProps: { span: 8 }
+ // },
+ // {
+ // label: '归属人员',
+ // field: 'belongUserId',
+ // component: 'Input',
+ // colProps: { span: 8 }
+ // },
+ // {
+ // label: '品牌/业务线/事业群名称',
+ // field: 'brandName',
+ // component: 'Input',
+ // colProps: { span: 8 }
+ // },
+ // {
+ // label: '业务线仓库区分(0:业务线,1:仓库)',
+ // field: 'diffFlag',
+ // component: 'Select',
+ // componentProps: {
+ // options: getDictOptions(DICT_TYPE.DIFF_FLAG)
+ // },
+ // colProps: { span: 8 }
+ // },
+]
+
+export const createFormSchema: FormSchema[] = [
+ {
+ label: '编号',
+ field: 'id',
+ show: false,
+ component: 'Input'
+ },
+ {
+ label: '业务组织编号',
+ field: 'businessCode',
+ required: true,
+ component: 'Input'
+ },
+ {
+ label: '业务组织名称',
+ field: 'name',
+ required: true,
+ component: 'Input'
+ },
+ {
+ label: '业务组织简称',
+ field: 'businessSimple',
+ component: 'Input'
+ },
+ {
+ label: '业务组织简称',
+ field: 'businessSimple',
+ component: 'Input'
+ },
+ {
+ label: '隶属业务线',
+ field: 'parentId',
+ required: true,
+ component: 'ApiTreeSelect',
+ componentProps: {
+ api: () => listSimpleBusiness(),
+ fieldNames: {
+ label: 'name',
+ key: 'id',
+ value: 'id',
+ },
+ handleTree: 'id',
+ },
+ },
+ {
+ label: '类型',
+ field: 'type',
+ component: 'Select',
+ componentProps: {
+ options: getDictOptions(DICT_TYPE.BUSINESS_ORGANIZATION_TYPE, 'number')
+ }
+ },
+ {
+ label: '所在城市',
+ field: 'city',
+ component: 'Input'
+ },
+ {
+ label: '成立时间',
+ field: 'establishDate',
+ component: 'DatePicker'
+ },
+ {
+ label: '归属人员',
+ field: 'belongUserId',
+ component: 'Input'
+ },
+ {
+ label: '介绍',
+ field: 'description',
+ component: 'InputTextArea'
+ },
+ {
+ label: '区分标志',
+ field: 'diffFlag',
+ required: true,
+ component: 'Select',
+ componentProps: {
+ options: getDictOptions(DICT_TYPE.DIFF_FLAG, 'number')
+ }
+ },
+]
+
+export const updateFormSchema: FormSchema[] = [
+ {
+ label: '编号',
+ field: 'id',
+ show: false,
+ component: 'Input'
+ },
+ {
+ label: '业务线编号',
+ field: 'businessCode',
+ required: true,
+ component: 'Input'
+ },
+ {
+ label: '业务线名称',
+ field: 'name',
+ required: true,
+ component: 'Input'
+ },
+ {
+ label: '业务线简称',
+ field: 'businessSimple',
+ component: 'Input'
+ },
+ {
+ label: '类型',
+ field: 'type',
+ component: 'Select',
+ componentProps: {
+ options: getDictOptions(DICT_TYPE.BUSINESS_ORGANIZATION_TYPE, 'number')
+ }
+ },
+ {
+ label: '所属行业',
+ field: 'industry',
+ component: 'Select',
+ componentProps: {
+ options: getDictOptions(DICT_TYPE.DUTY_TYPE, 'number')
+ }
+ },
+ {
+ label: '所在城市',
+ field: 'city',
+ component: 'Input'
+ },
+ {
+ label: '成立时间',
+ field: 'establishDate',
+ component: 'DatePicker'
+ },
+ {
+ label: '介绍',
+ field: 'description',
+ component: 'InputTextArea'
+ },
+ {
+ label: '归属人员',
+ field: 'belongUserId',
+ component: 'Input'
+ },
+ {
+ label: '区分标志',
+ field: 'diffFlag',
+ required: true,
+ component: 'Select',
+ componentProps: {
+ options: getDictOptions(DICT_TYPE.DIFF_FLAG, 'number')
+ }
+ },
+]
\ No newline at end of file
diff --git a/yudao-ui-admin-vben-master/src/views/xxjj/businessOrganization/index.vue b/yudao-ui-admin-vben-master/src/views/xxjj/businessOrganization/index.vue
new file mode 100644
index 0000000..6f072bd
--- /dev/null
+++ b/yudao-ui-admin-vben-master/src/views/xxjj/businessOrganization/index.vue
@@ -0,0 +1,92 @@
+
+
+
+
+
+ {{ t('action.create') }}
+
+
+ {{ t('action.export') }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/yudao-ui-admin-vben-master/src/views/xxjj/businessOrganizationConfig/BusinessTree.vue b/yudao-ui-admin-vben-master/src/views/xxjj/businessOrganizationConfig/BusinessTree.vue
new file mode 100644
index 0000000..200b9f1
--- /dev/null
+++ b/yudao-ui-admin-vben-master/src/views/xxjj/businessOrganizationConfig/BusinessTree.vue
@@ -0,0 +1,42 @@
+
+
+
+
+
+
+
diff --git a/yudao-ui-admin-vben-master/src/views/xxjj/businessOrganizationConfig/BusinessWarehouseModal.vue b/yudao-ui-admin-vben-master/src/views/xxjj/businessOrganizationConfig/BusinessWarehouseModal.vue
new file mode 100644
index 0000000..d75087f
--- /dev/null
+++ b/yudao-ui-admin-vben-master/src/views/xxjj/businessOrganizationConfig/BusinessWarehouseModal.vue
@@ -0,0 +1,57 @@
+
+
+
+
+
+
diff --git a/yudao-ui-admin-vben-master/src/views/xxjj/businessOrganizationConfig/businessWarehouse.data.ts b/yudao-ui-admin-vben-master/src/views/xxjj/businessOrganizationConfig/businessWarehouse.data.ts
new file mode 100644
index 0000000..0542cdd
--- /dev/null
+++ b/yudao-ui-admin-vben-master/src/views/xxjj/businessOrganizationConfig/businessWarehouse.data.ts
@@ -0,0 +1,250 @@
+import { BasicColumn, FormSchema, useRender } from '@/components/Table'
+import { DICT_TYPE, getDictOptions } from '@/utils/dict'
+
+export const columns: BasicColumn[] = [
+ {
+ title: '业务线名称',
+ dataIndex: 'name',
+ width: 160
+ },
+ {
+ title: '类型',
+ dataIndex: 'type',
+ width: 180,
+ customRender: ({ text }) => {
+ return useRender.renderDict(text, DICT_TYPE.BUSINESS_TYPE)
+ }
+ },
+ {
+ title: '状态',
+ dataIndex: 'type',
+ width: 180,
+ customRender: ({ text }) => {
+ return useRender.renderDict(text, DICT_TYPE.CLASS_STATUS)
+ }
+ },
+ {
+ title: '关联机构',
+ dataIndex: 'institutionNum',
+ width: 160
+ },
+ {
+ title: '成员数量',
+ dataIndex: 'employeeNum',
+ width: 160
+ },
+ {
+ title: '主管人员',
+ dataIndex: 'belongUserId',
+ width: 160
+ },
+ {
+ title: '介绍',
+ dataIndex: 'description',
+ width: 160
+ },
+ {
+ title: '更新时间',
+ dataIndex: 'updateTime',
+ width: 180,
+ customRender: ({ text }) => {
+ return useRender.renderDate(text)
+ }
+ },
+]
+
+export const searchFormSchema: FormSchema[] = [
+ {
+ label: '业务线名称',
+ field: 'name',
+ component: 'Input',
+ colProps: { span: 8 }
+ },
+ // {
+ // label: '类型',
+ // field: 'type',
+ // component: 'Select',
+ // componentProps: {
+ // options: getDictOptions(DICT_TYPE.BUSINESS_TYPE)
+ // },
+ // colProps: { span: 8 }
+ // },
+ // {
+ // label: '所属行业',
+ // field: 'industry',
+ // component: 'Select',
+ // componentProps: {
+ // options: getDictOptions(DICT_TYPE.DUTY_TYPE)
+ // },
+ // colProps: { span: 8 }
+ // },
+ // {
+ // label: '成立时间',
+ // field: 'establishDate',
+ // component: 'RangePicker',
+ // colProps: { span: 8 }
+ // },
+ // {
+ // label: '归属人员',
+ // field: 'belongUserId',
+ // component: 'Input',
+ // colProps: { span: 8 }
+ // },
+ // {
+ // label: '品牌/业务线/事业群名称',
+ // field: 'brandName',
+ // component: 'Input',
+ // colProps: { span: 8 }
+ // },
+ // {
+ // label: '业务线仓库区分(0:业务线,1:仓库)',
+ // field: 'diffFlag',
+ // component: 'Select',
+ // componentProps: {
+ // options: getDictOptions(DICT_TYPE.DIFF_FLAG)
+ // },
+ // colProps: { span: 8 }
+ // },
+]
+
+export const createFormSchema: FormSchema[] = [
+ {
+ label: '编号',
+ field: 'id',
+ show: false,
+ component: 'Input'
+ },
+ {
+ label: '业务线编号',
+ field: 'businessCode',
+ required: true,
+ component: 'Input'
+ },
+ {
+ label: '业务线名称',
+ field: 'name',
+ required: true,
+ component: 'Input'
+ },
+ {
+ label: '业务线简称',
+ field: 'businessSimple',
+ component: 'Input'
+ },
+ {
+ label: '类型',
+ field: 'type',
+ component: 'Select',
+ componentProps: {
+ options: getDictOptions(DICT_TYPE.BUSINESS_TYPE, 'number')
+ }
+ },
+ {
+ label: '所属行业',
+ field: 'industry',
+ component: 'Select',
+ componentProps: {
+ options: getDictOptions(DICT_TYPE.DUTY_TYPE, 'number')
+ }
+ },
+ {
+ label: '所在城市',
+ field: 'city',
+ component: 'Input'
+ },
+ {
+ label: '成立时间',
+ field: 'establishDate',
+ component: 'DatePicker'
+ },
+ {
+ label: '介绍',
+ field: 'description',
+ component: 'InputTextArea'
+ },
+ {
+ label: '归属人员',
+ field: 'belongUserId',
+ component: 'Input'
+ },
+ {
+ label: '区分标志',
+ field: 'diffFlag',
+ required: true,
+ component: 'Select',
+ componentProps: {
+ options: getDictOptions(DICT_TYPE.DIFF_FLAG, 'number')
+ }
+ },
+]
+
+export const updateFormSchema: FormSchema[] = [
+ {
+ label: '编号',
+ field: 'id',
+ show: false,
+ component: 'Input'
+ },
+ {
+ label: '业务线编号',
+ field: 'businessCode',
+ required: true,
+ component: 'Input'
+ },
+ {
+ label: '业务线名称',
+ field: 'name',
+ required: true,
+ component: 'Input'
+ },
+ {
+ label: '业务线简称',
+ field: 'businessSimple',
+ component: 'Input'
+ },
+ {
+ label: '类型',
+ field: 'type',
+ component: 'Select',
+ componentProps: {
+ options: getDictOptions(DICT_TYPE.BUSINESS_TYPE, 'number')
+ }
+ },
+ {
+ label: '所属行业',
+ field: 'industry',
+ component: 'Select',
+ componentProps: {
+ options: getDictOptions(DICT_TYPE.DUTY_TYPE, 'number')
+ }
+ },
+ {
+ label: '所在城市',
+ field: 'city',
+ component: 'Input'
+ },
+ {
+ label: '成立时间',
+ field: 'establishDate',
+ component: 'DatePicker'
+ },
+ {
+ label: '介绍',
+ field: 'description',
+ component: 'InputTextArea'
+ },
+ {
+ label: '归属人员',
+ field: 'belongUserId',
+ component: 'Input'
+ },
+ {
+ label: '区分标志',
+ field: 'diffFlag',
+ required: true,
+ component: 'Select',
+ componentProps: {
+ options: getDictOptions(DICT_TYPE.DIFF_FLAG, 'number')
+ }
+ },
+]
\ No newline at end of file
diff --git a/yudao-ui-admin-vben-master/src/views/xxjj/businessOrganizationConfig/index.vue b/yudao-ui-admin-vben-master/src/views/xxjj/businessOrganizationConfig/index.vue
new file mode 100644
index 0000000..7467aa8
--- /dev/null
+++ b/yudao-ui-admin-vben-master/src/views/xxjj/businessOrganizationConfig/index.vue
@@ -0,0 +1,102 @@
+
+
+
+
+
+
+ {{ t('action.create') }}
+
+
+ {{ t('action.export') }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/yudao-ui-admin-vben-master/src/views/xxjj/businessWarehouse/BusinessWarehouseModal.vue b/yudao-ui-admin-vben-master/src/views/xxjj/businessWarehouse/BusinessWarehouseModal.vue
index d75087f..af624f5 100644
--- a/yudao-ui-admin-vben-master/src/views/xxjj/businessWarehouse/BusinessWarehouseModal.vue
+++ b/yudao-ui-admin-vben-master/src/views/xxjj/businessWarehouse/BusinessWarehouseModal.vue
@@ -21,7 +21,7 @@ const isUpdate = ref(true)
const [registerForm, { setFieldsValue, resetFields, resetSchema, validate }] = useForm({
labelWidth: 120,
- baseColProps: { span: 24 },
+ baseColProps: { span: 12 },
schemas: createFormSchema,
showActionButtonGroup: false,
actionColOptions: { span: 23 }
diff --git a/yudao-ui-admin-vben-master/src/views/xxjj/businessWarehouse/businessWarehouse.data.ts b/yudao-ui-admin-vben-master/src/views/xxjj/businessWarehouse/businessWarehouse.data.ts
index 899eaf3..f98e2e2 100644
--- a/yudao-ui-admin-vben-master/src/views/xxjj/businessWarehouse/businessWarehouse.data.ts
+++ b/yudao-ui-admin-vben-master/src/views/xxjj/businessWarehouse/businessWarehouse.data.ts
@@ -120,26 +120,6 @@ export const createFormSchema: FormSchema[] = [
required: true,
component: 'Input'
},
- {
- label: '业务线简称',
- field: 'businessSimple',
- component: 'Input'
- },
- {
- label: '传真',
- field: 'fax',
- component: 'Input'
- },
- {
- label: '网址',
- field: 'url',
- component: 'Input'
- },
- {
- label: '介绍',
- field: 'description',
- component: 'InputTextArea'
- },
{
label: '业务线名称',
field: 'name',
@@ -147,17 +127,8 @@ export const createFormSchema: FormSchema[] = [
component: 'Input'
},
{
- label: '业务线LOGO',
- field: 'businessLogo',
- component: 'FileUpload',
- componentProps: {
- fileType: 'file',
- maxCount: 1
- }
- },
- {
- label: '父id',
- field: 'parentId',
+ label: '业务线简称',
+ field: 'businessSimple',
component: 'Input'
},
{
@@ -187,22 +158,17 @@ export const createFormSchema: FormSchema[] = [
component: 'DatePicker'
},
{
- label: '归属人员',
- field: 'belongUserId',
- component: 'Input'
- },
- {
- label: '品牌/业务线/事业群名称',
- field: 'brandName',
- component: 'Input'
+ label: '介绍',
+ field: 'description',
+ component: 'InputTextArea'
},
{
- label: '电话',
- field: 'phone',
+ label: '归属人员',
+ field: 'belongUserId',
component: 'Input'
},
{
- label: '业务线仓库区分(0:业务线,1:仓库)',
+ label: '区分标志',
field: 'diffFlag',
required: true,
component: 'Select',
@@ -225,11 +191,6 @@ export const updateFormSchema: FormSchema[] = [
required: true,
component: 'Input'
},
- {
- label: '业务线简称',
- field: 'businessSimple',
- component: 'Input'
- },
{
label: '业务线名称',
field: 'name',
@@ -237,13 +198,8 @@ export const updateFormSchema: FormSchema[] = [
component: 'Input'
},
{
- label: '业务线LOGO',
- field: 'businessLogo',
- component: 'Upload'
- },
- {
- label: '父id',
- field: 'parentId',
+ label: '业务线简称',
+ field: 'businessSimple',
component: 'Input'
},
{
@@ -272,38 +228,18 @@ export const updateFormSchema: FormSchema[] = [
field: 'establishDate',
component: 'DatePicker'
},
- {
- label: '归属人员',
- field: 'belongUserId',
- component: 'Input'
- },
- {
- label: '品牌/业务线/事业群名称',
- field: 'brandName',
- component: 'Input'
- },
- {
- label: '电话',
- field: 'phone',
- component: 'Input'
- },
- {
- label: '传真',
- field: 'fax',
- component: 'Input'
- },
- {
- label: '网址',
- field: 'url',
- component: 'Input'
- },
{
label: '介绍',
field: 'description',
component: 'InputTextArea'
},
{
- label: '业务线仓库区分(0:业务线,1:仓库)',
+ label: '归属人员',
+ field: 'belongUserId',
+ component: 'Input'
+ },
+ {
+ label: '区分标志',
field: 'diffFlag',
required: true,
component: 'Select',
diff --git a/yudao-ui-admin-vben-master/src/views/xxjj/businessWarehouse/index.vue b/yudao-ui-admin-vben-master/src/views/xxjj/businessWarehouse/index.vue
index 6090326..6bf4ca8 100644
--- a/yudao-ui-admin-vben-master/src/views/xxjj/businessWarehouse/index.vue
+++ b/yudao-ui-admin-vben-master/src/views/xxjj/businessWarehouse/index.vue
@@ -2,10 +2,10 @@
-
+
{{ t('action.create') }}
-
+
{{ t('action.export') }}
@@ -13,12 +13,12 @@
> getSimpleBusinessList() {
+ // 获得业务线列表,只要开启状态的
+ BusinessWarehousePageReqVO pageReqVO = new BusinessWarehousePageReqVO();
+// pageReqVO.setStatus(BusinessEnum.ENABLE.getStatus());
+// pageReqVO.setDiffFlag("0");
+ List list = businessWarehouseService.getBusinessSimpleList(pageReqVO);
+ return success(BusinessWarehouseConvert.INSTANCE.convertList03(list));
+ }
+
}
diff --git a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/businesswarehouse/vo/BusinessSimpleRespVo.java b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/businesswarehouse/vo/BusinessSimpleRespVo.java
new file mode 100644
index 0000000..9229f41
--- /dev/null
+++ b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/businesswarehouse/vo/BusinessSimpleRespVo.java
@@ -0,0 +1,21 @@
+package com.yunxi.scm.module.system.controller.admin.businesswarehouse.vo;
+
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.*;
+
+@Schema(description = "管理后台 - 业务线表精简信息 Response VO")
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+public class BusinessSimpleRespVo {
+
+ @Schema(description = "业务线编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
+ private Long id;
+
+ @Schema(description = "业务线名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "芋道")
+ private String name;
+
+ @Schema(description = "父部门 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
+ private Long parentId;
+}
diff --git a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/businesswarehouse/vo/BusinessWarehouseRespVO.java b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/businesswarehouse/vo/BusinessWarehouseRespVO.java
index 273b3ff..a48ba16 100644
--- a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/businesswarehouse/vo/BusinessWarehouseRespVO.java
+++ b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/businesswarehouse/vo/BusinessWarehouseRespVO.java
@@ -16,4 +16,7 @@ public class BusinessWarehouseRespVO extends BusinessWarehouseBaseVO {
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
private LocalDateTime createTime;
+ @Schema(description = "更新时间", requiredMode = Schema.RequiredMode.REQUIRED)
+ private LocalDateTime updateTime;
+
}
diff --git a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/convert/businesswarehouse/BusinessWarehouseConvert.java b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/convert/businesswarehouse/BusinessWarehouseConvert.java
index b3a23e3..11fc860 100644
--- a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/convert/businesswarehouse/BusinessWarehouseConvert.java
+++ b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/convert/businesswarehouse/BusinessWarehouseConvert.java
@@ -25,8 +25,12 @@ public interface BusinessWarehouseConvert {
BusinessWarehouseRespVO convert(BusinessWarehouseDO bean);
+ BusinessSimpleRespVo convert03(BusinessWarehouseDO bean);
+
List convertList(List list);
+ List convertList03(List list);
+
PageResult convertPage(PageResult page);
List convertList02(List list);
diff --git a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/dal/mysql/businesswarehouse/BusinessWarehouseMapper.java b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/dal/mysql/businesswarehouse/BusinessWarehouseMapper.java
index 7aa3548..78d671f 100644
--- a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/dal/mysql/businesswarehouse/BusinessWarehouseMapper.java
+++ b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/dal/mysql/businesswarehouse/BusinessWarehouseMapper.java
@@ -5,7 +5,9 @@ import java.util.*;
import com.yunxi.scm.framework.common.pojo.PageResult;
import com.yunxi.scm.framework.mybatis.core.query.LambdaQueryWrapperX;
import com.yunxi.scm.framework.mybatis.core.mapper.BaseMapperX;
+import com.yunxi.scm.module.system.controller.admin.dept.vo.dept.DeptListReqVO;
import com.yunxi.scm.module.system.dal.dataobject.businesswarehouse.BusinessWarehouseDO;
+import com.yunxi.scm.module.system.dal.dataobject.dept.DeptDO;
import org.apache.ibatis.annotations.Mapper;
import com.yunxi.scm.module.system.controller.admin.businesswarehouse.vo.*;
@@ -67,4 +69,10 @@ public interface BusinessWarehouseMapper extends BaseMapperX simpleBusiness(BusinessWarehousePageReqVO reqVO) {
+ return selectList(new LambdaQueryWrapperX()
+ .eqIfPresent(BusinessWarehouseDO::getStatus, reqVO.getStatus())
+ .eqIfPresent(BusinessWarehouseDO::getDiffFlag, reqVO.getDiffFlag()));
+ }
+
}
diff --git a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/service/businesswarehouse/BusinessWarehouseService.java b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/service/businesswarehouse/BusinessWarehouseService.java
index 8368217..cc5e2c9 100644
--- a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/service/businesswarehouse/BusinessWarehouseService.java
+++ b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/service/businesswarehouse/BusinessWarehouseService.java
@@ -67,4 +67,9 @@ public interface BusinessWarehouseService {
*/
List getBusinessWarehouseList(BusinessWarehouseExportReqVO exportReqVO);
+ /**
+ * 业务线列表查询
+ * */
+ List getBusinessSimpleList(BusinessWarehousePageReqVO pageReqVO);
+
}
diff --git a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/service/businesswarehouse/BusinessWarehouseServiceImpl.java b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/service/businesswarehouse/BusinessWarehouseServiceImpl.java
index cbf1c49..eda6b62 100644
--- a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/service/businesswarehouse/BusinessWarehouseServiceImpl.java
+++ b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/service/businesswarehouse/BusinessWarehouseServiceImpl.java
@@ -79,4 +79,9 @@ public class BusinessWarehouseServiceImpl implements BusinessWarehouseService {
return businessWarehouseMapper.selectList(exportReqVO);
}
+ @Override
+ public List getBusinessSimpleList(BusinessWarehousePageReqVO pageReqVO) {
+ return businessWarehouseMapper.simpleBusiness(pageReqVO);
+ }
+
}
diff --git a/yunxi-server/src/main/resources/application-dev.yaml b/yunxi-server/src/main/resources/application-dev.yaml
index 1a7b417..c1b112c 100644
--- a/yunxi-server/src/main/resources/application-dev.yaml
+++ b/yunxi-server/src/main/resources/application-dev.yaml
@@ -1,5 +1,5 @@
server:
- port: 48080
+ port: 8091
--- #################### 数据库相关配置 ####################
@@ -37,38 +37,48 @@ spring:
time-between-eviction-runs-millis: 60000 # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位:毫秒
min-evictable-idle-time-millis: 300000 # 配置一个连接在池中最小生存的时间,单位:毫秒
max-evictable-idle-time-millis: 900000 # 配置一个连接在池中最大生存的时间,单位:毫秒
- validation-query: SELECT 1 # 配置检测连接是否有效
+ validation-query: SELECT 1 FROM DUAL # 配置检测连接是否有效
test-while-idle: true
test-on-borrow: false
test-on-return: false
primary: master
datasource:
master:
- name: yxsass
- url: jdbc:mysql://112.124.64.122:3306/${spring.datasource.dynamic.datasource.master.name}?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
- driver-class-name: com.mysql.jdbc.Driver
- username: yxsass
- password: jxjitjjxJFNM5YNW
- slave: # 模拟从库,可根据自己需要修改 # 模拟从库,可根据自己需要修改
- name: yxsass
- url: jdbc:mysql://112.124.64.122:3306/${spring.datasource.dynamic.datasource.slave.name}?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
- driver-class-name: com.mysql.jdbc.Driver
- username: yxsass
- password: jxjitjjxJFNM5YNW
+ name: yxscm
+ url: jdbc:mysql://222.71.165.188:3309/${spring.datasource.dynamic.datasource.master.name}?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true # MySQL Connector/J 8.X 连接的示例
+ # url: jdbc:mysql://127.0.0.1:3306/${spring.datasource.dynamic.datasource.master.name}?useSSL=false&allowPublicKeyRetrieval=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=CTT # MySQL Connector/J 5.X 连接的示例
+ # url: jdbc:postgresql://127.0.0.1:5432/${spring.datasource.dynamic.datasource.master.name} # PostgreSQL 连接的示例
+ # url: jdbc:oracle:thin:@127.0.0.1:1521:xe # Oracle 连接的示例
+ # url: jdbc:sqlserver://127.0.0.1:1433;DatabaseName=${spring.datasource.dynamic.datasource.master.name} # SQLServer 连接的示例
+ username: root
+ password: linus,.123
+ # username: sa
+ # password: JSm:g(*%lU4ZAkz06cd52KqT3)i1?H7W
+ slave: # 模拟从库,可根据自己需要修改
+ name: yxscm
+ url: jdbc:mysql://222.71.165.188:3309/${spring.datasource.dynamic.datasource.slave.name}?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true # MySQL Connector/J 8.X 连接的示例
+ # url: jdbc:mysql://127.0.0.1:3306/${spring.datasource.dynamic.datasource.slave.name}?useSSL=false&allowPublicKeyRetrieval=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=CTT # MySQL Connector/J 5.X 连接的示例
+ # url: jdbc:postgresql://127.0.0.1:5432/${spring.datasource.dynamic.datasource.slave.name} # PostgreSQL 连接的示例
+ # url: jdbc:oracle:thin:@127.0.0.1:1521:xe # Oracle 连接的示例
+ # url: jdbc:sqlserver://127.0.0.1:1433;DatabaseName=${spring.datasource.dynamic.datasource.slave.name} # SQLServer 连接的示例
+ username: root
+ password: linus,.123
+ # username: sa
+ # password: JSm:g(*%lU4ZAkz06cd52KqT3)i1?H7W
# Redis 配置。Redisson 默认的配置足够使用,一般不需要进行调优
redis:
- host: 400-infra.server.iocoder.cn # 地址
+ host: 127.0.0.1 # 地址
port: 6379 # 端口
- database: 1 # 数据库索引
-# password: 123456 # 密码,建议生产环境开启
+ database: 0 # 数据库索引
+ password: 'qweasd,.123' # 密码,建议生产环境开启
--- #################### 定时任务相关配置 ####################
# Quartz 配置项,对应 QuartzProperties 配置类
spring:
quartz:
- auto-startup: true # 测试环境,需要开启 Job
+ auto-startup: false # 本地开发环境,尽量不要开启 Job
scheduler-name: schedulerName # Scheduler 名字。默认为 schedulerName
job-store-type: jdbc # Job 存储器类型。默认为 memory 表示内存,可选 jdbc 使用数据库。
wait-for-jobs-to-complete-on-shutdown: true # 应用关闭时,是否等待定时任务执行完成。默认为 false ,建议设置为 true
@@ -127,7 +137,7 @@ spring:
admin:
# Spring Boot Admin Client 客户端的相关配置
client:
- url: http://127.0.0.1:${server.port}/${spring.boot.admin.context-path} # 设置 Spring Boot Admin Server 地址
+ url: http://222.71.165.187:${server.port}/${spring.boot.admin.context-path} # 设置 Spring Boot Admin Server 地址
instance:
service-host-type: IP # 注册实例时,优先使用 IP [IP, HOST_NAME, CANONICAL_HOST_NAME]
# Spring Boot Admin Server 服务端的相关配置
@@ -137,11 +147,25 @@ spring:
logging:
file:
name: ${user.home}/logs/${spring.application.name}.log # 日志文件名,全路径
-
---- #################### 微信公众号相关配置 ####################
-wx: # 参见 https://github.com/Wechat-Group/WxJava/blob/develop/spring-boot-starters/wx-java-mp-spring-boot-starter/README.md 文档
- mp:
- # 公众号配置(必填)
+ level:
+ # 配置自己写的 MyBatis Mapper 打印日志
+ com.yunxi.scm.module.bpm.dal.mysql: debug
+ com.yunxi.scm.module.infra.dal.mysql: debug
+ com.yunxi.scm.module.infra.dal.mysql.job.JobLogMapper: INFO # 配置 JobLogMapper 的日志级别为 info
+ com.yunxi.scm.module.pay.dal.mysql: debug
+ com.yunxi.scm.module.pay.dal.mysql.notify.PayNotifyTaskMapper: INFO # 配置 JobLogMapper 的日志级别为 info
+ com.yunxi.scm.module.system.dal.mysql: debug
+ com.yunxi.scm.module.tool.dal.mysql: debug
+ com.yunxi.scm.module.member.dal.mysql: debug
+ com.yunxi.scm.module.trade.dal.mysql: debug
+ com.yunxi.scm.module.promotion.dal.mysql: debug
+ com.yunxi.scm.module.demo.dal.mysql: debug # demo模块 MyBatis 操作日志
+
+debug: false
+
+--- #################### 微信公众号、小程序相关配置 ####################
+wx:
+ mp: # 公众号配置(必填),参见 https://github.com/Wechat-Group/WxJava/blob/develop/spring-boot-starters/wx-java-mp-spring-boot-starter/README.md 文档
app-id: wx041349c6f39b268b
secret: 5abee519483bc9f8cb37ce280e814bd0
# 存储配置,解决 AccessToken 的跨节点的共享
@@ -150,8 +174,8 @@ wx: # 参见 https://github.com/Wechat-Group/WxJava/blob/develop/spring-boot-sta
key-prefix: wx # Redis Key 的前缀
http-client-type: HttpClient # 采用 HttpClient 请求微信公众号平台
miniapp: # 小程序配置(必填),参见 https://github.com/Wechat-Group/WxJava/blob/develop/spring-boot-starters/wx-java-miniapp-spring-boot-starter/README.md 文档
- appid: wx63c280fe3248a3e7
- secret: 6f270509224a7ae1296bbf1c8cb97aed
+ appid: wx62056c0d5e8db250
+ secret: 333ae72f41552af1e998fe1f54e1584a
config-storage:
type: RedisTemplate # 采用 RedisTemplate 操作 Redis,会自动从 Spring 中获取
key-prefix: wa # Redis Key 的前缀
@@ -161,6 +185,10 @@ wx: # 参见 https://github.com/Wechat-Group/WxJava/blob/develop/spring-boot-sta
# 芋道配置项,设置当前项目所有自定义的配置
yunxi:
+ captcha:
+ enable: false # 本地环境,暂时关闭图片验证码,方便登录等接口的测试;
+ security:
+ mock-enable: true
xss:
enable: false
exclude-urls: # 如下两个 url,仅仅是为了演示,去掉配置也没关系
@@ -169,7 +197,11 @@ yunxi:
pay:
order-notify-url: http://yunai.natapp1.cc/admin-api/pay/notify/order # 支付渠道的【支付】回调地址
refund-notify-url: http://yunai.natapp1.cc/admin-api/pay/notify/refund # 支付渠道的【退款】回调地址
- demo: true # 开启演示模式
+ access-log: # 访问日志的配置项
+ enable: false
+ error-code: # 错误码相关配置项
+ enable: false
+ demo: false # 关闭演示模式
justauth:
enabled: true
@@ -183,15 +215,14 @@ justauth:
client-secret: 1wTb7hYxnpT2TUbIeHGXGo7T0odav1ic10mLdyyATOw
agent-id: 1000004
ignore-check-redirect-uri: true
+ WECHAT_MINI_APP: # 微信小程序
+ client-id: ${wx.miniapp.appid}
+ client-secret: ${wx.miniapp.secret}
+ ignore-check-redirect-uri: true
+ ignore-check-state: true # 微信小程序,不会使用到 state,所以不进行校验
+
cache:
type: REDIS
prefix: 'social_auth_state:' # 缓存前缀,目前只对 Redis 缓存生效,默认 JUSTAUTH::STATE::
timeout: 24h # 超时时长,目前只对 Redis 缓存生效,默认 3 分钟
-wx:
- mp:
- useRedis: false
- defaultContent: \u60A8\u597D\uFF0C\u6709\u4EC0\u4E48\u95EE\u9898\uFF1F
- redisConfig:
- host: 127.0.0.1
- port: 6379
- password:
+