Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
Z
zptz-sass-kelaidian
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
李大见
zptz-sass-kelaidian
Commits
8759d01a
提交
8759d01a
authored
9月 14, 2024
作者:
李大见
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'master' of
http://gitlab.bluearp.com/ldj/zptz-sass-kelaidian
上级
14fd4367
e67b717f
隐藏空白字符变更
内嵌
并排
正在显示
6 个修改的文件
包含
163 行增加
和
40 行删除
+163
-40
AftersaleOrderController.php
...tp/Controllers/Api/MobileWeb/AftersaleOrderController.php
+17
-10
AftersaleOrderValidator.php
...ests/Validators/Api/MobileWeb/AftersaleOrderValidator.php
+44
-0
AftersaleOrderService.php
app/Services/Api/MobileWeb/AftersaleOrderService.php
+97
-29
LoginService.php
app/Services/Api/MobileWeb/LoginService.php
+1
-0
OrderListService.php
app/Services/Api/MobileWeb/OrderListService.php
+3
-1
api.php
routes/api.php
+1
-0
没有找到文件。
app/Http/Controllers/Api/MobileWeb/AftersaleOrderController.php
浏览文件 @
8759d01a
...
...
@@ -108,17 +108,24 @@ class AftersaleOrderController extends Controller
*/
public
function
upload
(
Request
$request
)
{
$session
=
$request
[
'session'
];
// if (empty($request['file'])) {
// return response()->json(['ErrorCode' => 2, 'ErrorMessage' => '请上传文件', 'Data' => []]);
// }
$request
[
'path'
]
=
'./afterSale/'
.
date
(
'Ym'
);
$return_data
=
DealPicService
::
upload
(
$request
);
if
(
$return_data
[
'code'
]
==
200
)
{
return
response
()
->
json
([
'ErrorCode'
=>
1
,
'ErrorMessage'
=>
'上传成功'
,
'Data'
=>
$return_data
[
'data'
]]);
}
else
{
return
response
()
->
json
([
'ErrorCode'
=>
2
,
'ErrorMessage'
=>
$return_data
[
'msg'
],
'Data'
=>
''
]);
// 验证数据
$error_message
=
$this
->
dataValidator
->
uploadValidator
(
$request
->
all
());
if
(
$error_message
)
{
return
response
()
->
json
([
'ErrorCode'
=>
ErrorInc
::
INVALID_PARAM
,
'ErrorMessage'
=>
$error_message
->
first
(),
'Data'
=>
[
$error_message
]]);
}
$return_data
=
AftersaleOrderService
::
upload
(
$request
->
all
());
return
response
()
->
json
(
$return_data
);
}
//删除图片
public
function
deletPic
(
Request
$request
){
// 验证数据
$error_message
=
$this
->
dataValidator
->
deletPicValidator
(
$request
->
all
());
if
(
$error_message
)
{
return
response
()
->
json
([
'ErrorCode'
=>
ErrorInc
::
INVALID_PARAM
,
'ErrorMessage'
=>
$error_message
->
first
(),
'Data'
=>
[
$error_message
]]);
}
$return_data
=
AftersaleOrderService
::
deletPic
(
$request
->
all
(),
$request
->
ip
());
return
response
()
->
json
(
$return_data
);
}
/**
...
...
app/Http/Requests/Validators/Api/MobileWeb/AftersaleOrderValidator.php
浏览文件 @
8759d01a
...
...
@@ -85,6 +85,50 @@ class AftersaleOrderValidator extends FormRequest
return
$validator
->
errors
();
}
}
// 日常反馈验证器
public
function
uploadValidator
(
$data
)
{
// 自定义错误消息
$messages
=
[
'id.required'
=>
'请选择售后单id'
,
'id.integer'
=>
'参数错误'
,
'file.required'
=>
'请输入反馈内容'
,
];
// 数据验证
$validator
=
Validator
::
make
(
$data
,
[
'id'
=>
'required|integer|min:1'
,
'file'
=>
'required'
,
],
$messages
);
// 判断数据验证是否成功
if
(
$validator
->
fails
())
{
return
$validator
->
errors
();
}
}
// 添加图片验证器
public
function
deletPicValidator
(
$data
)
{
// 自定义错误消息
$messages
=
[
'id.required'
=>
'请输入订单id'
,
'id.integer'
=>
'参数错误'
,
'file_id.required'
=>
'请输入图片类型'
,
'file_id.in'
=>
'参数错误'
,
];
// 数据验证
$validator
=
Validator
::
make
(
$data
,
[
'id'
=>
'required|integer|min:1'
,
'file_id'
=>
'required|integer|min:1'
,
],
$messages
);
// 判断数据验证是否成功
if
(
$validator
->
fails
())
{
return
$validator
->
errors
();
}
}
// 列表验证器
public
function
infoValidator
(
$data
)
...
...
app/Services/Api/MobileWeb/AftersaleOrderService.php
浏览文件 @
8759d01a
...
...
@@ -8,6 +8,8 @@ use Illuminate\Support\Facades\Redis;
use
Illuminate\Support\Facades\DB
;
use
BlueCity\Core\Inc\ErrorInc
;
use
App\Models
\
{
Admin
,
AdminInfor
,
FeedSales
,
GhPrice
,
GoodsBrand
,
InstallLine
,
...
...
@@ -24,9 +26,8 @@ use App\Models\{Admin,
SettlementMoney
,
SubmitPlease
,
User
,
OrderAfter
};
use
App\Services
\
{
BmmcService
,
Api\OrderManage\OrdersVehicleService
,
CommonService
};
OrderAfter
};
use
App\Services
\
{
BmmcService
,
Api\OrderManage\OrdersVehicleService
,
CommonService
,
DealPicService
};
class
AftersaleOrderService
extends
Model
{
...
...
@@ -67,7 +68,7 @@ class AftersaleOrderService extends Model
$wheres
=
CommonService
::
jointWhere
(
$wheres
);
$list_data
=
$list_data
->
whereRaw
(
$wheres
)
->
select
(
'id'
,
'after_num'
,
'shr_id'
,
'shr_name'
,
'shr_phone'
,
'shr_address'
,
'shr_sheng'
,
'shr_shi'
,
'shr_xian'
,
'good_names'
,
'create_time'
,
'deal_sertime'
,
'finish_time'
,
'status'
,
'day_time'
);
$list_data
=
$list_data
->
orderby
(
'id'
,
'desc'
);
$list_data
=
$list_data
->
paginate
(
$show_count
);
...
...
@@ -86,12 +87,12 @@ class AftersaleOrderService extends Model
$getStauasName
=
self
::
getStauasName
();
foreach
(
$list_items
as
$key
=>
$value
)
{
$list_items
[
$key
][
'stauasName'
]
=
$getStauasName
[
$value
[
'status'
]][
'name'
];
// // 获取第一个字符
// if(in_array($value['stauas'],[10,20])){
// $list_items[$key]['shr_phone'] = substr_replace($list_items[$key]['shr_phone'], '****', 3, 4);
// }
$mb_first
=
mb_substr
(
$value
[
'shr_name'
],
0
,
1
,
'utf-8'
);
$list_items
[
$key
][
'first_name'
]
=
$mb_first
;
$list_items
[
$key
][
'day_time'
]
=
empty
(
$value
[
'day_time'
])
?
'--'
:
$value
[
'day_time'
];
...
...
@@ -246,6 +247,8 @@ class AftersaleOrderService extends Model
$image
=
DB
::
table
(
'feedsales'
)
->
where
(
'gl_id'
,
$find_data
[
'id'
])
->
where
(
'sys_num'
,
$find_data
[
'sys_num'
])
->
where
(
'is_delect'
,
1
)
->
where
(
'type'
,
4
)
->
select
(
'id'
,
'feedback_pic as url'
)
->
get
();
if
(
in_array
(
$find_data
[
'status'
],[
1
])){
$find_data
[
'button'
]
=
[[
'action'
=>
'handle_ive'
,
'name'
=>
'立即处理'
]];
...
...
@@ -258,7 +261,86 @@ class AftersaleOrderService extends Model
$return_data
[
'image'
]
=
$image
;
return
[
'ErrorCode'
=>
1
,
'ErrorMessage'
=>
'操作成功'
,
'Data'
=>
$return_data
];
}
/**|---------------------------------------------------------------------------------
* @name 上传图片
* @param string id 售后单id
* @param string file 售后图片base64
* @retrun \Illuminate\Http\JsonResponse /multitype:array
* @author dou 2024/9/14 9:59
* |---------------------------------------------------------------------------------
*/
public
static
function
upload
(
$request
){
$session
=
$request
[
'session'
];
$find_data
=
OrderAfter
::
where
(
'id'
,
$request
[
'id'
])
->
first
();
if
(
$find_data
)
{
$request
[
'path'
]
=
'./afterSale/'
.
date
(
'Ym'
);
$return_data
=
DealPicService
::
addPic
(
$request
[
'file'
],
$request
[
'path'
]);
if
(
$return_data
){
$company_name
=
Admin
::
where
(
'id'
,
$session
[
'admin_id'
])
->
value
(
"company_name"
);
if
(
$session
[
'user_type'
]
==
1
){
$install_phone
=
InstallPerson
::
where
(
'admin_id'
,
$session
[
'install_id'
])
->
value
(
'install_phone'
);
//安装人员
}
else
{
$install_phone
=
AdminInfor
::
where
(
"admin_id"
,
$session
[
'admin_id'
])
->
value
(
'phone'
);
}
$poss
[
'type'
]
=
4
;
$poss
[
'gl_id'
]
=
$request
[
'id'
];
$poss
[
'install_name'
]
=
$session
[
'install_name'
];
$poss
[
'install_phone'
]
=
$install_phone
;
$poss
[
'install_time'
]
=
date
(
"Y-m-d H:i:s"
);
$poss
[
'admin_id'
]
=
$session
[
'admin_id'
];
$poss
[
'company_name'
]
=
$company_name
;
$poss
[
'feedback_status'
]
=
2
;
$poss
[
'feedback_pic'
]
=
$return_data
;
$poss
[
'sys_num'
]
=
$find_data
[
'sys_num'
];
$poss
[
'is_type'
]
=
1
;
$id
=
FeedSales
::
insertGetId
(
$poss
);
if
(
$id
){
return
[
'ErrorCode'
=>
1
,
'ErrorMessage'
=>
'操作成功'
,
'Data'
=>
[
'id'
=>
$id
,
'url'
=>
$return_data
]];
}
else
{
return
[
'ErrorCode'
=>
ErrorInc
::
DATA_EMPTY
,
'ErrorMessage'
=>
'操作失败'
,
'Data'
=>
$return_data
];
}
}
else
{
return
[
'ErrorCode'
=>
ErrorInc
::
DATA_EMPTY
,
'ErrorMessage'
=>
'操作失败'
,
'Data'
=>
$return_data
];
}
}
else
{
return
[
'ErrorCode'
=>
ErrorInc
::
DATA_EMPTY
,
'ErrorMessage'
=>
'未查询到售后单'
,
'Data'
=>
[]];
}
}
/**|---------------------------------------------------------------------------------
* @name 删除图片
* @param string id 工单id
* @param string type 图片类型
* @retrun \Illuminate\Http\JsonResponse /multitype:array
* @author dou 2024/9/12 11:56
* |---------------------------------------------------------------------------------
*/
public
static
function
deletPic
(
$request
,
$ip
){
$session
=
$request
[
'session'
];
$find_data
=
OrderAfter
::
where
(
'id'
,
$request
[
'id'
])
->
first
();
if
(
$find_data
)
{
$feedback
=
FeedSales
::
where
(
'id'
,
$request
[
'file_id'
])
->
where
(
'gl_id'
,
$request
[
'id'
])
->
where
(
'is_delect'
,
1
)
->
value
(
'id'
);
if
(
$feedback
){
$res
=
FeedSales
::
where
(
'id'
,
$request
[
'file_id'
])
->
where
(
'gl_id'
,
$request
[
'id'
])
->
update
([
'is_delect'
=>
2
]);
if
(
$res
)
{
$typename
=
'删除'
.
$request
[
'id'
]
.
'图'
;
CommonService
::
inserting_log
(
$typename
,
$find_data
[
'sys_num'
],
'订单('
.
$find_data
[
'serial_number'
]
.
')'
,
'派工单web'
,
$session
,
$ip
);
//日志
return
[
'ErrorCode'
=>
1
,
'ErrorMessage'
=>
'操作成功'
,
'Data'
=>
$res
];
}
else
{
return
[
'ErrorCode'
=>
ErrorInc
::
DATA_EMPTY
,
'ErrorMessage'
=>
'操作失败'
,
'Data'
=>
$res
];
}
}
else
{
return
[
'ErrorCode'
=>
1
,
'ErrorMessage'
=>
'操作成功'
,
'Data'
=>
[]];
}
}
else
{
return
[
'ErrorCode'
=>
ErrorInc
::
DATA_EMPTY
,
'ErrorMessage'
=>
'未查询到订单'
,
'Data'
=>
[]];
}
}
/**
* 申请完成
* @authors ldj
...
...
@@ -276,43 +358,29 @@ class AftersaleOrderService extends Model
return
[
'ErrorCode'
=>
2
,
'ErrorMessage'
=>
'售后状态错误'
,
'Data'
=>
[]];
}
Db
::
beginTransaction
();
$rest
=
CommonService
::
accMe
(
$find_data
[
'sys_num'
],
"售后订单"
,
"【售后】申请完成,"
.
$data
[
'quality_content'
],
$serial_number
,
'2'
,
$session
[
'admin_groupnew'
],
$session
[
'admin_acc'
],
$session
[
'
id'
]);
$rest
=
CommonService
::
accMe
(
$find_data
[
'sys_num'
],
"售后订单"
,
"【售后】申请完成,"
.
$data
[
'quality_content'
],
$serial_number
,
'2'
,
2
,
$session
[
'install_name'
],
$session
[
'install_
id'
]);
if
(
$rest
){
if
(
$data
[
'file'
]
&&
$data
[
'file'
]
!=
[]){
$company_name
=
Admin
::
where
(
'id'
,
$find_data
[
'deal_serid'
])
->
value
(
"company_name"
);
$inst
=
InstallPerson
::
where
(
'admin_id'
,
$find_data
[
'deal_serid'
])
->
first
();
//安装人员
$sql
=
'INSERT INTO gone_feedsales (`type`,`gl_id`,`install_name`,`install_phone`,`install_time`,`admin_id`,`company_name`,`feedback_status`,`sys_num`,`is_type`,`feedback_pic`) VALUES'
;
$num
=
0
;
foreach
(
$data
[
'file'
]
as
$key
=>
$val
){
$num
=
$num
+
1
;
$sql
.=
"('"
.
$num
.
"','"
.
$data
[
'id'
]
.
"','"
.
$inst
[
'install_name'
]
.
"','"
.
$inst
[
'install_phone'
]
.
"','"
.
date
(
"Y-m-d H:i:s"
)
.
"','"
.
$find_data
[
'deal_serid'
]
.
"','"
.
$company_name
.
"','2','"
.
$find_data
[
'after_num'
]
.
"','2','"
.
$val
.
"'),"
;
}
$sql
=
substr
(
$sql
,
0
,
strlen
(
$sql
)
-
1
);
DB
::
insert
(
$sql
);
}
$get
[
'deal_time'
]
=
date
(
"Y-m-d H:i:s"
);
$get
[
'status'
]
=
'30'
;
$get
[
'trigyn'
]
=
'1'
;
if
(
$
Olaf
[
'get_id'
]
<
1
){
if
(
$
find_data
[
'get_id'
]
<
1
){
$get
[
'get_id'
]
=
$session
[
'id'
];
$get
[
'get_time'
]
=
date
(
"Y-m-d H:i:s"
);
}
$result
=
OrderAfter
::
where
(
'id'
,
$
Input
[
'id'
])
->
update
(
$get
);
$result
=
OrderAfter
::
where
(
'id'
,
$
data
[
'id'
])
->
update
(
$get
);
if
(
$result
){
$after_num
=
OrderAfter
::
where
(
'id'
,
$Input
[
'id'
])
->
select
(
'after_num'
,
'p_id'
)
->
first
();
$get
[
'after_num'
]
=
$after_num
[
'after_num'
];
DB
::
commit
();
$this
->
operatingTime
(
$Input
[
'sys_num'
],
'申请质保完成时间'
,
date
(
"Y-m-d H:i:s"
),
$Olaf
[
'order_num'
],
$session
[
'admin_acc'
]);
//订单操作时间
$this
->
insertingLog
(
"申请质保完成,"
,
$Input
[
'sys_num'
],
"订单("
.
$serial_number
.
")"
,
"派工单列表"
,
$request
->
ip
(),
$session
[
'admin_acc
'
]);
//日志
return
$this
->
success
(
'操作成功'
);
exit
;
self
::
operating_time
(
$find_data
[
'serial_number'
],
'申请质保完成时间'
,
date
(
"Y-m-d H:i:s"
),
$find_data
[
'order_num'
],
$session
);
CommonService
::
inserting_log
(
"申请质保完成,"
,
$find_data
[
'sys_num'
],
"订单("
.
$serial_number
.
")"
,
"售后列表web"
,
$session
,
$data
[
'ip
'
]);
//日志
return
[
'ErrorCode'
=>
1
,
'ErrorMessage'
=>
'操作成功'
,
'Data'
=>
[]]
;
}
else
{
DB
::
rollBack
();
return
$this
->
error
(
'操作失败'
,
ErrorInc
::
MYSQL_FAILED
);
exit
;
}
return
[
'ErrorCode'
=>
ErrorInc
::
MYSQL_FAILED
,
'ErrorMessage'
=>
'操作失败'
,
'Data'
=>
[]];
}
}
else
{
DB
::
rollBack
();
return
$this
->
error
(
'添加备注失败'
,
ErrorInc
::
MYSQL_FAILED
);
exit
;
return
[
'ErrorCode'
=>
ErrorInc
::
MYSQL_FAILED
,
'ErrorMessage'
=>
'添加备注失败'
,
'Data'
=>
[]]
;
}
}
...
...
app/Services/Api/MobileWeb/LoginService.php
浏览文件 @
8759d01a
...
...
@@ -171,6 +171,7 @@ class LoginService
->
update
([
'priority'
=>
2
,
'update_time'
=>
date
(
'Y-m-d H:i:s'
)]);
$find_data
=
DB
::
table
(
'installation_master'
)
->
where
(
'check_code'
,
$find_person
[
'check_code'
])
->
where
(
'type'
,
$request
[
'user_type'
])
->
value
(
'id'
);
if
(
$find_data
){
return
DB
::
table
(
'installation_master'
)
...
...
app/Services/Api/MobileWeb/OrderListService.php
浏览文件 @
8759d01a
...
...
@@ -1033,7 +1033,9 @@ class OrderListService extends Model
->
where
(
'is_delect'
,
1
)
->
value
(
'id'
);
if
(
$feedback
){
$res
=
Feedback
::
where
(
'type'
,
$request
[
'type'
])
->
update
([
'is_delect'
=>
2
]);
$res
=
Feedback
::
where
(
'type'
,
$request
[
'type'
])
->
where
(
'gl_id'
,
$orderListArr
[
'id'
])
->
update
([
'is_delect'
=>
2
]);
if
(
$res
)
{
$arr
[
'type_name'
]
=
self
::
getPicName
(
$request
[
'type'
]);
//'1';
$typename
=
'删除'
.
$arr
[
'type_name'
]
.
'图'
;
...
...
routes/api.php
浏览文件 @
8759d01a
...
...
@@ -1468,6 +1468,7 @@ Route::namespace('Api')->group(function () {
Route
::
post
(
'w1/after/info'
,
'MobileWeb\AftersaleOrderController@info'
);
//详情
Route
::
post
(
'w1/after/addAfterSalePic'
,
'MobileWeb\AftersaleOrderController@addAfterSalePic'
);
//上传售后图片
Route
::
post
(
'w1/after/upload'
,
'MobileWeb\AftersaleOrderController@upload'
);
//上传售后图片
Route
::
post
(
'w1/after/deletPic'
,
'MobileWeb\AftersaleOrderController@deletPic'
);
//删除图片
Route
::
post
(
'w1/after/quality'
,
'MobileWeb\AftersaleOrderController@quality'
);
//申请完成
// 账单列表
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论