/** * 波次配置表插入一条记录 * @param array $data * @return number $insertId * @author czq */ public static function insertWaveConfigRow($data) { self::initDB(); $sql = "INSERT INTO " . self::$tablename . " SET " . array2sql($data); $query = self::$dbConn->query($sql); if ($query) { $insertId = self::$dbConn->insert_id(); return $insertId; } else { self::$errCode = "003"; self::$errMsg = "error"; return false; } }
/** * WaveBuildAct::get_wave_config() * 获取波次配置表信息 * @param int $waveType 配货单类型。1=>>单个发货单 2=>>单SKU 3=>>多SKU * @param integer $limitType 限制条件种类:1配货单 2单发货单上限 3单发货单拆分规则 * @return void */ public function get_wave_config($waveType, $limitType = 1) { $waveType = intval($waveType); $limitType = intval($limitType); $waveType = $waveType ? $waveType : 1; $limitType = $limitType ? $limitType : 1; $return = array(); $config = WhWaveConfigModel::select(array('waveType' => $waveType, 'limitType' => $limitType)); $config = $config[0]; unset($config['id'], $config['waveType'], $config['limitType']); //print_r($config);exit; return $config; }
public function view_edit() { $toplevel = 4; $secondlevel = 47; $messagetype = 0; //前端提示信息显示类型 $type = isset($_POST['editType']) ? $_POST['editType'] : ''; if (!empty($type)) { $waveEdit = A("whWaveEdit"); if ($type == 'waveBoxColor') { $waveEdit->act_waveColorEdit(); $boxmessage = $waveEdit::$errMsg; $messagetype = $waveEdit::$errCode; $this->smarty->assign('boxmessage', $boxmessage); } else { if ($type == 'waveAllocation') { $waveEdit->act_waveAllocation(); } } } $boxColors = array('蓝', '黄', '红', '绿', '紫'); $this->smarty->assign('messagetype', $messagetype); $this->smarty->assign('boxColors', $boxColors); //获取箱子颜色 $waveColors = WhWaveColorModel::getWaveBoxColor(); foreach ($waveColors as $wave) { if ($wave['waveZone'] == 1) { $this->smarty->assign('sameZoneColor', $wave['color']); } else { if ($wave['waveZone'] == 2) { $this->smarty->assign('crossZoneColor', $wave['color']); } else { if ($wave['waveZone'] == 3) { $this->smarty->assign('crossStoreyColor', $wave['color']); } } } } // 获取波次配置信息 $waveConfigs = WhWaveConfigModel::getWaveConfig(); foreach ($waveConfigs as $waveConfig) { if ($waveConfig['waveType'] == 1) { if ($waveConfig['limitType'] == 1) { //单个发货单 $this->smarty->assign('singleInvoice', $waveConfig); } else { if ($waveConfig['limitType'] == 2) { //单个发货单每个波次拆分 $this->smarty->assign('singleInvoiceSplit', $waveConfig); } else { if ($waveConfig['limitType'] == 3) { //单个发货单拆分起点 $this->smarty->assign('singleInvoiceSplitEach', $waveConfig); } } } } else { if ($waveConfig['waveType'] == 2) { //单SKU $this->smarty->assign('singleSku', $waveConfig); } else { if ($waveConfig['waveType'] == 3) { //多SKU $this->smarty->assign('skus', $waveConfig); } } } } $toptitle = '波次设置'; $this->smarty->assign('toptitle', $toptitle); $this->smarty->assign('toplevel', $toplevel); $this->smarty->assign('secondlevel', $secondlevel); $this->smarty->display('whWaveEdit.htm'); }
public function act_waveAllocation() { //单个发货单 $singleInvoiceWeight = isset($_POST['singleInvoiceWeight']) ? $_POST['singleInvoiceWeight'] : 0; $singleInvoiceVolume = isset($_POST['singleInvoiceVolume']) ? $_POST['singleInvoiceVolume'] : 0; $singleInvoiceSkuNum = isset($_POST['singleInvoiceSkuNum']) ? $_POST['singleInvoiceSkuNum'] : 0; $singleInvoiceId = isset($_POST['singleInvoiceId']) ? $_POST['singleInvoiceId'] : ''; //单SKU $singleSkuWeigh = isset($_POST['singleSkuWeigh']) ? $_POST['singleSkuWeigh'] : 0; $singleSkuVolume = isset($_POST['singleSkuVolume']) ? $_POST['singleSkuVolume'] : 0; $singleSkuNum = isset($_POST['singleSkuNum']) ? $_POST['singleSkuOrderNum'] : 0; $singleSkuOrderNum = isset($_POST['singleSkuOrderNum']) ? $_POST['singleSkuOrderNum'] : 0; $singleSkuId = isset($_POST['singleSkuId']) ? $_POST['singleSkuId'] : ''; //多SKU $skusWeight = isset($_POST['skusWeight']) ? $_POST['skusWeight'] : 0; $skusVolume = isset($_POST['skusVolume']) ? $_POST['skusVolume'] : 0; $skusNum = isset($_POST['skusNum']) ? $_POST['skusNum'] : 0; $skusOrderNum = isset($_POST['skusOrderNum']) ? $_POST['skusOrderNum'] : 0; $skusId = isset($_POST['skusId']) ? $_POST['skusId'] : ''; //单个发货单拆分起点 $singleInvoiceSplitWeight = isset($_POST['singleInvoiceSplitWeight']) ? $_POST['singleInvoiceSplitWeight'] : 0; $singleInvoiceSplitVolume = isset($_POST['singleInvoiceSplitVolume']) ? $_POST['singleInvoiceSplitVolume'] : 0; $singleInvoiceSplitSkuNum = isset($_POST['singleInvoiceSplitSkuNum']) ? $_POST['singleInvoiceSplitSkuNum'] : 0; $singleInvoiceSplitId = isset($_POST['singleInvoiceSplitId']) ? $_POST['singleInvoiceSplitId'] : ''; //单个发货单每个波次拆分 $singleInvoiceSplitEachWeigh = isset($_POST['singleInvoiceSplitEachWeigh']) ? $_POST['singleInvoiceSplitEachWeigh'] : 0; $singleInvoiceSplitEachVolume = isset($_POST['singleInvoiceSplitEachVolume']) ? $_POST['singleInvoiceSplitEachVolume'] : 0; $singleInvoiceSplitEachNum = isset($_POST['singleInvoiceSplitEachNum']) ? $_POST['singleInvoiceSplitEachNum'] : 0; $singleInvoiceSplitEachId = isset($_POST['singleInvoiceSplitEachId']) ? $_POST['singleInvoiceSplitEachId'] : ''; $insertData = array(array('limitWeight' => $singleInvoiceWeight, 'limitVolume' => $singleInvoiceVolume, 'limitSkuNums' => $singleInvoiceSkuNum, 'limitOrderNums' => 0, 'waveType' => 1, 'limitType' => 1, 'id' => $singleInvoiceId), array('limitWeight' => $singleSkuWeigh, 'limitVolume' => $singleSkuVolume, 'limitSkuNums' => $singleSkuNum, 'limitOrderNums' => $singleSkuOrderNum, 'waveType' => 2, 'limitType' => 1, 'id' => $singleSkuId), array('limitWeight' => $skusWeight, 'limitVolume' => $skusVolume, 'limitSkuNums' => $skusNum, 'limitOrderNums' => $skusOrderNum, 'waveType' => 3, 'limitType' => 1, 'id' => $skusId), array('limitWeight' => $singleInvoiceSplitWeight, 'limitVolume' => $singleInvoiceSplitVolume, 'limitSkuNums' => $singleInvoiceSplitSkuNum, 'limitOrderNums' => 0, 'waveType' => 1, 'limitType' => 2, 'id' => $singleInvoiceSplitId), array('limitWeight' => $singleInvoiceSplitEachWeigh, 'limitVolume' => $singleInvoiceSplitEachVolume, 'limitSkuNums' => $singleInvoiceSplitEachNum, 'limitOrderNums' => 0, 'waveType' => 1, 'limitType' => 3, 'id' => $singleInvoiceSplitEachId)); TransactionBaseModel::begin(); //开始事物 //插入数据 foreach ($insertData as $data) { $id = $data['id']; unset($data['id']); if (empty($id)) { $insertId = WhWaveConfigModel::insertWaveConfigRow($data); if (!$insertId) { self::$errCode = 101; self::$errMsg = "数据插入失败"; TransactionBaseModel::rollback(); return false; } } else { if (!WhWaveConfigModel::updateWaveConfig($data, ' AND id = ' . $id)) { self::$errCode = 102; self::$errMsg = "更新数据失败"; TransactionBaseModel::rollback(); return false; } } } TransactionBaseModel::commit(); return true; }