public function syn_data() { set_time_limit(0); es_session::close(); //同步,supplier_location表, deal表, youhui表, event表 , supplier 表 //总数 $page = intval($_REQUEST['p']) == 0 ? 1 : intval($_REQUEST['p']); if ($page == 1) { syn_dealing(); } $page_size = 5; $location_total = M("SupplierLocation")->count(); $deal_total = M("Deal")->count(); $youhui_total = M("Youhui")->count(); $event_total = M("Event")->count(); $supplier_total = M("Supplier")->count(); $count = max(array($location_total, $deal_total, $youhui_total, $event_total, $supplier_total)); $limit = ($page - 1) * $page_size . "," . $page_size; $location_list = M("SupplierLocation")->limit($limit)->findAll(); foreach ($location_list as $v) { recount_supplier_data_count($v['id'], "tuan"); recount_supplier_data_count($v['id'], "youhui"); recount_supplier_data_count($v['id'], "daijin"); recount_supplier_data_count($v['id'], "event"); recount_supplier_data_count($v['id'], "shop"); syn_supplier_location_match($v['id']); } $supplier_list = M("Supplier")->limit($limit)->findAll(); foreach ($supplier_list as $v) { syn_supplier_match($v['id']); } $deal_list = M("Deal")->limit($limit)->findAll(); foreach ($deal_list as $v) { syn_deal_match($v['id']); } $youhui_list = M("Youhui")->limit($limit)->findAll(); foreach ($youhui_list as $v) { syn_youhui_match($v['id']); } $event_list = M("Event")->limit($limit)->findAll(); foreach ($youhui_list as $v) { syn_event_match($v['id']); } if ($page * $page_size >= $count) { $this->assign("jumpUrl", U("Cache/index")); $ajax = intval($_REQUEST['ajax']); $data['status'] = 1; $data['info'] = "<div style='line-height:50px; text-align:center; color:#f30;'>同步成功</div><div style='text-align:center;'><input type='button' onclick='\$.weeboxs.close();' class='button' value='关闭' /></div>"; header("Content-Type:text/html; charset=utf-8"); exit(json_encode($data)); } else { $total_page = ceil($count / $page_size); $data['status'] = 0; $data['info'] = "共" . $total_page . "页,当前第" . $page . "页,等待更新下一页记录"; $data['url'] = U("Cache/syn_data", array("p" => $page + 1)); header("Content-Type:text/html; charset=utf-8"); exit(json_encode($data)); } }
public function update() { B('FilterString'); $data = M(MODULE_NAME)->create(); $data['publish_wait'] = 0; $log_info = M(MODULE_NAME)->where("id=" . intval($data['id']))->getField("name"); //开始验证有效性 $this->assign("jumpUrl", u(MODULE_NAME . "/edit", array("id" => $data['id']))); if (!check_empty($data['name'])) { $this->error("活动名称不能为空"); } $data['event_begin_time'] = trim($data['event_begin_time']) == '' ? 0 : to_timespan($data['event_begin_time']); $data['event_end_time'] = trim($data['event_end_time']) == '' ? 0 : to_timespan($data['event_end_time']); $data['submit_begin_time'] = trim($data['submit_begin_time']) == '' ? 0 : to_timespan($data['submit_begin_time']); $data['submit_end_time'] = trim($data['submit_end_time']) == '' ? 0 : to_timespan($data['submit_end_time']); // 更新数据 $list = M(MODULE_NAME)->save($data); if (false !== $list) { M("EventAreaLink")->where("event_id=" . $data['id'])->delete(); $area_ids = $_REQUEST['area_id']; foreach ($area_ids as $area_id) { $area_data['area_id'] = $area_id; $area_data['event_id'] = $data['id']; M("EventAreaLink")->add($area_data); } M("EventLocationLink")->where("event_id=" . $data['id'])->delete(); $location_ids = $_REQUEST['location_id']; foreach ($location_ids as $location_id) { $link_data = array(); $link_data['location_id'] = $location_id; $link_data['event_id'] = $data['id']; M("EventLocationLink")->add($link_data); recount_supplier_data_count($location_id, "event"); } $submit_ids = array(0); foreach ($_REQUEST['field_id'] as $k => $field_id) { $submit_ids[] = intval($field_id); $event_field = M("EventField")->getById(intval($field_id)); if ($event_field) { $event_field['event_id'] = $data['id']; $event_field['field_show_name'] = $_REQUEST['field_show_name'][$k]; $event_field['field_type'] = $_REQUEST['field_type'][$k]; $event_field['value_scope'] = $_REQUEST['value_scope'][$k]; $event_field['sort'] = $k; M("EventField")->save($event_field); } else { $event_field = array(); $event_field['event_id'] = $data['id']; $event_field['field_show_name'] = $_REQUEST['field_show_name'][$k]; $event_field['field_type'] = $_REQUEST['field_type'][$k]; $event_field['value_scope'] = $_REQUEST['value_scope'][$k]; $event_field['sort'] = $k; $submit_ids[] = M("EventField")->add($event_field); } } M("EventField")->where(array("event_id" => $data['id'], "id" => array("not in", $submit_ids)))->delete(); M("EventSubmitField")->where(array("field_id" => array("not in", $submit_ids), "event_id" => $data['id']))->delete(); M("EventCate")->where("id=" . $data['cate_id'])->setField("count", M("Event")->where("cate_id=" . $data['cate_id'])->count()); syn_event_match($data['id']); //成功提示 save_log($log_info . L("UPDATE_SUCCESS"), 1); $this->success(L("UPDATE_SUCCESS")); } else { //错误提示 save_log($log_info . L("UPDATE_FAILED"), 0); $this->error(L("UPDATE_FAILED"), 0, $log_info . L("UPDATE_FAILED")); } }
public function update() { B('FilterString'); $data = M(MODULE_NAME)->create(); //对于商户请求操作 if (intval($_REQUEST['edit_type']) == 2 && intval($_REQUEST['event_id']) > 0) { //商户提交修改审核 $event_submit_id = intval($_REQUEST['id']); $data['id'] = intval($_REQUEST['event_id']); } $data['publish_wait'] = 0; $log_info = M(MODULE_NAME)->where("id=" . intval($data['id']))->getField("name"); //开始验证有效性 $this->assign("jumpUrl", u(MODULE_NAME . "/edit", array("id" => $data['id']))); if (!check_empty($data['name'])) { $this->error("活动名称不能为空"); } if ($data['city_id'] == 0) { $this->error(L("DEAL_CITY_EMPTY_TIP")); } $city_info = M("DealCity")->where("id=" . intval($data['city_id']))->find(); if ($city_info['pid'] == 0) { $this->error("只能选择城市,不能选择省份"); } $data['event_begin_time'] = strim($data['event_begin_time']) == '' ? 0 : to_timespan($data['event_begin_time']); $data['event_end_time'] = strim($data['event_end_time']) == '' ? 0 : to_timespan($data['event_end_time']); $data['submit_begin_time'] = strim($data['submit_begin_time']) == '' ? 0 : to_timespan($data['submit_begin_time']); $data['submit_end_time'] = strim($data['submit_end_time']) == '' ? 0 : to_timespan($data['submit_end_time']); // 更新数据 $list = M(MODULE_NAME)->save($data); if (false !== $list) { M("EventAreaLink")->where("event_id=" . $data['id'])->delete(); $area_ids = $_REQUEST['area_id']; foreach ($area_ids as $area_id) { $area_data['area_id'] = $area_id; $area_data['event_id'] = $data['id']; M("EventAreaLink")->add($area_data); } M("EventLocationLink")->where("event_id=" . $data['id'])->delete(); $location_ids = $_REQUEST['location_id']; foreach ($location_ids as $location_id) { $link_data = array(); $link_data['location_id'] = $location_id; $link_data['event_id'] = $data['id']; M("EventLocationLink")->add($link_data); recount_supplier_data_count($location_id, "event"); } $submit_ids = array(0); foreach ($_REQUEST['field_id'] as $k => $field_id) { $submit_ids[] = intval($field_id); $event_field = M("EventField")->getById(intval($field_id)); if ($event_field) { $event_field['event_id'] = $data['id']; $event_field['field_show_name'] = $_REQUEST['field_show_name'][$k]; $event_field['field_type'] = $_REQUEST['field_type'][$k]; $event_field['value_scope'] = $_REQUEST['value_scope'][$k]; $event_field['sort'] = $k; M("EventField")->save($event_field); } else { $event_field = array(); $event_field['event_id'] = $data['id']; $event_field['field_show_name'] = $_REQUEST['field_show_name'][$k]; $event_field['field_type'] = $_REQUEST['field_type'][$k]; $event_field['value_scope'] = $_REQUEST['value_scope'][$k]; $event_field['sort'] = $k; $submit_ids[] = M("EventField")->add($event_field); } } M("EventField")->where(array("event_id" => $data['id'], "id" => array("not in", $submit_ids)))->delete(); M("EventSubmitField")->where(array("field_id" => array("not in", $submit_ids), "event_id" => $data['id']))->delete(); M("EventCate")->where("id=" . $data['cate_id'])->setField("count", M("Event")->where("cate_id=" . $data['cate_id'])->count()); syn_event_match($data['id']); //对于商户请求操作 if (intval($_REQUEST['edit_type']) == 2 && $event_submit_id > 0) { //商户提交修改审核 /*同步商户发布表状态*/ $GLOBALS['db']->autoExecute(DB_PREFIX . "event_biz_submit", array("admin_check_status" => 1), "UPDATE", "id=" . $event_submit_id); // 1 通过 2 拒绝', } //成功提示 save_log($log_info . L("UPDATE_SUCCESS"), 1); $this->success(L("UPDATE_SUCCESS")); } else { //错误提示 save_log($log_info . L("UPDATE_FAILED"), 0); $this->error(L("UPDATE_FAILED"), 0, $log_info . L("UPDATE_FAILED")); } }