From f33ba89f9f1fbe318e95fb0c79225992ab423a2c Mon Sep 17 00:00:00 2001 From: "1213317725@qq.com" <1213317725@qq.com> Date: Wed, 21 May 2025 19:25:44 +0800 Subject: [PATCH] 1 --- admin/src/app/api/service.ts | 23 +- admin/src/app/api/user_feedback.ts | 25 +- admin/src/app/lang/zh-cn/service.service.json | 54 +- .../zh-cn/user_feedback.user_feedback.json | 26 +- .../components/customer-resources-edit.vue | 31 + .../customer_resources/customer_resources.vue | 48 +- .../src/app/views/departments/departments.vue | 4 +- .../views/member/components/edit-member.vue | 3 + .../components/order-table-edit.vue | 54 +- .../views/service/components/service-edit.vue | 599 +++++++++--------- admin/src/app/views/service/service.vue | 531 ++++++---------- .../components/user-feedback-edit.vue | 380 +++++------ .../app/views/user_feedback/user_feedback.vue | 400 ++++++------ .../customer_resources/CustomerResources.php | 4 + .../controller/departments/Departments.php | 8 +- .../controller/order_table/OrderTable.php | 9 +- .../adminapi/controller/service/Service.php | 7 - .../controller/user_feedback/UserFeedback.php | 8 +- niucloud/app/adminapi/route/service.php | 1 + niucloud/app/adminapi/route/user_feedback.php | 3 + .../customer_resources/CustomerResources.php | 13 + niucloud/app/model/service/Service.php | 96 --- .../app/model/user_feedback/UserFeedback.php | 44 +- .../CustomerResourcesService.php | 32 +- .../admin/departments/DepartmentsService.php | 13 +- .../admin/order_table/OrderTableService.php | 12 +- .../service/admin/service/ServiceService.php | 2 +- .../user_feedback/UserFeedbackService.php | 10 +- .../app/validate/order_table/OrderTable.php | 4 +- .../validate/user_feedback/UserFeedback.php | 6 +- 30 files changed, 1108 insertions(+), 1342 deletions(-) diff --git a/admin/src/app/api/service.ts b/admin/src/app/api/service.ts index 9fcbb5e4..a9b01e82 100644 --- a/admin/src/app/api/service.ts +++ b/admin/src/app/api/service.ts @@ -1,5 +1,7 @@ import request from '@/utils/request' + + // USER_CODE_BEGIN -- service /** * 获取服务列表 @@ -7,7 +9,7 @@ import request from '@/utils/request' * @returns */ export function getServiceList(params: Record) { - return request.get(`service/service`, { params }) + return request.get(`service/service`, {params}) } /** @@ -16,7 +18,7 @@ export function getServiceList(params: Record) { * @returns */ export function getServiceInfo(id: number) { - return request.get(`service/service/${id}`) + return request.get(`service/service/${id}`); } /** @@ -25,10 +27,7 @@ export function getServiceInfo(id: number) { * @returns */ export function addService(params: Record) { - return request.post('service/service', params, { - showErrorMessage: true, - showSuccessMessage: true, - }) + return request.post('service/service', params, { showErrorMessage: true, showSuccessMessage: true }) } /** @@ -38,10 +37,7 @@ export function addService(params: Record) { * @returns */ export function editService(params: Record) { - return request.put(`service/service/${params.id}`, params, { - showErrorMessage: true, - showSuccessMessage: true, - }) + return request.put(`service/service/${params.id}`, params, { showErrorMessage: true, showSuccessMessage: true }) } /** @@ -50,10 +46,9 @@ export function editService(params: Record) { * @returns */ export function deleteService(id: number) { - return request.delete(`service/service/${id}`, { - showErrorMessage: true, - showSuccessMessage: true, - }) + return request.delete(`service/service/${id}`, { showErrorMessage: true, showSuccessMessage: true }) } + + // USER_CODE_END -- service diff --git a/admin/src/app/api/user_feedback.ts b/admin/src/app/api/user_feedback.ts index c6a55bfc..68e0cabf 100644 --- a/admin/src/app/api/user_feedback.ts +++ b/admin/src/app/api/user_feedback.ts @@ -1,5 +1,7 @@ import request from '@/utils/request' + + // USER_CODE_BEGIN -- user_feedback /** * 获取用户反馈信息列表 @@ -7,7 +9,7 @@ import request from '@/utils/request' * @returns */ export function getUserFeedbackList(params: Record) { - return request.get(`user_feedback/user_feedback`, { params }) + return request.get(`user_feedback/user_feedback`, {params}) } /** @@ -16,7 +18,7 @@ export function getUserFeedbackList(params: Record) { * @returns */ export function getUserFeedbackInfo(id: number) { - return request.get(`user_feedback/user_feedback/${id}`) + return request.get(`user_feedback/user_feedback/${id}`); } /** @@ -25,10 +27,7 @@ export function getUserFeedbackInfo(id: number) { * @returns */ export function addUserFeedback(params: Record) { - return request.post('user_feedback/user_feedback', params, { - showErrorMessage: true, - showSuccessMessage: true, - }) + return request.post('user_feedback/user_feedback', params, { showErrorMessage: true, showSuccessMessage: true }) } /** @@ -38,10 +37,7 @@ export function addUserFeedback(params: Record) { * @returns */ export function editUserFeedback(params: Record) { - return request.put(`user_feedback/user_feedback/${params.id}`, params, { - showErrorMessage: true, - showSuccessMessage: true, - }) + return request.put(`user_feedback/user_feedback/${params.id}`, params, { showErrorMessage: true, showSuccessMessage: true }) } /** @@ -50,10 +46,11 @@ export function editUserFeedback(params: Record) { * @returns */ export function deleteUserFeedback(id: number) { - return request.delete(`user_feedback/user_feedback/${id}`, { - showErrorMessage: true, - showSuccessMessage: true, - }) + return request.delete(`user_feedback/user_feedback/${id}`, { showErrorMessage: true, showSuccessMessage: true }) +} + +export function getWithCustomerResourcesList(params: Record){ + return request.get('user_feedback/customer_resources_all', {params}) } // USER_CODE_END -- user_feedback diff --git a/admin/src/app/lang/zh-cn/service.service.json b/admin/src/app/lang/zh-cn/service.service.json index ff1a2f8e..5110f729 100644 --- a/admin/src/app/lang/zh-cn/service.service.json +++ b/admin/src/app/lang/zh-cn/service.service.json @@ -1,29 +1,27 @@ { - "id": "服务编号", - "idPlaceholder": "请输入服务编号", - "serviceName": "服务名称", - "serviceNamePlaceholder": "请输入服务名称", - "previewImageUrl": "服务预览图URL", - "previewImageUrlPlaceholder": "请输入服务预览图URL", - "description": "服务描述", - "descriptionPlaceholder": "请输入服务描述", - "serviceType": "服务类型", - "serviceTypePlaceholder": "请输入服务类型", - "executionRules": "服务执行规则", - "executionRulesPlaceholder": "请输入服务执行规则", - "staffReminder": "是否员工提醒: 1-是, 0-否", - "staffReminderPlaceholder": "请输入是否员工提醒: 1-是, 0-否", - "customerReminder": "是否客户提醒: 1-是, 0-否", - "customerReminderPlaceholder": "请输入是否客户提醒: 1-是, 0-否", - "customerConfirmation": "是否客户确认: 1-是, 0-否", - "customerConfirmationPlaceholder": "请输入是否客户确认: 1-是, 0-否", - "customerFeedback": "客户反馈内容", - "customerFeedbackPlaceholder": "请输入客户反馈内容", - "status": "状态", - "statusPlaceholder": "请输入状态", - "addService": "添加服务", - "updateService": "编辑服务", - "serviceDeleteTips": "确定要删除该数据吗?", - "startDate": "请选择开始时间", - "endDate": "请选择结束时间" -} + "serviceName":"服务名称", + "serviceNamePlaceholder":"请输入服务名称", + "previewImageUrl":"服务预览图", + "previewImageUrlPlaceholder":"请输入服务预览图", + "description":"服务描述", + "descriptionPlaceholder":"请输入服务描述", + "serviceType":"服务类型", + "serviceTypePlaceholder":"请输入服务类型", + "executionRules":"服务执行规则", + "executionRulesPlaceholder":"请输入服务执行规则", + "staffReminder":"是否员工提醒", + "staffReminderPlaceholder":"请输入是否员工提醒", + "customerReminder":"是否客户提醒", + "customerReminderPlaceholder":"请输入是否客户提醒", + "customerConfirmation":"是否客户确认", + "customerConfirmationPlaceholder":"请输入是否客户确认", + "customerFeedback":"客户反馈内容", + "customerFeedbackPlaceholder":"请输入客户反馈内容", + "status":"状态", + "statusPlaceholder":"请输入状态", + "addService":"添加服务", + "updateService":"编辑服务", + "serviceDeleteTips":"确定要删除该数据吗?", + "startDate":"请选择开始时间", + "endDate":"请选择结束时间" +} \ No newline at end of file diff --git a/admin/src/app/lang/zh-cn/user_feedback.user_feedback.json b/admin/src/app/lang/zh-cn/user_feedback.user_feedback.json index 034d20f5..37a9ed22 100644 --- a/admin/src/app/lang/zh-cn/user_feedback.user_feedback.json +++ b/admin/src/app/lang/zh-cn/user_feedback.user_feedback.json @@ -1,15 +1,13 @@ { - "id": "反馈编号", - "idPlaceholder": "请输入反馈编号", - "userId": "用户ID", - "userIdPlaceholder": "请输入用户ID", - "feedbackText": "反馈内容", - "feedbackTextPlaceholder": "请输入反馈内容", - "attachmentUrl": "附件URL(OSS对象存储)", - "attachmentUrlPlaceholder": "请输入附件URL(OSS对象存储)", - "addUserFeedback": "添加用户反馈信息", - "updateUserFeedback": "编辑用户反馈信息", - "userFeedbackDeleteTips": "确定要删除该数据吗?", - "startDate": "请选择开始时间", - "endDate": "请选择结束时间" -} + "userId":"客户名称", + "userIdPlaceholder":"全部", + "feedbackText":"反馈内容", + "feedbackTextPlaceholder":"请输入反馈内容", + "attachmentUrl":"附件", + "attachmentUrlPlaceholder":"请输入附件", + "addUserFeedback":"添加用户反馈信息", + "updateUserFeedback":"查看用户反馈信息", + "userFeedbackDeleteTips":"确定要删除该数据吗?", + "startDate":"请选择开始时间", + "endDate":"请选择结束时间" +} \ No newline at end of file diff --git a/admin/src/app/views/customer_resources/components/customer-resources-edit.vue b/admin/src/app/views/customer_resources/components/customer-resources-edit.vue index 26f5dc1f..6bccbc65 100644 --- a/admin/src/app/views/customer_resources/components/customer-resources-edit.vue +++ b/admin/src/app/views/customer_resources/components/customer-resources-edit.vue @@ -230,6 +230,26 @@ /> + + + + + + + + + @@ -410,6 +430,7 @@ import { ref, reactive, computed, watch } from 'vue' import { useDictionary } from '@/app/api/dict' import { t } from '@/lang' import type { FormInstance } from 'element-plus' +import { getMemberLabelAll } from '@/app/api/member' import { addCustomerResources, editCustomerResources, @@ -448,6 +469,7 @@ const initialFormData = { initial_intent: '', campus: '', status: '', + member_label:'', purchase_power: '', concept_awareness: '', @@ -461,6 +483,15 @@ const initialFormData = { second_visit_status: '', is_closed: '', } + + +const labelSelectData: any = ref(null) +// 获取全部标签 +const getMemberLabelAllFn = async () => { + labelSelectData.value = await (await getMemberLabelAll()).data +} +getMemberLabelAllFn() + const formData: Record = reactive({ ...initialFormData }) const formRef = ref() diff --git a/admin/src/app/views/customer_resources/customer_resources.vue b/admin/src/app/views/customer_resources/customer_resources.vue index ca1df18a..d6fa22ac 100644 --- a/admin/src/app/views/customer_resources/customer_resources.vue +++ b/admin/src/app/views/customer_resources/customer_resources.vue @@ -35,6 +35,24 @@ + + + + + + + @@ -93,6 +111,26 @@ :show-overflow-tooltip="true" /> + + + + + @@ -160,8 +198,9 @@ import Edit from '@/app/views/customer_resources/components/customer-resources-edit.vue' import Fp from '@/app/views/customer_resources/components/fp.vue' import Order from '@/app/views/order_table/components/order-table-edit.vue' - import Tc from '@/app/views/tc_dialog/tc_dialog.vue' + + import { getMemberLabelAll } from '@/app/api/member' import { useRouter, useRoute } from 'vue-router' const route = useRoute() @@ -179,6 +218,7 @@ "age": "", "gender": "", "phone_number": "", + "member_label" : "", 'type': '', "created_at" : "", "updated_at" : "" @@ -195,6 +235,12 @@ // const type = pageName == '业绩分配' ? 'yjfp' : 'khzy'; + // 获取全部标签 + const labelSelectData = ref([]) + const getMemberLabelAllFn = async () => { + labelSelectData.value = await (await getMemberLabelAll()).data + } + getMemberLabelAllFn() const modificationLog = (id : number) => { diff --git a/admin/src/app/views/departments/departments.vue b/admin/src/app/views/departments/departments.vue index ea937571..28c98635 100644 --- a/admin/src/app/views/departments/departments.vue +++ b/admin/src/app/views/departments/departments.vue @@ -25,7 +25,7 @@ diff --git a/admin/src/app/views/member/components/edit-member.vue b/admin/src/app/views/member/components/edit-member.vue index de5606e1..f2b76285 100644 --- a/admin/src/app/views/member/components/edit-member.vue +++ b/admin/src/app/views/member/components/edit-member.vue @@ -47,6 +47,7 @@ /> + + +
- + @@ -36,22 +36,25 @@ /> + + + + + + + + - + - - - - - - + @@ -88,13 +91,17 @@ import { addOrderTable, editOrderTable, getOrderTableInfo, getWithCustomerResour let showDialog = ref(false) const loading = ref(false) +function handleCourseChange(selectedId) { + const selectedCourse = courseIdList.value.find(item => item.id === selectedId) + formData.order_amount = selectedCourse ? selectedCourse.price : '' +} /** * 表单数据 */ const initialFormData = { id: '', resource_id: '', - order_status: '', + // order_status: '', payment_type: '', order_amount: '', course_id: '', @@ -110,11 +117,6 @@ const formRules = computed(() => { resource_id: [ { required: true, message: t('resourceIdPlaceholder'), trigger: 'blur' }, - ] -, - order_status: [ - { required: true, message: t('orderStatusPlaceholder'), trigger: 'blur' }, - ] , payment_type: [ @@ -168,12 +170,12 @@ const confirm = async (formEl: FormInstance | undefined) => { } // 获取字典数据 - let order_statusList = ref([]) - const order_statusDictList = async () => { - order_statusList.value = await (await useDictionary('order_status')).data.dictionary - } - order_statusDictList(); - watch(() => order_statusList.value, () => { formData.order_status = order_statusList.value[0].value }) + // let order_statusList = ref([]) + // const order_statusDictList = async () => { + // order_statusList.value = await (await useDictionary('order_status')).data.dictionary + // } + // order_statusDictList(); + // watch(() => order_statusList.value, () => { formData.order_status = order_statusList.value[0].value }) let payment_typeList = ref([]) const payment_typeDictList = async () => { payment_typeList.value = await (await useDictionary('payment_type')).data.dictionary diff --git a/admin/src/app/views/service/components/service-edit.vue b/admin/src/app/views/service/components/service-edit.vue index b9903723..dceef127 100644 --- a/admin/src/app/views/service/components/service-edit.vue +++ b/admin/src/app/views/service/components/service-edit.vue @@ -1,311 +1,288 @@ - - - - - - + + + + + + diff --git a/admin/src/app/views/service/service.vue b/admin/src/app/views/service/service.vue index a5044402..1abbdbe8 100644 --- a/admin/src/app/views/service/service.vue +++ b/admin/src/app/views/service/service.vue @@ -1,321 +1,210 @@ - - - - - + + + + + diff --git a/admin/src/app/views/user_feedback/components/user-feedback-edit.vue b/admin/src/app/views/user_feedback/components/user-feedback-edit.vue index 063f268f..62f6b012 100644 --- a/admin/src/app/views/user_feedback/components/user-feedback-edit.vue +++ b/admin/src/app/views/user_feedback/components/user-feedback-edit.vue @@ -1,205 +1,175 @@ - - - - - - + + + + + + diff --git a/admin/src/app/views/user_feedback/user_feedback.vue b/admin/src/app/views/user_feedback/user_feedback.vue index 33442ab3..d65c4151 100644 --- a/admin/src/app/views/user_feedback/user_feedback.vue +++ b/admin/src/app/views/user_feedback/user_feedback.vue @@ -1,223 +1,177 @@ - - - - - + + + + + diff --git a/niucloud/app/adminapi/controller/customer_resources/CustomerResources.php b/niucloud/app/adminapi/controller/customer_resources/CustomerResources.php index 0564a1e4..f72cee5b 100644 --- a/niucloud/app/adminapi/controller/customer_resources/CustomerResources.php +++ b/niucloud/app/adminapi/controller/customer_resources/CustomerResources.php @@ -32,6 +32,7 @@ class CustomerResources extends BaseAdminController ["age",""], ["gender",""], ["phone_number",""], + ['member_label', 0], ["type","khzy"], ["created_at",[]], ["updated_at",[]], @@ -69,6 +70,8 @@ class CustomerResources extends BaseAdminController ["initial_intent",""], ["campus",""], ["status",""], + ['member_label', []], + ["create_year_month",date("Y-m")], ["create_date",date("Y-m-d")], ["purchase_power",""], @@ -110,6 +113,7 @@ class CustomerResources extends BaseAdminController ["initial_intent",""], ["campus",""], ["status",""], + ['member_label', []], ["create_year_month",date("Y-m")], ["create_date",date("Y-m-d")], diff --git a/niucloud/app/adminapi/controller/departments/Departments.php b/niucloud/app/adminapi/controller/departments/Departments.php index 66bd8e7f..c445c87f 100644 --- a/niucloud/app/adminapi/controller/departments/Departments.php +++ b/niucloud/app/adminapi/controller/departments/Departments.php @@ -54,8 +54,7 @@ class Departments extends BaseAdminController ]); $this->validate($data, 'app\validate\departments\Departments.add'); - $id = (new DepartmentsService())->add($data); - return success('ADD_SUCCESS', ['id' => $id]); + return (new DepartmentsService())->add($data); } /** @@ -70,8 +69,7 @@ class Departments extends BaseAdminController ]); $this->validate($data, 'app\validate\departments\Departments.edit'); - (new DepartmentsService())->edit($id, $data); - return success('EDIT_SUCCESS'); + return (new DepartmentsService())->edit($id, $data); } /** @@ -84,7 +82,7 @@ class Departments extends BaseAdminController return success('DELETE_SUCCESS'); } - + public function getDepartmentsAll(){ return success(( new DepartmentsService())->getDepartmentsAll()); } diff --git a/niucloud/app/adminapi/controller/order_table/OrderTable.php b/niucloud/app/adminapi/controller/order_table/OrderTable.php index 567bc89f..195b0d8c 100644 --- a/niucloud/app/adminapi/controller/order_table/OrderTable.php +++ b/niucloud/app/adminapi/controller/order_table/OrderTable.php @@ -50,7 +50,7 @@ class OrderTable extends BaseAdminController public function add(){ $data = $this->request->params([ ["resource_id",0], - ["order_status",""], +// ["order_status",""], ["payment_type",""], ["order_amount",0.00], ["course_id",0], @@ -58,8 +58,7 @@ class OrderTable extends BaseAdminController ]); $this->validate($data, 'app\validate\order_table\OrderTable.add'); - $id = (new OrderTableService())->add($data); - return success('ADD_SUCCESS', ['id' => $id]); + return (new OrderTableService())->add($data); } /** @@ -70,7 +69,7 @@ class OrderTable extends BaseAdminController public function edit(int $id){ $data = $this->request->params([ ["resource_id",0], - ["order_status",""], +// ["order_status",""], ["payment_type",""], ["order_amount",0.00], ["course_id",0], @@ -92,7 +91,7 @@ class OrderTable extends BaseAdminController return success('DELETE_SUCCESS'); } - + public function getCustomerResourcesAll(){ return success(( new OrderTableService())->getCustomerResourcesAll()); } diff --git a/niucloud/app/adminapi/controller/service/Service.php b/niucloud/app/adminapi/controller/service/Service.php index b13f7c9f..7f141dbe 100644 --- a/niucloud/app/adminapi/controller/service/Service.php +++ b/niucloud/app/adminapi/controller/service/Service.php @@ -29,14 +29,7 @@ class Service extends BaseAdminController public function lists(){ $data = $this->request->params([ ["service_name",""], - ["preview_image_url",""], - ["description",""], ["service_type",""], - ["execution_rules",""], - ["staff_reminder",""], - ["customer_reminder",""], - ["customer_confirmation",""], - ["customer_feedback",""], ["status",""] ]); return success((new ServiceService())->getPage($data)); diff --git a/niucloud/app/adminapi/controller/user_feedback/UserFeedback.php b/niucloud/app/adminapi/controller/user_feedback/UserFeedback.php index d68abfef..d2d5bcb4 100644 --- a/niucloud/app/adminapi/controller/user_feedback/UserFeedback.php +++ b/niucloud/app/adminapi/controller/user_feedback/UserFeedback.php @@ -28,9 +28,7 @@ class UserFeedback extends BaseAdminController */ public function lists(){ $data = $this->request->params([ - ["user_id",""], - ["feedback_text",""], - ["attachment_url",""] + ["user_id",""] ]); return success((new UserFeedbackService())->getPage($data)); } @@ -88,4 +86,8 @@ class UserFeedback extends BaseAdminController } + public function getCustomerResourcesAll(){ + return success(( new UserFeedbackService())->getCustomerResourcesAll()); + } + } diff --git a/niucloud/app/adminapi/route/service.php b/niucloud/app/adminapi/route/service.php index 84c5ee4f..e810689f 100644 --- a/niucloud/app/adminapi/route/service.php +++ b/niucloud/app/adminapi/route/service.php @@ -15,6 +15,7 @@ use app\adminapi\middleware\AdminCheckRole; use app\adminapi\middleware\AdminCheckToken; use app\adminapi\middleware\AdminLog; + // USER_CODE_BEGIN -- service Route::group('service', function () { diff --git a/niucloud/app/adminapi/route/user_feedback.php b/niucloud/app/adminapi/route/user_feedback.php index f8a6d6c7..3213d812 100644 --- a/niucloud/app/adminapi/route/user_feedback.php +++ b/niucloud/app/adminapi/route/user_feedback.php @@ -14,6 +14,7 @@ use think\facade\Route; use app\adminapi\middleware\AdminCheckRole; use app\adminapi\middleware\AdminCheckToken; use app\adminapi\middleware\AdminLog; + // USER_CODE_BEGIN -- user_feedback Route::group('user_feedback', function () { @@ -29,6 +30,8 @@ Route::group('user_feedback', function () { //删除用户反馈信息 Route::delete('user_feedback/:id', 'user_feedback.UserFeedback/del'); + Route::get('customer_resources_all','user_feedback.UserFeedback/getCustomerResourcesAll'); + })->middleware([ AdminCheckToken::class, AdminCheckRole::class, diff --git a/niucloud/app/model/customer_resources/CustomerResources.php b/niucloud/app/model/customer_resources/CustomerResources.php index bfcc6515..6183d5c8 100644 --- a/niucloud/app/model/customer_resources/CustomerResources.php +++ b/niucloud/app/model/customer_resources/CustomerResources.php @@ -15,6 +15,7 @@ use app\model\dict\Dict; use app\model\resource_sharing\ResourceSharing; use app\model\six_speed\SixSpeed; use core\base\BaseModel; +use think\db\Query; use think\model\concern\SoftDelete; use think\model\relation\HasMany; use think\model\relation\HasOne; @@ -57,6 +58,10 @@ class CustomerResources extends BaseModel */ protected $defaultSoftDelete = 0; + protected $json = [ 'member_label' ]; + + protected $jsonAssoc = true; + //定义一个常量数组-字段中文映射 const FieldZh = [ 'id' => '编号', @@ -96,6 +101,14 @@ class CustomerResources extends BaseModel } } + public function searchMemberLabelAttr(Query $query, $value, $data) + { + if ($value) { + $query->whereLike('member_label', '%"' . $value . '"%'); + } + } + + /** * 搜索器:客户资源联系电话 * @param $value diff --git a/niucloud/app/model/service/Service.php b/niucloud/app/model/service/Service.php index 0ad8b2f4..5ea59fbe 100644 --- a/niucloud/app/model/service/Service.php +++ b/niucloud/app/model/service/Service.php @@ -50,18 +50,6 @@ class Service extends BaseModel */ protected $defaultSoftDelete = 0; - /** - * 搜索器:服务服务编号 - * @param $value - * @param $data - */ - public function searchIdAttr($query, $value, $data) - { - if ($value) { - $query->where("id", $value); - } - } - /** * 搜索器:服务服务名称 * @param $value @@ -74,30 +62,6 @@ class Service extends BaseModel } } - /** - * 搜索器:服务服务预览图URL - * @param $value - * @param $data - */ - public function searchPreviewImageUrlAttr($query, $value, $data) - { - if ($value) { - $query->where("preview_image_url", $value); - } - } - - /** - * 搜索器:服务服务描述 - * @param $value - * @param $data - */ - public function searchDescriptionAttr($query, $value, $data) - { - if ($value) { - $query->where("description", $value); - } - } - /** * 搜索器:服务服务类型 * @param $value @@ -110,66 +74,6 @@ class Service extends BaseModel } } - /** - * 搜索器:服务服务执行规则 - * @param $value - * @param $data - */ - public function searchExecutionRulesAttr($query, $value, $data) - { - if ($value) { - $query->where("execution_rules", $value); - } - } - - /** - * 搜索器:服务是否员工提醒: 1-是, 0-否 - * @param $value - * @param $data - */ - public function searchStaffReminderAttr($query, $value, $data) - { - if ($value) { - $query->where("staff_reminder", $value); - } - } - - /** - * 搜索器:服务是否客户提醒: 1-是, 0-否 - * @param $value - * @param $data - */ - public function searchCustomerReminderAttr($query, $value, $data) - { - if ($value) { - $query->where("customer_reminder", $value); - } - } - - /** - * 搜索器:服务是否客户确认: 1-是, 0-否 - * @param $value - * @param $data - */ - public function searchCustomerConfirmationAttr($query, $value, $data) - { - if ($value) { - $query->where("customer_confirmation", $value); - } - } - - /** - * 搜索器:服务客户反馈内容 - * @param $value - * @param $data - */ - public function searchCustomerFeedbackAttr($query, $value, $data) - { - if ($value) { - $query->where("customer_feedback", $value); - } - } - /** * 搜索器:服务状态 * @param $value diff --git a/niucloud/app/model/user_feedback/UserFeedback.php b/niucloud/app/model/user_feedback/UserFeedback.php index 30dc4904..1248b8e3 100644 --- a/niucloud/app/model/user_feedback/UserFeedback.php +++ b/niucloud/app/model/user_feedback/UserFeedback.php @@ -16,6 +16,8 @@ use think\model\concern\SoftDelete; use think\model\relation\HasMany; use think\model\relation\HasOne; +use app\model\customer_resources\CustomerResources; + /** * 用户反馈信息模型 * Class UserFeedback @@ -43,19 +45,7 @@ class UserFeedback extends BaseModel /** - * 搜索器:用户反馈信息反馈编号 - * @param $value - * @param $data - */ - public function searchIdAttr($query, $value, $data) - { - if ($value) { - $query->where("id", $value); - } - } - - /** - * 搜索器:用户反馈信息用户ID + * 搜索器:用户反馈信息客户名称 * @param $value * @param $data */ @@ -66,33 +56,13 @@ class UserFeedback extends BaseModel } } - /** - * 搜索器:用户反馈信息反馈内容 - * @param $value - * @param $data - */ - public function searchFeedbackTextAttr($query, $value, $data) - { - if ($value) { - $query->where("feedback_text", $value); - } - } - - /** - * 搜索器:用户反馈信息附件URL(OSS对象存储) - * @param $value - * @param $data - */ - public function searchAttachmentUrlAttr($query, $value, $data) - { - if ($value) { - $query->where("attachment_url", $value); - } - } - + public function customerResources(){ + return $this->hasOne(CustomerResources::class, 'id', 'user_id')->joinType('left')->withField('name,id')->bind(['user_id_name'=>'name']); + } + } diff --git a/niucloud/app/service/admin/customer_resources/CustomerResourcesService.php b/niucloud/app/service/admin/customer_resources/CustomerResourcesService.php index 6f549033..52fdd479 100644 --- a/niucloud/app/service/admin/customer_resources/CustomerResourcesService.php +++ b/niucloud/app/service/admin/customer_resources/CustomerResourcesService.php @@ -19,6 +19,7 @@ use app\model\campus\Campus; use app\model\resource_sharing\ResourceSharing; use app\model\six_speed\SixSpeed; use app\model\six_speed_modification_log\SixSpeedModificationLog; +use app\service\admin\member\MemberLabelService; use core\base\BaseAdminService; @@ -66,9 +67,9 @@ class CustomerResourcesService extends BaseAdminService $where[] = ['b.shared_by','=',0]; } - - - + if($data['member_label']){ + $where[] = ['a.member_label','like',"%".$data['member_label']."%"]; + } $search_model = $this->model @@ -87,11 +88,9 @@ class CustomerResourcesService extends BaseAdminService } - $list = $this->pageQuery($search_model); - - - - return $list; + return $this->pageQuery($search_model, function ($item, $key) { + $item = $this->makeUp($item); + }); } /** @@ -101,7 +100,7 @@ class CustomerResourcesService extends BaseAdminService */ public function getInfo(int $id) { - $field = 'id,create_year_month,create_date,source,source_channel,consultant,name,age,gender,phone_number,demand,purchasing_power,cognitive_idea,optional_class_time,distance,decision_maker,initial_intent,campus,created_at,updated_at,deleted_at,status'; + $field = 'id,create_year_month,create_date,source,source_channel,member_label,consultant,name,age,gender,phone_number,demand,purchasing_power,cognitive_idea,optional_class_time,distance,decision_maker,initial_intent,campus,created_at,updated_at,deleted_at,status'; $info = $this->model->field($field)->where([['id', "=", $id]])->with(['personnel'])->findOrEmpty()->toArray(); @@ -109,7 +108,16 @@ class CustomerResourcesService extends BaseAdminService $data = $sixSpeed->where(['resource_id' => $id])->field("*,distance as distance_tow")->findOrEmpty()->toArray(); $info = $info+$data; - return $info; + return $this->makeUp($info); + } + + + public function makeUp($data){ + //会员标签 + if(!empty($data['member_label'])){ + $data['member_label_array'] = (new MemberLabelService())->getMemberLabelListByLabelIds($data['member_label']); + } + return $data; } /** @@ -128,6 +136,8 @@ class CustomerResourcesService extends BaseAdminService } $sixSpeed = new SixSpeed(); +// $data['member_label'] = json_encode($data['member_label']); + $res = $this->model->create($data); @@ -188,7 +198,7 @@ class CustomerResourcesService extends BaseAdminService $this->model->where([['id', '=', $id]])->update([ 'source' => $data['source'], 'source_channel' => $data['source_channel'], -// 'consultant' => $data['consultant'], + 'member_label' => $data['member_label'], 'name' => $data['name'], 'age' => $data['age'], 'gender' => $data['gender'], diff --git a/niucloud/app/service/admin/departments/DepartmentsService.php b/niucloud/app/service/admin/departments/DepartmentsService.php index 19001566..4cd99018 100644 --- a/niucloud/app/service/admin/departments/DepartmentsService.php +++ b/niucloud/app/service/admin/departments/DepartmentsService.php @@ -65,8 +65,12 @@ class DepartmentsService extends BaseAdminService */ public function add(array $data) { + + if($this->model->where(['department_name' => $data['department_name']])->find()){ + return fail("部门名称不能重复"); + } $res = $this->model->create($data); - return $res->id; + return success("操作成功"); } @@ -74,13 +78,14 @@ class DepartmentsService extends BaseAdminService * 部门编辑 * @param int $id * @param array $data - * @return bool */ public function edit(int $id, array $data) { - + if($this->model->where([['id', '<>', $id]])->where(['department_name' => $data['department_name']])->find()){ + return fail("部门名称不能重复"); + } $this->model->where([['id', '=', $id]])->update($data); - return true; + return success("操作成功"); } /** diff --git a/niucloud/app/service/admin/order_table/OrderTableService.php b/niucloud/app/service/admin/order_table/OrderTableService.php index 82adfc4a..cfd54c7b 100644 --- a/niucloud/app/service/admin/order_table/OrderTableService.php +++ b/niucloud/app/service/admin/order_table/OrderTableService.php @@ -69,15 +69,15 @@ class OrderTableService extends BaseAdminService public function add(array $data) { $personnel = new Personnel(); - $data['staff_id'] = $personnel->where(['sys_user_id' => $this->uid])->value("id"); - if(!$data['staff_id']){ - return fail("操作失败"); - } +// $data['staff_id'] = $personnel->where(['sys_user_id' => $this->uid])->value("id"); +// if(!$data['staff_id']){ +// return fail("操作失败"); +// } -// $data['staff_id'] = 1; + $data['staff_id'] = 1; $res = $this->model->create($data); - return $res->id; + return success("操作成功"); } diff --git a/niucloud/app/service/admin/service/ServiceService.php b/niucloud/app/service/admin/service/ServiceService.php index 25fee84d..92e73d81 100644 --- a/niucloud/app/service/admin/service/ServiceService.php +++ b/niucloud/app/service/admin/service/ServiceService.php @@ -39,7 +39,7 @@ class ServiceService extends BaseAdminService $field = 'id,service_name,preview_image_url,description,service_type,execution_rules,staff_reminder,customer_reminder,customer_confirmation,customer_feedback,status,created_at,updated_at,deleted_at'; $order = 'id desc'; - $search_model = $this->model->withSearch(["id","service_name","preview_image_url","description","service_type","execution_rules","staff_reminder","customer_reminder","customer_confirmation","customer_feedback","status"], $where)->field($field)->order($order); + $search_model = $this->model->withSearch(["service_name","service_type","status"], $where)->field($field)->order($order); $list = $this->pageQuery($search_model); return $list; } diff --git a/niucloud/app/service/admin/user_feedback/UserFeedbackService.php b/niucloud/app/service/admin/user_feedback/UserFeedbackService.php index 5cb4d753..0a5d0034 100644 --- a/niucloud/app/service/admin/user_feedback/UserFeedbackService.php +++ b/niucloud/app/service/admin/user_feedback/UserFeedbackService.php @@ -12,6 +12,7 @@ namespace app\service\admin\user_feedback; use app\model\user_feedback\UserFeedback; +use app\model\customer_resources\CustomerResources; use core\base\BaseAdminService; @@ -39,7 +40,7 @@ class UserFeedbackService extends BaseAdminService $field = 'id,user_id,feedback_text,attachment_url,created_at,updated_at'; $order = 'id desc'; - $search_model = $this->model->withSearch(["id","user_id","feedback_text","attachment_url"], $where)->field($field)->order($order); + $search_model = $this->model->withSearch(["user_id"], $where)->with(['customerResources'])->field($field)->order($order); $list = $this->pageQuery($search_model); return $list; } @@ -53,7 +54,7 @@ class UserFeedbackService extends BaseAdminService { $field = 'id,user_id,feedback_text,attachment_url,created_at,updated_at'; - $info = $this->model->field($field)->where([['id', "=", $id]])->findOrEmpty()->toArray(); + $info = $this->model->field($field)->where([['id', "=", $id]])->with(['customerResources'])->findOrEmpty()->toArray(); return $info; } @@ -95,5 +96,10 @@ class UserFeedbackService extends BaseAdminService } + public function getCustomerResourcesAll(){ + $customerResourcesModel = new CustomerResources(); + return $customerResourcesModel->select()->toArray(); + } + } diff --git a/niucloud/app/validate/order_table/OrderTable.php b/niucloud/app/validate/order_table/OrderTable.php index e027bebf..2c4087f8 100644 --- a/niucloud/app/validate/order_table/OrderTable.php +++ b/niucloud/app/validate/order_table/OrderTable.php @@ -38,8 +38,8 @@ class OrderTable extends BaseValidate ]; protected $scene = [ - "add" => ['resource_id', 'order_status', 'payment_type', 'order_amount', 'course_id', 'class_id'], - "edit" => ['resource_id', 'order_status', 'payment_type', 'order_amount', 'course_id', 'class_id'] + "add" => ['resource_id', 'payment_type', 'order_amount', 'course_id', 'class_id'], + "edit" => ['resource_id', 'payment_type', 'order_amount', 'course_id', 'class_id'] ]; } diff --git a/niucloud/app/validate/user_feedback/UserFeedback.php b/niucloud/app/validate/user_feedback/UserFeedback.php index 580c8ad8..e8a06258 100644 --- a/niucloud/app/validate/user_feedback/UserFeedback.php +++ b/niucloud/app/validate/user_feedback/UserFeedback.php @@ -20,13 +20,11 @@ class UserFeedback extends BaseValidate { protected $rule = [ - 'user_id' => 'require', - 'feedback_text' => 'require', + ]; protected $message = [ - 'user_id.require' => ['common_validate.require', ['user_id']], - 'feedback_text.require' => ['common_validate.require', ['feedback_text']], + ]; protected $scene = [