|
@@ -39,18 +39,18 @@ class ReorderChild extends Base
|
|
|
->findOrEmpty();
|
|
|
if (empty($sale)) return json_show(1004, '销售单不存在');
|
|
|
|
|
|
- //所有发货工单
|
|
|
- $orderOutChild = Db::name('order_out_child')
|
|
|
- ->where(['is_del' => 0, 'outChildCode' => array_unique(array_column($param['list'], 'outChildCode'))])
|
|
|
- ->column('outCode,wsm_code,num,status', 'outChildCode');
|
|
|
-
|
|
|
- $saleReturnAddr = Db::name('sale_returnaddr')
|
|
|
- ->field('id,return_num,is_sale_return_child')
|
|
|
- ->where(['is_del' => 0, 'returnCode' => $param['returnCode'], 'outCode' => $param['outCode']])
|
|
|
- ->findOrEmpty();
|
|
|
- if (empty($saleReturnAddr)) return json_show(1004, '该退货地址不存在');
|
|
|
- if ($saleReturnAddr['is_sale_return_child'] == 1) return json_show(1004, '该退货地址不能重复设置退货工单');
|
|
|
- if ($saleReturnAddr['return_num'] != array_sum(array_column($param['list'], 'return_num'))) return json_show(1004, '数量错误');
|
|
|
+ //所有发货工单
|
|
|
+ $orderOutChild = Db::name('order_out_child')
|
|
|
+ ->where(['is_del' => 0, 'outChildCode' => array_unique(array_column($param['list'], 'outChildCode'))])
|
|
|
+ ->column('outCode,wsm_code,num,status', 'outChildCode');
|
|
|
+
|
|
|
+ $saleReturnAddr = Db::name('sale_returnaddr')
|
|
|
+ ->field('id,return_num,is_sale_return_child')
|
|
|
+ ->where(['is_del' => 0, 'returnCode' => $param['returnCode'], 'outCode' => $param['outCode']])
|
|
|
+ ->findOrEmpty();
|
|
|
+ if (empty($saleReturnAddr)) return json_show(1004, '该退货地址不存在');
|
|
|
+ if ($saleReturnAddr['is_sale_return_child'] == 1) return json_show(1004, '该退货地址不能重复设置退货工单');
|
|
|
+ if ($saleReturnAddr['return_num'] != array_sum(array_column($param['list'], 'return_num'))) return json_show(1004, '数量错误');
|
|
|
|
|
|
|
|
|
$val_child = Validate::rule([
|
|
@@ -133,14 +133,16 @@ class ReorderChild extends Base
|
|
|
public function getList()
|
|
|
{
|
|
|
|
|
|
+ $param = $this->request->only(['page' => 1, 'size' => 10, 'returnCode' => '', 'status' => '', 'orderCode' => '', 'outCode' => '', 'outChildCode' => '', 'saleReturnChildCode' => '', 'order_type' => '', 'supplierNo' => '', 'is_authority' => 1], 'post', 'trim');
|
|
|
+
|
|
|
+ if ($param['is_authority'] == '0' && $param['returnCode'] == '' && $param['orderCode'] == '' && $param['outCode'] == '' && $param['outChildCode'] == '' && $param['saleReturnChildCode'] == '') return json_show('请选择筛选条件');
|
|
|
+
|
|
|
$db = Db::name('sale_return_child')
|
|
|
->alias('a')
|
|
|
->leftJoin('sale_return b', 'b.returnCode=a.returnCode and b.is_del=0')
|
|
|
->leftJoin('warehouse_info c', 'c.wsm_code=a.return_wsm_code and c.is_del=0')
|
|
|
->where('a.is_del', 0);
|
|
|
|
|
|
- $param = $this->request->only(['page' => 1, 'size' => 10, 'returnCode' => '', 'status' => '', 'orderCode' => '', 'outCode' => '', 'outChildCode' => '', 'saleReturnChildCode' => '', 'order_type' => '', 'supplierNo' => ''], 'post', 'trim');
|
|
|
-
|
|
|
if ($param['returnCode'] != '') $db->whereLike('a.returnCode', '%' . $param['returnCode'] . '%');
|
|
|
if ($param['status'] !== '') $db->where('a.status', $param['status']);
|
|
|
if ($param['orderCode'] != '') $db->whereLike('a.orderCode', '%' . $param['orderCode'] . '%');
|
|
@@ -150,26 +152,29 @@ class ReorderChild extends Base
|
|
|
if ($param['order_type'] !== '') $db->where('b.order_type', $param['order_type']);
|
|
|
if ($param['supplierNo'] != '') $db->whereLike('b.supplierNo', '%' . $param['supplierNo'] . '%');
|
|
|
|
|
|
- //供应商账号,只查询该供应商下所有数据
|
|
|
- if ($this->level == 3 && $param['supplierNo'] == '') return json_show(1004, '供应商账号时供应商编码不能为空');
|
|
|
-
|
|
|
- //1.超管,查看全部;
|
|
|
- //2.业务公司账号-申请人,初始状态只查看自己创建的;
|
|
|
- //3.业务公司账号-退回仓库负责人,只查看自己负责仓库的数据;
|
|
|
- //4.业务公司账号-数据共享接受人,共享给自己的数据;
|
|
|
- if ($this->level == 2) {
|
|
|
-
|
|
|
- //是否仓库负责人
|
|
|
- $is_contactor = Db::name('warehouse_info')
|
|
|
- ->field('id')
|
|
|
- ->where(['is_del' => 0, 'contactor' => $this->uid])
|
|
|
- ->findOrEmpty();
|
|
|
- if (empty($is_contactor)) {
|
|
|
- $role = $this->checkDataShare();
|
|
|
- $hand = resign_hand_user($this->uid, 0);
|
|
|
- $db->whereIn('b.apply_id', array_unique(array_merge($role[DataGroupModel::$type_全部], $hand)));
|
|
|
- } else {
|
|
|
- $db->where('`a`.`return_wsm_code` in ' . Db::name('warehouse_info')->field('wsm_code')->where(['is_del' => 0, 'contactor' => $this->uid])->buildSql());
|
|
|
+ //启用数据权限
|
|
|
+ if ($param['is_authority'] == 1) {
|
|
|
+ //供应商账号,只查询该供应商下所有数据
|
|
|
+ if ($this->level == 3 && $param['supplierNo'] == '') return json_show(1004, '供应商账号时供应商编码不能为空');
|
|
|
+
|
|
|
+ //1.超管,查看全部;
|
|
|
+ //2.业务公司账号-申请人,初始状态只查看自己创建的;
|
|
|
+ //3.业务公司账号-退回仓库负责人,只查看自己负责仓库的数据;
|
|
|
+ //4.业务公司账号-数据共享接受人,共享给自己的数据;
|
|
|
+ if ($this->level == 2) {
|
|
|
+
|
|
|
+ //是否仓库负责人
|
|
|
+ $is_contactor = Db::name('warehouse_info')
|
|
|
+ ->field('id')
|
|
|
+ ->where(['is_del' => 0, 'contactor' => $this->uid])
|
|
|
+ ->findOrEmpty();
|
|
|
+ if (empty($is_contactor)) {
|
|
|
+ $role = $this->checkDataShare();
|
|
|
+ $hand = resign_hand_user($this->uid, 0);
|
|
|
+ $db->whereIn('b.apply_id', array_unique(array_merge($role[DataGroupModel::$type_全部], $hand)));
|
|
|
+ } else {
|
|
|
+ $db->where('`a`.`return_wsm_code` in ' . Db::name('warehouse_info')->field('wsm_code')->where(['is_del' => 0, 'contactor' => $this->uid])->buildSql());
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|