Compare commits

...

3 Commits

@ -14,7 +14,7 @@
</set> </set>
</option> </option>
</component> </component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_17" default="true" project-jdk-name="17" project-jdk-type="JavaSDK"> <component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="17" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" /> <output url="file://$PROJECT_DIR$/out" />
</component> </component>
</project> </project>

@ -50,20 +50,22 @@ public class OrderServiceImpl implements OrderService {
private UserMapper userMapper; private UserMapper userMapper;
@Autowired @Autowired
private WebSocketServer webSocketServer; private WebSocketServer webSocketServer;
/*
* /**
* */ *
@Transactional * @param ordersSubmitDTO
@Override * @return
public OrderSubmitVO submitOrder(OrdersSubmitDTO ordersSubmitDTO) { */
//1.处理各种业务异常(地址薄为空,购物车数据为空) @Transactional // 开启事务管理
public OrderSubmitVO submit(OrdersSubmitDTO ordersSubmitDTO) {
//1.处理各种业务异常(地址簿为空、购物车数据为空)
AddressBook addressBook = addressBookMapper.getById(ordersSubmitDTO.getAddressBookId()); AddressBook addressBook = addressBookMapper.getById(ordersSubmitDTO.getAddressBookId());
if(addressBook == null){ if(addressBook == null){
//抛出业务异常 //抛出业务异常
throw new AddressBookBusinessException(MessageConstant.ADDRESS_BOOK_IS_NULL); throw new AddressBookBusinessException(MessageConstant.ADDRESS_BOOK_IS_NULL);
} }
//查询当前用户购物车数据 //查询当前用户购物车数据
Long userId = BaseContext.getCurrentId(); Long userId = BaseContext.getCurrentId();
ShoppingCart shoppingCart = new ShoppingCart(); ShoppingCart shoppingCart = new ShoppingCart();
shoppingCart.setUserId(userId); shoppingCart.setUserId(userId);
@ -83,23 +85,21 @@ public class OrderServiceImpl implements OrderService {
orders.setConsignee(addressBook.getConsignee()); orders.setConsignee(addressBook.getConsignee());
orders.setUserId(userId); orders.setUserId(userId);
orderMapper.insert(orders); orderMapper.insert(orders);
List<OrderDetail> orderDetailList = new ArrayList<>();
//3.向订单明细表插入n条数据 //3.向订单明细表插入n条数据
List<OrderDetail> orderDetailList = new ArrayList<>();
for (ShoppingCart cart : shoppingCartList) { for (ShoppingCart cart : shoppingCartList) {
OrderDetail orderDetail = new OrderDetail(); OrderDetail orderDetail = new OrderDetail();
BeanUtils.copyProperties(cart,orderDetail); BeanUtils.copyProperties(cart,orderDetail);
orderDetail.setOrderId(orders.getId());//设置当前订单明细的orderId orderDetail.setOrderId(orders.getId());//设置当前订单明细的orderId
orderDetailList.add(orderDetail); orderDetailList.add(orderDetail);
} }
orderDetailMapper.insertBatch(orderDetailList); orderMapper.insertBatch(orderDetailList);
//4.清空购物车数据 //4.清空购物车数据
shoppingCartMapper.deleteByUserId(userId); shoppingCartMapper.deleteByUserId(userId);
//5.封装VO返回结果 //5.封装返回结果
OrderSubmitVO orderSubmitVO = OrderSubmitVO.builder() OrderSubmitVO orderSubmitVO = OrderSubmitVO.builder()
.id(orders.getId()) .id(orders.getId())
.orderTime(orders.getOrderTime()) .orderTime(orders.getOrderTime())
.orderNumber(orders.getNumber())
.orderAmount(orders.getAmount()) .orderAmount(orders.getAmount())
.build(); .build();
return orderSubmitVO; return orderSubmitVO;
@ -107,23 +107,23 @@ public class OrderServiceImpl implements OrderService {
/** /**
* *
* * @param ordersPaymentDTO
* @param ordersPaymentDTO * @return
* @return * @throws Exception
*/ */
public OrderPaymentVO payment(OrdersPaymentDTO ordersPaymentDTO) throws Exception { public OrderPaymentVO payment(OrdersPaymentDTO ordersPaymentDTO) throws Exception {
// 当前登录用户id // 当前登录用户id
Long userId = BaseContext.getCurrentId(); Long userId = BaseContext.getCurrentId();
User user = userMapper.getById(userId); User user = userMapper.getById(userId);
//调用微信支付接口,生成预支付交易单 /*调用微信接口,生成预支付交易单*/
/* JSONObject jsonObject = weChatPayUtil.pay( /* JSONObject jsonObject = weChatPayUtil.pay(
ordersPaymentDTO.getOrderNumber(), //商户订单号 ordersPaymentDTO.getOrdersId(), //商户订单号
new BigDecimal(0.01), //支付金额,单位 new BigDecimal(0.01), //支付金额,单位
"苍穹外卖订单", //商品描述 "苍穹外卖订单", //商品描述
user.getOpenid() //微信用户的openid user.getOpenid() //微信用户的openid
);*/ );*/
JSONObject jsonObject = new JSONObject(); JSONObject jsonObject = new JSONObject(); // 模拟微信支付返回的数据
if (jsonObject.getString("code") != null && jsonObject.getString("code").equals("ORDERPAID")) { if (jsonObject.getString("code") != null && jsonObject.getString("code").equals("ORDERPAID")) {
throw new OrderBusinessException("该订单已支付"); throw new OrderBusinessException("该订单已支付");
@ -137,72 +137,81 @@ public class OrderServiceImpl implements OrderService {
/** /**
* *
* * @param outTradeNo
* @param outTradeNo
*/ */
public void paySuccess(String outTradeNo) { public void paySuccess(String outTradeNo) {
// 根据订单号查询订单 // 根据订单号查询订单
Orders ordersDB = orderMapper.getByNumber(outTradeNo); Orders ordersDB = orderMapper.getByNumber(outTradeNo);
// 根据订单id更新订单的状态、支付方式、支付状态、结账时间 // 根据订单id更新订单的状态、支付状态、结账时间
Orders orders = Orders.builder() Orders orders = Orders.builder()
.id(ordersDB.getId()) .id(ordersDB.getId())
.status(Orders.TO_BE_CONFIRMED) .status(Orders.TO_BE_CONFIRMED)
.payStatus(Orders.PAID) .payStatus(Orders.PAID)
.checkoutTime(LocalDateTime.now()) .checkoutTime(LocalDateTime.now())
.build(); .build();
orderMapper.update(orders); orderMapper.update(orders);
//通过websocket向客户端浏览器推送消息 type orderId content //通过websocket向客户端浏览器推送消息 type=1表示来单提醒 2表示客户催单
Map map = new HashMap<>(); Map<String, Object> map = new HashMap<>();
map.put("type",1);//1表示来单提醒 2表示客户催单 map.put("type", 1); //1表示来单提醒 2表示客户催单
map.put("orderId",ordersDB.getId()); map.put("orderId", ordersDB.getId());
map.put("content","订单号:" + outTradeNo); map.put("content", "订单号:" + outTradeNo);
String json = JSON.toJSONString(map); String json = JSON.toJSONString(map);
webSocketServer.sendToAllClient(json); webSocketServer.sendToAllClient(json);
} }
/**
*
* @param pageNum
* @param pageSize
* @param status
* @return
*/
@Override @Override
public PageResult historyQueryPage(int pageNum, int pageSize, Integer status) { public PageResult historyQueryPage(int pageNum, int pageSize, Integer status) {
PageHelper.startPage(pageNum,pageSize); PageHelper.startPage(pageNum, pageSize); // 开始分页查询
OrdersPageQueryDTO ordersPageQueryDTO = new OrdersPageQueryDTO(); // 创建订单分页查询数据传输对象
OrdersPageQueryDTO ordersPageQueryDTO = new OrdersPageQueryDTO(); Long userId = BaseContext.getCurrentId(); // 获取当前用户id
Long userId = BaseContext.getCurrentId(); ordersPageQueryDTO.setUserId(userId); // 设置用户id到查询条件中
ordersPageQueryDTO.setUserId(userId); ordersPageQueryDTO.setStatus(status); // 设置订单状态到查询条件中
ordersPageQueryDTO.setStatus(status);
//分页查询条件 // 分页查询条件设置完成,执行分页查询操作
Page<Orders> page = orderMapper.pageQuery(ordersPageQueryDTO); Page<Orders> page = orderMapper.pageQuery(ordersPageQueryDTO);
List<OrderVO> list = new ArrayList<>(); // 初始化订单视图对象列表
List<OrderVO> list = new ArrayList<>(); if (page != null && page.getTotal() > 0) { // 如果查询结果不为空且总记录数大于0则进行数据处理
if(page != null && page.getTotal() > 0){ for (Orders orders : page) { // 遍历查询结果中的每个订单对象
for (Orders orders : page) { Long orderId = orders.getId(); // 获取订单id
Long orderId = orders.getId(); List<OrderDetail> orderDetails = orderDetailMapper.getByOrderId(orderId); // 根据订单id查询订单明细列表
List<OrderDetail> orderDetails = orderDetailMapper.getByOrderId(orderId); OrderVO orderVO = new OrderVO(); // 创建订单视图对象
OrderVO orderVO = new OrderVO(); BeanUtils.copyProperties(orders, orderVO); // 将订单对象的属性复制到订单视图对象中
BeanUtils.copyProperties(orders,orderVO); orderVO.setOrderDetailList(orderDetails); // 设置订单明细列表到订单视图对象中
orderVO.setOrderDetailList(orderDetails); list.add(orderVO); // 将订单视图对象添加到列表中
list.add(orderVO);
} }
} }
return new PageResult(page.getTotal(),list); return new PageResult(page.getTotal(), list); // 返回分页结果对象,包含总记录数和订单视图对象列表
} }
/**
* id
* @param id id
* @return
*/
@Override @Override
public OrderVO showDetails(Long id) { public OrderVO showDetails(Long id) {
//根据id查询订单 //根据id查询订单
Orders orders = orderMapper.getById(id); Orders orders = orderMapper.getById(id);
List<OrderDetail> orderDetails = orderDetailMapper.getByOrderId(orders.getId()); List<OrderDetail> orderDetails = orderDetailMapper.getByOrderId(orders.getId()); // 根据订单id查询订单明细列表
OrderVO orderVO = new OrderVO(); OrderVO orderVO = new OrderVO(); // 创建订单视图对象
BeanUtils.copyProperties(orders,orderVO); BeanUtils.copyProperties(orders, orderVO); // 将订单对象的属性复制到订单视图对象中
orderVO.setOrderDetailList(orderDetails); orderVO.setOrderDetailList(orderDetails); // 设置订单明细列表到订单视图对象中
return orderVO; return orderVO; // 返回订单视图对象
} }
}
@Transactional @Transactional
@Override @Override
public void cancel(Long id) { public void cancel(Long id) {
Orders orders = orderMapper.getById(id); Orders orders = orderMapper.getById(id);

@ -26,139 +26,172 @@ public class WorkspaceServiceImpl implements WorkspaceService {
@Autowired @Autowired
private OrderMapper orderMapper; private OrderMapper orderMapper;
// 注入订单映射器
@Autowired @Autowired
private UserMapper userMapper; private UserMapper userMapper;
// 注入用户映射器
@Autowired @Autowired
private DishMapper dishMapper; private DishMapper dishMapper;
// 注入菜品映射器
@Autowired @Autowired
private SetmealMapper setmealMapper; private SetmealMapper setmealMapper;
// 注入套餐映射器
/** /**
* *
* @param begin * @param begin
* @param end * @param end
* @return * @return
*/ */
public BusinessDataVO getBusinessData(LocalDateTime begin, LocalDateTime end) { public BusinessDataVO getBusinessData(LocalDateTime begin, LocalDateTime end) {
/** // 创建一个Map来存储查询参数
*
*
* /
* /
*
*/
Map map = new HashMap(); Map map = new HashMap();
map.put("begin",begin); map.put("begin", begin);
map.put("end",end); // 设置开始时间
map.put("end", end);
// 设置结束时间
//查询总订单数 // 查询总订单数
Integer totalOrderCount = orderMapper.countByMap(map); Integer totalOrderCount = orderMapper.countByMap(map);
map.put("status", Orders.COMPLETED); map.put("status", Orders.COMPLETED);
//营业额 // 设置订单状态为已完成
// 营业额:查询指定时间段内已完成订单的总金额
Double turnover = orderMapper.sumByMap(map); Double turnover = orderMapper.sumByMap(map);
turnover = turnover == null? 0.0 : turnover; turnover = turnover == null ? 0.0 : turnover;
// 如果营业额为空则设置为0.0
//有效订单数 // 有效订单数:查询指定时间段内已完成订单的数量
Integer validOrderCount = orderMapper.countByMap(map); Integer validOrderCount = orderMapper.countByMap(map);
Double unitPrice = 0.0; Double unitPrice = 0.0;
// 平均客单价初始化为0.0
Double orderCompletionRate = 0.0; Double orderCompletionRate = 0.0;
if(totalOrderCount != 0 && validOrderCount != 0){ // 订单完成率初始化为0.0
//订单完成率 if (totalOrderCount != 0 && validOrderCount != 0) {
// 订单完成率:有效订单数 / 总订单数
orderCompletionRate = validOrderCount.doubleValue() / totalOrderCount; orderCompletionRate = validOrderCount.doubleValue() / totalOrderCount;
//平均客单价 // 平均客单价:营业额 / 有效订单数
unitPrice = turnover / validOrderCount; unitPrice = turnover / validOrderCount;
} }
//新增用户数 // 新增用户数:查询指定时间段内新增用户的数量
Integer newUsers = userMapper.countByMap(map); Integer newUsers = userMapper.countByMap(map);
// 构建并返回营业数据视图对象
return BusinessDataVO.builder() return BusinessDataVO.builder()
.turnover(turnover) .turnover(turnover)
// 设置营业额
.validOrderCount(validOrderCount) .validOrderCount(validOrderCount)
// 设置有效订单数
.orderCompletionRate(orderCompletionRate) .orderCompletionRate(orderCompletionRate)
// 设置订单完成率
.unitPrice(unitPrice) .unitPrice(unitPrice)
// 设置平均客单价
.newUsers(newUsers) .newUsers(newUsers)
// 设置新增用户数
.build(); .build();
} }
/** /**
* *
* * @return
* @return
*/ */
public OrderOverViewVO getOrderOverView() { public OrderOverViewVO getOrderOverView() {
// 创建一个Map来存储查询参数
Map map = new HashMap(); Map map = new HashMap();
map.put("begin", LocalDateTime.now().with(LocalTime.MIN)); map.put("begin", LocalDateTime.now().with(LocalTime.MIN));
// 设置开始时间为当天的最小时间点即00:00
map.put("status", Orders.TO_BE_CONFIRMED); map.put("status", Orders.TO_BE_CONFIRMED);
// 设置订单状态为待接单
//待接单 // 待接单订单数
Integer waitingOrders = orderMapper.countByMap(map); Integer waitingOrders = orderMapper.countByMap(map);
//待派送 // 待派送订单数
map.put("status", Orders.CONFIRMED); map.put("status", Orders.CONFIRMED);
// 设置订单状态为已确认
Integer deliveredOrders = orderMapper.countByMap(map); Integer deliveredOrders = orderMapper.countByMap(map);
//已完成 // 已完成订单数
map.put("status", Orders.COMPLETED); map.put("status", Orders.COMPLETED);
// 设置订单状态为已完成
Integer completedOrders = orderMapper.countByMap(map); Integer completedOrders = orderMapper.countByMap(map);
//已取消 // 已取消订单数
map.put("status", Orders.CANCELLED); map.put("status", Orders.CANCELLED);
// 设置订单状态为已取消
Integer cancelledOrders = orderMapper.countByMap(map); Integer cancelledOrders = orderMapper.countByMap(map);
//全部订单 // 全部订单
map.put("status", null); map.put("status", null);
// 不设置订单状态,查询所有订单
Integer allOrders = orderMapper.countByMap(map); Integer allOrders = orderMapper.countByMap(map);
// 构建并返回订单概览视图对象
return OrderOverViewVO.builder() return OrderOverViewVO.builder()
.waitingOrders(waitingOrders) .waitingOrders(waitingOrders)
// 设置待接单订单数
.deliveredOrders(deliveredOrders) .deliveredOrders(deliveredOrders)
// 设置待派送订单数
.completedOrders(completedOrders) .completedOrders(completedOrders)
// 设置已完成订单数
.cancelledOrders(cancelledOrders) .cancelledOrders(cancelledOrders)
// 设置已取消订单数
.allOrders(allOrders) .allOrders(allOrders)
// 设置全部订单数
.build(); .build();
} }
/** /**
* *
* * @return
* @return
*/ */
public DishOverViewVO getDishOverView() { public DishOverViewVO getDishOverView() {
// 创建一个Map来存储查询参数
Map map = new HashMap(); Map map = new HashMap();
map.put("status", StatusConstant.ENABLE); map.put("status", StatusConstant.ENABLE);
// 设置菜品状态为启用
Integer sold = dishMapper.countByMap(map); Integer sold = dishMapper.countByMap(map);
// 查询启用状态的菜品数量(已售出)
map.put("status", StatusConstant.DISABLE); map.put("status", StatusConstant.DISABLE);
// 设置菜品状态为禁用
Integer discontinued = dishMapper.countByMap(map); Integer discontinued = dishMapper.countByMap(map);
// 查询禁用状态的菜品数量(已下架)
// 构建并返回菜品概览视图对象
return DishOverViewVO.builder() return DishOverViewVO.builder()
.sold(sold) .sold(sold)
// 设置已售出菜品数量
.discontinued(discontinued) .discontinued(discontinued)
// 设置已下架菜品数量
.build(); .build();
} }
/** /**
* *
* * @return
* @return
*/ */
public SetmealOverViewVO getSetmealOverView() { public SetmealOverViewVO getSetmealOverView() {
// 创建一个Map来存储查询参数
Map map = new HashMap(); Map map = new HashMap();
map.put("status", StatusConstant.ENABLE); map.put("status", StatusConstant.ENABLE);
// 设置套餐状态为启用
Integer sold = setmealMapper.countByMap(map); Integer sold = setmealMapper.countByMap(map);
// 查询启用状态的套餐数量(已售出)
map.put("status", StatusConstant.DISABLE); map.put("status", StatusConstant.DISABLE);
// 设置套餐状态为禁用
Integer discontinued = setmealMapper.countByMap(map); Integer discontinued = setmealMapper.countByMap(map);
// 查询禁用状态的套餐数量(已下架)
// 构建并返回套餐概览视图对象
return SetmealOverViewVO.builder() return SetmealOverViewVO.builder()
.sold(sold) .sold(sold)
// 设置已售出套餐数量
.discontinued(discontinued) .discontinued(discontinued)
// 设置已下架套餐数量
.build(); .build();
} }
} }

@ -70,21 +70,35 @@ __webpack_require__.r(__webpack_exports__);
/*! exports provided: render, staticRenderFns, recyclableRender, components */ /*! exports provided: render, staticRenderFns, recyclableRender, components */
/***/ (function(module, __webpack_exports__, __webpack_require__) { /***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict"; "use strict"; // 使用严格模式,以捕获常见的编码错误和不安全的操作。
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; }); // 导出模块的渲染函数、静态渲染函数、可回收渲染函数和组件。
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; }); __webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return recyclableRender; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "components", function() { return components; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
var components /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return recyclableRender; });
var render = function() { /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "components", function() { return components; });
var _vm = this
var _h = _vm.$createElement var components;
var _c = _vm._self._c || _h // 定义一个变量来存储组件。
}
var recyclableRender = false // 定义渲染函数。
var staticRenderFns = [] var render = function() {
render._withStripped = true var _vm = this;
// 保存当前上下文的引用。
var _h = _vm.$createElement;
// 创建虚拟节点的函数。
var _c = _vm._self._c || _h;
// 用于渲染子组件的辅助函数。
}
var recyclableRender = false;
// 标记是否支持可回收渲染。
var staticRenderFns = [];
// 定义静态渲染函数数组。
render._withStripped = true;
// 标记渲染函数是否已剥离了生产环境的警告信息。

@ -23,18 +23,30 @@ var renderjs
/* normalize component */ /* normalize component */
var component = Object(_F_HBuilderX_2_2_2_20190816_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( // 使用 Vue Loader 的 componentNormalizer 函数来规范化组件定义
_uni_icons_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], var component = Object(_F_HBuilderX_2_2_2_20190816_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])(
_uni_icons_vue_vue_type_template_id_0bf90c00_scoped_true___WEBPACK_IMPORTED_MODULE_0__["render"], // 导入组件的类型脚本模块
_uni_icons_vue_vue_type_template_id_0bf90c00_scoped_true___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"], _uni_icons_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
false, // 导入组件的模板渲染函数
null, _uni_icons_vue_vue_type_template_id_0bf90c00_scoped_true___WEBPACK_IMPORTED_MODULE_0__["render"],
"0bf90c00", // 导入组件的静态渲染函数数组
null, _uni_icons_vue_vue_type_template_id_0bf90c00_scoped_true___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
false, // 是否为功能组件functional component
_uni_icons_vue_vue_type_template_id_0bf90c00_scoped_true___WEBPACK_IMPORTED_MODULE_0__["components"], false,
renderjs // 组件的 inject 选项,用于依赖注入
) null,
// 组件的唯一标识符,用于缓存和调试
"0bf90c00",
// 组件的父组件上下文
null,
// 是否为纯组件pure component即仅通过 props 变化触发重新渲染
false,
// 组件的子组件列表
_uni_icons_vue_vue_type_template_id_0bf90c00_scoped_true___WEBPACK_IMPORTED_MODULE_0__["components"],
// 自定义的 renderjs 函数,用于在小程序中进行渲染优化
renderjs
)
component.options.__file = "components/uni-icons/uni-icons.vue" component.options.__file = "components/uni-icons/uni-icons.vue"
/* harmony default export */ __webpack_exports__["default"] = (component.exports); /* harmony default export */ __webpack_exports__["default"] = (component.exports);

@ -23,18 +23,30 @@ var renderjs
/* normalize component */ /* normalize component */
var component = Object(_F_HBuilderX_2_2_2_20190816_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( // 使用 Vue Loader 的 componentNormalizer 函数来规范化组件定义
_uni_nav_bar_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], var component = Object(_F_HBuilderX_2_2_2_20190816_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])(
_uni_nav_bar_vue_vue_type_template_id_4afea59e_scoped_true___WEBPACK_IMPORTED_MODULE_0__["render"], // 导入组件的类型脚本模块
_uni_nav_bar_vue_vue_type_template_id_4afea59e_scoped_true___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"], _uni_nav_bar_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
false, // 导入组件的模板渲染函数
null, _uni_nav_bar_vue_vue_type_template_id_4afea59e_scoped_true___WEBPACK_IMPORTED_MODULE_0__["render"],
"4afea59e", // 导入组件的静态渲染函数数组
null, _uni_nav_bar_vue_vue_type_template_id_4afea59e_scoped_true___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
false, // 是否为功能组件functional component
_uni_nav_bar_vue_vue_type_template_id_4afea59e_scoped_true___WEBPACK_IMPORTED_MODULE_0__["components"], false,
renderjs // 组件的 inject 选项,用于依赖注入
) null,
// 组件的唯一标识符,用于缓存和调试
"4afea59e",
// 组件的父组件上下文
null,
// 是否为纯组件pure component即仅通过 props 变化触发重新渲染
false,
// 组件的子组件列表
_uni_nav_bar_vue_vue_type_template_id_4afea59e_scoped_true___WEBPACK_IMPORTED_MODULE_0__["components"],
// 自定义的 renderjs 函数,用于在小程序中进行渲染优化
renderjs
)
component.options.__file = "components/uni-nav-bar/uni-nav-bar.vue" component.options.__file = "components/uni-nav-bar/uni-nav-bar.vue"
/* harmony default export */ __webpack_exports__["default"] = (component.exports); /* harmony default export */ __webpack_exports__["default"] = (component.exports);

@ -23,18 +23,30 @@ var renderjs
/* normalize component */ /* normalize component */
var component = Object(_F_HBuilderX_2_2_2_20190816_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( // 使用 Vue Loader 的 componentNormalizer 函数来规范化组件定义
_index_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], var component = Object(_F_HBuilderX_2_2_2_20190816_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])(
_index_vue_vue_type_template_id_0b00c929_scoped_true___WEBPACK_IMPORTED_MODULE_0__["render"], // 导入组件的类型脚本模块
_index_vue_vue_type_template_id_0b00c929_scoped_true___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"], _index_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
false, // 导入组件的模板渲染函数
null, _index_vue_vue_type_template_id_0b00c929_scoped_true___WEBPACK_IMPORTED_MODULE_0__["render"],
"0b00c929", // 导入组件的静态渲染函数数组
null, _index_vue_vue_type_template_id_0b00c929_scoped_true___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
false, // 是否为功能组件functional component
_index_vue_vue_type_template_id_0b00c929_scoped_true___WEBPACK_IMPORTED_MODULE_0__["components"], false,
renderjs // 组件的 inject 选项,用于依赖注入
) null,
// 组件的唯一标识符,用于缓存和调试
"0b00c929",
// 组件的父组件上下文
null,
// 是否为纯组件pure component即仅通过 props 变化触发重新渲染
false,
// 组件的子组件列表
_index_vue_vue_type_template_id_0b00c929_scoped_true___WEBPACK_IMPORTED_MODULE_0__["components"],
// 自定义的 renderjs 函数,用于在小程序中进行渲染优化
renderjs
)
component.options.__file = "components/uni-phone/index.vue" component.options.__file = "components/uni-phone/index.vue"
/* harmony default export */ __webpack_exports__["default"] = (component.exports); /* harmony default export */ __webpack_exports__["default"] = (component.exports);

@ -23,20 +23,33 @@ var renderjs
/* normalize component */ /* normalize component */
var component = Object(_F_HBuilderX_2_2_2_20190816_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( // 使用 Vue Loader 的 componentNormalizer 函数来规范化组件定义
_index_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], var component = Object(_F_HBuilderX_2_2_2_20190816_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])(
_index_vue_vue_type_template_id_7d30bc3a_scoped_true___WEBPACK_IMPORTED_MODULE_0__["render"], // 导入组件的类型脚本模块
_index_vue_vue_type_template_id_7d30bc3a_scoped_true___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"], _index_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
false, // 导入组件的模板渲染函数
null, _index_vue_vue_type_template_id_7d30bc3a_scoped_true___WEBPACK_IMPORTED_MODULE_0__["render"],
"7d30bc3a", // 导入组件的静态渲染函数数组
null, _index_vue_vue_type_template_id_7d30bc3a_scoped_true___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
false, // 是否为功能组件functional component
_index_vue_vue_type_template_id_7d30bc3a_scoped_true___WEBPACK_IMPORTED_MODULE_0__["components"], false,
renderjs // 组件的 inject 选项,用于依赖注入
) null,
// 组件的唯一标识符,用于缓存和调试
component.options.__file = "components/uni-piker/index.vue" "7d30bc3a",
// 组件的父组件上下文
null,
// 是否为纯组件pure component即仅通过 props 变化触发重新渲染
false,
// 组件的子组件列表
_index_vue_vue_type_template_id_7d30bc3a_scoped_true___WEBPACK_IMPORTED_MODULE_0__["components"],
// 自定义的 renderjs 函数,用于在小程序中进行渲染优化
renderjs
)
// 设置组件的 __file 属性,指向组件文件路径,便于调试和错误追踪
component.options.__file = "components/uni-piker/index.vue"
/* harmony default export */ __webpack_exports__["default"] = (component.exports); /* harmony default export */ __webpack_exports__["default"] = (component.exports);
/***/ }), /***/ }),

@ -21,20 +21,26 @@ var renderjs
/* normalize component */ /* normalize component */
var component = Object(_F_HBuilderX_2_2_2_20190816_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( // 使用 Vue 的组件规范化工具对组件进行标准化处理
_uni_easyinput_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], var component = Object(_F_HBuilderX_2_2_2_20190816_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])(
_uni_easyinput_vue_vue_type_template_id_20076044___WEBPACK_IMPORTED_MODULE_0__["render"], // 引入组件的脚本部分
_uni_easyinput_vue_vue_type_template_id_20076044___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"], _uni_easyinput_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
false, // 引入组件的模板部分
null, _uni_easyinput_vue_vue_type_template_id_20076044___WEBPACK_IMPORTED_MODULE_0__["render"],
null, // 引入组件的静态渲染函数
null, _uni_easyinput_vue_vue_type_template_id_20076044___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
false, false, // 是否在编译时将组件渲染为纯 HTML这里设置为 false
_uni_easyinput_vue_vue_type_template_id_20076044___WEBPACK_IMPORTED_MODULE_0__["components"], null, // 没有父组件
renderjs null, // 没有模块上下文
) null, // 没有 Ctor 函数
false, // 不强制要求组件具有渲染函数
// 引入组件的子组件
_uni_easyinput_vue_vue_type_template_id_20076044___WEBPACK_IMPORTED_MODULE_0__["components"],
renderjs // 额外的渲染选项
)
component.options.__file = "node_modules/@dcloudio/uni-ui/lib/uni-easyinput/uni-easyinput.vue" component.options.__file = "node_modules/@dcloudio/uni-ui/lib/uni-easyinput/uni-easyinput.vue"
/* harmony default export */ __webpack_exports__["default"] = (component.exports); /* harmony default export */ __webpack_exports__["default"] = (component.exports);
@ -70,44 +76,58 @@ __webpack_require__.r(__webpack_exports__);
/*! exports provided: render, staticRenderFns, recyclableRender, components */ /*! exports provided: render, staticRenderFns, recyclableRender, components */
/***/ (function(module, __webpack_exports__, __webpack_require__) { /***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict"; "use strict";
__webpack_require__.r(__webpack_exports__); __webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return recyclableRender; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return recyclableRender; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "components", function() { return components; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "components", function() { return components; });
var components
try { // 定义一个变量 components用于存储组件的引用
components = { var components
uniIcons: function() {
return Promise.all(/*! import() | components/uni-icons/uni-icons */[__webpack_require__.e("common/vendor"), __webpack_require__.e("components/uni-icons/uni-icons")]).then(__webpack_require__.bind(null, /*! @/components/uni-icons/uni-icons.vue */ 232)) try {
// 尝试动态加载 uni-icons 组件
components = {
uniIcons: function() {
return Promise.all(/*! import() | components/uni-icons/uni-icons */[__webpack_require__.e("common/vendor"), __webpack_require__.e("components/uni-icons/uni-icons")]).then(__webpack_require__.bind(null, /*! @/components/uni-icons/uni-icons.vue */ 232))
}
}
} catch (e) {
// 如果加载过程中出现错误,检查错误信息是否与找不到模块有关
if (
e.message.indexOf("Cannot find module") !== -1 &&
e.message.indexOf(".vue") !== -1
) {
// 输出错误信息和排查建议
console.error(e.message)
console.error("1. 排查组件名称拼写是否正确")
console.error(
"2. 排查组件是否符合 easycom 规范文档https://uniapp.dcloud.net.cn/collocation/pages?id=easycom"
)
console.error(
"3. 若组件不符合 easycom 规范,需手动引入,并在 components 中注册该组件"
)
} else {
// 如果错误不是由于找不到模块引起的,则重新抛出错误
throw e
}
} }
}
} catch (e) { var render = function() {
if ( // 获取当前Vue实例的引用
e.message.indexOf("Cannot find module") !== -1 && var _vm = this
e.message.indexOf(".vue") !== -1 // 创建一个虚拟节点创建函数用于生成VNode
) { var _h = _vm.$createElement
console.error(e.message) // 定义一个渲染函数,如果存在自定义的渲染函数则使用它,否则使用默认的虚拟节点创建函数
console.error("1. 排查组件名称拼写是否正确") var _c = _vm._self._c || _h
console.error( }
"2. 排查组件是否符合 easycom 规范文档https://uniapp.dcloud.net.cn/collocation/pages?id=easycom" // 标记是否可回收渲染函数
) var recyclableRender = false
console.error( // 静态渲染函数数组,通常用于不依赖组件状态的静态内容
"3. 若组件不符合 easycom 规范,需手动引入,并在 components 中注册该组件" var staticRenderFns = []
) // 标记渲染函数已被剥离(即移除了生产环境的警告信息)
} else { render._withStripped = true
throw e
}
}
var render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
}
var recyclableRender = false
var staticRenderFns = []
render._withStripped = true
@ -216,98 +236,96 @@ Object.defineProperty(exports, "__esModule", { value: true });exports.default =
* @example <uni-easyinput v-model="mobile"></uni-easyinput> * @example <uni-easyinput v-model="mobile"></uni-easyinput>
*/var _default2 = */var _default2 =
{ {
name: 'uni-easyinput', name: 'uni-easyinput', // 组件名称
emits: ['click', 'iconClick', 'update:modelValue', 'input', 'focus', 'blur', 'confirm'], emits: ['click', 'iconClick', 'update:modelValue', 'input', 'focus', 'blur', 'confirm'], // 定义组件可以触发的事件
model: { model: {
prop: 'modelValue', prop: 'modelValue', // 绑定的prop属性名
event: 'update:modelValue' }, event: 'update:modelValue' }, // 更新prop时触发的事件
props: { props: {
name: String, name: String, // 输入框的名称
value: [Number, String], value: [Number, String], // 输入框的值,可以是数字或字符串
modelValue: [Number, String], modelValue: [Number, String], // 双向绑定的值,可以是数字或字符串
type: { type: {
type: String, type: String,
default: 'text' }, default: 'text' }, // 输入框的类型,默认是文本类型
clearable: { clearable: {
type: Boolean, type: Boolean,
default: true }, default: true }, // 是否显示清除按钮,默认显示
autoHeight: { autoHeight: {
type: Boolean, type: Boolean,
default: false }, default: false }, // 是否自动调整高度,默认不自动调整
placeholder: String, placeholder: String, // 占位符文本
placeholderStyle: String, placeholderStyle: String, // 占位符样式
focus: { focus: {
type: Boolean, type: Boolean,
default: false }, default: false }, // 是否自动获取焦点,默认不自动获取焦点
disabled: { disabled: {
type: Boolean, type: Boolean,
default: false }, default: false }, // 是否禁用输入框,默认不禁用
maxlength: { maxlength: {
type: [Number, String], type: [Number, String],
default: 140 }, default: 140 }, // 输入框的最大长度默认140
confirmType: { confirmType: {
type: String, type: String,
default: 'done' }, default: 'done' }, // 确认按钮的类型,默认是“完成”
clearSize: { clearSize: {
type: [Number, String], type: [Number, String],
default: 15 }, default: 15 }, // 清除按钮的大小默认15
inputBorder: { inputBorder: {
type: Boolean, type: Boolean,
default: true }, default: true }, // 是否显示输入框边框,默认显示
prefixIcon: { prefixIcon: {
type: String, type: String,
default: '' }, default: '' }, // 前缀图标
suffixIcon: { suffixIcon: {
type: String, type: String,
default: '' }, default: '' }, // 后缀图标
trim: { trim: {
type: [Boolean, String], type: [Boolean, String],
default: true }, default: true }, // 是否去除前后空格,默认去除
passwordIcon: { passwordIcon: {
type: Boolean, type: Boolean,
default: true }, default: true }, // 是否显示密码切换图标,默认显示
styles: { styles: {
type: Object, type: Object,
default: function _default() { default: function _default() {
return {
color: '#333', // 默认文字颜色
disableColor: '#F7F6F6', // 禁用状态下的文字颜色
borderColor: '#e5e5e5' }; // 边框颜色
} },
errorMessage: {
type: [String, Boolean],
default: '' } }, // 错误信息,可以是字符串或布尔值,默认为空字符串
data: function data() {
return { return {
color: '#333', focused: false, // 是否聚焦状态
disableColor: '#F7F6F6', errMsg: '', // 错误信息
borderColor: '#e5e5e5' }; val: '', // 当前输入的值
showMsg: '', // 显示的信息
} }, border: false, // 是否有边框
isFirstBorder: false, // 是否是第一个边框
errorMessage: { showClearIcon: false, // 是否显示清除图标
type: [String, Boolean], showPassword: false }; // 是否显示密码图标
default: '' } }, }
,
data: function data() {
return {
focused: false,
errMsg: '',
val: '',
showMsg: '',
border: false,
isFirstBorder: false,
showClearIcon: false,
showPassword: false };
},
computed: { computed: {
msg: function msg() { msg: function msg() {
return this.errorMessage || this.errMsg; return this.errorMessage || this.errMsg;
@ -486,11 +504,14 @@ __webpack_require__.r(__webpack_exports__);
}]); }]);
//# sourceMappingURL=../../../../../../.sourcemap/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-easyinput/uni-easyinput.js.map //# sourceMappingURL=../../../../../../.sourcemap/mp-weixin/node-modules/@dcloudio/uni-ui/lib/uni-easyinput/uni-easyinput.js.map
;(global["webpackJsonp"] = global["webpackJsonp"] || []).push([ ;(global["webpackJsonp"] = global["webpackJsonp"] || []).push([
'node-modules/@dcloudio/uni-ui/lib/uni-easyinput/uni-easyinput-create-component', 'node-modules/@dcloudio/uni-ui/lib/uni-easyinput/uni-easyinput-create-component', // 模块路径
{ {
'node-modules/@dcloudio/uni-ui/lib/uni-easyinput/uni-easyinput-create-component':(function(module, exports, __webpack_require__){ // 定义模块内容
__webpack_require__('1')['createComponent'](__webpack_require__(208)) 'node-modules/@dcloudio/uni-ui/lib/uni-easyinput/uni-easyinput-create-component':(function(module, exports, __webpack_require__){
}) // 使用 createComponent 方法创建组件,传入 uni-easyinput 组件的定义
}, __webpack_require__('1')['createComponent'](__webpack_require__(208))
[['node-modules/@dcloudio/uni-ui/lib/uni-easyinput/uni-easyinput-create-component']] })
},
[['node-modules/@dcloudio/uni-ui/lib/uni-easyinput/uni-easyinput-create-component']] // 依赖项数组
]); ]);

Loading…
Cancel
Save