parent
22070289d8
commit
62a36ec0ae
@ -0,0 +1,143 @@ |
||||
package com.cweb.controller.Meal; |
||||
|
||||
import com.alibaba.fastjson.JSONObject; |
||||
import com.github.pagehelper.PageHelper; |
||||
import com.github.pagehelper.PageInfo; |
||||
import com.hfkj.common.exception.ErrorCode; |
||||
import com.hfkj.common.exception.ErrorHelp; |
||||
import com.hfkj.common.exception.SysCode; |
||||
import com.hfkj.common.utils.ResponseMsgUtil; |
||||
import com.hfkj.entity.BsMealTable; |
||||
import com.hfkj.model.ResponseData; |
||||
import com.hfkj.service.meal.BsMealTableService; |
||||
import io.swagger.annotations.Api; |
||||
import io.swagger.annotations.ApiOperation; |
||||
import org.apache.commons.lang3.StringUtils; |
||||
import org.slf4j.Logger; |
||||
import org.slf4j.LoggerFactory; |
||||
import org.springframework.stereotype.Controller; |
||||
import org.springframework.web.bind.annotation.*; |
||||
|
||||
import javax.annotation.Resource; |
||||
import java.util.HashMap; |
||||
import java.util.Map; |
||||
|
||||
/** |
||||
* 扫码点餐 桌台管理 |
||||
* @className: BsMealTableController |
||||
* @author: HuRui |
||||
* @date: 2023/11/29 |
||||
**/ |
||||
@Controller |
||||
@Api(value = "桌台管理") |
||||
@RequestMapping(value = "/mealTable") |
||||
public class BsMealTableController { |
||||
|
||||
Logger log = LoggerFactory.getLogger(BsMealTableController.class); |
||||
|
||||
@Resource |
||||
private BsMealTableService mealTableService; |
||||
|
||||
@RequestMapping(value="/generateTable",method = RequestMethod.POST) |
||||
@ResponseBody |
||||
@ApiOperation(value = "生成桌台") |
||||
public ResponseData generateTable(@RequestBody JSONObject body) { |
||||
try { |
||||
if (body == null || body.getLong("storeId") == null || body.getInteger("generateNum") == null) { |
||||
throw ErrorHelp.genException(SysCode.System, ErrorCode.REQ_PARAMS_ERROR, ""); |
||||
} |
||||
|
||||
mealTableService.generateTable(body.getLong("storeId"),body.getInteger("generateNum")); |
||||
|
||||
return ResponseMsgUtil.success("生成成功"); |
||||
|
||||
} catch (Exception e) { |
||||
log.error(e.getMessage(), e); |
||||
return ResponseMsgUtil.exception(e); |
||||
} |
||||
} |
||||
|
||||
@RequestMapping(value="/editTable",method = RequestMethod.POST) |
||||
@ResponseBody |
||||
@ApiOperation(value = "编辑桌台") |
||||
public ResponseData editTable(@RequestBody JSONObject body) { |
||||
try { |
||||
if (body == null |
||||
|| StringUtils.isBlank(body.getString("serialNumber")) |
||||
|| body.getInteger("tableNumber") == null |
||||
|| StringUtils.isBlank(body.getString("tableName")) |
||||
) { |
||||
throw ErrorHelp.genException(SysCode.System, ErrorCode.REQ_PARAMS_ERROR, ""); |
||||
} |
||||
// 查询桌台
|
||||
BsMealTable mealTable = mealTableService.getTableBySerialNumber(body.getString("serialNumber")); |
||||
if (mealTable == null) { |
||||
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未知的桌台"); |
||||
} |
||||
mealTable.setTableNumber(body.getInteger("tableNumber")); |
||||
mealTable.setTableName(body.getString("tableName")); |
||||
mealTableService.editData(mealTable); |
||||
|
||||
return ResponseMsgUtil.success("操作成功"); |
||||
|
||||
} catch (Exception e) { |
||||
log.error(e.getMessage(), e); |
||||
return ResponseMsgUtil.exception(e); |
||||
} |
||||
} |
||||
|
||||
@RequestMapping(value="/delTable",method = RequestMethod.POST) |
||||
@ResponseBody |
||||
@ApiOperation(value = "删除桌台") |
||||
public ResponseData delTable(@RequestBody JSONObject body) { |
||||
try { |
||||
if (body == null || StringUtils.isBlank(body.getString("serialNumber"))) { |
||||
throw ErrorHelp.genException(SysCode.System, ErrorCode.REQ_PARAMS_ERROR, ""); |
||||
} |
||||
|
||||
mealTableService.delTable(body.getString("serialNumber")); |
||||
|
||||
return ResponseMsgUtil.success("操作成功"); |
||||
|
||||
} catch (Exception e) { |
||||
log.error(e.getMessage(), e); |
||||
return ResponseMsgUtil.exception(e); |
||||
} |
||||
} |
||||
|
||||
@RequestMapping(value="/getTable",method = RequestMethod.GET) |
||||
@ResponseBody |
||||
@ApiOperation(value = "获取桌台详情") |
||||
public ResponseData getTable(@RequestParam(value = "serialNumber" , required = true) String serialNumber) { |
||||
try { |
||||
|
||||
return ResponseMsgUtil.success(mealTableService.getTableBySerialNumber(serialNumber)); |
||||
|
||||
} catch (Exception e) { |
||||
log.error(e.getMessage(), e); |
||||
return ResponseMsgUtil.exception(e); |
||||
} |
||||
} |
||||
|
||||
@RequestMapping(value="/getTableList",method = RequestMethod.GET) |
||||
@ResponseBody |
||||
@ApiOperation(value = "商户查询门店列表") |
||||
public ResponseData getTableList(@RequestParam(value = "storeId" , required = true) Long storeId, |
||||
@RequestParam(value = "tableName" , required = false) String tableName, |
||||
@RequestParam(value = "pageNum" , required = true) Integer pageNum, |
||||
@RequestParam(value = "pageSize" , required = true) Integer pageSize) { |
||||
try { |
||||
|
||||
Map<String,Object> param = new HashMap<>(); |
||||
param.put("storeId", storeId); |
||||
param.put("tableName", tableName); |
||||
|
||||
PageHelper.startPage(pageNum,pageSize); |
||||
return ResponseMsgUtil.success(new PageInfo<>(mealTableService.getTableList(param))); |
||||
|
||||
} catch (Exception e) { |
||||
log.error(e.getMessage(), e); |
||||
return ResponseMsgUtil.exception(e); |
||||
} |
||||
} |
||||
} |
@ -0,0 +1,150 @@ |
||||
package com.hfkj.dao; |
||||
|
||||
import com.hfkj.entity.BsMealTable; |
||||
import com.hfkj.entity.BsMealTableExample; |
||||
import java.util.List; |
||||
import org.apache.ibatis.annotations.Delete; |
||||
import org.apache.ibatis.annotations.DeleteProvider; |
||||
import org.apache.ibatis.annotations.Insert; |
||||
import org.apache.ibatis.annotations.InsertProvider; |
||||
import org.apache.ibatis.annotations.Options; |
||||
import org.apache.ibatis.annotations.Param; |
||||
import org.apache.ibatis.annotations.Result; |
||||
import org.apache.ibatis.annotations.Results; |
||||
import org.apache.ibatis.annotations.Select; |
||||
import org.apache.ibatis.annotations.SelectProvider; |
||||
import org.apache.ibatis.annotations.Update; |
||||
import org.apache.ibatis.annotations.UpdateProvider; |
||||
import org.apache.ibatis.type.JdbcType; |
||||
import org.springframework.stereotype.Repository; |
||||
|
||||
/** |
||||
* |
||||
* 代码由工具生成,请勿修改!!! |
||||
* 如果需要扩展请在其父类进行扩展 |
||||
* |
||||
**/ |
||||
@Repository |
||||
public interface BsMealTableMapper extends BsMealTableMapperExt { |
||||
@SelectProvider(type=BsMealTableSqlProvider.class, method="countByExample") |
||||
long countByExample(BsMealTableExample example); |
||||
|
||||
@DeleteProvider(type=BsMealTableSqlProvider.class, method="deleteByExample") |
||||
int deleteByExample(BsMealTableExample example); |
||||
|
||||
@Delete({ |
||||
"delete from bs_meal_table", |
||||
"where id = #{id,jdbcType=BIGINT}" |
||||
}) |
||||
int deleteByPrimaryKey(Long id); |
||||
|
||||
@Insert({ |
||||
"insert into bs_meal_table (mer_id, mer_no, ", |
||||
"mer_name, mer_abbreviate, ", |
||||
"store_id, store_name, ", |
||||
"serial_number, table_number, ", |
||||
"`table_name`, qr_code_content, ", |
||||
"qr_code_img_url, `status`, ", |
||||
"create_time, update_time, ", |
||||
"ext_1, ext_2, ext_3)", |
||||
"values (#{merId,jdbcType=BIGINT}, #{merNo,jdbcType=VARCHAR}, ", |
||||
"#{merName,jdbcType=VARCHAR}, #{merAbbreviate,jdbcType=VARCHAR}, ", |
||||
"#{storeId,jdbcType=BIGINT}, #{storeName,jdbcType=VARCHAR}, ", |
||||
"#{serialNumber,jdbcType=VARCHAR}, #{tableNumber,jdbcType=INTEGER}, ", |
||||
"#{tableName,jdbcType=VARCHAR}, #{qrCodeContent,jdbcType=VARCHAR}, ", |
||||
"#{qrCodeImgUrl,jdbcType=VARCHAR}, #{status,jdbcType=INTEGER}, ", |
||||
"#{createTime,jdbcType=TIMESTAMP}, #{updateTime,jdbcType=TIMESTAMP}, ", |
||||
"#{ext1,jdbcType=VARCHAR}, #{ext2,jdbcType=VARCHAR}, #{ext3,jdbcType=VARCHAR})" |
||||
}) |
||||
@Options(useGeneratedKeys=true,keyProperty="id") |
||||
int insert(BsMealTable record); |
||||
|
||||
@InsertProvider(type=BsMealTableSqlProvider.class, method="insertSelective") |
||||
@Options(useGeneratedKeys=true,keyProperty="id") |
||||
int insertSelective(BsMealTable record); |
||||
|
||||
@SelectProvider(type=BsMealTableSqlProvider.class, method="selectByExample") |
||||
@Results({ |
||||
@Result(column="id", property="id", jdbcType=JdbcType.BIGINT, id=true), |
||||
@Result(column="mer_id", property="merId", jdbcType=JdbcType.BIGINT), |
||||
@Result(column="mer_no", property="merNo", jdbcType=JdbcType.VARCHAR), |
||||
@Result(column="mer_name", property="merName", jdbcType=JdbcType.VARCHAR), |
||||
@Result(column="mer_abbreviate", property="merAbbreviate", jdbcType=JdbcType.VARCHAR), |
||||
@Result(column="store_id", property="storeId", jdbcType=JdbcType.BIGINT), |
||||
@Result(column="store_name", property="storeName", jdbcType=JdbcType.VARCHAR), |
||||
@Result(column="serial_number", property="serialNumber", jdbcType=JdbcType.VARCHAR), |
||||
@Result(column="table_number", property="tableNumber", jdbcType=JdbcType.INTEGER), |
||||
@Result(column="table_name", property="tableName", jdbcType=JdbcType.VARCHAR), |
||||
@Result(column="qr_code_content", property="qrCodeContent", jdbcType=JdbcType.VARCHAR), |
||||
@Result(column="qr_code_img_url", property="qrCodeImgUrl", jdbcType=JdbcType.VARCHAR), |
||||
@Result(column="status", property="status", jdbcType=JdbcType.INTEGER), |
||||
@Result(column="create_time", property="createTime", jdbcType=JdbcType.TIMESTAMP), |
||||
@Result(column="update_time", property="updateTime", jdbcType=JdbcType.TIMESTAMP), |
||||
@Result(column="ext_1", property="ext1", jdbcType=JdbcType.VARCHAR), |
||||
@Result(column="ext_2", property="ext2", jdbcType=JdbcType.VARCHAR), |
||||
@Result(column="ext_3", property="ext3", jdbcType=JdbcType.VARCHAR) |
||||
}) |
||||
List<BsMealTable> selectByExample(BsMealTableExample example); |
||||
|
||||
@Select({ |
||||
"select", |
||||
"id, mer_id, mer_no, mer_name, mer_abbreviate, store_id, store_name, serial_number, ", |
||||
"table_number, `table_name`, qr_code_content, qr_code_img_url, `status`, create_time, ", |
||||
"update_time, ext_1, ext_2, ext_3", |
||||
"from bs_meal_table", |
||||
"where id = #{id,jdbcType=BIGINT}" |
||||
}) |
||||
@Results({ |
||||
@Result(column="id", property="id", jdbcType=JdbcType.BIGINT, id=true), |
||||
@Result(column="mer_id", property="merId", jdbcType=JdbcType.BIGINT), |
||||
@Result(column="mer_no", property="merNo", jdbcType=JdbcType.VARCHAR), |
||||
@Result(column="mer_name", property="merName", jdbcType=JdbcType.VARCHAR), |
||||
@Result(column="mer_abbreviate", property="merAbbreviate", jdbcType=JdbcType.VARCHAR), |
||||
@Result(column="store_id", property="storeId", jdbcType=JdbcType.BIGINT), |
||||
@Result(column="store_name", property="storeName", jdbcType=JdbcType.VARCHAR), |
||||
@Result(column="serial_number", property="serialNumber", jdbcType=JdbcType.VARCHAR), |
||||
@Result(column="table_number", property="tableNumber", jdbcType=JdbcType.INTEGER), |
||||
@Result(column="table_name", property="tableName", jdbcType=JdbcType.VARCHAR), |
||||
@Result(column="qr_code_content", property="qrCodeContent", jdbcType=JdbcType.VARCHAR), |
||||
@Result(column="qr_code_img_url", property="qrCodeImgUrl", jdbcType=JdbcType.VARCHAR), |
||||
@Result(column="status", property="status", jdbcType=JdbcType.INTEGER), |
||||
@Result(column="create_time", property="createTime", jdbcType=JdbcType.TIMESTAMP), |
||||
@Result(column="update_time", property="updateTime", jdbcType=JdbcType.TIMESTAMP), |
||||
@Result(column="ext_1", property="ext1", jdbcType=JdbcType.VARCHAR), |
||||
@Result(column="ext_2", property="ext2", jdbcType=JdbcType.VARCHAR), |
||||
@Result(column="ext_3", property="ext3", jdbcType=JdbcType.VARCHAR) |
||||
}) |
||||
BsMealTable selectByPrimaryKey(Long id); |
||||
|
||||
@UpdateProvider(type=BsMealTableSqlProvider.class, method="updateByExampleSelective") |
||||
int updateByExampleSelective(@Param("record") BsMealTable record, @Param("example") BsMealTableExample example); |
||||
|
||||
@UpdateProvider(type=BsMealTableSqlProvider.class, method="updateByExample") |
||||
int updateByExample(@Param("record") BsMealTable record, @Param("example") BsMealTableExample example); |
||||
|
||||
@UpdateProvider(type=BsMealTableSqlProvider.class, method="updateByPrimaryKeySelective") |
||||
int updateByPrimaryKeySelective(BsMealTable record); |
||||
|
||||
@Update({ |
||||
"update bs_meal_table", |
||||
"set mer_id = #{merId,jdbcType=BIGINT},", |
||||
"mer_no = #{merNo,jdbcType=VARCHAR},", |
||||
"mer_name = #{merName,jdbcType=VARCHAR},", |
||||
"mer_abbreviate = #{merAbbreviate,jdbcType=VARCHAR},", |
||||
"store_id = #{storeId,jdbcType=BIGINT},", |
||||
"store_name = #{storeName,jdbcType=VARCHAR},", |
||||
"serial_number = #{serialNumber,jdbcType=VARCHAR},", |
||||
"table_number = #{tableNumber,jdbcType=INTEGER},", |
||||
"`table_name` = #{tableName,jdbcType=VARCHAR},", |
||||
"qr_code_content = #{qrCodeContent,jdbcType=VARCHAR},", |
||||
"qr_code_img_url = #{qrCodeImgUrl,jdbcType=VARCHAR},", |
||||
"`status` = #{status,jdbcType=INTEGER},", |
||||
"create_time = #{createTime,jdbcType=TIMESTAMP},", |
||||
"update_time = #{updateTime,jdbcType=TIMESTAMP},", |
||||
"ext_1 = #{ext1,jdbcType=VARCHAR},", |
||||
"ext_2 = #{ext2,jdbcType=VARCHAR},", |
||||
"ext_3 = #{ext3,jdbcType=VARCHAR}", |
||||
"where id = #{id,jdbcType=BIGINT}" |
||||
}) |
||||
int updateByPrimaryKey(BsMealTable record); |
||||
} |
@ -0,0 +1,13 @@ |
||||
package com.hfkj.dao; |
||||
|
||||
import org.apache.ibatis.annotations.Param; |
||||
import org.apache.ibatis.annotations.Select; |
||||
|
||||
/** |
||||
* mapper扩展类 |
||||
*/ |
||||
public interface BsMealTableMapperExt { |
||||
|
||||
@Select("<script>select table_number from bs_meal_table where store_id = #{storeId} and `status` <![CDATA[ <> ]]> 0 ORDER BY table_number desc LIMIT 1 </script>") |
||||
Integer getMaxTableNum(@Param("storeId") Long storeId); |
||||
} |
@ -0,0 +1,416 @@ |
||||
package com.hfkj.dao; |
||||
|
||||
import com.hfkj.entity.BsMealTable; |
||||
import com.hfkj.entity.BsMealTableExample.Criteria; |
||||
import com.hfkj.entity.BsMealTableExample.Criterion; |
||||
import com.hfkj.entity.BsMealTableExample; |
||||
import java.util.List; |
||||
import java.util.Map; |
||||
import org.apache.ibatis.jdbc.SQL; |
||||
|
||||
public class BsMealTableSqlProvider { |
||||
|
||||
public String countByExample(BsMealTableExample example) { |
||||
SQL sql = new SQL(); |
||||
sql.SELECT("count(*)").FROM("bs_meal_table"); |
||||
applyWhere(sql, example, false); |
||||
return sql.toString(); |
||||
} |
||||
|
||||
public String deleteByExample(BsMealTableExample example) { |
||||
SQL sql = new SQL(); |
||||
sql.DELETE_FROM("bs_meal_table"); |
||||
applyWhere(sql, example, false); |
||||
return sql.toString(); |
||||
} |
||||
|
||||
public String insertSelective(BsMealTable record) { |
||||
SQL sql = new SQL(); |
||||
sql.INSERT_INTO("bs_meal_table"); |
||||
|
||||
if (record.getMerId() != null) { |
||||
sql.VALUES("mer_id", "#{merId,jdbcType=BIGINT}"); |
||||
} |
||||
|
||||
if (record.getMerNo() != null) { |
||||
sql.VALUES("mer_no", "#{merNo,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
if (record.getMerName() != null) { |
||||
sql.VALUES("mer_name", "#{merName,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
if (record.getMerAbbreviate() != null) { |
||||
sql.VALUES("mer_abbreviate", "#{merAbbreviate,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
if (record.getStoreId() != null) { |
||||
sql.VALUES("store_id", "#{storeId,jdbcType=BIGINT}"); |
||||
} |
||||
|
||||
if (record.getStoreName() != null) { |
||||
sql.VALUES("store_name", "#{storeName,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
if (record.getSerialNumber() != null) { |
||||
sql.VALUES("serial_number", "#{serialNumber,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
if (record.getTableNumber() != null) { |
||||
sql.VALUES("table_number", "#{tableNumber,jdbcType=INTEGER}"); |
||||
} |
||||
|
||||
if (record.getTableName() != null) { |
||||
sql.VALUES("`table_name`", "#{tableName,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
if (record.getQrCodeContent() != null) { |
||||
sql.VALUES("qr_code_content", "#{qrCodeContent,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
if (record.getQrCodeImgUrl() != null) { |
||||
sql.VALUES("qr_code_img_url", "#{qrCodeImgUrl,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
if (record.getStatus() != null) { |
||||
sql.VALUES("`status`", "#{status,jdbcType=INTEGER}"); |
||||
} |
||||
|
||||
if (record.getCreateTime() != null) { |
||||
sql.VALUES("create_time", "#{createTime,jdbcType=TIMESTAMP}"); |
||||
} |
||||
|
||||
if (record.getUpdateTime() != null) { |
||||
sql.VALUES("update_time", "#{updateTime,jdbcType=TIMESTAMP}"); |
||||
} |
||||
|
||||
if (record.getExt1() != null) { |
||||
sql.VALUES("ext_1", "#{ext1,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
if (record.getExt2() != null) { |
||||
sql.VALUES("ext_2", "#{ext2,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
if (record.getExt3() != null) { |
||||
sql.VALUES("ext_3", "#{ext3,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
return sql.toString(); |
||||
} |
||||
|
||||
public String selectByExample(BsMealTableExample example) { |
||||
SQL sql = new SQL(); |
||||
if (example != null && example.isDistinct()) { |
||||
sql.SELECT_DISTINCT("id"); |
||||
} else { |
||||
sql.SELECT("id"); |
||||
} |
||||
sql.SELECT("mer_id"); |
||||
sql.SELECT("mer_no"); |
||||
sql.SELECT("mer_name"); |
||||
sql.SELECT("mer_abbreviate"); |
||||
sql.SELECT("store_id"); |
||||
sql.SELECT("store_name"); |
||||
sql.SELECT("serial_number"); |
||||
sql.SELECT("table_number"); |
||||
sql.SELECT("`table_name`"); |
||||
sql.SELECT("qr_code_content"); |
||||
sql.SELECT("qr_code_img_url"); |
||||
sql.SELECT("`status`"); |
||||
sql.SELECT("create_time"); |
||||
sql.SELECT("update_time"); |
||||
sql.SELECT("ext_1"); |
||||
sql.SELECT("ext_2"); |
||||
sql.SELECT("ext_3"); |
||||
sql.FROM("bs_meal_table"); |
||||
applyWhere(sql, example, false); |
||||
|
||||
if (example != null && example.getOrderByClause() != null) { |
||||
sql.ORDER_BY(example.getOrderByClause()); |
||||
} |
||||
|
||||
return sql.toString(); |
||||
} |
||||
|
||||
public String updateByExampleSelective(Map<String, Object> parameter) { |
||||
BsMealTable record = (BsMealTable) parameter.get("record"); |
||||
BsMealTableExample example = (BsMealTableExample) parameter.get("example"); |
||||
|
||||
SQL sql = new SQL(); |
||||
sql.UPDATE("bs_meal_table"); |
||||
|
||||
if (record.getId() != null) { |
||||
sql.SET("id = #{record.id,jdbcType=BIGINT}"); |
||||
} |
||||
|
||||
if (record.getMerId() != null) { |
||||
sql.SET("mer_id = #{record.merId,jdbcType=BIGINT}"); |
||||
} |
||||
|
||||
if (record.getMerNo() != null) { |
||||
sql.SET("mer_no = #{record.merNo,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
if (record.getMerName() != null) { |
||||
sql.SET("mer_name = #{record.merName,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
if (record.getMerAbbreviate() != null) { |
||||
sql.SET("mer_abbreviate = #{record.merAbbreviate,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
if (record.getStoreId() != null) { |
||||
sql.SET("store_id = #{record.storeId,jdbcType=BIGINT}"); |
||||
} |
||||
|
||||
if (record.getStoreName() != null) { |
||||
sql.SET("store_name = #{record.storeName,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
if (record.getSerialNumber() != null) { |
||||
sql.SET("serial_number = #{record.serialNumber,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
if (record.getTableNumber() != null) { |
||||
sql.SET("table_number = #{record.tableNumber,jdbcType=INTEGER}"); |
||||
} |
||||
|
||||
if (record.getTableName() != null) { |
||||
sql.SET("`table_name` = #{record.tableName,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
if (record.getQrCodeContent() != null) { |
||||
sql.SET("qr_code_content = #{record.qrCodeContent,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
if (record.getQrCodeImgUrl() != null) { |
||||
sql.SET("qr_code_img_url = #{record.qrCodeImgUrl,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
if (record.getStatus() != null) { |
||||
sql.SET("`status` = #{record.status,jdbcType=INTEGER}"); |
||||
} |
||||
|
||||
if (record.getCreateTime() != null) { |
||||
sql.SET("create_time = #{record.createTime,jdbcType=TIMESTAMP}"); |
||||
} |
||||
|
||||
if (record.getUpdateTime() != null) { |
||||
sql.SET("update_time = #{record.updateTime,jdbcType=TIMESTAMP}"); |
||||
} |
||||
|
||||
if (record.getExt1() != null) { |
||||
sql.SET("ext_1 = #{record.ext1,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
if (record.getExt2() != null) { |
||||
sql.SET("ext_2 = #{record.ext2,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
if (record.getExt3() != null) { |
||||
sql.SET("ext_3 = #{record.ext3,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
applyWhere(sql, example, true); |
||||
return sql.toString(); |
||||
} |
||||
|
||||
public String updateByExample(Map<String, Object> parameter) { |
||||
SQL sql = new SQL(); |
||||
sql.UPDATE("bs_meal_table"); |
||||
|
||||
sql.SET("id = #{record.id,jdbcType=BIGINT}"); |
||||
sql.SET("mer_id = #{record.merId,jdbcType=BIGINT}"); |
||||
sql.SET("mer_no = #{record.merNo,jdbcType=VARCHAR}"); |
||||
sql.SET("mer_name = #{record.merName,jdbcType=VARCHAR}"); |
||||
sql.SET("mer_abbreviate = #{record.merAbbreviate,jdbcType=VARCHAR}"); |
||||
sql.SET("store_id = #{record.storeId,jdbcType=BIGINT}"); |
||||
sql.SET("store_name = #{record.storeName,jdbcType=VARCHAR}"); |
||||
sql.SET("serial_number = #{record.serialNumber,jdbcType=VARCHAR}"); |
||||
sql.SET("table_number = #{record.tableNumber,jdbcType=INTEGER}"); |
||||
sql.SET("`table_name` = #{record.tableName,jdbcType=VARCHAR}"); |
||||
sql.SET("qr_code_content = #{record.qrCodeContent,jdbcType=VARCHAR}"); |
||||
sql.SET("qr_code_img_url = #{record.qrCodeImgUrl,jdbcType=VARCHAR}"); |
||||
sql.SET("`status` = #{record.status,jdbcType=INTEGER}"); |
||||
sql.SET("create_time = #{record.createTime,jdbcType=TIMESTAMP}"); |
||||
sql.SET("update_time = #{record.updateTime,jdbcType=TIMESTAMP}"); |
||||
sql.SET("ext_1 = #{record.ext1,jdbcType=VARCHAR}"); |
||||
sql.SET("ext_2 = #{record.ext2,jdbcType=VARCHAR}"); |
||||
sql.SET("ext_3 = #{record.ext3,jdbcType=VARCHAR}"); |
||||
|
||||
BsMealTableExample example = (BsMealTableExample) parameter.get("example"); |
||||
applyWhere(sql, example, true); |
||||
return sql.toString(); |
||||
} |
||||
|
||||
public String updateByPrimaryKeySelective(BsMealTable record) { |
||||
SQL sql = new SQL(); |
||||
sql.UPDATE("bs_meal_table"); |
||||
|
||||
if (record.getMerId() != null) { |
||||
sql.SET("mer_id = #{merId,jdbcType=BIGINT}"); |
||||
} |
||||
|
||||
if (record.getMerNo() != null) { |
||||
sql.SET("mer_no = #{merNo,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
if (record.getMerName() != null) { |
||||
sql.SET("mer_name = #{merName,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
if (record.getMerAbbreviate() != null) { |
||||
sql.SET("mer_abbreviate = #{merAbbreviate,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
if (record.getStoreId() != null) { |
||||
sql.SET("store_id = #{storeId,jdbcType=BIGINT}"); |
||||
} |
||||
|
||||
if (record.getStoreName() != null) { |
||||
sql.SET("store_name = #{storeName,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
if (record.getSerialNumber() != null) { |
||||
sql.SET("serial_number = #{serialNumber,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
if (record.getTableNumber() != null) { |
||||
sql.SET("table_number = #{tableNumber,jdbcType=INTEGER}"); |
||||
} |
||||
|
||||
if (record.getTableName() != null) { |
||||
sql.SET("`table_name` = #{tableName,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
if (record.getQrCodeContent() != null) { |
||||
sql.SET("qr_code_content = #{qrCodeContent,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
if (record.getQrCodeImgUrl() != null) { |
||||
sql.SET("qr_code_img_url = #{qrCodeImgUrl,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
if (record.getStatus() != null) { |
||||
sql.SET("`status` = #{status,jdbcType=INTEGER}"); |
||||
} |
||||
|
||||
if (record.getCreateTime() != null) { |
||||
sql.SET("create_time = #{createTime,jdbcType=TIMESTAMP}"); |
||||
} |
||||
|
||||
if (record.getUpdateTime() != null) { |
||||
sql.SET("update_time = #{updateTime,jdbcType=TIMESTAMP}"); |
||||
} |
||||
|
||||
if (record.getExt1() != null) { |
||||
sql.SET("ext_1 = #{ext1,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
if (record.getExt2() != null) { |
||||
sql.SET("ext_2 = #{ext2,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
if (record.getExt3() != null) { |
||||
sql.SET("ext_3 = #{ext3,jdbcType=VARCHAR}"); |
||||
} |
||||
|
||||
sql.WHERE("id = #{id,jdbcType=BIGINT}"); |
||||
|
||||
return sql.toString(); |
||||
} |
||||
|
||||
protected void applyWhere(SQL sql, BsMealTableExample example, boolean includeExamplePhrase) { |
||||
if (example == null) { |
||||
return; |
||||
} |
||||
|
||||
String parmPhrase1; |
||||
String parmPhrase1_th; |
||||
String parmPhrase2; |
||||
String parmPhrase2_th; |
||||
String parmPhrase3; |
||||
String parmPhrase3_th; |
||||
if (includeExamplePhrase) { |
||||
parmPhrase1 = "%s #{example.oredCriteria[%d].allCriteria[%d].value}"; |
||||
parmPhrase1_th = "%s #{example.oredCriteria[%d].allCriteria[%d].value,typeHandler=%s}"; |
||||
parmPhrase2 = "%s #{example.oredCriteria[%d].allCriteria[%d].value} and #{example.oredCriteria[%d].criteria[%d].secondValue}"; |
||||
parmPhrase2_th = "%s #{example.oredCriteria[%d].allCriteria[%d].value,typeHandler=%s} and #{example.oredCriteria[%d].criteria[%d].secondValue,typeHandler=%s}"; |
||||
parmPhrase3 = "#{example.oredCriteria[%d].allCriteria[%d].value[%d]}"; |
||||
parmPhrase3_th = "#{example.oredCriteria[%d].allCriteria[%d].value[%d],typeHandler=%s}"; |
||||
} else { |
||||
parmPhrase1 = "%s #{oredCriteria[%d].allCriteria[%d].value}"; |
||||
parmPhrase1_th = "%s #{oredCriteria[%d].allCriteria[%d].value,typeHandler=%s}"; |
||||
parmPhrase2 = "%s #{oredCriteria[%d].allCriteria[%d].value} and #{oredCriteria[%d].criteria[%d].secondValue}"; |
||||
parmPhrase2_th = "%s #{oredCriteria[%d].allCriteria[%d].value,typeHandler=%s} and #{oredCriteria[%d].criteria[%d].secondValue,typeHandler=%s}"; |
||||
parmPhrase3 = "#{oredCriteria[%d].allCriteria[%d].value[%d]}"; |
||||
parmPhrase3_th = "#{oredCriteria[%d].allCriteria[%d].value[%d],typeHandler=%s}"; |
||||
} |
||||
|
||||
StringBuilder sb = new StringBuilder(); |
||||
List<Criteria> oredCriteria = example.getOredCriteria(); |
||||
boolean firstCriteria = true; |
||||
for (int i = 0; i < oredCriteria.size(); i++) { |
||||
Criteria criteria = oredCriteria.get(i); |
||||
if (criteria.isValid()) { |
||||
if (firstCriteria) { |
||||
firstCriteria = false; |
||||
} else { |
||||
sb.append(" or "); |
||||
} |
||||
|
||||
sb.append('('); |
||||
List<Criterion> criterions = criteria.getAllCriteria(); |
||||
boolean firstCriterion = true; |
||||
for (int j = 0; j < criterions.size(); j++) { |
||||
Criterion criterion = criterions.get(j); |
||||
if (firstCriterion) { |
||||
firstCriterion = false; |
||||
} else { |
||||
sb.append(" and "); |
||||
} |
||||
|
||||
if (criterion.isNoValue()) { |
||||
sb.append(criterion.getCondition()); |
||||
} else if (criterion.isSingleValue()) { |
||||
if (criterion.getTypeHandler() == null) { |
||||
sb.append(String.format(parmPhrase1, criterion.getCondition(), i, j)); |
||||
} else { |
||||
sb.append(String.format(parmPhrase1_th, criterion.getCondition(), i, j,criterion.getTypeHandler())); |
||||
} |
||||
} else if (criterion.isBetweenValue()) { |
||||
if (criterion.getTypeHandler() == null) { |
||||
sb.append(String.format(parmPhrase2, criterion.getCondition(), i, j, i, j)); |
||||
} else { |
||||
sb.append(String.format(parmPhrase2_th, criterion.getCondition(), i, j, criterion.getTypeHandler(), i, j, criterion.getTypeHandler())); |
||||
} |
||||
} else if (criterion.isListValue()) { |
||||
sb.append(criterion.getCondition()); |
||||
sb.append(" ("); |
||||
List<?> listItems = (List<?>) criterion.getValue(); |
||||
boolean comma = false; |
||||
for (int k = 0; k < listItems.size(); k++) { |
||||
if (comma) { |
||||
sb.append(", "); |
||||
} else { |
||||
comma = true; |
||||
} |
||||
if (criterion.getTypeHandler() == null) { |
||||
sb.append(String.format(parmPhrase3, i, j, k)); |
||||
} else { |
||||
sb.append(String.format(parmPhrase3_th, i, j, k, criterion.getTypeHandler())); |
||||
} |
||||
} |
||||
sb.append(')'); |
||||
} |
||||
} |
||||
sb.append(')'); |
||||
} |
||||
} |
||||
|
||||
if (sb.length() > 0) { |
||||
sql.WHERE(sb.toString()); |
||||
} |
||||
} |
||||
} |
@ -0,0 +1,325 @@ |
||||
package com.hfkj.entity; |
||||
|
||||
import java.io.Serializable; |
||||
import java.util.Date; |
||||
|
||||
/** |
||||
* bs_meal_table |
||||
* @author |
||||
*/ |
||||
/** |
||||
* |
||||
* 代码由工具生成 |
||||
* |
||||
**/ |
||||
public class BsMealTable implements Serializable { |
||||
private Long id; |
||||
|
||||
/** |
||||
* 商户id |
||||
*/ |
||||
private Long merId; |
||||
|
||||
/** |
||||
* 商户号 |
||||
*/ |
||||
private String merNo; |
||||
|
||||
/** |
||||
* 商户名称 |
||||
*/ |
||||
private String merName; |
||||
|
||||
/** |
||||
* 商户简称 |
||||
*/ |
||||
private String merAbbreviate; |
||||
|
||||
/** |
||||
* 门店id |
||||
*/ |
||||
private Long storeId; |
||||
|
||||
/** |
||||
* 门店名称 |
||||
*/ |
||||
private String storeName; |
||||
|
||||
/** |
||||
* 序列号(系统唯一) |
||||
*/ |
||||
private String serialNumber; |
||||
|
||||
/** |
||||
* 桌子编号 |
||||
*/ |
||||
private Integer tableNumber; |
||||
|
||||
/** |
||||
* 桌子名称 |
||||
*/ |
||||
private String tableName; |
||||
|
||||
/** |
||||
* 二维码内容 |
||||
*/ |
||||
private String qrCodeContent; |
||||
|
||||
/** |
||||
* 二维码图片地址 |
||||
*/ |
||||
private String qrCodeImgUrl; |
||||
|
||||
/** |
||||
* 状态 0:不可用 1:未开台 2:已开台 |
||||
*/ |
||||
private Integer status; |
||||
|
||||
/** |
||||
* 创建时间 |
||||
*/ |
||||
private Date createTime; |
||||
|
||||
/** |
||||
* 更新时间 |
||||
*/ |
||||
private Date updateTime; |
||||
|
||||
private String ext1; |
||||
|
||||
private String ext2; |
||||
|
||||
private String ext3; |
||||
|
||||
private static final long serialVersionUID = 1L; |
||||
|
||||
public Long getId() { |
||||
return id; |
||||
} |
||||
|
||||
public void setId(Long id) { |
||||
this.id = id; |
||||
} |
||||
|
||||
public Long getMerId() { |
||||
return merId; |
||||
} |
||||
|
||||
public void setMerId(Long merId) { |
||||
this.merId = merId; |
||||
} |
||||
|
||||
public String getMerNo() { |
||||
return merNo; |
||||
} |
||||
|
||||
public void setMerNo(String merNo) { |
||||
this.merNo = merNo; |
||||
} |
||||
|
||||
public String getMerName() { |
||||
return merName; |
||||
} |
||||
|
||||
public void setMerName(String merName) { |
||||
this.merName = merName; |
||||
} |
||||
|
||||
public String getMerAbbreviate() { |
||||
return merAbbreviate; |
||||
} |
||||
|
||||
public void setMerAbbreviate(String merAbbreviate) { |
||||
this.merAbbreviate = merAbbreviate; |
||||
} |
||||
|
||||
public Long getStoreId() { |
||||
return storeId; |
||||
} |
||||
|
||||
public void setStoreId(Long storeId) { |
||||
this.storeId = storeId; |
||||
} |
||||
|
||||
public String getStoreName() { |
||||
return storeName; |
||||
} |
||||
|
||||
public void setStoreName(String storeName) { |
||||
this.storeName = storeName; |
||||
} |
||||
|
||||
public String getSerialNumber() { |
||||
return serialNumber; |
||||
} |
||||
|
||||
public void setSerialNumber(String serialNumber) { |
||||
this.serialNumber = serialNumber; |
||||
} |
||||
|
||||
public Integer getTableNumber() { |
||||
return tableNumber; |
||||
} |
||||
|
||||
public void setTableNumber(Integer tableNumber) { |
||||
this.tableNumber = tableNumber; |
||||
} |
||||
|
||||
public String getTableName() { |
||||
return tableName; |
||||
} |
||||
|
||||
public void setTableName(String tableName) { |
||||
this.tableName = tableName; |
||||
} |
||||
|
||||
public String getQrCodeContent() { |
||||
return qrCodeContent; |
||||
} |
||||
|
||||
public void setQrCodeContent(String qrCodeContent) { |
||||
this.qrCodeContent = qrCodeContent; |
||||
} |
||||
|
||||
public String getQrCodeImgUrl() { |
||||
return qrCodeImgUrl; |
||||
} |
||||
|
||||
public void setQrCodeImgUrl(String qrCodeImgUrl) { |
||||
this.qrCodeImgUrl = qrCodeImgUrl; |
||||
} |
||||
|
||||
public Integer getStatus() { |
||||
return status; |
||||
} |
||||
|
||||
public void setStatus(Integer status) { |
||||
this.status = status; |
||||
} |
||||
|
||||
public Date getCreateTime() { |
||||
return createTime; |
||||
} |
||||
|
||||
public void setCreateTime(Date createTime) { |
||||
this.createTime = createTime; |
||||
} |
||||
|
||||
public Date getUpdateTime() { |
||||
return updateTime; |
||||
} |
||||
|
||||
public void setUpdateTime(Date updateTime) { |
||||
this.updateTime = updateTime; |
||||
} |
||||
|
||||
public String getExt1() { |
||||
return ext1; |
||||
} |
||||
|
||||
public void setExt1(String ext1) { |
||||
this.ext1 = ext1; |
||||
} |
||||
|
||||
public String getExt2() { |
||||
return ext2; |
||||
} |
||||
|
||||
public void setExt2(String ext2) { |
||||
this.ext2 = ext2; |
||||
} |
||||
|
||||
public String getExt3() { |
||||
return ext3; |
||||
} |
||||
|
||||
public void setExt3(String ext3) { |
||||
this.ext3 = ext3; |
||||
} |
||||
|
||||
@Override |
||||
public boolean equals(Object that) { |
||||
if (this == that) { |
||||
return true; |
||||
} |
||||
if (that == null) { |
||||
return false; |
||||
} |
||||
if (getClass() != that.getClass()) { |
||||
return false; |
||||
} |
||||
BsMealTable other = (BsMealTable) that; |
||||
return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId())) |
||||
&& (this.getMerId() == null ? other.getMerId() == null : this.getMerId().equals(other.getMerId())) |
||||
&& (this.getMerNo() == null ? other.getMerNo() == null : this.getMerNo().equals(other.getMerNo())) |
||||
&& (this.getMerName() == null ? other.getMerName() == null : this.getMerName().equals(other.getMerName())) |
||||
&& (this.getMerAbbreviate() == null ? other.getMerAbbreviate() == null : this.getMerAbbreviate().equals(other.getMerAbbreviate())) |
||||
&& (this.getStoreId() == null ? other.getStoreId() == null : this.getStoreId().equals(other.getStoreId())) |
||||
&& (this.getStoreName() == null ? other.getStoreName() == null : this.getStoreName().equals(other.getStoreName())) |
||||
&& (this.getSerialNumber() == null ? other.getSerialNumber() == null : this.getSerialNumber().equals(other.getSerialNumber())) |
||||
&& (this.getTableNumber() == null ? other.getTableNumber() == null : this.getTableNumber().equals(other.getTableNumber())) |
||||
&& (this.getTableName() == null ? other.getTableName() == null : this.getTableName().equals(other.getTableName())) |
||||
&& (this.getQrCodeContent() == null ? other.getQrCodeContent() == null : this.getQrCodeContent().equals(other.getQrCodeContent())) |
||||
&& (this.getQrCodeImgUrl() == null ? other.getQrCodeImgUrl() == null : this.getQrCodeImgUrl().equals(other.getQrCodeImgUrl())) |
||||
&& (this.getStatus() == null ? other.getStatus() == null : this.getStatus().equals(other.getStatus())) |
||||
&& (this.getCreateTime() == null ? other.getCreateTime() == null : this.getCreateTime().equals(other.getCreateTime())) |
||||
&& (this.getUpdateTime() == null ? other.getUpdateTime() == null : this.getUpdateTime().equals(other.getUpdateTime())) |
||||
&& (this.getExt1() == null ? other.getExt1() == null : this.getExt1().equals(other.getExt1())) |
||||
&& (this.getExt2() == null ? other.getExt2() == null : this.getExt2().equals(other.getExt2())) |
||||
&& (this.getExt3() == null ? other.getExt3() == null : this.getExt3().equals(other.getExt3())); |
||||
} |
||||
|
||||
@Override |
||||
public int hashCode() { |
||||
final int prime = 31; |
||||
int result = 1; |
||||
result = prime * result + ((getId() == null) ? 0 : getId().hashCode()); |
||||
result = prime * result + ((getMerId() == null) ? 0 : getMerId().hashCode()); |
||||
result = prime * result + ((getMerNo() == null) ? 0 : getMerNo().hashCode()); |
||||
result = prime * result + ((getMerName() == null) ? 0 : getMerName().hashCode()); |
||||
result = prime * result + ((getMerAbbreviate() == null) ? 0 : getMerAbbreviate().hashCode()); |
||||
result = prime * result + ((getStoreId() == null) ? 0 : getStoreId().hashCode()); |
||||
result = prime * result + ((getStoreName() == null) ? 0 : getStoreName().hashCode()); |
||||
result = prime * result + ((getSerialNumber() == null) ? 0 : getSerialNumber().hashCode()); |
||||
result = prime * result + ((getTableNumber() == null) ? 0 : getTableNumber().hashCode()); |
||||
result = prime * result + ((getTableName() == null) ? 0 : getTableName().hashCode()); |
||||
result = prime * result + ((getQrCodeContent() == null) ? 0 : getQrCodeContent().hashCode()); |
||||
result = prime * result + ((getQrCodeImgUrl() == null) ? 0 : getQrCodeImgUrl().hashCode()); |
||||
result = prime * result + ((getStatus() == null) ? 0 : getStatus().hashCode()); |
||||
result = prime * result + ((getCreateTime() == null) ? 0 : getCreateTime().hashCode()); |
||||
result = prime * result + ((getUpdateTime() == null) ? 0 : getUpdateTime().hashCode()); |
||||
result = prime * result + ((getExt1() == null) ? 0 : getExt1().hashCode()); |
||||
result = prime * result + ((getExt2() == null) ? 0 : getExt2().hashCode()); |
||||
result = prime * result + ((getExt3() == null) ? 0 : getExt3().hashCode()); |
||||
return result; |
||||
} |
||||
|
||||
@Override |
||||
public String toString() { |
||||
StringBuilder sb = new StringBuilder(); |
||||
sb.append(getClass().getSimpleName()); |
||||
sb.append(" ["); |
||||
sb.append("Hash = ").append(hashCode()); |
||||
sb.append(", id=").append(id); |
||||
sb.append(", merId=").append(merId); |
||||
sb.append(", merNo=").append(merNo); |
||||
sb.append(", merName=").append(merName); |
||||
sb.append(", merAbbreviate=").append(merAbbreviate); |
||||
sb.append(", storeId=").append(storeId); |
||||
sb.append(", storeName=").append(storeName); |
||||
sb.append(", serialNumber=").append(serialNumber); |
||||
sb.append(", tableNumber=").append(tableNumber); |
||||
sb.append(", tableName=").append(tableName); |
||||
sb.append(", qrCodeContent=").append(qrCodeContent); |
||||
sb.append(", qrCodeImgUrl=").append(qrCodeImgUrl); |
||||
sb.append(", status=").append(status); |
||||
sb.append(", createTime=").append(createTime); |
||||
sb.append(", updateTime=").append(updateTime); |
||||
sb.append(", ext1=").append(ext1); |
||||
sb.append(", ext2=").append(ext2); |
||||
sb.append(", ext3=").append(ext3); |
||||
sb.append(", serialVersionUID=").append(serialVersionUID); |
||||
sb.append("]"); |
||||
return sb.toString(); |
||||
} |
||||
} |
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,49 @@ |
||||
package com.hfkj.service.meal; |
||||
|
||||
import com.hfkj.entity.BsMealTable; |
||||
|
||||
import java.util.List; |
||||
import java.util.Map; |
||||
|
||||
/** |
||||
* 扫码点餐【桌台、桌码】 |
||||
* @className: BsMealTableService |
||||
* @author: HuRui |
||||
* @date: 2023/11/29 |
||||
**/ |
||||
public interface BsMealTableService { |
||||
|
||||
/** |
||||
* 编辑数据 |
||||
* @param data |
||||
*/ |
||||
void editData(BsMealTable data); |
||||
|
||||
/** |
||||
* 生成桌台 |
||||
* @param storeId 门店 |
||||
* @param generateNum 数量 |
||||
*/ |
||||
void generateTable(Long storeId, Integer generateNum); |
||||
|
||||
/** |
||||
* 删除桌台 |
||||
* @param serialNumber |
||||
*/ |
||||
void delTable(String serialNumber); |
||||
|
||||
/** |
||||
* 查询桌台 |
||||
* @param serialNumber |
||||
* @return |
||||
*/ |
||||
BsMealTable getTableBySerialNumber(String serialNumber); |
||||
|
||||
/** |
||||
* 查询桌台列表 |
||||
* @param param |
||||
* @return |
||||
*/ |
||||
List<BsMealTable> getTableList(Map<String,Object> param); |
||||
|
||||
} |
@ -0,0 +1,174 @@ |
||||
package com.hfkj.service.meal; |
||||
|
||||
import com.hfkj.common.QRCodeGenerator; |
||||
import com.hfkj.common.exception.BaseException; |
||||
import com.hfkj.common.exception.ErrorCode; |
||||
import com.hfkj.common.exception.ErrorHelp; |
||||
import com.hfkj.common.exception.SysCode; |
||||
import com.hfkj.common.utils.GenerateUtil; |
||||
import com.hfkj.common.utils.IDGenerator; |
||||
import com.hfkj.config.CommonSysConst; |
||||
import com.hfkj.dao.BsMealTableMapper; |
||||
import com.hfkj.entity.BsMealTable; |
||||
import com.hfkj.entity.BsMealTableExample; |
||||
import com.hfkj.entity.BsMer; |
||||
import com.hfkj.entity.BsStore; |
||||
import com.hfkj.model.MerBasisModel; |
||||
import com.hfkj.service.BsMerService; |
||||
import com.hfkj.service.BsStoreService; |
||||
import com.hfkj.sysenum.*; |
||||
import org.apache.commons.collections4.MapUtils; |
||||
import org.apache.commons.lang3.StringUtils; |
||||
import org.springframework.data.redis.core.RedisTemplate; |
||||
import org.springframework.stereotype.Service; |
||||
|
||||
import javax.annotation.Resource; |
||||
import java.util.Date; |
||||
import java.util.List; |
||||
import java.util.Map; |
||||
import java.util.Random; |
||||
|
||||
/** |
||||
* @className: BsMealTableServiceImpl |
||||
* @author: HuRui |
||||
* @date: 2023/11/29 |
||||
**/ |
||||
@Service("mealTableService") |
||||
public class BsMealTableServiceImpl implements BsMealTableService { |
||||
|
||||
@Resource |
||||
private BsMealTableMapper mealTableMapper; |
||||
|
||||
@Resource |
||||
private BsStoreService storeService; |
||||
|
||||
@Resource |
||||
private BsMerService merService; |
||||
|
||||
@Resource |
||||
private RedisTemplate redisTemplate; |
||||
|
||||
@Override |
||||
public void editData(BsMealTable data) { |
||||
if (data.getId() == null) { |
||||
data.setCreateTime(new Date()); |
||||
data.setUpdateTime(new Date()); |
||||
mealTableMapper.insert(data); |
||||
} else { |
||||
data.setUpdateTime(new Date()); |
||||
mealTableMapper.updateByPrimaryKey(data); |
||||
} |
||||
} |
||||
|
||||
@Override |
||||
public void generateTable(Long storeId, Integer generateNum) { |
||||
String lockKey = "GENERATE_TABLE_"+storeId; |
||||
try { |
||||
Boolean lock = redisTemplate.opsForValue().setIfAbsent(lockKey, null); |
||||
if(lock) { |
||||
// 加锁成功
|
||||
|
||||
// 查询门店
|
||||
BsStore store = storeService.getStoreById(storeId); |
||||
if (store == null) { |
||||
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未知的门店"); |
||||
} |
||||
// 查询商户
|
||||
BsMer mer = merService.getMer(store.getMerId()); |
||||
if (mer == null) { |
||||
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未知的商户"); |
||||
} |
||||
Integer tableNumber = mealTableMapper.getMaxTableNum(store.getId()); |
||||
if (tableNumber == null) { |
||||
tableNumber = 0; |
||||
} |
||||
|
||||
for (int i = 0; i < generateNum; i++) { |
||||
BsMealTable mealTable = new BsMealTable(); |
||||
mealTable.setMerId(mer.getId()); |
||||
mealTable.setMerNo(mer.getMerNo()); |
||||
mealTable.setMerName(mer.getMerName()); |
||||
mealTable.setMerAbbreviate(mer.getMerAbbreviate()); |
||||
mealTable.setStoreId(store.getId()); |
||||
mealTable.setStoreName(store.getName()); |
||||
// 桌码唯一编号 13位时间戳 + 1位线程生成数
|
||||
mealTable.setSerialNumber(System.currentTimeMillis()+IDGenerator.nextId(1)); |
||||
mealTable.setTableNumber(tableNumber + 1); |
||||
mealTable.setTableName(mealTable.getTableNumber() + "号桌"); |
||||
mealTable.setStatus(MealTableStatusEnum.status1.getNumber()); |
||||
|
||||
// 生成二维码
|
||||
String file = "/mealTableQrCode/" + storeId + "/" + mealTable.getSerialNumber() + ".png"; |
||||
mealTable.setQrCodeContent("www.baidu.com"); |
||||
QRCodeGenerator.generateQRCodeImage( |
||||
mealTable.getQrCodeContent(), |
||||
350, |
||||
350, |
||||
CommonSysConst.getSysConfig().getFilesystem() + file |
||||
); |
||||
mealTable.setQrCodeImgUrl(CommonSysConst.getSysConfig().getDomainName() + "/filesystem" + file); |
||||
editData(mealTable); |
||||
} |
||||
redisTemplate.delete(lockKey); |
||||
|
||||
} else { |
||||
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "请勿频繁生成,正在生成中..."); |
||||
} |
||||
} catch (BaseException baseException) { |
||||
redisTemplate.delete(lockKey); |
||||
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, baseException.getErrorMsg()); |
||||
|
||||
} catch (Exception e) { |
||||
redisTemplate.delete(lockKey); |
||||
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "生成失败!未知错误"); |
||||
} |
||||
} |
||||
|
||||
@Override |
||||
public void delTable(String serialNumber) { |
||||
// 查询桌台
|
||||
BsMealTable mealTable = getTableBySerialNumber(serialNumber); |
||||
if (mealTable == null) { |
||||
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未知的桌台"); |
||||
} |
||||
if (!mealTable.getStatus().equals(MealTableStatusEnum.status1.getNumber())) { |
||||
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "桌台正在使用中..."); |
||||
} |
||||
mealTable.setStatus(MealTableStatusEnum.status0.getNumber()); |
||||
editData(mealTable); |
||||
} |
||||
|
||||
@Override |
||||
public BsMealTable getTableBySerialNumber(String serialNumber) { |
||||
BsMealTableExample example = new BsMealTableExample(); |
||||
example.createCriteria().andSerialNumberEqualTo(serialNumber) |
||||
.andStatusNotEqualTo(MealTableStatusEnum.status0.getNumber()); |
||||
List<BsMealTable> list = mealTableMapper.selectByExample(example); |
||||
if (!list.isEmpty()) { |
||||
return list.get(0); |
||||
} |
||||
return null; |
||||
} |
||||
|
||||
@Override |
||||
public List<BsMealTable> getTableList(Map<String, Object> param) { |
||||
BsMealTableExample example = new BsMealTableExample(); |
||||
BsMealTableExample.Criteria criteria = example.createCriteria() |
||||
.andStatusNotEqualTo(MealTableStatusEnum.status0.getNumber()); |
||||
|
||||
if (MapUtils.getLong(param, "storeId") != null) { |
||||
criteria.andStoreIdEqualTo(MapUtils.getLong(param, "storeId")); |
||||
} |
||||
|
||||
if (StringUtils.isNotBlank(MapUtils.getString(param, "tableName"))) { |
||||
criteria.andTableNameLike("%"+MapUtils.getString(param, "tableName")+"%"); |
||||
} |
||||
|
||||
if (MapUtils.getInteger(param, "status") != null) { |
||||
criteria.andStatusEqualTo(MapUtils.getInteger(param, "status")); |
||||
} |
||||
|
||||
example.setOrderByClause("table_number"); |
||||
return mealTableMapper.selectByExample(example); |
||||
} |
||||
} |
@ -0,0 +1,51 @@ |
||||
package com.hfkj.sysenum; |
||||
|
||||
import java.util.Objects; |
||||
|
||||
/** |
||||
* @className: MealTableStatusEnum |
||||
* @author: HuRui |
||||
* @date: 2023/11/29 |
||||
**/ |
||||
public enum MealTableStatusEnum { |
||||
|
||||
status0(0, "不可用"), |
||||
status1(1, "未开台"), |
||||
status2(2, "已开台"), |
||||
; |
||||
|
||||
private Integer number; |
||||
|
||||
private String name; |
||||
|
||||
MealTableStatusEnum(int number, String name) { |
||||
this.number = number; |
||||
this.name = name; |
||||
} |
||||
|
||||
public static MealTableStatusEnum getDataByNumber(Integer number) { |
||||
for (MealTableStatusEnum ele : values()) { |
||||
if (Objects.equals(number,ele.getNumber())) { |
||||
return ele; |
||||
} |
||||
} |
||||
return null; |
||||
} |
||||
|
||||
|
||||
public Integer getNumber() { |
||||
return number; |
||||
} |
||||
|
||||
public void setNumber(Integer number) { |
||||
this.number = number; |
||||
} |
||||
|
||||
public String getName() { |
||||
return name; |
||||
} |
||||
|
||||
public void setName(String name) { |
||||
this.name = name; |
||||
} |
||||
} |
Loading…
Reference in new issue