getSelect($where, '', '', '*', 'id asc'); //盘点的商品信息 if(!empty($goodsList)){ $goods_id = array_unique(array_column($goodsList, "goods_id")); $SaleMGoodsModel = new SaleMGoodsModel(); $saleGoodsList = $SaleMGoodsModel->getFindFields(array('goods_id' => array('in', $goods_id)), "id,goods_id,sku_id,goods_num"); foreach ($goodsList as $key => &$val) { $val['inventory_goods_id'] = $val['id']; $val['inventory_num'] = round($val['inventory_num'], 3); //串号信息 if ($val['serial_number_state'] == 1) { $serialResult = $SerialClass->recordSerialList([ 'user_type' => 3, 'id' => $val['id'], 'serial_type' => 4, 'fields'=>'id,main_serial_number,auxiliary_serial_number_one,auxiliary_serial_number_two' ]); $val['serial_list'] = $serialResult['data']['list']; } foreach ($saleGoodsList as $ke => $va) { if (($val['goods_id'] == $va['goods_id']) && ($val['sku_id'] == $va['sku_id'])) { $val['id'] = $va['id']; $val['goods_num'] = round($va['goods_num'], 3); } } } } } break; case 4: case 6: if (!empty($inventory_order_id)) { $where['state'] = 1; $where['inventory_order_id'] = $inventory_order_id; $SInventoryGoodsModel = new SInventoryGoodsModel(); $goodsList = $SInventoryGoodsModel->getSelect($where, '', '', '*', 'id asc'); //盘点的商品信息 if(!empty($goodsList)){ $goods_id = array_unique(array_column($goodsList, "goods_id")); $SSaleMGoodsModel = new SSaleMGoodsModel(); $saleGoodsList = $SSaleMGoodsModel->getFindFields(array('goods_id' => array('in', $goods_id)), "id,goods_id,sku_id,goods_num"); foreach ($goodsList as $key => &$val) { $val['inventory_goods_id'] = $val['id']; $val['inventory_num'] = round($val['inventory_num'], 3); //串号信息 if ($val['serial_number_state'] == 1) { $serialResult = $SerialClass->recordSerialList([ 'user_type' => 4, 'id' => $val['id'], 'serial_type' => 4 ]); $val['serial_list'] = $serialResult['data']['list']; } foreach ($saleGoodsList as $ke => $va) { if (($val['goods_id'] == $va['goods_id']) && ($val['sku_id'] == $va['sku_id'])) { $val['id'] = $va['id']; $val['goods_num'] = round($va['goods_num'], 3); } } if ($supplier_type == 2) { $parameter = array( 'goods_id' => $val['goods_id'], 'sku_id' => $val['sku_id'], 'store_id' => $store_id, ); $val['pur_id'] = $SSaleMGoodsModel->getPurchaseId($parameter); } } } } break; } return callBack(statusCode()['success'],'查询成功',$goodsList?$goodsList:[]); } /** * 盘点商品记录 * @param $param * [ * user_type 3商户 4门店 6收银员 * order_id 盘点订单id * purchase_price_state 查看进价权限 1可以 2不可以 * supplier_type 1普通供货商 2寄售供货商 * type 0不变 1盘盈 2盘亏 * ] * @return mixed * [ * list 列表 * goods_species 商品种数 * quantity 盈亏数量 * amount 盈亏金额 * ] */ public function goodsRecordList($param) { if (in_array($param['type'], ['0', '1', '2'])) { $where['type'] = $param['type']; } $where['state'] = 1; $where['inventory_order_id'] = $param['order_id']; try { switch ($param['user_type']) { case 3: //商户 $InventoryGoodsModel = new InventoryGoodsModel(); break; case 4: case 6: //门店 $InventoryGoodsModel = new SInventoryGoodsModel(); $PurchaseModel = new SPurchaseOrderModel(); break; } $quantity = 0; // 盈亏数量 $amount = 0; //盈亏金额 $detailsList = $InventoryGoodsModel->getSelect($where, $page = '', $limit = ''); } catch (\Exception $e) { $detailsList = []; } if (!empty($detailsList)) { foreach ($detailsList as $key => &$val) { $val['index'] = $key + 1; $quantity += $val['num']; $amount += $val['subtotal']; $val['inventory_num'] = round($val['inventory_num'], 3); $val['sku_num'] = round($val['sku_num'], 3); $val['goods_num'] = round($val['goods_num'], 3); $val['num'] = round($val['num'], 3); if ($val['attribute_state'] == 2) { $val['goods_code'] = $val['sku_code']; $val['goods_number'] = $val['sku_goods_number']; } if ($param['purchase_price_state'] == 2) { $val['cost_price'] = '***'; $val['subtotal'] = '***'; } else { $val['cost_price'] = round($val['cost_price'], 2); $val['subtotal'] = round($val['subtotal'], 2); } if ($param['supplier_type'] == 2 && !empty($val['purchase_order_id'])) { $val['purchase_order_number'] = $PurchaseModel->getFindField(array('id' => $val['purchase_order_id']), "order_number"); } } } return callBack(statusCode()['success'], "查询成功", [ 'list' => $detailsList ? $detailsList : [], 'goods_species' => count($detailsList), 'quantity' => $quantity, 'amount' => $amount ]); } }